Eda memasang pakej vendor, arahan mengembalikan sifar, dan masih tiada aplikasi VPN untuk dilancarkan. Itu berlaku apabila pakej yang anda pasang mengkonfigurasi repo dan bukannya menyertakan klien, dan perbezaannya kelihatan pada apa yang ditinggalkannya pada cakera. Sama ada anda memerlukan kedua-duanya, dan dalam urutan apa, bergantung pada tiga syarat dan bukan pada penamaan vendor. Keputusan di bawah mengekalkan penyediaan sumber, penyegaran metadata dan pemasangan aplikasi sebagai tindakan berasingan dengan bukti berasingan.

Apa yang sebenarnya diubah oleh setiap pakej

Pakej konfigurasi repo menulis entri sumber APT, mengimport kunci tandatangan yang dipercayai entri itu, dan keluar. Muatannya ialah beberapa fail di bawah /etc/apt serta gelang kunci, dan tiada apa yang boleh dijalankan. Pakej klien membawa daemon atau aplikasi desktop, pustakanya dan kebergantungannya, dan itulah objek yang berakhir dalam menu atau unit systemd.

Nama fail yang berakhir dengan -release mencadangkan jenis pertama, tetapi akhiran itu konvensyen, bukan jaminan. Pernyataan yang boleh dipercayai tentang peranan pakej ialah senarai fail dan kebergantungannya, kedua-duanya boleh dibaca sebelum apa-apa dipasang. Vendor yang membentuk semula pembungkusan mengekalkan nama fail yang sama dan menukar kandungan, jadi jawapan yang disalin daripada benang dua tahun lalu boleh menerangkan pakej yang tidak lagi wujud. Baca arahan semasa penyedia untuk keluaran yang anda jalankan, kemudian semak apa yang diisytiharkan oleh pakej itu.

Tiga peringkat berikutan pemisahan itu: daftarkan sumber, segarkan metadata yang disuapinya, kemudian pasang aplikasi mengikut nama. Panduan pemasangan Debian dan Ubuntu mengekalkannya berasingan, sebab itulah klien diminta pada langkah kemudian dan bukan oleh pakej yang menyediakan sumber.

Tiga syarat yang menentukan urutan

Syarat pertama ialah sama ada vendor menerbitkan repo untuk keluaran pengedaran anda yang tepat. Baris sumber yang dibina untuk satu suite boleh diselesaikan terhadap kebergantungan suite lain dan memasang campuran yang tidak diuji sesiapa.

Kedua ialah sama ada pengedaran anda sudah membawa klien. Apabila ada, pakej distro mengikut peralihan pustaka dan kemas kini keselamatan keluaran anda, manakala pakej vendor mungkin bergerak lebih pantas dan membawa salinan sendiri pustaka dikongsi.

Ketiga ialah ciri mana yang benar-benar anda perlukan. Binaan vendor mungkin membawa pelaksanaan protokol yang lebih baharu atau integrasi desktop yang belum dibungkus oleh pengedaran anda, dan itu sebab sebenar untuk menerima sumber kedua. Jika binaan distro menampung penggunaan anda, menambah repo pihak ketiga membeli kerja kemas kini dan satu lagi hubungan kepercayaan dengan balasan yang sangat sedikit.

Selesaikan ketiga-tiga jawapan itu sebelum baris sumber wujud, kerana mengeluarkannya kemudian bermakna membersihkan pakej dan kuncinya. Setelah selesai, urutan dalam laluan vendor bukan pilihan: sumber dahulu, metadata kedua, aplikasi ketiga, tidak pernah sebaliknya.

Semak apa yang ditinggalkan oleh pakej keluaran

Sebelum memasang apa-apa lagi, baca senarai fail dan bukan penerangan. Pada sistem keluarga Debian, manifes pakej menjawab apa yang dikonfigurasikannya dan di mana kuncinya mendarat.

dpkg -L proton-vpn-release | grep -E 'apt|keyring'
apt-cache policy proton-vpn-gnome-desktop
grep -r protonvpn /etc/apt/sources.list.d/

Baris pertama menunjukkan fail sumber dan laluan gelang kunci, manakala baris kedua melaporkan versi apa yang boleh ditawarkan sumber yang dikonfigurasi. Jika apt-cache policy tidak mencetak apa-apa untuk nama klien, penyegaran metadata belum berlaku atau sumber menyasarkan suite lain. Baris ketiga mengesahkan entri berada di tempat APT benar-benar membaca.

Padankan laluan gelang kunci dengan medan signed-by= dalam baris sumber. Kunci dalam direktori yang salah menghasilkan ralat sumber tidak disahkan, yang merupakan kerosakan berbeza daripada pakej tidak tersedia.

Anggap kegagalan kebergantungan sebagai peringkat berasingan

Memasang .deb yang dimuat turun dengan dpkg -i tidak menyelesaikan apa-apa: ia menyemak kebergantungan, melaporkan apa yang hilang dan meninggalkan pakej separuh dikonfigurasi. Itu tingkah laku yang dijangka, bukan muat turun rosak.

apt --fix-broken install kemudian meminta APT keadaan yang konsisten daripada sumber yang anda ada. APT tidak tahu VPN mana yang anda mahukan, dan pelannya boleh mengalih keluar pakej untuk memenuhi kekangan yang ditemuinya. Baca transaksi yang dicadangkan sebelum menjawab ya, dan berhenti jika pengalihan keluar menyentuh sesuatu yang anda perlukan. Mengulangi pembaikan tanpa membaca pelan ialah cara jurang kebergantungan kecil menjadi desktop yang tidak lagi dimulakan.

Simpan mesej bermakna pertama daripada pengurus pakej dan kelaskannya sebelum bertindak. Repo tanpa tandatangan, pakej yang tidak dibawa sumber yang dikonfigurasi, konflik versi, dan klien yang bermula lalu mati ialah empat kerosakan berasingan.

Sahkan aplikasi, bukan repo

Pastikan klien mencapai keadaan terpasang, kemudian pastikan program bermula. dpkg-query -W -f='${Status} ${Version}' proton-vpn-gnome-desktop sepatutnya melaporkan install ok installed dengan versi, dan kegagalan pelancaran selepas itu ialah masalah aplikasi dan bukan pembungkusan.

Rekod pemilik repo dan pakej aplikasi sebagai objek berasingan, supaya pengalihan keluar kemudian mengambil yang betul dan membiarkan yang lain utuh. Apabila vendor menukar panduannya, entri sumber ialah yang anda baca semula; nama klien ialah yang anda pasang semula.

Artikel berkaitan