Câu trả lời:
Nhìn vào trang người đàn ông giống như
pacman -Syu
để đồng bộ hóa cơ sở dữ liệu lên phiên bản mới nhất theo sau
pacman -Qu
đến
-u, - nâng cấp
Restrict or filter output to packages that are out of date on thehệ thống địa phương. (Chỉ các phiên bản gói được sử dụng để tìm các gói lỗi thời, thay thế không được kiểm tra ở đây.) Tùy chọn này hoạt động tốt nhất nếu cơ sở dữ liệu đồng bộ được làm mới bằng cách sử dụng -Sy.
pacman -Sylà để tránh cài đặt các gói từ các bản cập nhật cơ sở dữ liệu gói khác nhau. ví dụ pacman -S <something>có thể cung cấp cho bạn một gói khác nhau và phụ thuộc hơn pacman -Sy && pacman -S <something>. Tuy nhiên, từ tài liệu của họ, có vẻ như đây pacman -Sy && pacman -Qulà câu trả lời chính xác cho câu hỏi của OP. Chỉ cần chắc chắn rằng bạn cuối cùng chạy pacman -Sutrước khi cài đặt bất kỳ gói.
pacman -Sytự nó là xấu. Nó thậm chí không nói nó "xấu" hay "nguy hiểm". Nó chỉ đơn thuần nói rằng việc nâng cấp một phần không được hỗ trợ và bạn nên tránh nó. Nói cách khác, chạy pacman -Sy và sau đó chạy pacman -S <some package with dependencies>có khả năng phá vỡ một thứ khác có cùng phụ thuộc. Chạy một cái gì đó như pacman -Sy && pacman -S man-pageschỉ nhận được các trang con người mới nhất sẽ hoàn toàn ổn (trang con người không có phụ thuộc và không được yêu cầu bởi bất kỳ gói nào khác).
pacman -Syvà chạy pacman -S nvidiarằng bạn có khả năng phá vỡ một cái gì đó.
checkupdates
Các kiểm tra tập lệnh bash, bao gồm gói pacman, cung cấp một cách an toàn để kiểm tra nâng cấp lên các gói đã cài đặt mà không cần chạy cập nhật hệ thống cùng một lúc.
Như @Panagiotis đã đề cập, checkupdatescung cấp một cách để làm điều này mà không yêu cầu root hoặc làm rối /var/lib/pacmancơ sở dữ liệu của bạn . Đây là một phiên bản tối thiểu:
TMPPATH="${TMPDIR:-/tmp}/checkup-db-${USER}"
DBPATH="$(pacman-conf DBPath)"
mkdir -p "$TMPPATH"
ln -s "$DBPATH/local" "$TMPPATH" &>/dev/null
fakeroot -- pacman -Sy --dbpath "$TMPPATH" --logfile /dev/null &>/dev/null
pacman -Qu --dbpath "$TMPPATH" 2>/dev/null
Nó hoạt động bằng cách:
/var/lib/pacman/local.pacman -Sytrên thư mục tạm thời của bạn.pacman -Quthư mục tạm thời của bạn.
pacman -Sy" (nguồn: wiki.archlinux.org/index.php/iêu )