Wenn Sie Nautilus als lokales Root-Konto (mit sudo, gksu usw.) ausführen, erhalten Sie offensichtlich keinen Root-Zugriff auf den Server.
Das Problem ist, dass der SFTP-Server in OpenSSH (mit dem Nautilus eine Verbindung herstellt) keine Befehle wie unterstützt sudo
- es ist keine Shell-Umgebung. Was Sie einfach verlangen, ist mit den Standardmechanismen nicht möglich.
Sie sind jedoch nicht ohne Optionen. Ich bin mir nicht sicher, wie vertraut Sie mit SSH sind, aber Sie können Ports über eine Verbindung zurücktunneln, damit Sie eine normale Verbindung herstellen, einen einfachen FTP-Server als Root ausführen und all das über SSH zurück auf Ihren Computer tunneln können. Klingt schrecklich, ist aber ziemlich einfach.
Führen Sie auf dem Server Folgendes aus:
# newer Ubuntu installs:
sudo apt-get install python-pyftpdlib
# older Ubuntu installs
sudo apt-get install python-pip
sudo pip install pyftpdlib
Führen Sie dann von Ihrem Computer aus einen kurzen SSH-Befehl aus:
# If you installed with pip
ssh -tL localhost:2121:localhost:2121 -L localhost:21212:localhost:21212 user@server "sudo python -m pyftpdlib -i localhost -w -p 2121 -r 21212-21212 -d /"
# If you installed with apt-get (and pyftpdlib is pre-1.3, true in 13.10)
ssh -tL localhost:2121:localhost:2121 -L localhost:21212:localhost:21212 user@server "sudo python -m pyftpdlib.ftpserver -i localhost -w -p 2121 -r 21212-21212 -d /"
Stellen Sie dann in Nautilus (auf Ihrem Computer) eine Verbindung zu her ftp://localhost:2121
. Die Magie von SSH leitet dies an den FTP-Server weiter, der als Root ausgeführt wird.
Es gibt andere Protokolle (ich habe eine Weile nach einem besseren gesucht), aber FTP ist dank eines großen Teils am einfachsten in Betrieb zu nehmen pyftpdlib
. Sie könnten ähnliche Dinge mit webdav et al tun, da bin ich mir sicher ... Es wäre einfach viel mehr Hacking.