Câu hỏi Làm thế nào để cài đặt bản cập nhật thông qua dòng lệnh?


Khi tôi đăng nhập vào máy chủ web của mình qua SSH, tôi thấy thông tin:

88 packages can be updated.
80 updates are security updates

Tôi đã thử apt-get update sau đó apt-get upgrade nhưng mỗi khi tôi đăng nhập, tôi vẫn thấy thông báo về các bản cập nhật. Làm cách nào để cài đặt chúng?


588
2017-10-05 13:44


gốc


Bạn có thử điều này trước không: sudo apt-get clean this nên dọn dẹp bộ đệm. - user2635584


Các câu trả lời:


Thử cái này:

sudo apt-get update        # Fetches the list of available updates
sudo apt-get upgrade       # Strictly upgrades the current packages
sudo apt-get dist-upgrade  # Installs updates (new ones)

Tài liệu về mỗi apt-get tùy chọn có thể được tìm thấy trong các trang hướng dẫn cho apt-get. Chúng cũng có sẵn bằng cách chạy man apt-get trên máy tính của bạn.


736
2017-10-05 14:05



Tôi có nên khởi động lại với sudo reboot sau đó? - hellboy
Tôi cũng phải chạy apt-get autoremove hoặc tôi nhanh chóng hết dung lượng đĩa. - Jeff
Tôi cần thêm -y để nó hoạt động. Ubuntu 17.10 - T04435


Đây là hành vi bình thường.

Thư bạn nhìn thấy khi đăng nhập đã được thêm vào trạng thái máy chủ 'Message-Of-The-Day', chỉ là đã cập nhật mỗi ngày dương lịch (hoặc khởi động / khởi động máy chủ). Hãy xem nội dung, sử dụng

cat /etc/motd

Vẫn thấy các bản cập nhật tương tự có sẵn, sau khi chạy

sudo apt-get update && sudo apt-get upgrade

được mong đợi. Nếu sau đó bạn chạy lại lệnh này, bạn sẽ chỉ có được nhắc nhở về bất kỳ cập nhật nào khác nếu các bản cập nhật mới hơn (mới hơn) đã được phát hành.


83
2017-10-05 20:26



Tôi nhận thấy rằng bất kỳ thay đổi tệp nào trong toàn bộ hệ thống không hiển thị cho đến ngày lịch tiếp theo, có cách nào để "làm mới" để bắt đầu thấy thay đổi ngay lập tức không? - aljuaid86
Ý bạn là cập nhật nội dung của Tin nhắn của ngàyhoặc không nhận được những gì bạn muốn sau khi chạy sudo apt-get update && sudo apt-get upgrade ? - david6
Điều này không còn đúng vào ngày 16.04. Sau khi "apt-get dist-upgrade" và khởi động lại, tôi thấy "0 gói có thể được nâng cấp". - Bogdan Calmac
Các '.. hoặc khi khởi động lại máy chủ ..' tuyên bố ở trên không bao gồm điều đó. - david6
cat: / etc / motd: Không có tệp hoặc thư mục nào như vậy - xApple


Thực thi tất cả các lệnh bằng cách gõ sudo Một lần:

sudo -- sh -c 'apt-get update; apt-get upgrade -y; apt-get dist-upgrade -y; apt-get autoremove -y; apt-get autoclean -y'

hoặc là

sudo -s -- <<EOF
apt-get update
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get autoremove -y
apt-get autoclean -y
EOF

hoặc thậm chí ngắn hơn trong một cho loop (Thanks @dessert)

sudo bash -c 'for i in update {,dist-}upgrade auto{remove,clean}; do apt-get $i -y; done'

76
2017-11-08 09:28



Đây là một cách rất toàn diện và đầy đủ để nâng cấp máy chủ của một người và theo quan điểm của tôi, tốt nhất của các giải pháp có sẵn trong chủ đề này. Cảm ơn, @Benny! - unrivaledcreations
Bạn thậm chí có thể làm cho nó ngắn hơn bằng cách thay thế apt-get với apt và dist-upgrade với full-upgrade. - Eng.Fouad


Sau khi đăng nhập vào máy chủ của bạn, hãy chạy lệnh dưới đây.

sudo apt-get upgrade

Nó sẽ làm các trick. Có thể bạn chỉ cần khởi động lại máy chủ của mình.


10
2018-04-20 09:29



Cảm ơn bạn đã trả lời nhưng tôi đã thử sudo apt-get upgrade. Khởi động lại máy chủ là không có câu hỏi vì tôi có các trang web trên đó. - Marlin
nếu bạn đã cài đặt bản cập nhật ảnh hưởng trực tiếp đến hạt nhân hoặc đó là bản cập nhật trình điều khiển hoặc đó là bản cập nhật bảo mật quan trọng, bạn cần phải khởi động lại máy chủ. - Evandro Silva
Có lẽ bạn nên xem xét một lỗi 503 trong một phút. Bạn có biết loại cập nhật này là gì không? - NorTicUs
Làm thế nào bạn có thể cung cấp cho một 503 nếu máy chủ đang offline? - mcont


Trong trường hợp của tôi, tôi đã có một không chính xác hoặc không thể truy cập URL trong /etc/apt/sources.list. Sau khi xóa URL này, tôi đã có thể cập nhật tất cả các gói thành công.

Lệnh:

sudo vi /etc/apt/sources.list
sudo apt-get update && sudo apt-get upgrade

8
2017-08-26 07:47





Giải pháp của tôi (thực sự muộn, tôi thích necromancer phù hiệu :-)):

  1. cài đặt, dựng lên wajig (Một lần):

    sudo apt-get install wajig 
    
  2. Khi bạn muốn cập nhật / nâng cấp đầy đủ hệ thống của mình

    wajig dailyupgrade
    

    (nó sẽ yêu cầu mật khẩu nếu cần, và thực hiện tất cả các bước cập nhật, nâng cấp, nâng cấp và tự động xóa cho bạn).


7
2017-10-12 02:22





Bạn cũng có thể cần phải làm điều này -

sudo touch /etc/motd.tail

Từ - Ubuntu nói với tôi rằng tôi có các gói để nâng cấp khi tôi không

Nó làm việc cho tôi vào ngày 14.04


4
2017-12-16 18:47





tập lệnh này rất tiện lợi để tự động cập nhật, bao gồm xóa các gói không cần thiết và thực hiện khởi động lại nếu hệ điều hành muốn một

remote_user=usernamehere
remote_host=example.com

ssh -A -n -o StrictHostKeyChecking=no ${remote_user}@${remote_host} && \
sudo apt-get update && \
sudo apt-get -f install -y && \
sudo apt-get -o Dpkg::Options::="--force-confnew" -yy dist-upgrade -y && \
sudo apt-get autoremove -y && \
[ -f /var/run/reboot-required ] && \
echo "sudo reboot now" && \
sudo reboot now 

để chạy trên hộp địa phương của bạn chỉ cần bỏ đi dòng đầu tiên làm ssh

đây là bí danh tôi lưu trong ~ / .bashrc

alias doit='echo; kill $( ps -eafww|grep update-manager|grep -v grep | grep update-manager | tr -s " " |cut -d" "  -f2 ) > /dev/null 2>&1;  echo "sudo apt-get update && sudo apt-get dist-upgrade &&  [ -f /var/run/reboot-required ] && echo && echo reboot required && echo";echo;sudo apt-get update && sudo apt-get dist-upgrade &&  [ -f /var/run/reboot-required ] && echo && echo reboot required && echo '

sau đó trên thiết bị đầu cuối, tôi chỉ phát hành doit


1
2017-08-13 11:27





Nếu bạn chạy apt-get update một lần nữa sau apt-get upgrade đã được kết luận, những thông điệp đó tại đăng nhập ssh sẽ biến mất.


0
2017-08-18 01:36





Bạn có thể thử tất cả những điều sau:

sudo apt-get install software-center (lấy trung tâm phần mềm)
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

-2



Nhưng tại sao có được Trung tâm Phần mềm ở tất cả, nếu mục tiêu là cài đặt các bản cập nhật thông qua dòng lệnh? (Không có lệnh nào trong số các lệnh tiếp theo mà bạn đề nghị yêu cầu Trung tâm Phần mềm, cũng như không sử dụng bất kỳ lệnh nào trong số đó hoặc được hưởng lợi từ nó nếu nó được cài đặt.) Lưu ý rằng có vẻ như điều này sẽ không xuất hiện. Như những người khác đã nói, có thể thông điệp chưa phản ánh kết quả của update và upgrade hành động. Có thể có các gói chưa được nâng cấp cho đến khi dist-upgrade hành động, nhưng trên một bản phát hành ổn định, hiếm khi có 88 gói như vậy cùng một lúc. - Eliah Kagan