zurück zur Übersicht

   
Autor: Niru Linux Tipps für Windows Kenner
 
Linux Tipps für Windows Kenner - Schnelleinstieg - Teil 1, v.1.02

1.) Bildschirmsteuerung

Abbruch von X: Strg-Alt-Backspace
Das laufende X Window wird abgebrochen.
UNIX Typisch werden damit auch alle Kindprozesse abgebrochen,
das ermöglicht einen sauberen Neustart, wenn ein Programm hängt.

Umschalten der Bildschirme (Konsolen):
Umschalten aus X-Window zu den Konsolen: Strg-Alt-F1, Strg-Alt-F2, usw.
Umschalten zwischen den Konsolen genügt: Alt-F1, Alt-F2, usw.

Das grafische X-Window läuft bei den Distributionen auf der Konsole 7,
bei der Life CD Knoppix auf Konsole 5

ein user kann eine weitere X-Windows session starten mit:
startx -- :2
die Ausgabe erscheint dann auf der nächsten Konsole 8 bzw. 6

Markieren/ Einfügen in X-Window:
Markieren mit der Maus, (Strg-C ist nicht nötig)
Einfügen mit der mittleren Maustaste
----------------
Folgende shell Kommandos sollte man kennenlernen.
ls, ls -l, df, mount, fdisk -l, file, type, which, tar, ps, less, man(ual)

man ls
zeigt Hilfe für ls an

ps ax
zeigt die Liste aller Hintergrundprozesse an, seitenweise Anzeige mit:
ps ax | less

Unterschiede zu Dos Kommandos:
mkdir, rmdir
die Abkürzungen md und rd gehen nicht, nur die Langform
cd
ohne Argumente wechselt in das $HOME Verzeichnis des users, statt das aktuelle Verzeichnis anzuzeigen.
pwd
zeigt das aktuelle Verzeichnis an.

echo $PATH zeigt die PATH Variable an.
das aktuelle Verzeichnis wird _nicht_, wie bei dos/win, automatisch durchsucht.
daher kommt auch der oft beschriebene Programmaufruf mit ./Programmname
man sollte auf _keinen_ Fall das aktuelle Verzeichnis, als erstes in die
PATH Variable aufnehmen (Sicherheitslücke!), als letztes gehts aber.

Konfigurationsdateien des Systems sind in /etc
Programme sind traditionell in /usr installiert und haben da ihr Heimverzeichnis,
Heimverzeichnis der user ist in /home (war früher auch in /usr, daher der Name usr)
Lokale Programme sind in /usr/local bzw. in /usr/local/bin

Konfigurationstools der Distributionen heissen bei Suse yast und sax2,
bei Mandrake haben sie im Namen ein drak(e)

freie Konfigurationstools sind: (fehlt noch viel, Tipps erbeten)
linux: linuxconfig, xf86config
KDE: kcontrol, kxconfig, usw

oder einfach mal selber suchen mit:
grep config alles.lst | grep /bin/

2.) Weitere Tipps
id
gibt die user und gruppen ID aus, das ist eine Nummer, daran werden User und Gruppen erkannt.
id und andere Programme lesen die Nummer aus /etc/passwd und /etc/group
die id 0 ist reserviert für den user root, der alle Rechte hat. UNIXe richten sich nach diesen Nummern, die Namen werden eher zur Anzeige und besseren Lesbarkeit verwendet.
für Anwender werden je nach Linux Distribution id's ab 500 oder 1000 vergeben, man sollte sich eine einmal verwendete persönliche user- und gruppen id merken und bei späteren installationen wiederverwenden. So hat man auf Daten in anderen Laufwerken wieder dieselben Zugriffsrechte. Auch gut, wenn man mehrere Linuxe parallel installiert hat.
---
Dateinamen, die mit einem Punkt beginnen, gelten als "versteckte" Dateien.
alle Dateien, incl. "versteckte" kann man sich anzeigen lassen mit
ls -al
Option a steht für all(e)
Option l steht für (long) langes Format

Das "verstecken" von Dateien ist eine reine Anzeigeoption und vereinfacht die Übersicht. Es gibt keinen Zusammenhang zu Berechtigungen. Berechtigungen müssen unabhängig davon da sein, sonst geht nix.
---
tar und cpio sind Universalpacker, wobei tar in der Bedienung einfacher ist.
Beispiele:

tar cvfz /tmp/Sicherung.tgz ~

Sichert den Inhalt des persönlichen Home Verzeichnisses (~), darin sind alle "Eigene Dateien" und persönliche Einstellungen aller Programme.

tar cvfz /tmp/Sicherung-Mozilla.tgz ~/.mozilla
sichert alle persönlichen Mozilladaten und -einstellungen

tar cvfz /tmp/Sicherung-Evolution.tgz ~/evolution
sichert alle persönlichen Daten und Einstellungen von Evolution
---
Die Namenserweiterung tgz ist reine Konvention, kein muss, und setzt sich zusammen aus
t(ar) für Tar format
gz für den Kompressor gzip, der verwendet wird, wenn die Option z angegeben wird.

3.) Umgebungs (shell) Variablen
~ - steht für das Home Verzeichnis eines Users, bei mir wäre das z.B. /home/niru
$HOME - dasselbe wie ~
$PATH - gibt die Variable PATH aus, wie %PATH% bei dos/win

4.) init
ist das zentrale Steuerungsprogramm für UNIXe, es überprüft, startet und beendet Prozesse, die in der Datei /etc/inittab eingetragen sind. Im zweiten Feld stehen die runlevel, in denen ein Programm laufen soll. Steht im dritten Feld respawn, wird das Programm überwacht und bei Abbruch/ Beenden neugestartet. Das wichtigste Programm in /etc/inittab ist natürlich login

UNIXe kennen folgende Runlevel (Ausschnitt aus /etc/inittab)
# Runlevel 0 is halt. ---> herunterfahren
# Runlevel 1 is single-user. ---> ebenso Runlevel S, S oder 1 entspricht etwa "Abgesicherter Modus", bzw. "DOS Modus"
# Runlevels 2-5 are multi-user. ---> 5=grafischer Modus, 3=Netzwerkmodus ohne Grafik
# Runlevel 6 is reboot. ---> Neustart

Unabhängig davon gibt es die bedutzerdefinierbaren Runlevel a bis z, womit der Systemverwalter einstellen kann, welche Programme gruppenweise laufen oder gestoppt werden sollen. Praktisch reichen die Runlevel a bis d

Die Runlevel kann root umschalten, z.B:
init 0 ---> Herunterfahren des Systems
init 3 ---> den grafischen Modus ausschalten (z.B. um sax2 zu starten)
init 5 ---> den grafischen Modus einschalten
init b ---> umschalten in den Runlevel b

5.) du =disk usage
Zeigt Platzbelegung von Dateien und Verzeichnissen an
kann so ähnlich wie TreeSize verwendet werden, z.B.:
du -s *
oder
du -s /home/* 2>/dev/null
zeigt die Festplattenbelegung aller user (ausser root in /root) an, Fehleranzeigen werden weggeworfen.

/dev/null etspricht NUL bei dos/windows, ähnliche Analogien bei dos sind:
con entspricht /dev/console
com1 entspricht /dev/ttyS0
---

hier ne kleine Zwischenbemerkung zur Umleitung
Standardmässig sind bei der shell drei Dateien geöffnet:
0 - Standardeingabe
1 - Standardausgabe
2 - Standardfehler
Sie lassen sich durch <,>,>> oder | umleiten

---
6.) find
ein sehr universelles Tool zum suchen, kleiner Einblick gibt:
find . -newer /bin/bash -size +12k -type f
zeigt ab aktuellem Verzeichnis reguläre (normale) Dateien, die grösser als 12 Kilobytes sind und neuer als /bin/bash

oder
find /usr/bin -type f -perm -700
zeigt alle Dateien ab /usr/bin, die reguläre Dateien sind und zumindest der Eigentümer Rechte zum ausführen hat.

oder
find /usr/bin -type l
zeigt alle Dateien ab /usr/bin, die Verknüpfungen sind

oder
find /etc -type d
zeigt ab /etc alle Dateien, die Verzeichnisse sind

oder
grep ^[0-9]*\.\) Linux-Tipps-Teil-2.txt
findet Überschriften in diesem Text,
am Anfang der Zeile, beliebige Zahlen, dann Punkt und Klammer zu

7.) Hintergrundprogramme
kann man starten mit dem Zeichen & am Ende der Zeile
(entspricht Start Kommando bei Windows)
z.B.:

find / -mount >alles.lst &

erstellt eine komplette Dateliste des (wurzel)Dateisystems /
zusätzlich gibt es das Kommando nohup (no hang up),
nohup leitet die geöffneten Standarddateien input, output, error um,
und verhindert, dass der Hintergrundprozess abgebrochen wird,
wenn sich der user abmeldet. (logout)
Normalerweise bewirkt der Abbruch eines Prozesses, dass alle
zugehörigen Kindprozesse mitabgebrochen werden, ausser eben
diese bewusst mit nohup im Hintergrund gestarteten.

nohup find / -mount >alles.lst &

macht dasselbe wie oben, läuft aber auch nach dem Abmelden weiter, bis zum Ende.

8.) grep
universelles Textsuchtool gibts auch für dos/windows, z.B.:

grep -i /Mail$ alles.lst

sucht in der Datei alles.lst nach der Zeichenfolge /Mail am Ende der Zeile ($)
Gross-/ Kleinschreibung wird ignoriert. (-i)

Platzhalter für grep:
Zeilenbeginn: ^
Zeilenende: $

9.) mount, umount
Meldet ein Dateisystem an einem Verzeichnis an. Der ursprüngliche Inhalt des Verzeichnisses, wird ausgeblendet und ist nicht mehr erreichbar, bis zum Abmelden mit umount.
Ohne Argumentenangabe listet mount alle angemeldeten (gemounteten) Verzeichnisse.

Die Liste der anzumeldenden Dateisysteme steht in der Datei /etc/fstab und kann da angepasst werden, falls man eine neue Festplatte einbaut und einen Teil der Daten nach Wiederherstellung woanders anmelden will.
Für Zeilen, die in /etc/fstab stehen, kann man eine Kurzform verwenden. Es genügt anzugeben, was oder wohin man etwas mounten will, im unteren Beispiel wäre es egal, ob man angibt:
mount /dev/hda1 oder mount /mnt/windowsXP
ein user darf _nur_ diese Kurzform verwenden, auch nur dann, wenn die user option in /etc/fstab auf ihn passt. Nur root darf wie immer, alles.

z.B.:
mkdir /mnt/windowsXP
mount -r -t ntfs /dev/hda1 /mnt/windowsXP

meldet /dev/hda1 (erste Festplatte, erste Primärpartition, bei Windows meist Laufwerk C:)
am Ordner /mnt/windowsXP mit dem Dateisystemtyp NTFS (-t)
mit nur Leserechten (-r) an.
Neuere Linuxe erkennen den Dateisystemtyp automatisch, so dass die -t (typ) Option
i.A. nicht angegeben werden muss.

mount -o remount,rw /mnt/windowsXP

ändert die Schreibrechte von /mnt/windowsXP auf lesen/schreiben (rw)
**! ntfs beschreiben nennt sich experimentell ! Nur im Notfall verwenden !**

Anschliessend abmelden mit:
umount /dev/hda1
und
ntfsfix /dev/hda1
korrigiert irgendwas, den Rest erledigt Windows bei Neustart mit chkdsk
siehe:
man ntfsfix

10.)man(ual), die UNIX Hilfeseiten
man gibt zu fast jedem Programm oder Systemdatei eine Beschreibung aus.
z.Z. etwa 18 MB komprimiert (du -sk /usr/share/man, Knoppix 3.4)
ist leider nur teilweise in Deutsch.

z.B.:
man man
man ls

Jetzt steht oben grossspurig Teil 1, es sollte aber nur einen einzigen Teil geben, womit Windows Kenner einen grundsätzlichen Überblick bekommen und sofort loslegen können. Ohne sich erst durch ne Anleitug für Anfänger durchzuöden. Ist natürlich lange nicht alles, es fehlen wichtige Teile, vieles ist ungenau.
Die wichtigste Erkenntnis ist aber, dass man lernt, mit dem Manual (man) umzugehen, oder mit einem Handbuch. Denke, niemand kennt UNIX vollständig. Selbst ein so einfaches Kommando wie ls kennt so viele Optionen, dass man bei Bedarf erstmal nachsehen muss, dann merkt man, dass sich etliche gute Spezialisten grosse Mühe gegeben haben, auch aus diesem kleinsten Kommando ein Universaltool zu machen.

z.B. die Option -U gibt die Ausgabe unsortiert aus. Sieht nicht besonders aus, wenn aber für einen bestimmten Zweck, z.B. ein Server pro Minute 10000 mal diese Liste braucht, gibts einen _extremen_ Zeitunterschied, ob sortiert oder nicht.

Wahrscheinlich wirds doch einen zweiten Teil als Ergänzung geben. Glaube aber nicht, dass man den wirklich braucht.

------------
Gruss
Niru

 
   

zurück zur Übersicht