Zurueck
Linux - Spickzettel
grub reparatur:
von Live-CD booten
mount /dev/sdXY /mnt
mount -o bind /dev /mnt/dev
mount -o bind /sys /mnt/sys
mount -t proc /proc /mnt/proc
cp /proc/mounts /mnt/etc/mtab
chroot /mnt /bin/bash
grub-install /dev/sdX
grub-install --recheck /dev/sdX (nur wenn Fehler bei vorigem Befehl)
update-grub
und neustart
Paket auf hold setzen
echo xxx hold | dpkg --set-selections
startx X-Server starten
perl -v überprufen ob Perl installiert ist
> Ausgabe umleiten
>> Ausgabe anhängen
# Kommentar einleiten
~ Heimatverzeichniss des Benutzers
#!/bin/env bash Interpreter bestimmen
#!/bin/bash Interpreter bestimmen
export Setzt Umgebungsvariablen, Variablen exportieren
locate Findet Dateien anhand einer Datenbank
mc Dateimanager Midnight Commander
setenv Setzt Umgebungsvariablen unter Nicht-Bash Shells, z.B. csh
unset Variable löschen in ksh, bsh und bash
unsetenv Variable löschen in csh
passwd Benutzerpaßwort ändern
useradd Optionen Benutzer Benutzer anlegen
-c Kommentar
-d Homeverzeichnis
-e
-g Primäre Gruppenzugehörigkeit
-G weitere Gruppenzugehörigkeit
-s Shell
-u Benutzer-ID
userdel Benutzername Benutzer löschen
userdel -r Benutzername Benutzer und Benutzerverzeichnis löschen
vipw Benutzerdatenbank ändern
/* Verzeichnisse und Dateien */
/ oberste Verzeichniss im Dateisystem (Root/Wurzel)
/bin/ ausführbahre Dateien der wichtigsten Befehle
/dev/ Sammlung der Gerätetreiber
/dev/cdrom Link auf den CD-Rom Treiber
/dev/fd0 erstes Diskettenlaufwerk
/dev/fd1 zweites Diskettenlaufwerk
/dev/hda erstes (E)IDE Gerät
/dev/hdb zweites (E)IDE Gerät
/dev/hdc drittes (E)IDE Gerät
/dev/hdd viertes (E)IDE Gerät
/dev/lp0 erste parallele Schnittstelle
/dev/lp1 zweite parallele Schnittstelle
/dev/lp2 dritte parallele Schnittstelle
/dev/modem Link auf den Modemtreiber
/dev/mouse Link auf den Maustreiber
/dev/ttyS0 erste serielle Schnittstelle COM1
/dev/ttyS1 zeite serielle Schnittstelle COM2
/dev/ttyS2 dritte serielle Schnittstelle
/dev/ttyS3 vierte serielle Schnittstelle
/etc/ Konfigurationsdateien
/etc/fstab Laufwerke
/etc/hosts Ordnet IP-Adressen Hostnamen zu
/etc/inittab Grundeinstellung der Init-Levels
/etc/passwd hier sind die Passwörter gespeichert
/etc/profile Globale Benutzerprofile
/etc/services Ordnet Portnummern Servicenamen zu
/etc/shadow hier sind die Shadow-Passwörter gespeichert
/home/ Heimatverzeichnisse der User
/home/~/.profile diese Datei wird nach dem User-Anmelden ausgeführt
/home/~/.xinitrc diese Datei wird von .xsession ausgeführt
/home/~/.xsession diese Datei wird nach dem Befehl startx ausgeführt
/lib/ Shared Libraries
/proc/ virtuelles Filesystem zur inneren Verwaltung
/root/ Heimatverzeichnis des Users root
/sbin/ systemnahe Kommandos
/sbin/init der Kernel startet das Programm, welches das eigentliche System hochfährt
/sbin/init.d/ Dateien für die Init-Levels
/tmp/ temporäre Dateien
/usr/ ausfürbare Dateien, Libraries, X Window u.s.w
/usr/bin/ allgemein verfügbare Befehle
/usr/doc/ Dokumentationen
/usr/doc/packages/ Dokumentation der Programme
/usr/include/ Headerdateien für den C-Compiler
/usr/src/linux/ Kernel-Source
/usr/src/linux/README Installationsbeschreibung für den Kernel
/usr/X11R6/lib/X11/ Fenstermanager
/var/log/ Logdateien
/* /etc/fstab Bspl.*/
/dev/hda3 swap swap defaults 0 0
/dev/hda4 / ext2 defaults 1 1
/dev/hda1 /msdos msdos defaults 0 0
/dev/hda2 /windows vfat defaults 0 0
/dev/hdc /cdrom iso9660 ro,noauto,user,exec 0 0
/dev/fd0 /floppy auto noauto,user 0 0
none /proc proc defaults 0 0
/* Ausgeben */
cat Datei Inhalt der Datei auf dem Bildschirm ausgeben
cat Datei1 Datei2 > Datei3 Dateien1+2 zusammenfügen in die Datei3
more Datei Datei seitenweise ausgeben
less Datei Datei ausgeben und mit den Curser scrollen
j eine Zeile weiter
k eine Zeile zurück
u halbe Seite zurück
/Text sucht den Text
q less verlassen
nl Datei Datei mit Zeilennummern ausgeben
tail Datei zeigt die letzten 10 Zeilen einer Datei an
tail -n Datei zeigt die letzten n Zeilen einer Datei an
tail -f Datei zeigt ständig die letzten 10 Zeilen einer Datei an
head Datei zeigt die ersten 10 Zeilen einer Datei an
head -n Datei zeigt die ersten n Zeilen einer Datei an
od -b Datei Datei oktal ausgeben
od -c Datei Datei als ASCII ausgeben
od -x Datei Datei hexadezimal ausgeben
/* Datum und Uhrzeit */
date Datum und Uhrzeit abfragen
date -s '2000-01-29 20:00:00' +'%Y-%m-%d %T' Datum und Uhrzeit einstellen
clock -u -w Datum und Uhrzeit in das BIOS schreiben
/* Drucken */
lpr Datei Datei auf dem Drucker ausgeben
lpr -#n Datei Datei n mal auf dem Drucker ausgeben
lpr -m Datei Datei auf dem Drucker ausgeben,nach dem Drucken bekommt man eine mail
lpq Warteschlange anschauen
lprm Jobnummer Druckauftrag/Job aus der Wrteschlange löschen
pr Dateien für das Drucken aufbereiten
/* Auflisten */
ls Auflisten der Dateien im aktuellen Verzeichniss
ls Verzeichniss Inhalt des Verzeichnisses ausgeben
ls -la alles Auflisten im aktuellen Verzeichniss
ls -laFi alles ausführlicher Auflisten
ls | paste - - - - Dateien vierspaltig ausgeben
ls -1 untereinader ausgeben
ls -F Verzeichnisse mit angehänten / markieren
ls -i inode-Nummer mit ausgeben
ls -R alle Unterverzeichnisse mit ausgeben
ls -r Auflisten der Dateien umkehren
/* Kopieren */
cp Dateien Ziel Dateien kopieren
cp -i Dateien Ziel Dateien kopieren, vor dem Überschreiben einer Datei nachfragen
cp -R Quelle* Ziel gesamten Inhalt eines Verzeichises kopieren
mv Quelle Ziel Datei verschieben oder umbenennen
for i in *.mod; do mv $i ${i%.*}.mpg; done mehrere Dateien umbenennen
mv -f Quelle Ziel Schreibgeschützte Datei verschieben oder umbenennen
mv -i Quelle Ziel Datei verschieben oder umbenennen, vor dem Überschreiben nachfragen
ln Quelle Ziel Verknüpfung erzeugen (Hardlink), beide Dateien haben die gleiche inode
ln -s Quelle Ziel Verknüpfung erzeugen (Softlink)
ln -sf Quelle Ziel Verknüpfung erzeugen (Softlink) ohne Rückfrage überschreiben
/* rpm-Format */
<a href="http://www.rpm.org/">http://www.rpm.org/</a> weiterführende Informationen
rpm -i Paketname.rpm Installiert mit Prüfung auf Abhängigkeiten
rpm -iv Paketname.rpm Installiert mit Prüfung auf Abhängigkeiten und Rückmeldung
rpm -ivh Paketname.rpm Installiert, prüft, meldet und zeigt den Vorgang an
rpm -Uvh Paketname.rpm Update eines rpm-Binärpaketes
/* deb-Format */
dpkg -i Paketname.deb Installation eines deb-Binärpaketes
/* Suchen in Dateien */
grep Ausdruck Datei sucht nach dem Ausdruck in der Datei
grep -c Ausdruck Datei Anzahl der Zeilen, die den Begriff enthalten ausgeben
grep -i Ausdruck Datei große und kleine Buchstaben nicht unterscheiden
grep -l Ausdruck Datei meldet die Dateien die den Ausdruck enthalten
grep -n Ausdruck Datei sucht nach dem Ausdruck und gibt die Zeilennummer mit aus
grep -v Ausdruck Datei Ausgabe der Zeilen die den Ausdruck nicht enthalten
egrep Ausdruck Datei sucht nach dem Ausdruck in der Datei
fgrep String Datei sucht nach dem String in der Datei
fgrep -x String Datei sucht nach dem String in der Zeile einer Datei
/* Suchen nach Dateien */
find Pfad Bedingung nach Dateien suchen
find Pfad -name .profile nach dem Dateinamen .profile suchen
find Pfad -user dada nach Dateien die dem Benutzer dada gehören suchen
find Pfad -size +1024c nach Dateien die größer als 1024 Bytes sind suchen
find Pfad -atime +7 nach Dateien suchen die älter als 7 Tage sind
find Pfad -print alle Dateien im Pfad ausgeben
find -name *.txt alle Dateien im aktuellen Pfad mit der Endung .txt ausgeben
find / -size +16000000c alle Dateien die mehr als 16MB haben ausgeben
find -cmin -20 -name "*.java" -exec grep -H "static final" \{\} \;
# Suche nach einer Datei, die "static final" enthält
# und vor weniger als 20 Minuten geändert wurde.
find -iname "*.txt" -maxdepth 3 -exec grep -H "Huber" \{\} \;
# Suche nach einer Textdatei, die höchstens
# in einer Unterverzeichnistiefe von 3 liegt
# und die "Huber" enthält.
/* Berechnet Prüfsummen für aktuelles Verzeichnis mit Unterverzeichnissen */
find . -type f -print0 | xargs -0 md5sum >>prue.txt
/* Vergleichen von Dateien */
diff Datei1 Datei2 zeigt die Unterschiede zwischen zwei Dateien
comm [-123] Datei1 Datei2 zwei sortierte Textdateien vergleichen
cmp -l Datei1 Datei2 Binär-/Dateien vergleichen
/* Löschen */
rm Datei löschen von Daten
rm -r Dateien löschen von Dateien mit Verzeichnissen
rmdir Verzeichniss löscht Verzeichnisse, überflüssig rm -r geht auch
/* Zugriffsrechte/Eigentümer/Gruppe */
chmod werwiewas Datei Zugriffsrechte einer Datei/Verzeichniss ändern
wer: u-Eigentümer g-Gruppe o-alle Anderen a-alle 3 Benutzergruppen
wie: +-hinzufügen --wegnehmen =-nachfolgendes Muster setzen
was: r-lesen w-schreiben x-<b ausführen
chown NeuerEigentümer Datei Eigentümer der Datei ändern
chgrp NeueGruppe Datei Gruppenzugehörigkeit der Datei ändern
/* Zur Orientierung auf einem UNIX-Rechner */
date zeigt Datum und Uhrzeit an
df zeigt den feien Platten-Platz in kB an
df -h zeigt den feien Platten-Platz in MB an
du zeigt wieviel Platten-Platz in kB bestimmte Dateien einnehmen
echo Text schreibt den Text auf stdout (Bildschirm)
finger zeigt Infos über eingeloggte Benutzer an
finger -l zeigt ausführliche Infos über eingeloggte Benutzer an
free -t zeigt den feien Arbeitsspeicher in kB an
last zeigt wer sich zuletzt von wo aus auf dem Rechner eingeloggt hat
man Befehl Hilfe zu einem Befehl
man -k Begriff sucht nach dem Begriff
pwd Ausgabe des aktuellen Verzeichnisses
w Wer ist da und was ist los
whatis Befehl zeigt Kurzerklärung eines Befehls, sogar auf deutsch :-)
which Befehl zeigt, wo executable liegt, und eventl. alias
who zeigt Liste aller eigeloggten Benutzer
whoami zeigt, wem die shell gehört
/* Directories */
. Verweis auf sich selbst
.. Verweis auf parend directory (Verzeichnis höher)
/* Dateinamen */
max. 256 Zeichen, alle Zeichen sind erlaubt
. am Namensanfang versteckt Datei vor ls, cp, rm, mv
/* Dateiendungen */
.a Objektbibliotheken
.c C-Quellen
.cpp C++-Quellen
.p Pascal-Quellen
.s Assembler
/* Standartein-aus-gabe */
Jedes UNIX kennt 3 spezielle Files:
stdin Standardeingabe
stout Standardausgabe, normalerweise der Bildschirm
stderr Standardausgabe für Fehlermeldungen, normalerweise der Bildschirm
All diese files können umgelenkt werden
/* Arbeiten(Verwüstungen) im und am Filesystem */
cd Pfad Verzeichnis wechseln
mkdir Name Verzeichnis erzeugen
/* Infos über Files */
file Datei Inhalt der Datei analysieren
lsof Datei Wer greift gerade auf diese Datei zu
wc -lwc Datei Ausgabe der Linien,Worte und Buchstaben der Datei
ls -a | wc -l alle Dateinen im aktuellen Verzeichniss zählen
/* File-Inhalt bearbeiten */
compress Datei Datei komprimieren nach Datei.Z
uncompress Datei.Z Datei.Z dekomprimieren
expand Datei1 > Datei2 Tabs aus der Datei1 entfernen und zur Datei2 schreiben
unpack Datei.z Datei.z dekomprimieren
sort Datei1 > Datei2 die Zeilen der Datei1 in die Datei2 sortieren
tr [A-Z] [a-z] < Datei1 > Datei2 Klein durch Großbuchstaben ersetzen
uniq Datei Datei ausgeben bis auf doppelte Zeilen
/* mbr sichern */
dd if=/dev/hda bs=512 count=1 of=mbr.iso
dd if=mbr.iso bs=512 count=1 of=/dev/hda
/* partition sichern und komprimieren */
dd if=/dev/sda1 of=/image
dd if=/dev/sda1 | bzip2 -z >/image.bz2
bzip2 -d /image.bz2 | dd of=/dev/sda1
/* Debian iso auf stick schreiben sdd = usb-stick */
dd if=debian-iso of=/dev/sdd bs=4M; sync
/* platte prüfen*/
badblocks -s -v -n /dev/sda
/* Canon Videos nach avi konvertieren */
ffmpeg -i mov005.mpeg -sameq mov005.avi
/* dvd brennen */
dvd+rw-format -f /dev/sr0
growisofs -Z /dev/dvd -speed=1 -dvd-video "/media/md1/foto"
/* DVD-RAM */
zuerst:
modprobe pktcdvd
pktsetup dvdram /dev/sr0
Initial Format:
dvd+rw-format -force=full -ssa=default /dev/sr0 (oder /dev/dvdram)
Dateisystem anlegen (unbedingt udf!):
mkudffs --udfrev=0x0250 --vid=DVD-RAM --lvid=DVD-RAM --media-type=dvdram /dev/dvdram
alternativ --udfrev=0x0150 (0x0201)
mounten:
mount -t udf -o rw,noatime,async,users /dev/pktcdvd/dvdram /mnt/dvdram
/* TAR */
Sichern von Dateien/Directories auf Magnetband oder Diskette
x-extract t-Inhalt zeigen v-Aktivitäten melden f-file p- M- z-
tar xvfpM /dev/fd0 tgz von Diskette holen
tar xvfpz name.tgz tgz -> tar
tar tvfp name.tar Inhat des Tars anzeigen
tar xvfp name.tar Tar entpacken
/* rsync von . (hier) nach ./ */
/usr/bin/rsync -avub . /media/sdb1/sich/ajh11
/* löscht alte Dateien */
/usr/bin/rsync -av --delete . /mnt/baup_hdb5/foto
/* cpio sichern */
find /home/ajh -depth -print | cpio -o >sicherung.cpio
/* cpio entpacken in aktuellen Ordner */
cat datei.cpio | cpio -idmv --no-absolute-filenames
/* Disketten */
fdformat /dev/fd0u1440 Diskette Low-Level-Formatieren
mformat a: Dateisystem DOS-FAT anlegen
mkfs -t minix /dev/fd0u1440 1440 Dateisystem minix anlegen
mke2fs /dev/fd0u1440 Dateisystem ext2 anlegen
mount Gerät Verzeichnis Gerät im Verzeichnis anmelden
mount -t minix /dev/fd0 /mnt Diskette im minix-Format anmelden
mount -t ext2 /dev/fd0 /mnt Diskette im ext2-Format anmelden
mount -t msdos /dev/fd0 /mnt Diskette im msdos-Format anmelden
umount Verzeichnis Verzeichnis abmelden
umount /mnt Diskette abmelden
/* iso bei Systemstart einhängen */
/etc/rc.local: /bin/mount -o loop -t iso9660 /media/debiso/debcd.iso /media/debcd
mount -o loop ./file.iso /mnt/lop
/* Im Netz */
ftp Rechner Programm zur üBertragung von Files via Internet starten
nslookup atf3.bsd.tu-bs.de Befragt den DNServer nach der INummer des Rechners
ping Rechner sendet Pakete an Rechner mit Echo
rlogin Rechner Auf anderne Recher namelden
telnet Rechner Kommuniktaion über das TELNET-Protokoll
/* Die Runlevel Debian*/
init 0 Halt
init S Single User Mode
init 1 Multi User Mode
init 2 Multi User mit Netzwerk
init 3 4 5 frei
init 6 Reboot
/* Prozessbefehle */
Programm & Programm im eigenem Prozess starten
ps Überblick über die aktuell laufenden Prozesse
ps -ax gibt in den meisten Fällen eine ausreichende Auskunft
top wie ps nur Live
kill PID Prozess killen
kill -1 PID Prozess initialisieren
kill -9 PID Prozess killen
kill -15 PID Prozess beenden
kill -HUP PID veranlasst die meisten Dämonen ihre Konfigurationsdateien erneut zu lesen
/* Kernel und Module */
ftp://ftp.de.kernel.org/ ftp-Adresse für den Kernel und Kernel-Patches
gzip -cd patch.gz | patch -p0 Kernel patchen
make menuconfig Kernelkonfiguration im Textmodus
make dep aktualisiert die Abhängigkeiten
make clean löscht die temporären Dateien und Ausgabedateien
make zImage übersetzt und komprimiert den Kernel
make bzImage übersetzt und komprimiert den goßen Kernel
make dep clean zImage aktualisiert,löscht und übersetzt
make modules übersetzt Module
make modules_install installiert Module
make mrproper löscht alle erzeugten Dateien, auch die Konfiguration
uname -a feststellen welcher Kernel gebootet ist
/* für mich */
make INSTALL_MOD_STRIP=1 KDEB_PKGVERSION=55 deb-pkg
/* qt4 Project erstellen */
qmake-qt4 -project
qmake-qt4
make
/* scantailor */
cmake-gui
insmod Modul Modul laden
modprobe Modul Modul eigenständig laden
lsmod geladene Module anzeigen lassen
rmmod Modul Modul entfernen
/* Der Texteditor vi */
vi Editor vi aufrufen
vi Datei.txt Editor vi aufrufen und Datei öffnen
i Eingabe vor dem Cursor starten
a Eingabe nach dem Cursor starten
A Eingabe am Zeilenende starten
I Eingabe am ersten Zeichen der Zeile starten
gI Eingabe am Zeilenanfang starten
o Zeile unterhalb des Cusors einfügen und Eingabemodus starten
O Zeile oberhalb des Cusors einfügen und Eingabemodus starten
Esc in den Befelsmodus gelangen
:q! Editor verlassen
:wq Editor mit speichern verlassen
:x Editor mit speichern verlassen
:r Dateiname Datei einfügen
:h Hilfe anfordern
h Cursor nach links
Zahl h Cursor um Zahl nach links
l Cursor nach rechts
Zahl l Cursor um Zahl nach rechts
k Cursor nach oben
Zahl k Cursor um Zahl nach oben
gk das gleiche wie k nur Zeilenbezogen
j Cursor nach unten
Zahl j Cursor nach unten setzen
gj das gleiche wie j nur Zeilenbezogen
w Cursor Wortweise nach rechts
Zahl w Cursor um Zahl Wörter nach rechts
b Cursor Wortweise nach links
Zahl b Cursor um Zahl Wörter nach links
Strg+u Cursor 1/2 Bildschirm nach oben
Strg+d Cursor 1/2 Bildschirm nach unten
Strg+b Cursor 1 Bildschirmseite nach oben
Strg+f Cursor 1 Bildschirmseite nach unten
0 Cursor auf den Zeilenanfang setzen
$ Cursor auf den Zeilenende setzen
H Cursor an den Anfang der Bildschirmseite setzen
L Cursor an das Ende der Bildschirmseite setzen
^ auf das erste Nichtleerzeichen der Zeile setzen
/Text Sucht den Text vorwärts
?Text Sucht den Text rückwärts
n Wiederholt das letzte Kommando
fx nächstes Zeichen suchen
tx vor nächstes Zeichen setzen
Fx vorheriges Zeichen suchen
Tx hinter vorherigem Zeichen setzen
; ftFT wiedrholen
; ftFT entgegengesetzt wiederholen
xgg oder xG am Anfang der Zeile setzen
M in die Zeilenmitte setzen
xx% in die Zeilen setzen
dd Zeile löschen
dw Wort löschen
cw Wort löschen und Eingabemodus starten
x Zeichen löschen
u Befehl rückgängig machen
v Zeichen makieren mit o zum Anfang
V Zeilen makieren mit o zum Anfang
y Zeile kopieren
p einfügen
/bin/sh Bourne-Shell zum programmieren
/bin/ksh Korn-Shell Mischung aus C-und Bourne-Shell
/bin/csh C-Shell zum interaktiven Arbeiten
/bin/bash Bourne-Again-Shell
/bin/tcsh TC-Shell
/* Die Start-Scripts */
sh /etc/profile ~/.profile
bash /etc/profile ~/.bash_profile,~/.bash_login und ~/.bashrc
csh /etc/csh,/etc/csh.login ~/.cshrc und ~/.login
ash /etc/profile ~/.profile
exit Shell beenden
/* Tastenkombinationen */
[Strg]+[l] Bildschirm löschen bash und csh
[Strg]+[a] Zeilenanfang bash und csh
[Strg]+[e] Zeilenende bash und csh
[Alt]+[f] Wort vorwärts bash und csh
[Alt]+[b] Wort rückwärts bash und csh
[Strg]+[c] Befehlseingabe verwerfen alle Shells
[Pfeil rechts] und [Pfeil links] Cursor bewegen bash und csh
[Pfeil hoch] und [Pfeil runter] History-Scrolling bash und csh
[Tab] Komplettierung bash und csh
[Strg]+[d] beendet die Shell
[Umschalt]+[Bild hoch] und vorherige Textausgabe alle Shells
[Umschalt]+[Bild runter] zurückholen
[Alt]+[F1] bis [F6] Umschalten zwischen Textkonsolen alle Shells
[Strg]+[Alt]+[F1] bis Umschalten zu Textkonsolen alle Shells
[Strg]+[Alt]+[F6] aus X11 heraus
[Strg]+[Alt]+[F7] Umschalten zu X11 aus Textkonsole alle Shells
Zurueck