Bagaimana cara mengunduh paket tidak menginstalnya dengan perintah apt-get?

32
sudo apt-get install pppoe

akan mengunduh pppoepaket dan menginstalnya.

Apakah mungkin hanya mengunduh pppoepaket dan tidak menginstalnya dengan apt-getperintah?

wget http://ftp.us.debian.org/debian/pool/main/p/ppp/ppp_2.4.7-1+4_amd64.deb

ppp_2.4.7-1+4_amd64.deb ada di direktori saat ini sekarang.

cd  /tmp
sudo  apt-get install  -d  ppp
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  ppp
0 upgraded, 1 newly installed, 0 to remove and 95 not upgraded.
Need to get 0 B/346 kB of archives.
After this operation, 949 kB of additional disk space will be used.
Download complete and in download only mode

Tidak ada ppp_2.4.7-1+4_amd64.debatau paket terkait ppp di / tmp.

sudo  find  /tmp  -name  ppp*

Tidak ada yang ditemukan.

Di mana paket ppp di / tmp dengan perintah

cd  /tmp
sudo  apt-get install  -d  ppp

??

it_is_a_literature
sumber

Jawaban:

33

Gunakan --download-only:

sudo apt-get install --download-only pppoe

Ini akan mengunduh pppoedan semua dependensi yang Anda butuhkan, dan menempatkannya /var/cache/apt/archives. Dengan cara itu, pengikut berikutnya apt-get install pppoedapat menyelesaikan tanpa unduhan tambahan.

Stephen Kitt
sumber
19

Gunakan perintah ini:

sudo apt-get download pppoe

perintah ini memungkinkan Anda mengunduh paket dan persyaratan ke direktori saat ini. Juga untuk mengakses .debfile yang diinstal , Anda dapat memeriksa jalur ini:

/var/cache/apt/archives
Hamid Yousefi
sumber
5
Ini tidak mengunduh dependensi, hanya mengunduh paket yang disebutkan dalam argumen.
Stephen Kitt
9
Selain itu, solusi ini tidak perlu ada di sudosini. Ini akan mengunduh paket ke direktori kerja.
LinuxSecurityFreak
8

Untuk sedikit memperluas jawaban Hamid, salah satu dari ketiga perintah yang sangat mirip ini akan berfungsi jika keinginan Anda hanya mengunduh paket yang ditentukan, dan tidak ada yang lain . (Use case Anda tidak dinyatakan dengan jelas, jadi tidak jelas apakah itu yang ingin Anda lakukan.) Mereka semua mengunduh file deb yang sesuai dengan paket yang ditentukan ke direktori saat ini.

apt-get download ppoe

apt download ppoe

aptitude download ppoe

Dua perintah pertama adalah bagian dari aptpaket, yang ketiga adalah bagian dari aptitudepaket. Mereka semua setara secara fungsional, sejauh yang saya tahu, meskipun sintaks dan perbedaan penggunaan antara aptdan aptitudedapat menyebabkan Anda lebih memilih salah satu dari mereka dalam keadaan tertentu. Dan tentu saja aptadalah perintah yang lebih baru dari apt-get- itu berisi apt-getdan apt-cachefungsionalitas sambil membuang beberapa bagasi historis.

Perhatikan juga bahwa jika ada dari perintah ini yang menemukan file sudah ada di direktori saat ini, mereka tidak akan mengunduhnya lagi. Namun, saya tidak yakin kriteria apa yang mereka gunakan untuk memeriksa - atau, dengan kata lain, betapa sulitnya untuk membodohi mereka. File kosong tidak berfungsi.

Faheem Mitha
sumber
2

aptmenyediakan perintah pengambilan sumber - apt source.

$ apt source pppoe
Reading package lists... Done
Picking 'rp-pppoe' as source package instead of 'pppoe'
Need to get 239 kB of source archives.
Get:1 http://mirror.location.org/debian stretch/main rp-pppoe 3.12-1.1 (dsc) [1,708 B]
Get:2 http://mirror.location.org/debian stretch/main rp-pppoe 3.12-1.1 (tar) [224 kB]
Get:3 http://mirror.location.org/debian stretch/main rp-pppoe 3.12-1.1 (diff) [13.2 kB]
Fetched 239 kB in 0s (1,241 kB/s)    
dpkg-source: info: extracting rp-pppoe in rp-pppoe-3.12
dpkg-source: info: unpacking rp-pppoe_3.12.orig.tar.gz
dpkg-source: info: unpacking rp-pppoe_3.12-1.1.debian.tar.xz
dpkg-source: info: applying 01_auto_ifup.patch
dpkg-source: info: applying 02_change_mac_option.patch
dpkg-source: info: applying 03_man_pages.patch
dpkg-source: info: applying 04_ignore_broadcasted_pado_packets.patch
dpkg-source: info: applying 05_change_default_timeout.patch
dpkg-source: info: applying 06_typo_fixes.patch

Agar ini berfungsi, Anda memerlukan repositori sumber di direktori sources.listatau Anda sources.list.d( /etc/apt/sources.listatau /etc/apt/sources.list.d/. Baris seperti itu akan terlihat seperti (ganti dengan mirror dan repositori yang sesuai):

deb-src http://mirror.location.org/debian/ stretch main contrib non-free
Samuel Waren
sumber
2

Ketika bekerja pada satu server Ubuntu yang tidak memiliki internet tetapi dapat diakses melalui intranet perusahaan. Menginstal paket sangat menantang.

Saya membuat skrip yang akan mencari dependensi dari paket yang diperlukan, menyimpannya dalam daftar, kemudian menelusuri daftar untuk mengunduh dependensi anak lain karena kadang-kadang hanya satu pass dari dependensi mengunduh tidak cukup. Setelah itu mengunduh dependensi itu bundel mereka dalam file zip yang dapat dipindahkan secara keseluruhan ke server. Saya menyebut skrip ini pkgdownload .

Ini dapat ditemukan di GitHub saya di sini

Ini gambarnya di tempat kerja: masukkan deskripsi gambar di sini

Yusuph wickama
sumber
Kerja bagus! Fitur tambahan yang bagus akan menjadi opsi untuk mengunduh recommendsdan suggestsmengemas. Lihat askubuntu.com/a/117646/6227
ubiquibacon