Saya tahu bahwa pacman -Su
meningkatkan semua paket. Tetapi bagaimana saya bisa mendapatkan hanya daftar paket yang perlu ditingkatkan?
Saya tahu bahwa pacman -Su
meningkatkan 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 the
sistem 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 -Sy
adalah 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 -Qu
ini adalah jawaban yang benar untuk pertanyaan OP. Pastikan Anda akhirnya menjalankan pacman -Su
sebelum menginstal paket apa pun.
pacman -Sy
dalam-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-pages
hanya mendapatkan halaman manual terbaru akan baik-baik saja (halaman manual tidak memiliki dependensi, dan tidak diperlukan oleh paket lain).
pacman -Sy
dan 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, checkupdates
menyediakan cara untuk melakukan ini tanpa memerlukan root atau mengacaukan /var/lib/pacman
basis 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 -Sy
di folder sementara Anda.pacman -Qu
pada folder sementara Anda.
pacman -Sy
" (sumber: wiki.archlinux.org/index.php/… )