Bagaimana cara menginstal file deb melalui baris perintah?

Jawaban:

1243

Paket diinstal secara manual melalui dpkgperintah (Sistem Manajemen Paket Debian). dpkgadalah backend untuk perintah like apt-getdan aptitude, yang pada gilirannya adalah backend untuk GUI menginstal aplikasi seperti Software Center dan Synaptic.

Sesuatu di sepanjang garis:

dpkg-> apt-get, aptitude-> Synaptic, Pusat Perangkat Lunak

Tapi tentu saja cara termudah untuk menginstal sebuah paket adalah, pertama, aplikasi GUI (Synaptic, Software Center, dll.), Diikuti oleh perintah terminal apt-getdan aptitudeitu menambahkan pendekatan ramah pengguna yang sangat bagus ke dpkg backend, termasuk tetapi tidak terbatas pada dependensi paket, kontrol atas apa yang diinstal, perlu pembaruan, tidak diinstal, paket rusak, dll. Terakhir dpkgperintah yang merupakan basis untuk semuanya.

Karena dpkg adalah basis, Anda dapat menggunakannya untuk menginstal paket langsung dari baris perintah.

Instal paket

sudo dpkg -i DEB_PACKAGE

Misalnya jika file paket dipanggil askubuntu_2.0.debmaka yang harus Anda lakukan sudo dpkg -i askubuntu_2.0.deb. Jika dpkgmelaporkan kesalahan karena masalah ketergantungan, Anda dapat menjalankan sudo apt-get install -funtuk mengunduh dependensi yang hilang dan mengonfigurasi semuanya. Jika itu melaporkan kesalahan, Anda harus memilah sendiri dependensi dengan mengikuti misalnya Bagaimana cara menyelesaikan dependensi yang tidak terpenuhi setelah menambahkan PPA? .

Hapus paket

sudo dpkg -r PACKAGE_NAME

Misalnya jika paket tersebut dipanggil askubuntumaka sebaiknya Anda lakukan sudo dpkg -r askubuntu.

Mengkonfigurasi ulang paket yang ada

sudo dpkg-reconfigure PACKAGE_NAME

Ini berguna ketika Anda perlu mengkonfigurasi ulang sesuatu yang berhubungan dengan paket tersebut. Beberapa contoh berguna keyboard-configurationketika Anda ingin mengaktifkan Ctrl+ Alt+ Backspaceuntuk mengatur ulang server X, jadi Anda akan melakukan yang berikut:

sudo dpkg-reconfigure keyboard-configuration

Satu lagi yang hebat adalah ketika Anda perlu mengatur Timezone untuk server atau komputer pengujian lokal Anda, jadi Anda gunakan menggunakan tzdatapaket:

sudo dpkg-reconfigure tzdata
Luis Alvarado
sumber
4
Info hebat, harus menemukan beberapa cara untuk menginstal traceroute untuk membantu men-debug mengapa mesin saya tidak dapat terhubung ke internet :)
Jason
23
Juga membantu untuk mencatat bahwa sekali program yang diinstal biasanya ditemukan di / usr / bin, dinamai berdasarkan apa yang didepackaged.
Chris Moschini
Jika saya menjalankan sudo apt-get install texlive-latex-base, itu telah gagal selama berbulan-bulan dengan "Ketidakcocokan Hash Sum". Saya dapat mengunduh file .deb dari http://gb.archive.ubuntu.com/ubuntu/pool/main/t/texlive-base/texlive-latex-base-doc_2015.20150625-1ubuntu1_all.deb. Jika saya menginstalnya menggunakan dpkg, apakah kemudian akan dikenali (dan diperbarui) oleh apt-get.
user643722
1
Bung kau luar biasa. begitu jarang saya melihat jawaban linux yang sangat detail .. ketika datang ke pertanyaan pemula itu penting !! terima kasih
Elad Katz
1
Jika lebih mudah dan lebih baik untuk menginstal melalui aptitudeatau apt-get(atau hanya apt), mengapa tidak contoh untuk perintah ini diberikan di sini?
intuited
161

Paket Debian (.deb) adalah paket yang digunakan di Ubuntu. Anda dapat menginstal paket .deb di sistem Anda. File .deb umumnya dapat diinstal dari manajer file Anda (Nautilus) hanya dengan mengkliknya, karena asosiasi file dengan installer default sudah ditetapkan di Ubuntu. Instruksi ini diperuntukkan bagi mereka yang ingin menginstal paket dari terminal baris perintah (Terminal).

Untuk menginstal paket Debian ( Ubuntu ) yang diunduh (.deb): Buka Terminal dan ketik

sudo dpkg -i packagename.deb

Untuk menghapus paket Debian (Ubuntu) (.deb):

sudo dpkg -r packagename

Untuk mengkonfigurasi ulang / memperbaiki paket Debian (Ubuntu) yang terinstal (.deb):

sudo dpkg-reconfigure packagename
Atul Makwana
sumber
105

Favorit saya adalah GDebi, tersedia dari terminal / shell atau desktop grafis.

tangkapan layar

Saya biasanya mengaitkan .debfile dengan GDebi karena cepat dan efisien - terutama dibandingkan dengan Ubuntu Software Center. Salah satu fitur utama GDebi adalah menyelesaikan dependensi dan menginstalnya.

Untuk menjalankan baris perintah sudo gdebi <package.deb>untuk menginstal file deb tunggal.

dsto
sumber
5
ia memeriksa dependensi sebelum menginstal, thx !!
Aquarius Power
Bisakah gdebi bahkan mengunduh dependensi atau kita harus mengunduhnya secara manual ?? @ Pandya
Jasser
Mungkin lebih baik untuk orang yang pindah dari latar belakang non-Linux.
Nisheet
+1 untuk "itu menyelesaikan dependensi dan menginstalnya" yang merupakan kunci.
Revetahw
85

Apakah Anda mencari semua perintah dpkg ? klik tautan ini untuk membaca.

15 dpkg perintah untuk Mengelola Server Linux berbasis Debian

Perintah DPKG

Ada dua tindakan, yaitu dpkg-querydan dpkg-deb.

Instal paket

# sudo dpkg -i {package_name}    
# sudo dpkg -i skype-ubuntu-precise_4.2.0.11-1_i386.deb

Hapus paket

# sudo dpkg -r {package_name}
# sudo dpkg -r vlc

Hapus paket dan file konfigurasinya

# sudo dpkg -P {package_name}
# sudo dpkg -P vlc

Daftar semua paket yang diinstal.

Anda dapat menyalurkan perintah ke less(pager) sehingga Anda dapat lebih mudah menggulir konten:

# dpkg -l | less

Periksa apakah paket sudah diinstal atau belum

# dpkg -l {package_name}
# dpkg -l vlc

Periksa apakah paket diinstal atau tidak, dan jika itu, luncurkan:

# dpkg -l | vlc

Lihat apakah suatu paket diinstal atau tidak

Dan ini akan menunjukkan lokasi di mana paket akan diinstal. Di sini -S(modal S) untuk mencari apakah paket itu diinstal atau tidak.

# sudo dpkg -S {package_name}
# sudo dpkg -S skype

Instal paket * .deb dari lokasi yang ditentukan

Berikut -Rini adalah rekursif. (Secara rekursif menangani semua file biasa yang cocok dengan pola yang *.debditemukan di direktori yang ditentukan dan semua subdirektori).

# sudo dpkg -R --install {package_location}
# sudo dpkg -R --install /home/sysadmin/soft

Tampilkan detail paket

Di sini -p(huruf kecil p) akan menampilkan info paket:

# dpkg -p {package_name}
# dpkg -p apache2

Lihat konten suatu paket

Gunakan -c(huruf kecil c) untuk menampilkan konten:

# sudo dpkg -c {package_name}
# sudo dpkg -c skype-ubuntu-precise_4.2.0.11-1_i386.deb

Ekstrak *.debfile paket

Gunakan -x(huruf kecil x) untuk mengekstrak:

# dpkg -x {package_name} {location_were_to_extract}
# dpkg -x libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/

Ekstrak dan tampilkan nama file yang ada dalam satu paket

Gunakan -X(huruf besar X) untuk menampilkan konten dengan ekstraksi.

# dpkg -X {package_name} {location_were_to_extract}
# dpkg -X libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/

Tampilkan informasi tentang suatu paket

Di sini -Isingkatan informasi:

# dpkg -I {package_name}
# dpkg -I libqt4-phonon_4.6.3-4+squeeze1_i386.deb

Mengkonfigurasi ulang paket yang sudah diinstal

dpkg-reconfiguremengkonfigurasi ulang paket setelah mereka diinstal. Berikan nama paket untuk mengonfigurasi ulang. Ini akan menanyakan pertanyaan konfigurasi, seperti ketika paket pertama kali diinstal.

# dpkg-reconfigure postfix

Ini akan mengkonfigurasi ulang postfixcara yang sama seperti ketika Anda menginstalnya untuk pertama kali.

Perlu tahu lebih banyak tentang dpkgperintah? Lihat halaman manual:

# man dpkg
Babin Lonston
sumber
5
" Periksa apakah paket diinstal atau tidak, dan jika itu, luncurkan:# dpkg -l | vlc " - ini hanya akan mem-pipe daftar paket ke vlc, dengan hasil yang tidak dapat diprediksi jika diinstal; dan tidak lebih baik dari sekedar mengetikvlc
Xen2050
51

Walaupun dpkg -imemang menginstal paket, ia tidak melakukan resolusi dependensi otomatis, sementara itu ada dua alternatif lain, menggunakan gdebi, atau alat apt-get. Untuk menggunakan nanti gunakan saja:

sudo apt-get install /path/to/package.deb

Bahkan jika Anda berada di direktori dengan paket Anda perlu memberikan jalur menggunakan ./di awal:

sudo apt-get install ./package.deb
Braiam
sumber
13
Ini mungkin jawaban terbaik. aptakan mencegah Anda memecahkan sistem Anda jika Anda tidak memiliki dependensi yang benar.
mlainz
Perintah ini sepertinya memilih semua paket yang ada.
Hibou57
@ Hibou57 tidak boleh ada ruang dalam nama paket.
Braiam
26

Kiat praktis saat memasang program seperti Libreoffice yang memiliki banyak file .deb di folder adalah untuk digunakan.

sudo dpkg -i *.deb
tadcan
sumber
2
Jangan pernah gunakan perintah ini. Anda harus menghapus semua hutang secara manual jika ingin menghapus paket itu. sudo apt remove example, sudo apt autoremovedan sudo dpkg -r *.debtidak bekerja.
noone
12

The gdebisolusi baris perintah

Berikut cara terbaik untuk menginstal file deb di Ubuntu pada command-line:

sudo gdebi skype.deb

Jika Anda belum gdebimenginstal, instal menggunakan sudo apt install gdebi-core.

Kenapa gdebi?

gdebiakan mencari semua dependensi .debfile, dan akan menginstalnya sebelum mencoba menginstal .debfile. Saya menemukan ini jauh lebih disukai daripada sudo dpkg -i skype.deb && sudo apt install -f. Yang terakhir ini terlalu bersemangat untuk menghapus dependensi dalam situasi tertentu. Misalnya, ketika saya mencoba menginstal Skype, ia berusaha menghapus 96 paket (!), Termasuk paket-paket seperti compizdan unity! gdebimemberikan pesan kesalahan yang jauh lebih jelas:

$ sudo gdebi skype.deb
Cannot install 'libqtgui:i386'

(Omong -omong, ini adalah solusi untuk masalah khusus itu .)

Flimm
sumber
askubuntu.com/a/170557/158442 tidak mengatakan gdebidapat digunakan dari baris perintah
muru
@uru Ya, tapi mudah dilewatkan karena tangkapan layar. Juga, itu tidak menjelaskan masalah dengandpkg -i skype.deb
Flimm
11

Buat penginstal skrip Anda sendiri debInstallersebagai berikut:

#!/bin/bash
dpkg -i "$@"
apt-get --yes --fix-broken install

Jadikan skrip dapat dieksekusi dengan

chmod +x debInstaller

Kemudian pindahkan ke beberapa dir di PATH Anda atau tambahkan direktori saat ini ke PATH Anda.

Saya akan memindahkannya ke / usr / bin

sudo cp debInstaller /usr/bin

Sekarang Anda dapat menginstal .debpaket apa pun menggunakan perintah:

sudo debInstaller some-package.deb

Nilai tambah dari metode ini adalah menyelesaikan masalah dependensi, karena sebagian besar Anda akan menghadapi beberapa masalah ketika Anda menginstal .deb dengan dpkg -ikarena kesalahan dependensi, jadi Anda harus menggunakan apt-get install -funtuk menyelesaikannya, skrip ini akan melakukan pekerjaan untuk Anda, tetapi di sini saya digunakan apt-get --yes --fix-broken installuntuk secara otomatis menyelesaikan kesalahan ini tanpa intervensi pengguna.

Maythux
sumber
10

Untuk menginstal file deb, buka Terminal dan ketik:

sudo dpkg -i file.deb
sudo apt-get install -f
sudo dpkg -i file.deb   

Baris kedua adalah untuk memperbaiki paket yang rusak jika instalasi gagal, lalu instal lagi untuk menyelesaikan instalasi.

Pendekatan lain adalah dengan menggunakan gdebialat untuk menginstal file deb.

Benny
sumber
0

Ada banyak alat untuk menginstal paket deb Saya pribadi menggunakan dpkg installer paket bawaan

Jika Anda login sebagai root, ubah direktori ke lokasi paket deb

dpkg -i package_name.deb

jika Anda tidak login sebagai root

sudo dpkg -i package_name.deb

Untuk memastikan bahwa paket diinstal dengan benar dan tidak memiliki dependensi yang rusak

sudo apt-get check

Jika ada dependensi yang rusak

sudo apt-get -f install
masterpianist
sumber