2010-02-02 9 views
24

Ich bekomme diesen Fehler, wenn ich diesen Code ausführen.

gpg --fingerprint 

gpg: WARNUNG: unsicheres Eigentum auf Konfigurationsdatei `/home/dylan/.gnupg/gpg.conf

Das Problem scheint mit Berechtigungen zu sein, aber ich habe versucht, dieser Code, und es schien nichts zu ändern. Durch Nautilus überprüfen, besitze ich die Datei und habe Lese-/Schreibberechtigung, und alle anderen auf "keine" gesetzt.

sudo chmod 600 ~/.gnupg/gpg.conf


[email protected]:~$ sudo chown -R dylan ~dylan/.gnupg 
[sudo] password for dylan: 
[email protected]:~$ chmod 600 ~/.gnupg/gpg.conf 
[email protected]:~$ chmod 700 ~/.gnupg 
[email protected]:~$ gpg --fingerprint 
[email protected]:~$ sudo gpg --fingerprint 
gpg: WARNING: unsafe ownership on configuration file `/home/dylan/.gnupg/gpg.conf' 
[email protected]:~$ ls -al /home/dylan/.gnupg 
total 24 
drwx------ 2 dylan dylan 4096 2010-02-02 13:46 . 
drwxr-xr-x 60 dylan dylan 4096 2010-02-02 13:43 .. 
-rw------- 1 dylan dylan 9364 2010-01-27 06:34 gpg.conf 
-rw------- 1 dylan dylan 0 2010-01-27 06:34 pubring.gpg 
-rw------- 1 dylan dylan 0 2010-01-27 06:34 secring.gpg 
-rw------- 1 dylan dylan 40 2010-01-27 06:34 trustdb.gpg 
[email protected]:~$ 
+1

@Nona: Wie ich bereits sagte, führt der Befehl sudo (8) Befehle als "root" (Systemadministrator) aus. Wenn Sie root sind, dürfen Sie alles tun, Ihre Erlaubnis, die Sie mit chmod (1) geändert haben, betrifft nicht "root". Deshalb erhalten Sie die Warnung von gpg (1). 'dylan @ Majuscule: ~ $ gpg --fingerprint' Macht was es tun soll? – emil

Antwort

41

Commands mit sudo laufen als Wurzel ausgeführt werden. Was möchten Sie tun, um die Dateien als Benutzer dylan, Recht zu besitzen?

Vielleicht passiert es, dass root jetzt Ihre Dateien besitzt.

sudo chown -R dylan ~dylan/.gnupg 

und dann als dylan: Dies kann durch geändert werden

chmod 600 ~/.gnupg/gpg.conf 
chmod 700 ~/.gnupg 

das Ergebnis zu überprüfen:

ls -l ~/.gnupg 
ls -ld ~/.gnupg 

Die Buchstaben auf der linken Seite nach ls Schreiben bedeutet:

r Lesezugriff (4), w Schreibzugriff (2), x ausführen acess (1)

die also 6 = 4 + 2 -> Lese- und Schreibzugriff

und das 7 = 4 + 2 + 1 -> Lesen, Schreiben und führen Sie den Zugriff aus

Um in ein Verzeichnis eingeben zu können, benötigen Sie den Ausführungszugriff.

Wenn Sie ein Verzeichnis erstellen möchten, in dem es nur möglich ist, die Dateien zu traversieren, aber nicht, können Sie Folgendes tun: chmod 100 the_directory.

Lesen Sie die chmod(2) Handbuch für weitere Informationen.

1

Führen Sie den Befehl gpg als Dylan (d. H. Nicht mit Sudo) und Sie werden den Fehler nicht sehen. Sie müssen nicht root sein, um auf GPG-Schlüssel zuzugreifen, die Ihrem Benutzer gehören.

Umgekehrt können Sie als root auf die GPG-Schlüssel eines anderen Benutzers zugreifen, indem Sie die Option --homedir angeben. In diesem Fall wird der Fehler weiterhin angezeigt, es sei denn, Sie greifen auf die GPG-Schlüssel von root zu.