Debian'da gpg2'nin varsayılan uygulaması olarak nasıl gpg2 ayarlanır?


20

Debian kurulumum gpg 1.4.12 ile geldi, 2.0.19 çalıştırmak istiyorum. İlki pakete gnupgve sonuncusuna gelir gnupg2. Bildiğim kadarıyla barış içinde bir arada bulunabilirler, ancak ben gerçekten gpg2varsayılan sağlayıcı olarak kullanmak istiyorum gpg. update-alternativesVarsayılanları ayarlamak için kullanılan debian'ın olduğunu biliyorum , ancak içinde gpgveya gnupgiçinde hiçbir şey bulamıyorum .

Bunu nasıl ayarlayabilirim?

Yanıtlar:


13

Cevap

update-alternativesyalnızca bir paket açıkça alternatif sistemi kullanıyorsa çalışır. gnupg ve gnupg2 yapmaz.

Arka fon

Genellikle sebep, kullanıcı arabiriminin çok fazla farklılaşmasıdır, böylece bir aracı kullanan komut dosyaları aniden diğer araçlar çalışırsa çalışmaz. Buradaki tipik bir örnek markdown. markdownDebian'daki her uygulamanın farklı komut satırı seçenekleri vardır, bu nedenle alternatifler sistemi kullanımda değildir.

gpg'nin ve gpg2' nin komut satırı seçenekleri çok farklı görünmüyor, ancak bazı işlemlerde veya çıkış kodlarında ortaya çıkan çıktı bazı yerlerde önemli ölçüde farklılık gösteriyor.

Farklı oldukları ve minimum kurulum ve kurulum ortamı için önemli olan şeylerden biri bağımlılıklarıdır. İken gnupgpaket öncelik "standart" olduğunu (yani standart bir kurulumda yüklü) ve paketin bir bağımlılık apt, paket gnupg2şu anda sadece öncelik "isteğe bağlı" olduğu oldukça biraz daha kütüphanelerde çeker.

Debian iki açık hata raporları, her paketin karşı bir (var # gnupg karşı 561.540 ve gnupg2 karşı # 483724 için alternatifler sisteminin kullanımını talep eden), gnupgve gnupg2.

Şu anda bu hata raporlarından biri etiketlendi wontfix, ancak etiketin "şimdilik" olduğu söyleniyor ve gelecekte alternatif sistemin kullanılması (veya varsayılan hale geleceği) durumunda dikkat edilmesi gereken bazı ipuçları var gnupg2.

Gerçekten İstersen Nasıl Yapılır

Eğer gerçekten istiyorsan gpg2aradığınız takdirde çağrılacak gpg, ben ile kabuk, örneğin bir uygun takma adı eklemektir tavsiye alias gpg=gpg2Bourne-shell uyumlu kabuklar için. Çok fazla zarar vermemeli, ancak yalnızca komut satırından çağrıldığında çalışacaktır.

Eğer gerçekten sahip olmak istiyorsanız /usr/bin/gpggnupg2 olmasını istiyorsanız, bunu ile yapabilirsiniz dpkg-divert, örneğin yeniden adlandırma gpgiçin gpg1ve sonra gpg2için gpg. Yeniden adlandırılan dosyalar dpkg-divert, ilgili paketlerin güncellemesinden sonra bile yeni adlarını saklar.

Ancak uyarılmalıdır: APT gerektirir ve kullanır gpgve gerçekten olmasını beklemeyebilir gpg2. Yani dpkg-divertbu şekilde kullanırsanız , sisteminizin parçalarını kırabilirsiniz . (Kök olmayan kullanıcılar için Shell takma adları, bu konuda iyidir.)


7

Bu soruya çok yakında yeni bir cevap verilecek: Debian 9 Stretch kullanın (yaklaşık 2 yıl sonra serbest bırakılacak ;-) veya daha yenisi).

Amaç: At DebConf15 Debian GnuPG Paketi Maintainers açıklandı gelecekte, GnuPG 2.x olacağı /usr/bin/gpgDebian ve GnuPG 1.x komutu ile yeniden adlandırılır /usr/bin/gpg1.

Yine de /usr/bin/gpgbeğenilerinize göre başka bir GnuPG sürümüne geçemezsiniz (bunun arkasındaki nedenle ilgili diğer cevabımı görün), ancak en azından GnuPG 2.x Debian Kararsız ve Debian Testi'nde yakın gelecekte varsayılan uygulama olacaktır. ve çok yakında Debian Experimental'da.


Yan not, 2017-06-14: en son kararlı sürümde debian araçları hala dahili olarak kodlanmış gpg1 kullanıyor. Debian forks (ubuntu, nane) düzeltmiş görünüyor.
peterh Monica

Yan not, 2017-06-17: en son kararlı sürümde debian araçları gpg2 kullanıyor. (Evet, geleceği görebiliyorum.; Sadece şaka yapıyorum, ancak @peterh bir sonraki Debian Stable sürümünün tam olarak değiştiğinden üç gün önce olduğu gibi bu yorumu yayınladı.
Axel Beckert

İyi teşekkürler! Ancak, gpg2'ye kazı yapmak bana oldukça iyi öğretti, neden gpg versiyonlarını yükseltmek için bu kadar yavaşsınız? Bence sorunun asıl sebebi gpg. Sanırım, belki bir proje çatalı gerekli görünüyor, peki ya? Biri github'a bir gpg2 çatalı açıp tüm saçmalıklarını düzeltseydi, nasıl alınırdı? Bunu yapmayı düşünüyorum, ama sonsuza dek unutulmuş bir arşiv olarak kalırsa, sadece fiyatı değmez.
peterh, Monica
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.