In Linux werden die Informationen zu einer Datei oder einem Verzeichnis in ihrem Inode gespeichert. Ich habe mich gefragt, wie ist die Datenstruktur für Informationen zu einer Datei oder einem Verzeichnis in Windows 7?
In beiden Betriebssystemen hängt dies davon ab, welches Dateisystem verwendet wird.
Windows verwendet NTFS Standardmäßig hat das "Attributlisten" in seiner Master File Table. Es gibt einige Dokumentation in Wikipedia , beim NTFS.com und Linux NTFS .
Die älteren FAT32 Dateisystem (immer noch häufig in Wechseldatenträgern verwendet) ist viel einfacher und hält alles in einem Dateizuordnungstabelle .
Wie erhalte ich Informationen zu einer Datei oder einem Verzeichnis unter Linux und Windows 7 im Terminal- und Befehlszeilenfenster?
Verwenden Sie in Linux die stat Befehl.
Verwenden Sie in Windows PowerShell System.Io.FileInfo.
In Windows cmd.exe, Sie müssen entweder externe Tools verwenden oder mit verwirren dir.
Ist der Besitzer einer Datei oder eines Verzeichnisses immer der Ersteller? Wird es sich ändern können?
Unter Windows NT (einschließlich XP, 2003, Vista, 7 und zukünftigen Versionen) , neu erstellte Objekte 1 sind im Besitz ihres Schöpfers, es sei denn, jemand anderes übernimmt das Eigentum. (Administratoren können dies mit tun SeTakeOwnership Privileg; Nicht-Administratoren können den Besitz übernehmen, wenn die ACL des Objekts dies zulässt.)
Auf Server-Editionen von Windows NT können Administratoren dies tun zuordnen Objektbesitz für einen anderen Benutzer. Consumer-Editionen (wie Windows XP oder 7) sind nur zulässig nehmen Eigentum an sich selbst.
Wenn der Ersteller in Windows 2000 und früheren Versionen Mitglied der Gruppe Administratoren ist, gehören die von ihm erstellten Objekte den Administratoren und nicht dem Benutzer. Dies hat sich in Windows XP geändert , wo der Benutzer immer Objekte besitzt, die er erstellt.
Die FAT-Dateisysteme nicht unterstützen Dateieigentum.
Alles [Zitat benötigt] Unix-Systeme verwenden den Ersteller der Datei als Eigentümer.
root Kann benutzen chown den Besitzer wechseln.
Gibt es einen Erstellungszeitstempel für eine Datei in Linux und Windows 7? Wie bekomme ich es?
In Windows speichern FAT32 und NTFS einen Erstellungszeitstempel. Im cmd.exe. dir /tc wird es zeigen.
FreeBSD UFS2 speichert die Erstellungszeit als st_birthtime.
Unter Linux werden Erstellungszeiten von einigen Dateisystemen unterstützt (NTFS, möglicherweise Ext4), jedoch noch nicht vom Betriebssystem selbst . (Das stat Der Befehl zeigt bereits Geburtszeiten an, wenn dies durch den Syscall desselben Namens unterstützt wird.)
Hinweis: Unter Windows und FreeBSD kann die Erstellungszeit leicht geändert werden.
1 Dies gilt für viele andere Arten von Windows NT-Objekten, nicht nur für Dateien. Beispiele: Named Pipes, Registrierungsschlüssel, Prozesse, Services, Desktops, Geräte, Mutexe ...
chownauch.