Komplizierte Organismen, wie Linuxsysteme es nun einmal sind, haben so ihre ganz eigenen Wehwehchen. Dr. Linux beobachtet die Patienten in den Linux-Newsgruppen, stellt an dieser Stelle Rezepte für aktuelle Probleme aus und alternative Heilmethoden vor.
Windowsdaten für alle!
Ich habe eine Windows-Partition mit
/dev/hda2 /windows vfat defaults 0 0
in der Datei /etc/fstab eingetragen, damit ich dort befindliche Dateien ohne lästiges Umkopieren oder Verschieben direkt bearbeiten kann. Leider musste ich feststellen, dass ich für Dateien auf dieser Partition keine Schreibberechtigung habe. Kann ich die für diese Partition überhaupt bekommen?
Dr. Linux: Wird eine Windows-Partition beim Booten mit diesem Eintrag in das Linux-Dateisystem eingehängt, gehören in der Regel alle Dateien root. Aus diesem Grund wird ein Schreibzugriff für “gewöhnliche” Benutzer verweigert.
Tragen Sie die -Optionen noauto,user (als root) in der vierten Spalte Ihrer fstab ein. (Die erste gibt die Partition an, die zweite den Mountpoint, die dritte das Dateisystem.) Ihre Datei könnte dann etwa so aussehen:
#Gerätname Eingehängt als Dateisystem mount-Optionen[...] /dev/sda4 /zip msdos noauto,user 0 0 /dev/hdc /cdrom iso9660 ro,noauto,user 0 0 /dev/hda2 /windows vfat noauto,user 0 0
Durch die Option noauto wird Ihre Windows-Partition zunächst nicht beim Booten ins System eingehängt. Betrachten Sie dies nicht als Nachteil, sondern als Vorteil:
- Partitionen, die nicht gemountet sind, können durch Softwareoperationen normalerweise nicht zerstört werden und bilden auch kein Sicherheitsrisiko. Die Option
userermöglicht Ihnen, die Partition als normaler Benutzer zu mounten, womit Sie dann Eigentümer der Windows-Partition werden und u.a. auch Schreibzugriff auf die Dateien erhalten. Ein Eintrag in der/etc/fstabwie in diesem Beispiel ermöglicht das Mounten einfach mit
user$ mount /windows
Das Umounten geht ebenso simpel.
Wenn Sie diesem Beispiel folgen und in Ihrer /etc/fstab einen Ihrem System angepassten Eintrag zum Mounten der Windows-Partition vornehmen, kann es Ihnen zum Beispiel unter SuSE-Linux passieren, dass Sie beim Versuch, als normaler User zu mounten, von Ihrem System mit den schnöden Worten mount: must be Superuser to use mount (mounten darf nur der Superuser) zurückgewiesen werden. Dies bedeutet nicht, dass Sie etwas falsch gemacht haben, sondern Ihre Distribution erlaubt aus Sicherheitsgründen nur root das Mounten von Geräten.
Möchten Sie diese Sicherheitsmaßnahme in den Wind schlagen, weil Sie vielleicht alleiniger Nutzer Ihres Rechners sind, können Sie (als root) die Sicherheit Ihres Systems beeinflussen und damit das Mounten für gewöhnliche User ermöglichen.
Abbildung 1 zeigt, wie Sie diese Einstellungen unter SuSE-Linux mit yast ändern können: Wählen Sie bei Rechte auf Dateien werden gesetzt auf: den Eintrag easy.
Sie können noch einen anderen Weg beschreiten. Legen Sie mit dem Konfigurationsprogramm (COAS, usercfg, yast, groupadd etc.) Ihrer Distribution eine neue Gruppe an, und notieren Sie die ID-Nummer, die beim Anlegen der Gruppe an selbige vergeben wird. Selbstverständlich können Sie auch eine vorhandene Gruppe wählen. Tragen Sie den User, der künftiger Eigentümer der Dateien auf der Windows-Partition werden soll, in diese Gruppe ein, und halten Sie ebenfalls seine ID fest. Erweitern Sie die Gruppe um alle Benutzer, die Schreibrechte auf Windowsdaten bekommen sollen. Damit die Gruppenmitglieder nun lesender- und schreibenderweise aktiv werden dürfen, bringen wir noch den Parameter umask zum Einsatz.
Nebenbei: Ihre ID, und die aller Gruppen, denen Sie angehören, können Sie ganz einfach herausfinden, indem Sie auf einer Kommandozeile
user$ id
eintippen.
Nun editieren Sie Ihre /etc/fstab, indem Sie die Nummer der Gruppe (GID), die des Users (UID) und den umask-Parameter als mount-Option eintragen. Das sieht beispielsweise so aus:
/dev/hda1 /windows vfat noauto,user,gid=103,uid=506,umask=002 0 0
Bei solch einer langen Zeile schleichen sich gern Zeilenumbrüche ein. Beachten Sie daher das Format der /etc/fstab! Achten Sie beim Editieren darauf, dass sich bei den mount-Optionen keine Leerzeichen (durch Space oder Zeilenumbruch) einschleichen, das könnte Ihr System stark verwirren und zu seltsamen Ergebnissen führen.
Wissen ist Macht
Wo kann ich mehr über all diese Optionen erfahren?
Dr. Linux In Ihrem System finden Sie unterhalb der Verzeichnisse /usr/man, /usr/local/man, /usr/X11R6/man u.a. Hilfeseiten zu verschiedenen Kommandos, Dateien und Funktionen Ihres Systems. Diese Man-Pages (“Handbuchseiten”) sind fein säuberlich in Sektionen unterteilt:
- In
man1liegen Hilfeseiten zu Anwenderprogrammen wie dem Bildbearbeitungsprogramm Gimp oder dem Kompressionstoolzip, zu Shell-Kommandos u.a. Werkzeugen. man2enthält Informationen zu Systemaufrufen und allgemeinen Funktionen. Hier können Sie aus Programmierersichtweise Informationen übermount,umasketc. einholen.- In
man3stecken Erklärungen zu Library– und Subroutinen. - Die Man-Pages in
man4geben Hinweise zu Geräten (“Devices”). Hier lesen Sie Nützliches über die Konsole (console), das Mausgerät (mouse) und das “Datengrab”/dev/null. - Die Dateien unterhalb von
man5informieren über Inhalt und Aufbau spezieller Dateien. Hier finden Sie Interessantes zumfstab-Dateiformat genauso wie zum Format der Bootmanager-Konfigurationsdateililo.conf. - In
man6verstecken sich Man-Pages zu Spielen und Demos. Dort finden Sie oft auch Hilfeseiten vor, die nicht jede Distribution mitbringt, beispielsweise die zu den Demosscrolltest,speedtestundjoytest. man7enthält die Man-Pages zu Makropaketen. Sollten Sie sich für denunicode-Standard oder das Kommandolocaleinteressieren, werden Sie hier fündig.- Die Hilfeseiten in
man8erläutert Systemkommandos fürroot. Dazu gehört zum Beispiel dermount-Befehl. man9bietet den Man-Pages zu Kernel-Variablen und -Funktionen eine Heimat.debeherbergt die deutschsprachigen Manualseiten.
Möchten Sie die Online-Hilfeseiten nicht mit dem Kommando man über eine Kommandozeile aufrufen (wenn Sie über einen Eintrag aus einer speziellen Sektion Näheres wissen wollen, unter Angabe der Abschnittsnummer, zum Beispiel man 2 mount vs. man 8 mount), dann können Sie auf grafischen Oberflächen zum Beispiel die Programme xman oder tkman zum Anzeigen der Seiten benutzen.
Möchten Sie diese Programme vielleicht aus dem Internet beziehen? Auf http://rufus.w3.org/linux/RPM/XByName.html werden Sie unter index by Name->packages beginning with letter x bzw. …with letter t fündig.
Sprechen Sie Deutsch?
Ich habe deutsch- und englischsprachige Man-Pages installiert, aber beim Aufruf von man Stichwort zeigt sich jedes Mal die englische Fassung. Wie komme ich an die deutschen Texte?
Dr. Linux Einige Linuxdistributionen wie SuSE-Linux liefern eine Version des Kommandos mit, bei der Sie die deutschsprachigen Versionen der Manualseiten mit der Option -L gezielt aufrufen können:
user$ man -L de gzip
Das L steht für “locale” oder “language”, und wenn Sie dahinter ein Sprachkürzel schreiben, bewirkt es, dass Ihnen die entsprechendsprachige Fassung der Manualseiten (hier: vom Komprimierungstool gzip), sofern vorhanden bzw. installiert, präsentiert wird. Andernfalls wird die englischsprachige Version geliefert.
Mit dem Aufruf
user$ man -L de man
bekommen Sie die deutschsprachige Fassung der Online-Manualseiten zum man-Programm selbst und können noch weitere Optionen nachlesen.
In den meisten Fällen sind die deutschsprachigen man-Seiten nicht so umfangreich wie die englischen. Auch gibt es nicht alle Man-Pages in deutscher Sprache. Daher ist es sinnvoll, sie in beiden Sprachen zu installieren, sofern Ihr Speicherplatz nicht sehr begrenzt ist.
Bekommen Sie keine deutschsprachige Version, obwohl sie installiert ist, versuchen Sie es mit einem Eintrag in Ihrer /.bashrc oder ~/.profile. Diese versteckten Dateien befinden sich in Ihrem Homeverzeichnis oder Sie legen sie dort einfach neu an. Tragen Sie Folgendes ein:
export LANG=de_DE.ISO-8859-1
Damit erreichen Sie die maximal mögliche deutschsprachige Unterstützung, sofern Ihre Linuxdistribution Mehrsprachigkeit bietet.
Bleibt noch anzumerken, dass Sie bei grundsätzlich fehlenden deutschen Man-Pages im Internet fündig werden:
- http://www.infodrom.north.de/Linux/manpages-de/
- ftp://ftp.infodrom.north.de/pub/Linux/Devel/manpages-de/
Typ gesucht!
Mir sind unter Linux nicht alle Dateitypen bekannt; manche haben keine Dateinamenerweiterung. Wie kann ich ermitteln, mit welcher Art Datei ich es gerade zu tun habe?
Dr. Linux Benutzen Sie das Kommando file zum Identifizieren von Dateitypen. Wechseln Sie auf einer Kommandozeile in das Verzeichnis, in dem sich die unbekannten Dateien befinden oder geben Sie den vollständigen Pfad mit an. Der Aufruf ist denkbar einfach:
user$ file Dateiname
Das Ergebnis Ihrer Anfrage erscheint prompt auf der Kommandozeile.
Für file ist es kein Problem, wenn keine Dateinamenerweiterung vorhanden ist oder eine Datei mit einer “falschen” Kennung vorliegt. Haben Sie ein .jpeg-Bild, das fälschlicherweise als .txt gekennzeichnet wurde, lässt sich file davon nicht beirren. Auch unterschiedliche Schreibweisen für Dateierweiterungen wie zum Beispiel .jpg oder .JPEG sind kein Problem. Nur wenn file nicht mehr weiter weiß, erhalten Sie die Antwort “data”.
Frühlingsputz
Ich wollte mein System etwas aufräumen. Dabei habe ich festgestellt, dass ich im Verzeichnis /tmp nicht alle Dateien löschen konnte. Darf etwa nur root temporäre Dateien entfernen?
Dr. Linux Betrachten Sie Ihr temporäres Verzeichnis einmal etwas genauer! Sie werden anstelle der “üblichen” Kennzeichnung für “das Ausführbarkeitsrecht für alle Welt” kein x, sondern ein t vorfinden.
user$ ls -ald /tmp drwxrwxrwt 10 root root 20480 Feb 23 22:39 /tmp
Es handelt sich hier um das Sticky-Bit (“sticky”=klebrig). Es bewirkt bei Verzeichnissen, dass nur der Besitzer einer Datei diese auch aus dem Verzeichnis löschen darf, obwohl alle anderen ebenfalls Schreibrechte darin besitzen. Im temporären Verzeichnis wird damit verhindert, dass ein Benutzer die (vielleicht noch benötigten) Daten eines anderen Anwenders (aus welchen Gründen auch immer) ins Nirwana schicken kann.
Das Sticky-Bit für Programme, in der Auflistung durch ein T gekennzeichnet, wird unter Linux schlicht ignoriert.
Glossar
- mount
- Mit diesem Kommando geschieht das Einbinden von Datenträgern (zum Beispiel Festplattenpartitionen und CDs) in das Linux-Dateisystem. Dies ist normalerweise root vorbehalten. Ehe man eine gemountete CD oder Diskette wieder aus dem Laufwerk entnehmen kann, ist ein umount-Befehl zwingend nötig. Auch Festplattenpartitionen lassen sich so dem Zugriff unter Linux wieder entziehen.
- Mountpoint
- Das Verzeichnis, unter dem die Dateien eines Datenträgers “eingehängt” werden, damit man auf sie unter Linux u.a. Unixbetriebssystemen zugreifen kann.
- Dateisystem
- Die Art und Weise, wie Daten auf einem Datenträger organisiert werden, unterscheidet sich für verschiedene Betriebssysteme und unterschiedliche Speichermedien. Beispielsweise ist unter Windows 9x in der Regel eine Erweiterung des DOS-Dateisystems FAT namens VFAT im Einsatz, während Linux seine Daten-Partitionen gern im ext2-Filesystem vorliegen hat. Auf Daten-CDs kommt hingegen iso9660 zum Einsatz.
- umask
- Mit dem umask-Parameter legen Sie von vorherein die Zugriffsrechte auf Dateien für eine Reihe von “Fremddateisystemen” fest, die solcherlei Berechtigungen von sich aus nicht kennen. umask arbeitet mit einer Oktalzahl und verhält sich invers zum Kommando chmod. umask=002 bedeutet daher, dass Besitzer und Gruppe Verzeichnisse wechseln dürfen und Lese- und Schreibzugriff auf alle Dateien bzw. Verzeichnisse bekommen. Den “sonstigen” Usern werden aber “nur” Leserechte und das Verzeichniswechseln zugestanden. Mit umask=007 können Sie den Benutzern, die nicht zur Gruppe gehören, auch das noch verweigern, sollten Sie dies für nötig halten. Tiefer gehende Informationen zum Thema Zugriffsrechte und wichtige Kommandos zum Ändern von Besitzverhältnissen und Berechtigungen wie chmod, chgrp u.a. finden Sie in der Fachliteratur zu Linux und in den Man-Pages.
- Library
- Auch Bibliothek genannt. Libraries enthalten Standardfunktionen, die von vielen Programmen benutzt werden, zum Beispiel für die Bildschirmausgabe. Auf diese Weise muss nicht jedes einzelne Programm all diese Funktionen immer wieder neu enthalten.
- man
- Ausführlich beschäftigt mit diesem Programm zum Einsehen der Online-Manuale hat sich die Linux-User-Rubrik “Zu Befehl” aus Heft 02/2000.
- ~
- Eine oft verwendete Abkürzung für Ihr Homeverzeichnis.
- versteckten Dateien
- Dateien, vor deren Namen ein Punkt (“.”) gesetzt ist, versteckt Linux vor Ihnen, wenn Sie ein Verzeichnis mittels ls ohne die Option -a (“alle”) auflisten. Um versteckte Dateien zu sehen und ihre Schreib- und Leserechte zu ermitteln, verwenden Sie
ls -al. - temporäres Verzeichnis
- Hier werden zum Beispiel Daten von Anwendern und Programmen abgelegt, die zur Ausführung eines Programms oder Auftrags zeitweise nötig sind. Danach werden sie nicht mehr benötigt und können gelöscht werden.





