Von Eigene Dateien zu /home/user

Aus LinuxUser 07/2000

Von Eigene Dateien zu /home/user

Dateien hier wie da

Nach dem Umstieg von Windows auf Linux verwirrt nicht nur die neue Umgebung – auch die Ablage der privaten und System-Dateien läuft anders als gewohnt. Wir zeigen Ihnen, wo die Daten unter Windows und Linux liegen.

My home is my castle

Windows-Benutzer sind es gewohnt, private Dokumente wie selbst erstellte Texte, Dateien aus dem Internet oder eingescannte Bilder in Unterverzeichnissen von c:\Eigene Dateien abzulegen. Unter Linux gibt es (neben den dort unnötigen Laufwerksbuchstaben) kein solches Verzeichnis. Dies liegt daran, dass Linux ein echtes Mehrbenutzer- (“Multi User”) Betriebssystem ist. Jeder Benutzer (auch wenn es tatsächlich nur einen gibt) hat ein eigenes Heimatverzeichnis (in Linux-Deutsch: Home-Verzeichnis), das in der Regel unterhalb von /home liegt und wie der Login-Name heißt – bei einem Benutzer linux also /home/linux/. Bei der Gelegenheit passt noch einmal der Hinweis, dass Linux (und alle anderen Unix-Systeme auch) den normalen Schrägstrich “/” zum Trennen der Verzeichnisnamen verwendet, nicht den Backslash “\”, wie unter Windows üblich.

Ihr Home-Verzeichnis ist also der Ort, an dem Sie eigene Dateien speichern können; für die meisten anderen Verzeichnisse besitzen Sie als “normaler” User (also immer dann, wenn Sie nicht als root angemeldet sind) auch gar keine Schreibrechte: Versuchen Sie beispielsweise einmal, mi

touch /etc/test

eine neue Datei im Verzeichnis /etc/ zu erzeugen: Linux wird dies mit der Fehlermeldung “touch: /etc/test: Permission denied” quittieren.

Doch “Eigene Dateien”

Wenn Sie Linux parallel mit Windows auf Ihrer Festplatte installiert haben, möchten Sie vielleicht lieber ein gemeinsames Verzeichnis zur Ablage Ihrer Dateien verwenden – unabhängig davon, unter welchem Betriebssystem Sie gerade arbeiten. Nichts einfacher als das: Wir zeigen Ihnen, wie Sie generell Ihre Daten im Windows-Verzeichnis Eigene Dateien ablegen können, da Linux problemlos auf Windows-Dateisysteme zugreifen kann. (Andersrum geht es auch, dazu ist aber zusätzliche Software notwendig.)

Zunächst muss dazu natürlich die Windows-Partition gemountet sein. Wenn Sie mit Windows 95/98 arbeiten, dann haben Sie vermutlich die passende Partition schon in das Linux-Dateisystem eingebunden; z. B. unter /mnt/windows/ oder /mnt/dos/ – werfen Sie dazu einen Blick in die Datei /etc/fstab, die alle beim Systemstart einzubindenden Partitionen anzeigt. Dort finden Sie dann eine Zeile der Form

/dev/hda1  /mnt/dos  vfat  defaults  0 0

Die Bedeutung dieser Zeile ist einfach: die erste primäre Partition auf der ersten IDE-Festplatte (hda1) ist vom Typ VFAT (Windows) und wird mit Standard-Einstellungen unter dem Verzeichnis /mnt/dos/ eingebunden. Sollte keine solche Zeile existieren, müssen Sie sie als Administrator root hinzufügen (siehe Kasten Windows-Partition einbinden).

Windows-Partition einbinden

Das Einbinden der Windows-Partition geschieht folgendermaßen: Werden Sie zunächst mit su (und nachfolgender Eingabe des Administrator-Passworts) zum “Superuser” root. Geben Sie dann den Befehl fdisk -l ein, um eine Liste aller gefundenen Partitionen zu erhalten. Es erscheint eine Ausgabe der folgenden Form:

Disk /dev/sda: 255 heads, 63 sectors, 2231 cylinders
Units = cylinders of 16065 * 512 bytes
   Device Boot Start   End    Blocks   Id  System
/dev/sda1   *      1   510   4096543+   7  FAT16
/dev/sda2        511  2231  13823932+   5  Extended
/dev/sda5        511   637   1020096    6  FAT16
/dev/sda6        638   765   1028128+  83  Linux
/dev/sda7        766  1530   6144831   83  Linux
/dev/sda8       1531  2215   5502231   83  Linux
/dev/sda9       2216  2231    128488+  82  Linux swap

Alle mit “FAT” gekennzeichneten Partitionen sind Windows-“Laufwerke”: Die erste (oder einzige) entspricht C: unter Windows. Öffnen Sie nun die Datei /etc/fstab in einem Editor und ergänzen Sie eine Zeile der Form

/dev/sda1  /mnt/dos  vfat  defaults  0 0

(Dabei ist sda1 durch die eben herausgefundene Bezeichnung der Windows-Partition zu ersetzen.) Speichern Sie die Datei, und erzeugen Sie (falls noch nicht vorhanden) ein Verzeichnis /mnt/dos – das war’s. Jetzt können Sie die Partition mit mount /mnt/dos einbinden; bei den nächsten Systemstarts wird dies automatisch geschehen.

Sie können nun schon mal einen ersten Blick in Ihr privates Windows-Verzeichnis werfen – es liegt unter /mnt/dos/Eigene Dateien. (Dabei ist /mnt/dos durch den tatsächlichen Mount-Punkt zu ersetzen, der in der /etc/fstab eingetragen ist.) Wenn Sie nun aber in einer Konsole den Befehl

ls -l /mnt/dos/Eigene Dateien

eingeben, erscheint nur eine Fehlermeldung: Linux mag das Leerzeichen zwischen “Eigene” und “Dateien” nicht. Zur Lösung gibt es zwei Möglichkeiten:

  • Sie setzen den ganzen Verzeichnisnamen in Anführungszeichen, also: ls -l “/mnt/dos/Eigene Dateien”, oder
  • Sie verwenden den Backslash “\” vor dem Leerzeichen, um der Shell zu erklären, dass das folgende Leerzeichen Teil des Dateinamens ist: ls -l /mnt/dos/Eigene\ Dateien

Recht und Link

Nun ist es recht umständlich, immer diesen Verzeichnisnamen einzugeben. Um den Windows-Verzeichnis direkt als Unterverzeichnis Ihres Linux-Home-Verzeichnisses anzusprechen, erzeugen Sie mit folgendem Befehl (in einer Shell eingegeben) einfach einen symbolischen Verweis (Link):

cd ~
ln -s /mnt/dos/Eigene\ Dateien windows

Nun finden Sie die Windows-Dateien auch im Unterverzeichnis windows Ihres Home-Verzeichnisses.

Ein Problem bleibt aber noch: Versuchen Sie einmal, eine Datei in diesem Verzeichnis zu verändern oder eine neue zu erzeugen – dann erhalten Sie eine Fehlermeldung, da Sie auch dort nicht schreibberechtigt sind. Das lässt sich leicht ändern, indem Sie Linux mitteilen, dass die Windows-Partition Ihnen “gehören” soll. Ein wenig Arbeit ist dazu nötig:

  • Geben Sie den Befehl echo $UID ein, um Ihre numerische User-ID zu erhalten; es erscheint eine Zahl, z. B. 500.
  • Werden Sie mit dem Befehl su zum Systemadministrator root (dazu müssen Sie das root-Passwort eingeben). Nun bearbeiten Sie in einem Editor (z. B. kedit unter KDE oder emacs) die bereits erwähnte Datei /etc/fstab. Suchen Sie nach der Zeile, in der die Windows-Partition angegeben ist, und ändern Sie die Option “defaults” in “uid=500” (hier ist natürlich 500 durch die tatsächliche User ID zu ersetzen). Der geänderte Eintrag legt fest, dass alle Verzeichnisse und Dateien auf der Windows-Partition von Linux so behandelt werden, als würden Sie dem Linux-Benutzer mit der User ID 500 (also Ihnen) gehören.
  • Damit die Änderungen wirksam werden, muss das Windows-Dateisystem neu gemountet werden. Das geht über die Befehle
umount /mnt/dos
mount /mnt/dos

die übrigens nur funktionieren, wenn Sie nicht gerade auf eine Datei in dieser Partition zugreifen. Auch hier ist wieder /mnt/dos durch den Verzeichnisnamen zu ersetzen, unter dem Sie die Windows-Partition ansprechen.

Wenn Sie nun unter Linux immer das Verzeichnis /home/username/windows zum Ablegen Ihrer privaten Dateien verwenden, dann finden Sie diese auch bei der nächsten Windows-Sitzung wieder. Jetzt braucht es nur noch z. B. eine Installation von StarOffice unter beiden Betriebssystemen, und es ist (zumindest was die Bearbeitung Ihrer Office-Dateien angeht) egal, welches Betriebssystem Sie gerade benutzen.

Und unter NT?

Beim Zugriff auf Windows NT gibt es eine Hürde: Linux unterstützt nämlich standardmäßig nicht den Zugriff auf NTFS-Partitionen. Um dies zu ermöglichen, müssen Sie einen neuen Kernel kompilieren, bei dem Sie unter “Filesystems” die Optionen “NTFS filesystem support (read only)” und “NTFS read-write support (DANGEROUS)” aktivieren. Der Schreibzugriff funktioniert allerdings noch nicht richtig problemlos: so lassen sich zwar mit einem entsprechenden Kernel NT-Dateien lesen und auch neu erzeugen, Sie können aber keine vorhandenen Dateien überschreiben oder löschen.

NT ist übrigens auch – wie Linux – ein Mehrbenutzersystem. Entsprechend gibt es auch hier kein gemeinsames Verzeichnis Eigene Dateien. Stattdessen hat jeder NT-Anwender ein eigenes Verzeichnis WINNT\Profiles\Username\, in welchem dann wiederum der Ordner Eigene Dateien liegt.

Die einzige wirklich befriedigende Lösung für den gemeinsamen Datenzugriff unter NT und Linux liegt im Einrichten einer zusätzlichen DOS-Partition: diese kann von beiden Betriebssystemen problemlos gelesen und beschrieben werden. Ansonsten besteht noch die Möglichkeit, unter NT ein Tool wie den Linux Explorer zu installieren, der den Zugriff auf Linux-Partitionen erlaubt – dies allerdings nur über das Programm selbst: es wird kein neuer Laufwerksbuchstabe bereit gestellt, so dass der Zugriff transparent auch von anderen Programmen aus möglich wäre.

Programme

Windows besitzt in allen Versionen ein Verzeichnis \Programme, in das sich die Mehrheit der Windows-Programme installiert. Dort liegen also (jeweils in Unterverzeichnissen) die ausführbaren .exe-Dateien. Unter Linux sieht dies ein wenig anders aus: Programme werden dort in der Regel in einem der Verzeichnisse /bin, /usr/bin, /usr/X11R6/bin oder /usr/local/bin abgelegt. Ausnahmen sind kommerzielle Programme, die häufig in einem separaten Unterverzeichnis von /opt liegen. Auch das (nicht-kommerzielle) KDE geht so vor – daher liegen die KDE-Programme bei den meisten Distributionen unter /opt/kde/bin.

Da Linux-Programme häufig von der Shell aus gestartet werden, müssen Sie in einem Verzeichnis liegen, das im sogenannten Pfad liegt: der Pfad wird in der Umgebungsvariablen $PATH gespeichert. Geben Sie einmal in einer Konsole den Befehl

echo $PATH

ein, um zu prüfen, wo Ihre Linux-Installation nach Programmen sucht.

Bibliotheken

Bibliotheken sind Programmteile, die nicht fest mit der ausführbaren Datei verbunden sind sondern zur Laufzeit zusätzlich in den Hauptspeicher geladen werden. Der Vorteil solcher Bibliotheken ist, dass sie nur einmal geladen werden müssen, wenn Sie gleichzeitig mehrere Programme benutzen, die diese Bibliotheken verwenden. Dieses Konzept gibt es unter Linux und Windows.

Windows legt viele Bibliotheken in den Verzeichnissen c:\windows, c:\windows\system und ggfs. c:\windows\system32 ab; viele Programme installieren Ihre Bibliotheken (an der Dateiendung .dll, “dynamically linked library”, erkennbar) aber auch in eigenen Verzeichnissen ab.

Bei Windows 98 finden Sie Bibliotheken in <custom name="span" custom:class="uielement" srcset=

c:\windows\system« und c:\windows\system32«” width=”300″ height=”225″ /> Bei Windows 98 finden Sie Bibliotheken in c:\windows\system« und c:\windows\system32«

Unter Linux herrscht hier mehr Ordnung: In der Datei /etc/ld.so.conf wird festgelegt, welche Unterverzeichnisse Bibliotheken enthalten können. In der Regel sind dies /lib, /usr/lib, /usr/local/lib, /usr/X11R6/lib und einige weitere. Linux-Bibliotheken werden ebenfalls dynamisch zum Programm hinzugeladen und enden auf .so.

Vorteil bei Linux: Die Dateinamen von Bibliotheken enthalten immer auch die Versionsnummer – so können mehrere Versionen einer Bibliothek gleichzeitig installiert sein, ohne sich gegenseitig zu beeinflussen

Vorteil bei Linux: Die Dateinamen von Bibliotheken enthalten immer auch die Versionsnummer – so können mehrere Versionen einer Bibliothek gleichzeitig installiert sein, ohne sich gegenseitig zu beeinflussen

So weit unser Überblick über die wichtigsten Verzeichnisse unter Windows und Linux.

LinuxUser 07/2000 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben