GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Ein Windows-Typ in einer Linux-Welt:Benutzer- und Dateiberechtigungen

Wenn Sie Windows schon seit einiger Zeit verwalten, haben Sie wahrscheinlich Erfahrung mit der Verwaltung von Benutzerkonten, dem NTFS-Dateisystem und dem Festlegen von Berechtigungen. Wenn ja, bereiten Sie sich mit Linux-Dateiberechtigungen auf eine andere Welt vor! Unter Linux ist das Dateisystem ein anderes Tier, das Sie lernen müssen, um ein kompetenter Linux-Administrator zu sein.

Dies ist Teil II unserer vierteiligen Serie zum Erlernen von Linux aus der Sicht eines Windows-Administrators! Lesen Sie auf jeden Fall Teil I, falls Sie es noch nicht getan haben.

Arbeiten mit dem Dateisystem

Lassen Sie uns zunächst darauf eingehen, wie Linux Dateien über das Dateisystem speichert und verwaltet.

Hinweis:Alle Beispiele verwenden OpenSUSE Linux.

Keine Laufwerksbuchstaben mehr

Im Gegensatz zu Windows ist dies bei Wechseldatenträgern und anderen Geräten nicht der Fall automatisch einen Laufwerksbuchstaben erhalten und beim Neustart öffnen. In Windows wird jedes Laufwerk mit einem Laufwerksbuchstaben gemountet:C:\ , D:\ usw. Wie funktionieren Laufwerksbuchstaben in Linux? Es gibt keine!

Unter Linux gibt es einen Ordner namens root Mappe. Dieser Ordner befindet sich im Stammverzeichnis des Dateisystems oder einfach / . Der Schrägstrich ist der erste Schrägstrich vor jeder anderen Datei im System. Dieser Schrägstrich ist nett wie die Basis C:\ , allerdings nur, wenn die anderen Laufwerksbuchstaben nur existierte als Unterordner von C:\ .

Im Stammordner befinden sich die Kernsystemdateien. Alles andere, auch andere Geräte, sind Unterordner dieses zentralen Ordners.

Linux verwischt die Grenze zwischen Ordnern und Dateisystemen. Das Linux-Verzeichnis /home ist der Stamm aller „Profile“ von Benutzern, ähnlich wie C:\Benutzer Ordner unter Windows. In diesem Fall /home ist ein Verzeichnis. „Verzeichnisse“ in Linux müssen jedoch keine Verzeichnisse sein. Sie können auch Speicherpartitionen oder sogar eine separate Festplatte insgesamt sein. Dieses Konzept ist analog zu Windows-Bereitstellungspunkten.

In diesem Artikel erfahren Sie mehr über Stammordner.

Benutzer und Home-Ordner

Wenn Sie OpenSUSE verwenden, sehen Sie möglicherweise eine Startseite Ordner auf Ihrem Desktop, wie unten gezeigt. Dieser Ordner ist die Linux-Version von C:\users\ Ordner oder „Profil“. Der Linux-Ordner „users“ befindet sich unter /home standardmäßig auf Ihrem Installationsdatenträger.

Im Beispiel unten heißt der Benutzer homelab mit einem „Profil“ unter /home/homelab.

In Linux (und Windows) hat der Home-Ordner (oder das Benutzerprofil in Windows) eine Kurzschreibweise einer Tilde ( ~). Wenn Sie etwas wie "~/Documents/blah.txt sehen , es bezieht sich tatsächlich auf Ihre /home//Documents/blah.txt Datei.

Großschreibung ist alles in Linux

Alles Unter Linux wird zwischen Groß- und Kleinschreibung unterschieden. Dieses Konzept ist das komplette Gegenteil von Windows, wo fast nichts zwischen Groß- und Kleinschreibung unterscheidet.

Wenn Sie beispielsweise ein Verzeichnis namens /home/homelab, haben ein ganz anderes Verzeichnis kann /home/Homelab. heißen Dieses Konzept erstreckt sich auch auf Befehle. Ausführen von cd /home/homelab unterscheidet sich von CD /home/homelab (was fehlschlagen sollte).

Als Windows-Benutzer wird dieses Konzept passen stolpern Sie irgendwann. Achten Sie sehr auf Ihre Groß-/Kleinschreibung! Unten sehen Sie ein Beispiel für zwei separate Ordner. Der einzige Unterschied zwischen den beiden ist die Großschreibung:In einer Windows-Umgebung ist dies nicht möglich.

Benutzerkonten

Wie Windows hat Linux das Konzept der Benutzerkonten, aber sie verhalten sich etwas anders. Denken Sie zunächst an Linux-Benutzerkonten in Bezug auf Ihre vertrauten Windows-Benutzerkonten.

Windows verfügt über einige integrierte Benutzerkonten wie Administrator , das versteckte SYSTEM-Konto, Gast usw. Windows hat auch verschiedene eingebaute Sicherheitsgruppen wie Administratoren , Gäste usw.

Sie können alle Windows-Benutzer und -Gruppen über die MMC für lokale Benutzer und Gruppen anzeigen, indem Sie lusrmgr.msc ausführen MMC-Snapin.

Windows-SIDs

Um Benutzer und Gruppen eindeutig zu identifizieren, verweist Windows auf Benutzer und Gruppen durch etwas, das als SID bezeichnet wird. In Windows können Sie die SID jedes Benutzers und jeder Gruppe finden, indem Sie unten ein paar PowerShell-Befehle ausführen.

Get-LocalUser | select name, sid
Get-LocalGroup | select name,sid

Jede Windows-Gruppen-SID ist auf allen Windows-Computern gleich. Der eingebaute Benutzer SID s für Windows sind einzigartig. Diese Administrator-SID Sie im obigen Screenshot sehen, sollte auf jedem Windows-Computer anders sein. Alle zukünftigen Benutzer oder Gruppen, die in Windows erstellt werden, sind eindeutig. Beachten Sie unter dem Test Gruppe. Wenn Sie einen Test erstellen würden Gruppe auf Ihrem Windows-Computer, wäre die SID anders.

Linux-Benutzer-IDs

Auf der anderen Seite behandelt Linux Benutzer und Gruppen ähnlich, nur dass Linux diesmal keine SIDs, sondern Benutzer-IDs (UIDs) und Gruppen-IDs (GIDs) verwendet. Ebenfalls im Gegensatz zu Windows sind Benutzer und Gruppen für den Computer eindeutig, aber nicht für alle eindeutig Computers. Das bedeutet, dass Ihre UID auf Computer A genau dieselbe UID sein könnte auf Computer B, auch wenn es sich nicht um denselben Benutzer handelt.

Sowohl UIDs als auch GIDs folgen einer einfachen, numerischen Konvention; Jede UID und GUID beginnt bei 0 und erhöht sich um eins im Bereich von 1-999 für interne Systemkonten und 1000+ für benutzerdefinierte Benutzerkonten.

Der eingebaute Root-Benutzer immer hat eine UID von 0 und eine GID von 0. Außerdem ist dieses Root-Konto, wie das versteckte SYSTEM-Konto von Windows, allgemein (je nach Linux-Distribution) an der Anmeldung gehindert.

Der integrierte Root-Benutzer ähnelt den integrierten Windows-Konten SYSTEM und Administrator, gewissermaßen in einem zusammengefasst. Selbst wenn Sie als Administrator in Windows arbeiten, gibt es dennoch einige eingebaute Sicherheitsvorkehrungen, die verhindern, dass Sie Windows vollständig zerstören.

Der Root-Benutzer hingegen ist eine absolute Autorität. Wenn Sie absichtlich in den Root-Benutzer wechseln (Sie können dies auf der Befehlszeile mit dem Befehl sudo su tun ) und versuchen, Ihr gesamtes Betriebssystem zu löschen, wird root dies gerne tun, bis das System stirbt.

Angenommen, Sie haben einen Benutzer namens homelab erstellt . Die UID für Homelab könnte dann entweder von 1000 oder von homelab referenziert werden . Der Benutzer wird automatisch Mitglied der internen Gruppe users auf die Sie mit der Gruppen-ID 100 verweisen können. Eine Liste dieser Zuordnungen finden Sie, indem Sie getent passwd ausführen Befehl wie unten gezeigt:

Die gleichen Informationen wie oben finden Sie auch für Gruppen mit dem getent group Befehl.

Linux-Dateiberechtigungen

In einer Windows-Welt machen Dateisystemberechtigungen keinen Spaß. Das Festlegen und Verwalten von Berechtigungen in NTFS kann manchmal zu einem Albtraum mit ACE, ACLs, Vererbung, Weitergabe usw. werden. Glücklicherweise sind die Dateisystemberechtigungen in Linux viel einfacher.

Unter Linux haben Sie drei Arten von Rechten, die Sie einer Datei zuweisen können:Lesen, Schreiben und Ausführen mit drei Zugriffskategorien:Besitzer, Gruppe, Andere.

  • Eigentümer ist der Benutzer, dem die Datei/der Ordner gehört. Jede Datei oder jeder Ordner hat einen bestimmten Besitzer.
  • Gruppe ist die Gruppe, der die Datei/der Ordner gehört. Dies muss nicht dieselbe Gruppe sein, der der Besitzer angehört. Jede Datei oder jeder Ordner kann nur zu einer Gruppe gehören.
  • Andere sind … na ja … andere. Es handelt sich um Personen, die nicht zur Eigentümergruppe gehören oder nicht der designierte Eigentümer sind.

Sie können jede Option für jede Kategorie zulassen oder ablehnen. Als Beispiel:Sie können Lese-, Schreib- und Ausführungsoptionen für den Eigentümer und Lese-/Ausführungsoptionen für die Gruppe und andere angeben. Sie können das im Screenshot unten sehen. Das bedeutet, dass jeder außerhalb der Benutzer, der Eigentümer des Ordners ist, kann ihn nicht ändern.

Genau wie im Windows-Explorer können Sie diese Informationen in Ubuntu folgendermaßen anzeigen:

  1. Öffnen Sie Ihren Home-Ordner auf Ihrem Desktop.
  2. Navigieren Sie zu der betreffenden Datei/dem betreffenden Ordner.
  3. Klicken Sie mit der rechten Maustaste auf die Datei/den Ordner und klicken Sie auf Eigenschaften .
  4. Klicken Sie auf die Berechtigungen Registerkarte.
  5. Klicken Sie auf Erweiterte Berechtigungen .

Sobald Sie in den Erweiterten Berechtigungen sind Feld können Sie alle Berechtigungen, die dieser Datei oder diesem Ordner zugewiesen sind, grafisch anzeigen.

Nachfolgend finden Sie die Erweiterten Berechtigungen Tabelle repräsentiert.

Dateieigentum

Wie bei Windows hat jede Datei und jeder Ordner einen Besitzer. Unter Windows können Sie den Besitz einer Datei in der GUI oder über takeown übernehmen Befehl. Unter Linux übernehmen Sie die Eigentümerschaft, indem Sie chown : ausführen auf der Kommandozeile.

Wie bei Windows benötigen Sie im Allgemeinen eine Administratorberechtigung, um den Eigentümer von Dateien mit sudo zu ändern. sudo ist das Linux-Äquivalent zur Benutzerkontensteuerung (UAC) von Windows. Anstatt ein administratives Befehlszeilenfenster zu öffnen, stellen Sie Befehlen sudo voran, damit es als Administrator ausgeführt wird.

Lassen Sie uns einen Ordner erstellen, der nur ist im Besitz von root, um einige dieser Konzepte zu demonstrieren.

  1. Öffnen Sie Ihren Benutzerordner und navigieren Sie zu "Dokumente"
  2. Öffnen Sie eine Eingabeaufforderung durch Rechtsklick —> Aktionen —> Terminal hier öffnen , und führen Sie Folgendes aus:
sudo mkdir owned-by-root
sudo chmod 700 owned-by-root

Dieser Ordner hat nur Lese-/Schreib-/Ausführungsberechtigungen für den Besitzer. Da Sie den Ordner mit Administratorrechten erstellt haben, ist dieser Besitzer derzeit root.

Sie haben auch die Berechtigungen geändert, also nur Der Eigentümer hat Zugriff. Die Eigentümergruppe und andere Benutzer können überhaupt nicht auf diesen Ordner zugreifen. Tatsächlich werden Sie feststellen, dass der Ordner mit einem großen Schloss versehen ist, das darauf hinweist, dass Sie keinen Zugriff haben.

Unten sehen Sie, wie Sie den Besitz dieses Ordners übernehmen können.

  1. Öffnen Sie ein anderes Terminal in demselben Ordner (oder verwenden Sie das, das Sie bereits hatten)
  2. Führen Sie sudo chown homelab:users ./owned-by-root aus

Jetzt, da Sie Eigentümer sind, können Sie auch die Dateiberechtigungen innerhalb der Explorer-GUI mithilfe des Eigenschaftenfensters ändern.

Sie möchten (normalerweise) nur die Eigentumsrechte ändern, nicht die Dateiberechtigungen. Linux ist ziemlich gut darin zu wissen, welche Berechtigungen Dinge standardmäßig haben sollen. Sie können Dinge durch „chmoding“ wirklich vermasseln, ohne die Auswirkungen zu kennen.

Numerische Notation für Dateiberechtigungen

Wenn Sie irgendwelche getan haben Linux-Fehlerbehebung, Sie haben vielleicht schon gesehen, wie Leute online Dateiberechtigungen mit einem Zahlenschema erklärt haben. Sie können dies im Screenshot unten hervorgehoben sehen:

Linux verwendet für dieses Zugriffssystem eine Kurzschreibweise mit Zahlen, wie 0600 . Die erste Zahl steht für einige spezielle Eigenschaften, die Sie hinzufügen können, die Personen allgemein ignorieren. Tatsächlich verwenden die meisten Leute nur drei Ziffern für die Notation und ignorieren die führende vierte.

Weitere Informationen zur numerischen Notation für Dateiberechtigungen finden Sie in diesem Artikel.

Abschluss

Das war’s für Teil II unserer Blogpost-Reihe „A Windows Guy in a Linux World“! Achten Sie darauf, den Schwung mit Teil III aufrechtzuerhalten!


Linux
  1. So konfigurieren Sie den SAMBA-Server und übertragen Dateien zwischen Linux und Windows

  2. Windows- und Linux-Interoperabilität:Ein Blick auf Samba

  3. Linux – Dateiberechtigung nur ausführen?

  4. Linux .htaccess Tipps und Tricks

  5. Unterstützte und empfohlene Dateisysteme unter Linux

Linux-Dateiberechtigungen und Eigentumsrechte mit Beispielen erklärt

Grundlegendes zu Linux-Dateiberechtigungen

Ein Windows-Typ in einer Linux-Welt:VS-Code und Remote-SSH

Ein Windows-Typ in einer Linux-Welt:Einrichten des SSH-Befehls in Linux

Ein Windows-Typ in einer Linux-Welt:YaST und der Desktop

So konvertieren Sie eine .pem-Datei in eine .ppk-Datei unter Windows und Linux