Saya tahu bahwa pacman -Sumeningkatkan semua paket. Tetapi bagaimana saya bisa mendapatkan hanya daftar paket yang perlu ditingkatkan?
Saya tahu bahwa pacman -Sumeningkatkan semua paket. Tetapi bagaimana saya bisa mendapatkan hanya daftar paket yang perlu ditingkatkan?
Jawaban:
Melihat sesuatu seperti halaman manual
pacman -Syu
untuk menyinkronkan database hingga versi terbaru diikuti oleh
pacman -Qu
untuk
-u, --upgrade
Restrict or filter output to packages that are out of date on thesistem lokal. (Hanya versi paket yang digunakan untuk menemukan paket usang, penggantian tidak dicentang di sini.) Opsi ini berfungsi paling baik jika database sinkronisasi di-refresh menggunakan -Sy.
pacman -Syadalah untuk menghindari menginstal paket dari pembaruan paket database yang berbeda. misalnya pacman -S <something>dapat memberi Anda paket dan dependensi berbeda dari pacman -Sy && pacman -S <something>. Namun dari dokumentasi mereka, tampaknya pacman -Sy && pacman -Quini adalah jawaban yang benar untuk pertanyaan OP. Pastikan Anda akhirnya menjalankan pacman -Susebelum menginstal paket apa pun.
pacman -Sydalam-dan-dari-itu sendiri buruk. Bahkan tidak mengatakan itu "buruk" atau "berbahaya". Ini hanya menyatakan bahwa sebagian upgrade tidak didukung dan Anda harus menghindarinya. Dengan kata lain, menjalankan pacman -Sy dan kemudian berlari pacman -S <some package with dependencies>berpotensi merusak sesuatu yang memiliki ketergantungan yang sama. Menjalankan sesuatu seperti pacman -Sy && pacman -S man-pageshanya mendapatkan halaman manual terbaru akan baik-baik saja (halaman manual tidak memiliki dependensi, dan tidak diperlukan oleh paket lain).
pacman -Sydan berlari pacman -S nvidia, kemungkinan Anda akan memecahkan sesuatu.
checkupdates
Pemeriksaan skrip bash, yang disertakan dengan paket pacman, menyediakan cara yang aman untuk memeriksa peningkatan ke paket yang diinstal tanpa menjalankan pembaruan sistem pada saat yang sama.
Seperti yang disebutkan @Panagiotis, checkupdatesmenyediakan cara untuk melakukan ini tanpa memerlukan root atau mengacaukan /var/lib/pacmanbasis data Anda . Ini versi minimal:
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
Ini bekerja dengan:
/var/lib/pacman/local.pacman -Sydi folder sementara Anda.pacman -Qupada folder sementara Anda.
pacman -Sy" (sumber: wiki.archlinux.org/index.php/… )