Sinn von versteckten Dateien



  • knivil schrieb:

    @zwutz: Ich trolle mal mit: Alles Bullshit!

    nanana, wer wird den gleich...

    knivil schrieb:

    Was nuetzt ein Loeschschutz, wenn der User immer noch Muell reinschreiben kann? Dann ist die Datei zwar da, aber unbrauchbar.

    es gibt Dateien bei denen es ausreicht, wenn sie vorhanden sind. Oder vielleicht einfach ein Programm, das zwar fehlerhafte Einträge in Konfigurationsdateien umgehen kann bei einer fehlenden Datei aber ein anderes Verhalten zeigt (die interne Config laden, meckern, dass die Datei nicht vorhanden ist, was auch immer...)

    Vielleicht will man dem Benutzer, unter dem ein Dienst läuft einfach das löschen bestimmter Dateien verweigern, ihm die Schreibrechte aber lassen. Wir wissen ja, wie kreativ einige Entwickler sind, da kann alles vorkommen



  • zwutz schrieb:

    ein Grund, warum Linux versteckte Dateien hat.

    Linux, bzw. Ext2/Ext3/Ext4, XFS, Reiser, usw. hat keine versteckte Dateien. Es ist nur eine Konvention, Dateien mit .* vor dem Benutzer zu verbergen.

    zwutz schrieb:

    Unter Windows kann man das Löschrecht explizit entziehen, ohne die Schreibrechte entziehen zu müssen. Unter Linux kann der Benutzer jede Datei mit +w auch löschen. Also verstecken, damit er beim aufräumen seines Home-Verzeichnisses nichts aus Versehen löscht.
    Da Windows ein reines GUI-System ist, dient es hier wohl vornehmlich der Übersicht. Systemdateien sind ja extra abgesichert

    Das ist echt typisch Windows. Also auf Linux bezogen, kann ich in /etc/passwd oder /etc/groups oder gar in /etc/shadow den Inhalt verändern, aber gut das ich die Dateien nicht löschen kann. ROFL.



  • Prüder Gockel schrieb:

    kennerDesVolkards schrieb:

    volkard schrieb:

    mezzo mix schrieb:

    hatten die damals ascii pr0n, oder wie? 🤡

    Aber sicher.
    http://www.asciipr0n.com/pr0n/pinups.html

    Ich wette volkard hatte die URL gebookmarked 😃

    Er vestößt als Mod gegen die Forenregeln.

    Das posten von Porn ist nicht erlaubt.

    Volkar, verwarn dich mal selber. 🤡

    Ich kann die Seite auf der Arbeit tatsächlich nicht öffnen. Muß echt harter Stoff sein...

    Ich werd die Bilder dann später auf 80×25 schauen, soll ja authentisch rüberkommen.



  • zwutz schrieb:

    DEvent schrieb:

    In Linux gibt es auch keine hidden files, es gibt kein Attribut. Es ist einfach nur Konvention, dass Dateien und Verzeichnisse mit einem .* als "versteckt" gelten.

    ach, deswegen ist es so inkonsitent umgesetzt. Gut zu wissen

    Was ist inkonsistent?

    zwutz schrieb:

    DEvent schrieb:

    Man erhöht die Systemsicherheit nicht dadurch, dass man wichtige Dateien versteckt, sondern in dem normale Benutzer die Dateien durch fehlende Schreibrechte erst gar nicht löschen können.

    ein Grund, warum Linux versteckte Dateien hat. Unter Windows kann man das Löschrecht explizit entziehen, ohne die Schreibrechte entziehen zu müssen. Unter Linux kann der Benutzer jede Datei mit +w auch löschen. Also verstecken, damit er beim aufräumen seines Home-Verzeichnisses nichts aus Versehen löscht.
    Da Windows ein reines GUI-System ist, dient es hier wohl vornehmlich der Übersicht. Systemdateien sind ja extra abgesichert

    Wenn jemand Dateien löscht, dann macht der das in der Regel schon absichtlich und zur Not gibt es auch noch den Papierkorb. Kaputt machen kann man da übrigens nicht viel. Du kannst den Benutzer bedenkenlos seinen ganzen Home-Ordner mit allen Konfigurationsdateien löschen lassen. Da passiert nichts, außer dass er seine ganzen Einstellungen und seine Dateien verliert. Du fragst ja auch nicht tausendmal, "sind sie sicher?", oder verbietest dem Nutzer den Zugriff, wenn er ein Bild löschen will, obwohl das meistens schwerere Konsequenzen hat (Erinnerungsfotos sind dann doch wichtiger als meine Einstellungen zu einem Programm). Warum also bei Konfigurationsdateien?

    zwutz schrieb:

    Obwohl das mit getrennten Ordnern schon Sinn macht. Schon ärgerlich, dass mir jedes Programm unter Linux meinen Home-Ordner zumüllt. Unter Windows wird sowas wenigstens brav unter "Anwendungsdaten" in Ordnern abgelegt ohne es verstecken zu müssen.

    Warum ist das schlimm? Genau dafür gibt es doch die Konvention mit dem "." am Anfang des Dateinamens. Damit sie von anderen Programmen ignoriert werden können.

    zwutz schrieb:

    Ärgerlich sind Programme, die für mehrere Systeme ausgelegt sind. Um die Kompatibilität mit Linux zu gewährleisten, wird mir auch unter Windows mein Benutzerordner mit .*-Ordnern eingedeckt.

    Das hat nichts mit "Programmen die für mehrere Systeme ausgelegt sind" zu tun, sondern mit einer schlechten Umsetzung der Portierung auf einzelne Systeme (hier Windows). Programme, die primär für Windows geschrieben und nur auf Linux portiert werden, verhalten sich unter Linux doch auch meistens ziemlich korrekt.
    Nenne mir doch mal bitte Beispiele, die unter Windows dieses Problem haben.



  • DEvent schrieb:

    Es ist nur eine Konvention, Dateien mit .* vor dem Benutzer zu verbergen.

    mit Ausnahme von . und .. , die leider auch von .* getroffen werden:

    echo .*
    


  • Dann benutze doch einfach ls .



  • DEvent schrieb:

    Das ist echt typisch Windows. Also auf Linux bezogen, kann ich in /etc/passwd oder /etc/groups oder gar in /etc/shadow den Inhalt verändern, aber gut das ich die Dateien nicht löschen kann. ROFL.

    Du hast nur nichts verstanden.

    In Windows kann ich sagen: schreiben ja/nein, lesen ja/nein, löschen ja/nein,... ist zB genauso sinnvoll wie execute rechte zu vergeben.


  • Mod

    Denn es macht natürlich einen großen Unterschied, ob man eine Datei löscht oder nur ihren Inhalt 🙄 .



  • es geht um's Prinzip.

    Wenn .* Konvention für versteckte Dateien ist, wären . und .. besser anders benannt, etwa % und %%



  • zum Beispiel schrieb:

    es geht um's Prinzip.

    Wenn .* Konvention für versteckte Dateien ist, wären . und .. besser anders benannt, etwa % und %%

    Es sind keine versteckten Dateien, es ist nur Konvention sie vor dem Benutzer zu verbergen.
    Im Nautilus oder Dolphin sehe ich auch . und .. nicht, obwohl sie auch da sind. Ist eben Konvention sie vor dem Benutzer zu verbergen. Ein ls Kommando verbirgt auch alle .* Dateien. Verbergen heißt einfach nicht anzuzeigen, der Übersichtlichkeit wegen.

    Wenn ich nicht will, dass jemand meine Dateien sieht, entziehe ich die Leserechte. Wenn ich will, dass jemand sie lesen kann, aber nicht schreiben oder löschen, entziehe ich die Schreibrechte. Ein extra Löschrecht ist weniger Sinnvoll, denn jemand kann einfach die Dateie mit Nullen füllen oder, was noch viel schlimmer wäre, mit falschen Daten füllen.

    Das wäre noch viel schlimmer als wenn er die Datei einfach löscht. Ein System kann meistens nicht von richtigen oder falschen Daten unterscheiden und wird mit den falschen Daten weiterhin arbeiten und der Benutzer wird es nicht oder erst viel zu spät merken.


  • Mod

    @DEvent: Was er meint ist, dass man nicht alle nach Konvention versteckten Dateien gleich behandeln kann, da . und .. aus der Reihe tanzen. Man kann beispielsweise nicht mit rm . -rf* alle versteckten Dateien und Ordner löschen (zufällige Leser: Bloß nicht dieses Kommando ausführen um mal zu sehen was stattdessen passiert!).

    Ich vermute mal, dass dies genau der Grund für die Wahl der Konvention mit dem . ist: Einstellungsdaten sind in der Regel Dateien die einer Einzelbehandlung bedürfen. Beispielsweise ist das Löschen oder Kopieren sämtlicher Einstellungen praktisch nie eine sinnvolle Aktion. Falls man doch einmal zu solchen Maßnahmen greifen muss, dann will man gewöhnlich auch gleich alle anderen Dateien mit löschen/kopieren und braucht dann wiederum auch gar keine spezielle Unterscheidung zu treffen, da die versteckten Dateien ja auch zu "alle Dateien" zählen.



  • SeppJ schrieb:

    Man kann beispielsweise nicht mit rm . -rf* alle versteckten Dateien und Ordner löschen

    Dummes Argument. Dann nimm doch einen anderen Ausdruck, der nur versteckte Dateien matched. Jemand, der regelmaessig die Kommandozeile nutzt, kriegt das schon hin.

    ist zB genauso sinnvoll wie execute rechte zu vergeben.

    Der Vorteil ist, ich brauche es nicht am Dateiende festmachen. Auch gibt es weitere Unterschiede bei Verzeichnissen und Dateien. Und da sowieso alles ein FILE ist, ist es einheitlich gehalten. Auch kann man rwx nicht losgeloest vom Basisrechtesystem in Linux/Unix betrachten.



  • SeppJ schrieb:

    @DEvent: Was er meint ist, dass man nicht alle nach Konvention versteckten Dateien gleich behandeln kann, da . und .. aus der Reihe tanzen. Man kann beispielsweise nicht mit rm . -rf* alle versteckten Dateien und Ordner löschen.

    Das liegt aber nicht an Linux, sondern an der Shell. Zum Beispiel macht es zsh besser: .* als Datei-Pattern erzeugt nicht "." und "..". Es lässt sich sicher darüber diskutieren, ob das nun "besser" ist als das bash-Verhalten. Es ist aber zumindest eher das, was man erwarten würde, finde ich, wenn man das bash-Verhalten von .* nicht kennt.

    Beispiel mit zsh in einem leeren Verzeichnis:

    $ touch .foo
    $ ls -a
    ./  ../  .foo
    $ echo .*
    .foo
    $ bash -c 'echo .*'
    . .. .foo
    


  • DEvent schrieb:

    Ein extra Löschrecht ist weniger Sinnvoll, denn jemand kann einfach die Dateie mit Nullen füllen oder, was noch viel schlimmer wäre, mit falschen Daten füllen.

    Genauso wie ein extra execute recht wenn ich leserechte habe 😉
    Es sichert vor murphy, nicht machiavelli

    @knivil:
    was hat das execute recht mit dateiendungen zu tun?



  • Shade Of Mine schrieb:

    @knivil:
    was hat das execute recht mit dateiendungen zu tun?

    Sende eine Email mit Porno.jpg.exe
    Ich denke, sogar Vista hat in der Standardeinstellung, dass bekannte Dateiendungen nicht angezeigt werden.

    Man kann auch ein Verzeichnis einhängen, ohne Ausführungsrechte. Dann kann keine Datei mehr ausgeführt werden, die sich in diesem Verzeichnis befindet. Ist bestimmt sicherer einen öffentlichen Terminal so einzustellen, dass man von z.B. /home/public keine Programme starten kann, man darauf aber Bilder oder Pdf Dateien kopieren kann.



  • DEvent schrieb:

    Sende eine Email mit Porno.jpg.exe

    dafür sehe ich am Dateinamen bereits, ob die Datei ausführbar ist.
    Außerdem sollte spätestens die Abfrage von Windows, ob die Datei ausgeführt werden soll, stutzig machen. In den Standardeinstellungen ist jede heruntergeladene Datei als nicht vertrauenswürdig eingestuft und es erscheint vor dem Start eine Abfrage.

    Übrigens zeigt ein EMailprogramm unabhängig von den Einstellungen in Windows die Dateierweiterung immer an.

    Mit diesem Trick jemanden hereinzulegen dürfte also recht unwahrscheinlich sein. Der selbe Benutzer würde aber auch ein als Porno.jpg getarntes bash-Skript ausführen.


  • Mod

    zwutz schrieb:

    Der selbe Benutzer würde aber auch ein als Porno.jpg getarntes bash-Skript ausführen.

    Eben nicht! Er müsste bewusst erstmal ein chmod machen oder explizit die bash mit dieser Datei als Argument aufrufen. Und das ist doch eine viel größere Hemmschwelle (und wahrscheinlich auch Kenntnisschwelle) als ein Doppelklick und das Wegklicken einer weiteren von 1000 Systemmmeldungen.



  • SeppJ schrieb:

    Eben nicht! Er müsste bewusst erstmal ein chmod machen oder explizit die bash mit dieser Datei als Argument aufrufen.

    wenn ich sehe, wie leichtgläubig einige Linux-User Befehle ausführen, die sie in irgendwelchen Foren gefunden haben, würde mich das nicht wirklich wundern.
    Notfalls jubelt man ihm ja ein vermeindlich nützliches Bashskript runter, das eine Datei herunterlädt und auf diese den chmod ausführt. Seit Ubuntu (und suse) hat auch die Linuxwelt viele DAUs dazugewonnen.

    Ganz davon abgesehen, dass ich die Aussage bewusst leicht übertrieben habe. Genauso wie Dateiendungen immer gern als absoluter Designfehler angesehen werden.

    Übrigens ist es recht gewagt, die Dummheit der User dem Betriebssystem als Nachteil anzukreiden



  • Also ich Dateiendungen klasse. Vor allem unter Linux, wo man gerne mal eine src.tar.lzo.md5 baut. Nix Designfehler.



  • leichtgläubig einige Linux-User Befehle ausführen

    Das sind Windowsuser, die zufaellig mit Linux arbeiten.


Anmelden zum Antworten