Saya baru saja menginstal Ubuntu Server edisi 13.10 (Saucy Salamander). Tapi saya mengalami sedikit masalah.
Pada akhir instalasi, ia meminta Anda untuk beberapa paket tambahan apakah Anda menginginkannya atau tidak, seperti server OpenSSH dan host mesin virtual. Inilah yang saya lihat:
Sekarang, masalah saya adalah saya tidak dapat mengingat apakah saya telah mencentang kotak "virtual machine host". Bagaimana saya memeriksa apakah server saya memiliki paket yang sesuai?
Paket apa yang datang dengan host mesin virtual?
$ apt-cache policy <package-name>
, misalnya$ apt-cache policy dillo
Jawaban:
Apakah Anda ingin tahu tentang semua perintah dpkg dengan opsi? Baca dari tautan di bawah ini.
15 dpkg perintah untuk Mengelola Server Linux berbasis Debian
Untuk Mendaftar semua Paket Terpasang
Di sini "less" adalah pembaca teks sederhana yang digunakan untuk menggulir daftar paket dalam buffer baru yang terbuka di jendela terminal yang ada. Daftar ini tidak akan dicampur dengan perintah dan keluaran terminal lainnya. Tekan 'q' untuk kembali ke terminal prompt. Lihat "man less" untuk info lebih lanjut.
Untuk memeriksa apakah suatu paket diinstal atau tidak:
Untuk memeriksa apakah paket diinstal atau tidak (misalnya,
vlc
). Jika diinstal, luncurkan paket:Tunjukkan lokasi tempat paket diinstal. "-S" (huruf kapital S) adalah singkatan dari "search"
Untuk menggunakan Grep untuk mencari:
sumber
dpkg -l packagename
, karena mungkin kembali dengan 0 kode keluar bahkan jika paket tidak diinstal sepenuhnya - lihat: github.com/bitrise-io/bitrise/issues/433dpkg -l | cut -d " " -f 3 | grep "^vlc"
untuk menampilkan semua nama paket yang dimulai denganvlc
Menggunakan
dpkg
Perintah ini adalah manajer paket debian.
Anda dapat mendaftar semua paket yang diinstal dengan
Anda dapat melihat detail untuk paket tertentu dengan
Dan untuk mengetahui apakah sudah diinstal, gunakan
Anda dapat mempelajari paket mana yang berisi perangkat lunak yang Anda inginkan
Dalam kasus Anda, Anda harus menggunakan perintah ini untuk mencari nama paket yang Anda inginkan
sumber
apt -qq list PACKAGE
juga dapat digunakan untuk memeriksa apakah PAKET diinstal.Jika dipasang itu akan mencetak sesuatu seperti (dengan
[installed]
di akhir baris):Jika tidak diinstal, hasilnya adalah:
sumber
-qq
? Tampaknya berfungsi secara identik tanpanya, dan opsi itu tidak ada di manualman apt
apt list
perintah belum sepenuhnya didokumentasikan. Beberapa pengujian cepat pada 16,04 tampaknya menunjukkan bahwa-q
ini adalah sinonim untuk--quiet
opsi. Yang pertama-q
mencegah kata "Selesai" dicetak. Yang kedua juga mencegah "Daftar ..." dari dicetak.Saya telah menemukan cara untuk memeriksa instalasi paket hanya dengan perintah dpkg-query dan tanpa pipa.
Saya mencari solusi tersebut saat menulis tugas untuk buku pedoman yang mungkin.
Jadi, Anda dapat melakukan sesuatu seperti ini:
Ini hanyalah cara lain untuk melakukan hal itu.
sumber
shell
modul.Saya menulis jawaban baru sebagai 'Nama tugas ' Tasksel JANGAN muncul di
dpkg
atauapt
kueri. Berarti jawaban lain tidak lengkap (atau salah)."Saya tidak ingat Jika saya telah mencentang kotak 'host mesin virtual' .."
Periksa apakah ada tanda bintang dengan nama setelah dijalankan kembali
sudo tasksel
.(atau ' i ' jika berjalan
tasksel --list-tasks
).Jika Anda tidak melihat ini, maka Anda mungkin belum menginstal 'tasksel meta-package '.
"..Bagaimana saya memeriksa apakah server saya memiliki paket yang sesuai?"
Jika Anda ingin mencari tahu apa yang diinstal di bawah paket meta-paket Task Machine Host Virtual:
tasksel --list-tasks
(dalam kasus Anda
tasksel --list-tasks | grep virt
sudah cukup)Ini memberikan nama tugas yang tepat dan indikasi apakah itu diinstal.
Dalam kasus Anda, nama tasksel ini adalah
virt-host
."Paket apa yang datang dengan host mesin virtual?"
Dari perintah terakhir, temukan nama tugas tasksel.
Ini diperlukan untuk perintah selanjutnya:
tasksel --task-packages virt-host
Ini mencantumkan meta-paket Tasksel individu (dilambangkan dengan menambahkan '^') yang membentuk nama.
Dalam kasus Anda itu
virt-host^
.Setelah Anda menemukan nama-meta yang tepat, Anda dapat menggunakan apt:
(atau
apt-cache show
...
jikaapt show
tidak berhasil.)Ini akan menampilkan semua paket yang menyusun paket meta yang diberikan.
Kemudian:
Ini akan memberi tahu Anda jika paket individual diinstal / dihapus (dicatat oleh huruf ke-2: status 'i' berarti diinstal). Lakukan ini untuk semua paket yang terdaftar di bawah paket tugas / meta.
Ini harus menjawab pertanyaan awal.
Catatan tambahan: /usr/share/tasksel/descs/ubuntu-tasks.desc juga memiliki deskripsi meta-paket Tasksel. Jika Anda:
grep "virt" /usr/share/tasksel/descs/ubuntu-tasks.desc
itu akan menunjukkan nama meta-paket APT yang tepat. (Dalam kasus Anda iniubuntu-virt-server
). Anda juga dapat menggunakanapt
perintah dengan nama-meta ini.Jika Anda ingin menghapus paket tasksel, ini masuk ke dalam gulma sedikit. Silakan berkonsultasi dengan https://askubuntu.com/a/88897/169878 atau sejumlah jawaban lain di luar sana.
Harap dicatat bahwa paket apt "meta" tidak cocok dengan nama paket Tasksel. Silakan baca Halaman Komunitas Tasksel untuk info lebih lanjut.
sumber
Gunakan tasksel (
sudo apt-get install tasksel
jika Anda belum memilikinya) dan jalankantasksel --list-tasks
.tasksel akan mencetak daftar tugas, dan akan ada di
i
sebelah setiap tugas yang diinstal, dan diu
sebelah setiap tugas yang tidak diinstal.Jika Anda ingin menginstal tugas, gunakan
tasksel install <task>
. Nama tugas yang Anda cari adalahvirt-host
.Item pemilihan perangkat lunak disebut "tugas".
sumber
Jika seseorang tertarik, saya membuat skrip kecil yang dapat Anda instal secara otomatis dari daftar paket atau aplikasi atau cukup periksa apakah sudah diinstal:
Semoga ini bisa membantu seseorang.
sumber
Solusi yang lebih sederhana:
Sekarang ada
apt list
perintah yang mencantumkan paket yang diinstal. Anda juga dapat mencari paket tertentu denganLihat
man apt
untuk informasi lebih lanjut. Jika Anda tidak tahu nama paket yang tepat, Anda dapat menggunakanapt search
diikuti oleh sebagian untuk melihat daftar paket terkait.sumber