Warum kann ich keine CDs in ein Verzeichnis kopieren?


14

Ich verwende Ubuntu 10.04.2 LTS. Warum kann ich nicht cdin das /var/wwwVerzeichnis?

david@ubuntu:/var$ pwd
/var

david@ubuntu:/var$ ls -l
drwxrwxr-- 13 root root  4096 2011-02-26 21:53 www

david@ubuntu:/var$ cd www
-bash: cd: www: Permission denied

david@ubuntu:/var$ sudo cd www
sudo: cd: command not found

2
cdist eine eingebaute Shell, die sudonicht verwendet werden kann.
Bis auf weiteres angehalten.

Und selbst wenn es benutzt werden könnte, wäre es sinnlos. Im Allgemeinen gibt es keine Möglichkeit, einen anderen Prozess dazu zu bringen, sein Arbeitsverzeichnis zu cdändern. Unabhängig davon , was die ausführbare Datei tun kann, kann sie den Befehl cwd des Shell-Prozesses nicht ändern.
David Schwartz

Antworten:


13

Sie benötigen die Ausführungsberechtigung, um in ein Verzeichnis zu cden.

sudo chmod o+x /var/www

3
Ein bisschen Klarheit: Im obigen Beispiel haben sowohl root (der Benutzer) als auch root (die Gruppe) das Ausführungsbit gesetzt. So können Mitglieder der Gruppe root ins www cd. Der Benutzer david kann keine CDs erstellen, da er nicht in den Stammgruppenmitgliedern enthalten ist. Sie können dies überprüfen, indem Sie den Inhalt von / etc / group
adamo

1

Es gibt einen Grund, die '' Anderen '' am Betreten des Verzeichnisses zu hindern, oder? Daher würde ich vorschlagen, Root-Zugriff zu erhalten, um in dieses Verzeichnis zu gelangen, einige Dinge zu erledigen und es zu verlassen und die sudo-Shell zu löschen.

sudo -i 
cd /var/www
# do your thing
cd -
exit

1

Nur ein paar weitere Informationen, es wäre ratsam, einen Webbenutzer und eine Gruppe für Ihr System zu erstellen und keine Dienste als Root auszuführen. Dann können Sie bei Bedarf auch Benutzer zu dieser Gruppe hinzufügen, ohne Root-Rechte zu vergeben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.