Debian: mit chmod löschen verbieten?

7 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Du scheinst generell etwas Dokumentationsscheu zu sein:

man chmod

Dort wird unter anderem auch das restricted deletion flag (auch sticky bit) beschrieben.

Wenn Du verhindern willst, daß ein USER einmal geschriebenes selbst wieder löschen kann, wird es deutlich schwieriger, ggf. können Dir hier ACLs helfen.

Generell gibt es nur Read,Write und Execute im Berechtigungssystem.

Wenn müsste man sich z.B. den Befehl rm ansehen und wer Zugriff drauf hat.

Danach müsste man die Berechtigungen entsprechend am Befehl editieren.

Woher ich das weiß:Berufserfahrung
guenterhalt  24.08.2019, 22:45

Selten so einen Unsinn gelesen.

Löschen kann ich auch anders.

0

dein Problem kann ich nicht ganz verstehen. Willst du dir das Löschen verbieten oder anderen Benutzern?
Vor sich selbst ist niemand sicher, da muss man schon selbst aufpassen. Du kannst aber, sollte rm nicht bereits ein Alias rm=`rm -i` sein, dir die Schreibrechte für eine Datei entziehen, dann wird abgefragt ob gelöscht werden soll.

Mit einem Script kann man aber das, was du willst, für andere Benutzter erreichen.

  1. Sperre das Zielverzeichnis für write für die betreffende Gruppe, für World sowieso. chmod 755 <Zielverzeichnis>
  2. Lass ein anderes Verzeichnis als "Briefkasten" für andere User offen. chmod 777 offenes-Verzeichnis
  3. Kopiere neue Dateien aus <offenes-Verzeichnis> regelmäßig in das <Zielverzeichnis>
Woher ich das weiß:Berufserfahrung – openSuSE seit 1995

Hallo

kann man mit chmod löschen verbieten ?

Nein, es ändert nur die Modi read, write und executive

will bei einem ordner festlegen dass man nur anlegen aber nix löschen kann...

Dann verbiete dem Benutzer die Kommandos rmdir und rm das er nicht löschen kann. Ein Weg dies zu tun wäre sudo entsprechend zu konfigurieren.

  • Den Sinn dahinter kannst Du mir aber bitte mal erklären?

Linuxhase

Woher ich das weiß:eigene Erfahrung – Ich benutze seit 2007 Linux und habe LPIC101 und LPIC102

Die klassischen Unix-Berechtigungen (die sog. Modes) umfassen read, write und execute, die an den Besitzer (user), die Gruppe (group) und alle anderen (others) vergeben werden. Dazu nutzt du das Werkzeug chmod.

Moderne unixoide Betriebssysteme (u. a. Linux) stellen weitere Berechtigungsgrade zur Verfügung: SUID, SGID und das Sticky Bit.

Das Sticky Bit könnte in deinem Fall interessant sein. Das Sticky Bit gibt es in zwei Ausführungen, wobei die eine davon heutzutage nicht relevant ist und noch aus dem letzten Jahrhundert stammt.

Die zweite Ausführung ermöglicht aber genau das, was du umsetzen möchtest: Ein gemeinsames Verzeichnis, auf das mehrere Personen Zugriff haben. Durch das Sticky Bit kann aber ausschließlich der Besitzer der jeweiligen Datei diese löschen.

Bevor du damit aber etwas veränderst, solltest du schauen,w ie sich das Sticky Bit auf dem unixoiden Betriebssystem, das du nutzt, verhält.

Woher ich das weiß:Berufserfahrung