Ist der Befehl `sudo rm / Desktop / filename` sicher?

7

Ist das sicher zu benutzen?

sudo rm /Desktop/FILENAME

Der Grund für die Verwendung von sudo ist, dass ich die Datei nicht sehen kann.

Ich habe versehentlich getippt sudo rm /Desktop/index.html. Es wurde nicht gefunden, aber konnte noch etwas gelöscht werden?

Todesstoß
quelle
13
Es gibt keinen / Desktop-Ordner, daher wird ein Fehler zurückgegeben.
Ende
3
Warum können Sie die Datei nicht sehen? Sie haben (offensichtlich) sudoBerechtigungen, damit Sie jeden Befehl wie lsoder ausführen können - catoder ihn lesssogar in einem GUI-Editor über das Terminal öffnen können.
hmayag
3
Du bist weise zu fürchten sudo. Seien Sie immer misstrauisch, wenn Sie aufgefordert werden, sudo nur für Aufgaben zu verwenden, die Sie normalerweise auf jedem Computer ausführen können, z. B. zum Verwalten Ihrer eigenen Dateien.
Thomasrutter
1
@Deathstroke, wenn Sie die Datei nicht sehen können, müssen Sie herausfinden, was Sie tun müssen, um die Datei zu sehen. Dies ist wie Schießen, während Ihre Augen geschlossen sind.
Karthik T
1
@Deathstroke nächstes Mal hinzufügen, -vdamit Sie sehen, was Sie löschen, oder -viso würde es um Bestätigung bitten
Tymric

Antworten:

16

Der Schrägstrich zu Beginn /Desktophätte dazu geführt, dass Desktopim Stammverzeichnis des Dateisystems nach einem Ordner gesucht wurde, der mit ziemlicher Sicherheit nicht vorhanden ist. Daher wäre nichts gelöscht worden.

Denken Sie in Zukunft daran, dass beide sudound rmdie Fähigkeit haben, gefährlich zu sein. Sie sollten sudo niemals nur zum Bearbeiten Ihrer eigenen Dateien benötigen. Wenn Sie sudo zum Löschen einer Datei benötigen, sollten Sie diese Datei im Allgemeinen nicht löschen, es sei denn, Sie wissen, was Sie tun (es gibt Ausnahmen, zum Beispiel ist sie sicher zu ändern / löschen, was immer Sie in /var/wwwoder /srvusw. wollen , wenn Sie einen Server betreiben oder /usr/localwenn Sie Ihre eigene Software kompilieren und installieren, aber das ist fortgeschrittener als die allgemeine Verwendung).

Nun rm, es verschiebt die Dinge nicht in einen "Papierkorb" für Sie. In diesem Sinne ist es nicht so sicher, da es leicht ist, etwas unwiederbringlich zu verlieren.

Es hört sich höchstwahrscheinlich so an, als hätten Sie am falschen Ort gesucht, oder? index.htmlist keine versteckte Datei (versteckte Dateien beginnen mit einem Punkt), daher sollten Sie sie in Ihrem Dateibrowser sehen können.

thomasrutter
quelle
Vielen Dank! wirklich geholfen, wenn es etwas löschte, würde ich es richtig bemerken?
Deathstroke
1
Nein, nicht unbedingt. Es ist möglich, mit rm und sudo alle Arten von Schaden zu verursachen, die Sie zunächst nicht bemerken und für einige Zeit möglicherweise nicht bemerken. Aber wenn der Befehl so ausgeführt worden wäre, wie Sie es gesagt haben, mit dem Schrägstrich am Anfang, hätte er dem System keinen Schaden zugefügt.
Thomasrutter
ok danke, also ist sudo okay, um Sachen zu installieren, die nicht gelöscht werden sollen?
Deathstroke
es sagte, dass es die Datei nicht finden konnte, was bedeutet, dass nichts gelöscht wurde?
Deathstroke
4
sudo is okay to install stuff not to delete- nicht genau. sudoSie haben jederzeit die Möglichkeit, Ihr System leichter zu beschädigen. In diesem Sinne ist es also nicht "sicher". Bei der Installation neuer Software über die Konsole ist dies jedoch "erforderlich". Bei der Verwaltung Ihrer eigenen Dateien sollte sudo niemals erforderlich sein. Außerdem ist "rm" nur insofern unsicher, als es Dateien löscht, ohne sie im Papierkorb zu speichern. Wenn Sie mit konsolenbasierten Tools nicht sicher sind, können Sie die relative Sicherheit des Desktops mit seinen Dateimanagern und dem Softwarecenter nutzen.
Thomasrutter
21

Nein, es ist nachdrücklich nicht sicher. Hier ist die Sache: Sie können Dateien löschen, ohne die Sie besitzen sudo. Wenn Sie die Datei nicht besitzen und diese Frage hier stellen, müssen Sie sich fragen: "Muss ich diese Datei löschen?"

Überbeanspruchung und konsequenter Missbrauch von sudoist eine der Fluchten von Ubuntu.

muru
quelle
2
stimmte zu, aber wenn es sich um eine Datei handelt, die er von irgendwoher kopiert oder mit einem sudo wget heruntergeladen hat und die root gehört, möchte er möglicherweise eine Antwort darauf, wie man sie einfach entfernt
sbergeron
Die Antwort von @sbergeron muru ist gut auf diese generische Frage. Ihr Benutzerfall mag eine bestimmte Ausnahme sein, aber ich würde nicht verallgemeinern und sagen, dass sudo rm ... "sicher" ist. Im Allgemeinen müssen Benutzer sudo nur für Systemdateien verwenden, und im Allgemeinen ist dies eine schlechte Idee.
Panther
2
@sbergeron In diesem Fall sollte er dieses Detail bereitstellen. So wie es aussieht, ist dies eine pauschale Frage.
Muru
Gut, dass es nicht funktioniert hat, weil es die Datei nicht gefunden hat. Ich habe einen Neustart durchgeführt und die Datei wurde angezeigt. Ich habe sie einfach weggeworfen. Danke! Es war eine HTML-Datei, die ich verlegt habe
Deathstroke
Interessant. Ich habe einige seltsame Probleme mit Ubuntu 14.04 und neuen Dateien in ~ / Desktop gesehen, die nicht in der Desktop-Ansicht angezeigt wurden (aber ich konnte sie in der Benutzeroberfläche des Dateisystem-Browsers finden).
Lambart
12

Verwenden Sie niemals sudo rm und eine absolute URL oder einen Platzhalter, wenn Sie helfen können .

Eines Tages wirst du einen Tippfehler haben und dich selbst hassen.

RobotHumans
quelle
5
Obwohl es für ein Einzelbenutzer-Desktop-Setup nicht viel Schlimmeres gibt, auf das sudoSie nicht verzichten können. Tatsächlich stammen Dateien, mit denen Sie nur löschen können, im sudoAllgemeinen direkt aus der Distribution und sind daher trivial wiederherzustellen, wohingegen Benutzerdateien im schlimmsten Fall unwiederbringlich sind (natürlich sollten Sie die Versionskontrolle und externe Backups ordnungsgemäß verwenden, aber auch viele Leute nicht). - Trotzdem: Es ist definitiv eine schlechte Angewohnheit, Sudo hineinzuwerfen, nur um deine Sandwiches zu bekommen ! Als ich das letzte Mal ddüber die falsche Festplatte gefahren bin, habe ich mich selbst gehasst ...
links um den
2
files you can only delete with sudo generally come straight from the distribution and are therefore trivial to restore- Ich würde dem überhaupt nicht zustimmen. Erstens ist es nichts für Anfänger, zu wissen, welches Paket neu installiert werden soll. Und es gibt viele Root-Dateien, die das System beim Löschen nicht in der Lage machen, Pakete zu installieren, zu booten oder andere schwer zu diagnostizierende Probleme zu erstellen.
Thomasrutter
2
Ganz zu schweigen davon, auch wenn Sie wussten, was Sie neu installieren sollten ... Nicht jeder belässt die meisten Konfigurationsdateien in / etc als Standardrecht :)
RobotHumans
@neon_overload: "trivial" ist vielleicht etwas zu stark, aber wirklich - auf einem Desktop löschen Sie im Zweifelsfall einfach die Root-Partition und installieren das gesamte Betriebssystem neu, wobei nur Ihre persönlichen Daten in der Home-Partition verbleiben. Kostet ein paar Stunden; sicherlich trivial im Vergleich zum Löschen einer Datei, an der Sie seit Monaten arbeiten (in diesem Fall ist es natürlich verrückt , keine Backups zu haben oder zumindest zu versuchen, die Daten wiederherzustellen - aber ich habe es mehr als gehört einmal, dass die Leute diese monatelange Arbeit zweimal verrichteten). - Natürlich kann auf einem Mehrbenutzersystem / Server das Gleichgewicht ganz anders aussehen.
links um den
7

Verwenden Sie ~/Desktopden Pfad, da er /Desktopnicht vorhanden ist. Ersterer ist der Pfad zu Ihrem Desktop. Wenn es sich um eine einzelne Datei handelt, sudo rm ~/Desktop/filenameist die Verwendung absolut in Ordnung. Stellen Sie einfach ABSOLUT sicher, dass Sie die Datei löschen möchten. Wenn sie sich in Ihrem Desktop-Ordner befindet und über Sudo-Berechtigungen verfügt, fragen Sie sich, ob sie gelöscht werden muss und ob Sie eine Kopie erstellen müssen.

sbergeron
quelle
Was meinst du mit "und hat Sudo-Berechtigungen"?
Eliah Kagan
ist im Besitz von root, sorry
sbergeron
Der Teil "sudo" ist nicht "absolut in Ordnung", wenn es sich um Ihre eigene Datei handelt. Sudo ist nicht erforderlich. Wenn es sich nicht um Ihre eigene Datei handelt, ist es im Allgemeinen nicht in Ordnung, sie zu löschen.
Thomasrutter
Wenn Sie es als root heruntergeladen haben oder sudo verwenden, gehört es root, oder wenn es aus einem anderen Home-Ordner kopiert wurde, um Dateien oder etwas anderes zu transportieren, hat es wahrscheinlich Root-Besitz, ist aber in der Motivation zum Entfernen völlig gerechtfertigt.
Sbergeron
@sbergeron Hmm ... vorzuschlagen zu löschen, ~/Desktopwenn nicht ganz klar ist, dass dies das Verzeichnis ist, das er löschen wollte, ist meiner Meinung nach nicht sehr gut.
Volker Siegel
4

"Sicher" ist eine interessante Beschreibung für alles mit sudo. Dies sudo rm /Desktop/filenameist nur dann "sicher", wenn Sie löschen möchten filename. Es wird nicht gelöscht /Desktop. Sei aber vorsichtig. Ich denke du willst es benutzen sudo rm Desktop/filename. Dies wird filenameunter Desktopaus dem Verzeichnis gelöscht, in dem Sie sich gerade befinden. Standardmäßig befindet sich Desktopin Ihrem root ( /) - Verzeichnis kein Verzeichnis. Dadurch sudo rm Desktopwird Desktop nicht einmal gelöscht, da es sich um ein Verzeichnis handelt. Wenn Sie ein Verzeichnis entfernen möchten, tun Sie dies sudo rm -r Desktop. In gewissem Sinne wäre das sicher. Möglicherweise müssen Sie sudo gar nicht erst verwenden, wenn es sich um eine Datei handelt, die Sie besitzen (oder auf die Sie zugreifen können). Sei vorsichtig mit Sudo.

Zzzach ...
quelle
+1 für die Verwendung sudound safeim selben Satz.
Kaz Wolfe
1

Der Befehl 'rm' mit oder ohne sudo ist absolut sicher, wenn Sie wissen, was Sie tun und vorsichtig sind. Wenn Sie versehentlich etwas löschen, kann es nicht wiederhergestellt werden. (Nicht ganz richtig, gelöschte Dateien können manchmal abgerufen werden, aber ich würde mich nicht darauf verlassen.)

Solange Sie genau diesen Befehl ausführen und dies die Datei ist, die Sie löschen möchten, ist sie sicher. Wenn Sie rm verwenden (auch ohne root) und etwas falsch läuft (normalerweise mit dem Platzhalter *), können Sie alle Ihre Dateien löschen. (Natürlich machen Sie regelmäßige Backups, oder?)

Die eigentliche Frage ist, warum Sie einen / Desktop-Ordner haben. Du meinst wahrscheinlich ~ / Desktop.

Auf jeden Fall ist der Befehl sicher. Befehle wie sudo und rm sind nicht von Natur aus gefährlich. Sie ermöglichen es Ihnen nur, dumme Dinge zu tun, wenn Sie einen Befehl falsch eingeben. Auf einem Einzelbenutzersystem ist rm auch ohne sudo ungefähr so ​​gefährlich, da Sie sich wahrscheinlich mehr um Ihre persönlichen Dateien als um Systemdateien kümmern.

Ian D. Scott
quelle
3
"ist völlig sicher, wenn Sie wissen, was Sie tun" Nun, das ist eines "wenn" zu viele für meinen Geschmack. Die Sache ist die meiste (wenn nicht die ganze) Zeit, in der Sie glauben zu wissen, was Sie tun. rmist wie eine geladene Waffe. Behandle es mit größter Sorgfalt und vielleicht erschießt du dich nicht. So sudo rmkönnen Sie auch Ihre Mitbewohner erschießen oder eine Rakete gegen Ihr Haus abfeuern.
hmayag
1
Zu den Backups: Ich würde bis zu zwei Stellen sichern. Ich hatte gerade die ungewöhnliche Situation, dass eine Backup-Festplatte ausfiel, als ich sie brauchte. Es ist keine schöne Erfahrung ...
MadTux
1

Möglicherweise liegt es daran, dass Sie die Datei nicht sehen können, weil der Dateiname mit einem 'beginnt.' und wird daher als versteckte Datei behandelt. In Ubuntu können Sie mit Strg + h versteckte Dateien anzeigen. Im Terminal können Sie eingeben

ls -a

versteckte Dateien anzeigen.

Die oben aufgeführten Probleme mit 'sudo' sind richtig. Sei vorsichtig damit. Es ist besser, es einfach zu löschen oder so zu gestalten, dass Sie es löschen können (chmod / chown) und es dann einfach normal löschen können. Sicher ist sicher :)

Bearoplane
quelle