************************************************************************
************************************************************************
Version 18.04.06 Die wichtigsten Befehle -- eine Sammlung:
************************************************************************
************************************************************************
========================================================================
Inhaltsverzeichnis
========================================================================
0 Einleitung, ein Pamphlet
1 Tastatur Kommandos bei KDE
2 Basis Linux / Unix Befehle versus DOS-Befehle
3 Weitere Linux / Unix Befehle
4 Format und Mount Devices in Linux / Unix
5 Administration in Linux / Unix
6 Bash personalisieren: Funktionen, Kürzel (alias) und Sprachen
7 Archivierung
8 Netzwerk
9 Manual pages
10 LaTeX Befehle
11 Ausdruck in Buchform
12 drucken zu Hause
13 drucken an der ETH (als noch gedruckt werden durfte!)
14 Mail und ftp
15 emacs befehle
16 weitere nützliche Programme
17 Midas Befehle
18 Daophot-Befehle
19 Macintosh-Befehle
========================================================================
Einleitung, ein Pamphlet
========================================================================
Mit dieser Liste von Befehlen, die ich seit meinen ersten Linuxversuchen
anno 1997 angelegt habe, hoffe ich der geneigten Lerserin, dem geneigten
Leser, die ersten Linux-Momente zu erleichtern. Ich jedenfalls habe sehr
schlechte Erinnerungen an die aller erste Informatik Übungsstunde im ETH
Physikstudium: ohne jegliche Hilfe vor einer UNIX-Maschine sitzend, die
ETH verfluchend. Es hätte den Prof. oder Assi keine 5 Min. gekostet, uns
die Funktionsweise von Unix, einer Shell etc. kurz zu erklären, aber die
Eliteschule ETH hat das nicht nötig, eine Organisation der Übungsstunden
schon gar nicht. Daß der Assi die erste Stunde im Computer Raum hielte?
... vergiß es. So saßen also hunderte von Studenten dutzende Stunden vor
dem Bildschirm, um eine Datei zu erzeugen, compilieren und per e-mail zu
verschicken... was in 3 Minuten erledigt wäre...
Eigentlich sollte vor der ersten Computerübungsstunde (im Physik-/Mathe-
matik-Studium an der ETH) ein Buch besorgt werden, in dem UNIX od. LINUX
erklärt wird, insbesondere die Funktionsweise der Shell, z. B. der bash,
denn sonst ist die Gefahr groß, schon im ersten Moment zu verzweifeln!
Das Buch von C. Newham: Learning the bash shell, kann ich nicht wirklich
empfehlen, hilfreicher war schon dasjenige von U. Cuber: Linux und seine
Werkzeuge. Etwas aktueller (2003) ist ein Buch von W. Schaffrath: Grund-
kurs Unix/Linux. Hier werden immerhin awk, grep, perl und sed erklärt.
Sobald die ersten Befehle bekannt sind, (dazu genügt eigentlich das Info
Blatt der ersten Übungsstunde, oder diese Seite), empfehle ich das Buch
von P. Ditchen: Shellskript Programmierung zu besorgen, oder aber: Bash
Ge-Packt von T. Zilm und K. Günther; letzteres gefällt mir weniger gut,
beinhaltet aber sehr viele nützliche Tipps und Tricks.
*** STOPP, dies soll der Linux Neuling aber lesen ! ***
Bevor es los geht: die Shell oder Konsole ist diese komische Fenster, in
das "hineingeschrieben" werden kann. Falls Linux das erste mal gestartet
wird, und ein solches Fenster nicht erscheint, liegt es sicher "hinter"
dem Icon das einen Bildschirm darstellt, vielleicht eine Muschel zeigt,
oder ähnlich. Wenn so ein Fenster offen ist, dann kann's los gehen: die
Shell erledigt alle Befehle auf Kommando! Es startet z.B. ein Programm,
indem einfach der Name des Programms eingegeben wird. Falls sich ein Be-
fehl verweigert, dann kann mit der Eingabe von: man befehl das Manual
des Befehls aufgerufen werden. Ich gebe zu, das erste mal kann es schon
extrem mühsam sein, aber mit der Zeit wird es selbstverständlich, so ein
manual zu Gemüte zu führen. Beendet wird die man Anzeige mit q für Quit.
Ah, und noch was: die Befehle (auch mehrere Zeilen) können einfach ange-
strichen werden (mit der Maus, z. B. hier in der Textdatei) und am Ziel-
ort, z. B. eure Shell, mit der mittleren Maustaste hineingepastet! Wow!
========================================================================
Tastatur Kommandos bei KDE
========================================================================
________________________________________________________________________
CTRL + F1,2,3... Wechsel zum entsprechenden virtual Desktop
CTRL + TAB schrittweiser virtual Desktop Wechsel
SCROLL mit MAUS über den virtual Desktops (Pager) scrollen!
ALT + TAB Wechsel der Fenster im virtual Desktop.
CTRL + ESC Prozesstabelle
CTRL + ALT + Backspace X-Server shutdown
________________________________________________________________________
========================================================================
Basis Linux / Unix Befehle versus DOS-Befehle
========================================================================
________________________________________________________________________
CTRL + ALT + Backspace X-Server killen <CTRL> + <ALT> + <DEL>
________________________________________________________________________
cd Verzeichnis wechseln (change directory) cd
cd .. eine Verzeichnisstufe tiefer cd ..
cd / ins root (/) Verzeichnis wechseln cd C:
cd ~ ins home (~) Verzeichnis wechseln
________________________________________________________________________
ls Dateien und Verzeichnisse anzeigen dir
ls | less Datei- und Verzeichnisanzeige seitenweis dir /p
ls -l | more Dateianzeige seitenweise mit Details (-long)
ls -a Dateianzeige inklusiv versteckter Dateien (Punkt
vor Dateiname) -a versteckt,
dir -r -s -h
mit -h hidden, -s system, -r readonly
ls -lrth Dateianzeige im Detail und umgekehrter Zeitfolge
(-rt reverse time ordered) und -h humaner Angabe
der Dateigroesse
________________________________________________________________________
rm Datei löscht Datei del
rm -rf verzeichnis löscht volle Verzeichnisse Rekursiv ohne Fragen
rm -f .verstecktedatei löscht mit . versteckte Dateien
-r rekursiv, also auch Unterverzeichnisse
-f force, ohne Nachfragen
deltree
________________________________________________________________________
cp quelle ziel Dateien kopieren copy
cp file1 file2 copy a.txt b.txt
cp *.sty ~/latex kopieren aller *.sty Dateien aus dem aktuellen
Verzeichnis ins home/latex Verzeichnis
cp -v -u *.* /ziel update aller veraenderten Dateien mit Prozess
angabe -v verbose.
________________________________________________________________________
mdosbefehl dos befehle in der shell ausführen, kann z.B.
nützlich sein, wenn der Name des Disketten
Laufwerks nicht bekannt ist:
mcopy A:/a2.tex /global/helene/users/login/astro/a2.tex
________________________________________________________________________
========================================================================
Weitere Linux / Unix Befehle
========================================================================
________________________________________________________________________
man befehl zeigt im Terminal die Manual-Seite befehl /?
whatis befehl
apropos befehl des befehls help
Befehle, von denen umbedingt einmal die man-page
angeschaut werden sollte, sind:
awk
cut
grep
head
sed
sort
tail
tr
wc
xargs
________________________________________________________________________
befehl1 | befehl2 Die pipe leitet die Ausgabe eines ersten Befehls
statt an die standard Ausgabe weiter zu einem 2.
Befehl. Erst das Ergebnis des letzten Befehls
wird dann angezeigt. SEHR Nützlich! Beispiele
folgen weiter unten!
________________________________________________________________________
ps Prozesse anzeigen, die Zahl der ersten Kolonne
gibt die Prozess-ID an
kill -9 PID Prozess beenden, PID ist die mit dem Befehl ps
angezeigte Zahl
fg fortfahren eines mit ^Z gestoppten Prozesses
bg idem, aber im Hintergrund
top Fortlaufend Prozeße anzeigen
kill -9 `ps | grep gv | awk '{ print $1}'`
kill -9 `ps u | grep gs | awk '{print $2}'`
Dieses Konstrukt wird klarer, wenn grep und awk
bekannt sind. Hier kurz die Bedeutung. Statt der
PID wird der Wert des Befhels ausgegeben, --> ``
der natürlich solche PIDs liefern soll: Die Aus-
gabe von ps wird zum Befehl grep weiter geleitet
(ge-piped) --> | der nach Zeilen mit gv sucht.
Zeilen die gv enthalten werden weiter an awk ge-
piped. Awk gibt dann von diesen Zeilen nur die
Zahlen des ersten Feldes (Kolonne aus), eben die
PIDs. Mit diesem Konstrukt werden also alle gv-
Prozesse beendet.
killall gv Es geht auch einfach, oder auch
pkill gv
________________________________________________________________________
du Größe des Kontos (disk usage)
du -ah mit allen files und humaner Angabe
du -ch | grep total nur die totale Größe
du -sk ~/ | more Größe des Kontos in KB
________________________________________________________________________
df Belegung des Accounts, Disks (disk free)
df -h | grep /dev/hda1 | cut -c 41-43
________________________________________________________________________
quota -v quota in einer shell abfragen
________________________________________________________________________
who um zu wissen wer noch eingeloggt ist
________________________________________________________________________
finger login Abfrage ob Benutzer mit login eingeloggt ist
________________________________________________________________________
cat file Anzeige des file im Terminal (wie less, more)
cat > file um in eine Datei file zu schreiben
text eingeben, mit Eingabe beenden, und
^d abspeichern (Control+d)
cat >> file schreibt am Ende von file weiter
________________________________________________________________________
chown user gglo.ist Eigentümer der Datei gglo.ist ändern
chmod -R o=-rx dir/ Rechte (read/execute) rekursiv für ein Verzeich-
nis ändern
chmod 755 hello.cgi Datei hello.cgi ausführbar machen
chmod +x a.out Datei ausführbar machen für alle Benützer
chmod u+x a.out Datei ausführbar machen nur für user
________________________________________________________________________
./a.out ausführbare Datei aufrufen unter Linux
a.out ausführbare Datei aufrufen unter Uniux
a.out > out.txt um Ausgabe eines C++ Programmes umzuleiten, gilt
ganz allgemein für alle Befehle
________________________________________________________________________
ln ziel_datei name erstellt einen Verweis name auf die ziel_datei.
ln -s sr1 cdrecorder um einen symbolischen-Link vom vorhandenen Gerät
sr1 nach cdrecorder festlegen
________________________________________________________________________
rename bla glo bla??.* umbenennung von Dateien
rename 's/ld/d/' * ersetzt die Anfanfsbuchstaben ld durch d
rename 's/\*/_/' * ersetzt den * in ein _ in einem filename
________________________________________________________________________
Um bei Dateien mit Namen data_blabla.txt die Praefix data_ wegzubekommen
(rename geht in diesem Fall nicht!)
for i in data*.txt ; do
mv $i `ls $i | awk -F_ '{print $2}'`;
done
Oder mit cut statt mit awk! Z.B.
ls -l | cut -d" " -f 7-
________________________________________________________________________
mv $file `echo $file | sed 's/\(.*\.\)html/\1php3/'`
ersetzt file.html in file.php3
________________________________________________________________________
grep suchwort datei sucht in datei nach suchwort
grep -n -i 'wrong pattern' wrong.file
'' Sonderzeichen schützen
-n zeigt Zeilennummer an
-i mißachtet Groß-/Kleinschreibung
-v Suche umkehren, nichtzutreffendes ausgeben
-A x Ausgabe von x Zeilen NACH Kontext
-B x Ausgabe von x Zeilen VOR Kontext
ls -R | grep -v Track | grep -v '\.'| grep [a-zA-Z0-9] > list.txt
sucht erst nach Einträgen OHNE Track und entfernt dann alle Zeilen mit .
und schließlich alle Leerzeilen.
grep -B 1 '^C' sucht nach Zeilen die mit C beginnen und gibt
diese und die jeweils davor liegende Zeile aus.
diff -u -w datei_1.txt datei_2.txt | grep '^[+-]'
gibt alle unterschiedlichen Zeilen aus.
________________________________________________________________________
find . -name "*.ps" sucht im . Verzeichnis nach *.ps-Dateien
find . -name finder.dat | xargs rm
um Datei finder.dat in allen Verzeichnissen zu
loeschen
________________________________________________________________________
date
date --date='3 Dec 71' Wochentag des 3. Dezember 1971
date +%Y aktuelles Jahr
date +%s Zeit in Sekunden seit 1.1.1970,
so werden die Mails in KMail benannt!
date --date='3 Dec 71' +%s Zeit in Sekunden zwischen 1.1.1970 und 3.12
1971
________________________________________________________________________
pwd print working directory
________________________________________________________________________
awk '{for(i=2; i<=NF; i++) print $i }'
________________________________________________________________________
echo $'\106' ein ASCII Zeichen ausgeben
Die Frage ist nun, wie ich statt der Zahl 106 eine Variable mit diesem
Wert benützen kann!?
________________________________________________________________________
========================================================================
Format and Mount Devices in Linux / Unix
========================================================================
________________________________________________________________________
To access a device such as CD, Floppy or ZIP, you need to mount them and
unmount, note: umount, to be able to eject the media afterwards.
mount /dev/cdrom mount device
umount /dev/cdrom unmount device (note the missing n)
eject
see file /dev/fstab (file-system-table) for names of devices.
Using SuSE (9.3) you can not mount them manually anymore. This might be
anoying, if you want to access the data, e. g. if you have a mixed-mode
"audio" CD and you want to mount the data part. Therefore edit the fstab
file (as root: type e.g. pico /etc/fstab) and change the line
/dev/cdrecorder /media/cdrecorder subfs
noauto,fs=cdfss,ro,procuid,nosuid,nodev,exec,iocharset=utf8 0 0
to
/dev/cdrecorder /media/cdrecorder subfs
users,noauto,fs=cdfss,ro,procuid,nosuid,nodev,exec,iocharset=utf8 0 0
i.e. add the word users, to allow users to mount the fs.
Another problem was to write to my vfat windows partition: normal users
had no write permissions. So again, one has to change the fstab file to:
/dev/hda3 /windows/E vfat umask=0,codepage=850,iocharset=iso8859-1 0 0
and then one should be able to write to the windows partition. Note, the
iocharset should better not be utf-8!
________________________________________________________________________
fdisk /dev/hda formatier Harddisk a fdisk
________________________________________________________________________
Für Disketten (im ungemounteten Zustand!!!)
fdformat /dev/fd0H1440 format a:
mformat a:
________________________________________________________________________
obsolet im Linuxraum
fdformat /dev/fd0H1140; mkdosfs /dev/fd0 format a:
Formatiert eine Diskette
und erzeugt das DOS Dateisystem darauf
________________________________________________________________________
superformat /dev/fd0u1440 ; mkdosfs /dev/fd0 format a:
Formatiert eine Diskette
und erzeugt das DOS Dateisystem darauf
________________________________________________________________________
mke2fs /dev/hda1 format C:
________________________________________________________________________
dd if=/dev/zero of=/dev/hda
nach ca. 2Std. und 30 Min ist eine 80GB-Platte astrein:
dd: writing to `/dev/hda´: No space left on device
156301489+0 records in
156301488+0 records out
oder kürzer:
dd if=/dev/zero of =/dev/hda bs=2k count =1
________________________________________________________________________
Floppy eines anderen Computers ansteuern: im terminal unter UNIX
ssh -l login slab168 Computer wechseln, oder von auswärts
ssh -l login slab4.ethz.ch
Are you sure you want to continue connecting (yes/no)? yes
login@slab168's password:
Option -l für login Name. Ist der login derselbe auf dem entfernten
Rechner, kann diese auch weggelassen werden.
cd /floppy
volcheck diskette lesen
cd/floppy0
mv v1.tex ~/private/tex/vp
eject
________________________________________________________________________
lsof /media/cdrom um herauszufinden, welches Programm auf
/media/cdrom zugreift und ein umount verhindert
________________________________________________________________________
lspci Gibt wichtige Informationen über die angehängten
PCI Geräte. Dies ist nützlich, um beispielsweise
bei einem Notebook herauszufinden, was für ein
Chip auf dem "Noname" Modem steckt.
Geht ev. nur als root!
________________________________________________________________________
lsmod Gibt die geladenen Module an
________________________________________________________________________
========================================================================
Administration in Linux / Unix
========================================================================
________________________________________________________________________
xhost +
su als Superuser einloggen
passwort eingeben
exit
________________________________________________________________________
passwd Passwort ändern
________________________________________________________________________
Passwort Änderung n.ethz.ch: http://n.ethz.ch
Passwort Änderung stud.phys: http://nic.phys.ethz.ch
________________________________________________________________________
shutdown -r now neustart (reboot) sofort
shutdown -h +180 runterfahren (halt) in 180 min.
________________________________________________________________________
rpm -qa | grep kde welche KDE Packete sind installiert?
rpm -i package.rpm installiere package.rpm
rpm -e package.rpm entferne package.rpm
rpm -Uvh package.rpm update package.rpm
--nodeps Installation trotz Konflikten erzwingen
--oldpackage Installation eines älteren Pakets (downgrade)
--replacepkgs Ersetze Pakete von anderen Installationen
--force erzwingen, installiertes wird überschrieben
rpm -i --force package.rpm
rpm -Uvh --nodeps package.rpm
rpm -Uvh --oldpackage package.rpm
________________________________________________________________________
RPM Pakete aus Quell (source) Paketen erzeugen
rpmbuild --target i686 --rebuild noname-0.0.1.src.rpm
rpmbuild --rebuild kuickshow-0.8.4-1.src.rpm
________________________________________________________________________
Welche Pakete soll ich eigentlich herunterladen, i386, i486, i586, i686?
Das bestimmt die Architektur des Computers, die mit dem Befehl
uname -a
oder auch einfach
arch
herausgefunden werden kann. Aber eigentlich sollte es auch mit Überlegen
gehen: das i steht für Intel, die erste Zahl für die Generation der Pro-
zessor-Familie (i80x86), ergo ist die Architektur i586 die fünfte --> PI
(Pentium I), demnach gilt i686 für alle weiteren Pentium Generationen:
PII-PIV! Bei meinem PIII installiere ich wenn möglich immer i686 rpms!
Oder starte in KDE3.3 das Control-Center, und siehe da, der Begrüssungs-
Bildschirm gibt all diese Informationen!
________________________________________________________________________
Rpm-Pakete entpacken in ein Zielverzeichnies:
1) Den Ihnahlt mit den genauen Dateibezeichnungen im Paket "package"
herausfinden:
rpm -qpl
rpm2cpio package | cpio -t
2) Entpacken:
rpm2cpio package | cpio -iv --make-directories zielverz
Beispiel, um eine SPEC Datei zu bekommen:
rpm2cpio streamripper-1.60.10-2.src.rpm | cpio -iv --make-directories \
streamripper.spec
________________________________________________________________________
Rpm-Paket selber herstellen (ausgehend von einer foo.tar.gz-Datei):
Als erstes muß die tarball-Datei ins default Verzeichnis kopiert werden:
cp ripit-2.7.tar.gz /usr/src/packages/SOURCES/
Als nächstes brauchen wir eine Datei mit den Spezifikationen, z.B.
liefert more ripit-2.7-1.spec
---------------------------------- bof ---------------------------------
#
# spec file for package RipIT (Version 2.7)
#
Name: ripit
Summary: Perl Script to Create .ogg or .mp3 Files from an Audio CD
Version: 2.7
Release: 1
License: GPL
Group: Productivity/Multimedia/CD/Grabbers
Source: ripit-%{version}.tar.gz
Packager: Felix Suwald
Url: http://www.suwald.com/ripit/index.html
Requires: cdparanoia vorbis-tools perl perl-CDDB_get
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArchitectures: noarch
%description
This Perl script makes it easy to create MP3 files from an audio CD. It
tries to find the artist and song titles with the help of CDDB.
Authors:
--------
Felix Suwald <ripit[_at_]suwald[_dot_]com>
Mads Martin Joergenson <mmj@mmj.dk>
Simon Quinn <Simon_contact_me_@_ripit!>
%prep
BINDIR=/usr/bin
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/$BINDIR
%setup
%build
%install
BINDIR=/usr/bin
install -m 755 ripit.pl $RPM_BUILD_ROOT/$BINDIR
ln -s ripit.pl $RPM_BUILD_ROOT/$BINDIR/ripit
chmod a-x README HISTORY
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,755)
/usr/bin/ripit
%config(noreplace) /usr/bin/ripit.pl
%doc README HISTORY
---------------------------------- eof ---------------------------------
Dann können wir mit dem Bau des rpm-Paketes beginnen:
rpmbuild -ba ripit-2.7-1.spec
Umedingt Meldungen beachten!
Die erstellten Pakete können dann kopiert werden
cp /usr/src/packages/SRPMS/ripit-2.7-1.src.rpm .
cp /usr/src/packages/RPMS/noarch/ripit-2.7-1.noarch.rpm .
________________________________________________________________________
tune2fs -i 69d /dev/hda5
tune2fs 1.34 (25-Jul-2003)
Setting interval between check 5961600 seconds
Damit nicht alle 14 Tage beim Systemstart ein fsck stattfindet, sondern
nur alle 69 Tage...
________________________________________________________________________
hdparm -d1 /dev/hdc dma Modus einstellen, damit DVD nicht ruckelt.
hdparm -d1 -k1 -c1 /dev/hda manchmal fliegt der DMA Modus raus...
________________________________________________________________________
DOS-Tricks: *.lnk (link-)Dateien löschen
start --> run (Ausführen) --> regedit und Code eintippen
start --> run --> command --> neues Fenster: ftp hg.n.ethz.ch
start --> run --> ftp.hg.n.ethz.ch
________________________________________________________________________
========================================================================
Bash personalisieren: Funktionen, Kürzel (alias) und Sprachen
========================================================================
________________________________________________________________________
Funktionen (Mehrzeiler)
Z. B. in die Datei ~/.bashrc (die Tilde bezeichnet das Home-Verzeichnis)
können eigene Funktionen eingetragen werden. Dies kann nützlicher sein,
als unmengen von shell-Scripts zu verwalten und finden. Damit eine neue
Funktion aufrufbar (erkannt) wird, muß, in diesem Fall die bash, neu ge-
startet werden, indem einfach
bash
eingegeben wird. Hier ein Beispiel eines solchen Eintrags.
# lower-case changes file and directory names
# from upper case to lower case and changes
# the permissions to rwx. This was needed, when
# I had to copy Linux files via Windows...
function lc {
for i in *
do
mv $i `echo $i | tr 'A-Z' 'a-z'`
done
chmod u=rwx *.*
}
________________________________________________________________________
Aliase (Einzeiler)
Über einen Eintrag in der Datei .bashrc im Home-Verzeichnis können Alias
dauerhaft eingerichtet werden. Trage am Ende der Datei .bashrc mit einem
editor (z. B. pico, kwrite, emacs...) oder mit cat >> folgende Zeile ein
alias dir='ls -l'
Damit dieser Befehl wirksam wird, muß bash "neu gestartet" werden, d. h.
in einer bereits offenen shell nochmals
bash
eingeben, dann erscheint bei der Eingabe von dir kein Command not found,
sondern das gewünschte Ergebnis.
Um zu sehen welche Alias bereits vorhanden sind, gebe einfach alias ein!
Hinweis: Besteht der Befehl eines Alias aus einem Wort, muß er nicht in
Anführungszeichen gesetzt werden. Das ist nur nötig, wenn der Befehl aus
mehreren Worten mit Leerzeichen dazwischen besteht (wie im obigen Fall).
Sind lediglich Leerschläge vorhanden, dann genügen die doppelten Anführ-
ungszeichen (double quotes), die einfachen (single quotes) sind stärker.
________________________________________________________________________
Im Unix-Raum an der ETH wird die tcsh empfohlen, ganz analog im Home
Verzeichnis Einträge in die Datei .tcsh oder .tcsh.usr anfügen
cat >> .tcsh oder besser wie vorgeschlagen:
cat >> .tcsh.usr
alias a4he "vpp -dest=hge26-1 -fo=A4HE.duplex -dev=printer -noflag"
C_d (Control+d) zum abspeichern
________________________________________________________________________
Auf Linux im home Verzeichnis:
cat >> .tcshrc.user
alias dpp "dvips -o -pp"
alias dp "dvips -o d.ps"
C_d
neu einloggen, oder einfach tcsh neu starten durch Eingabe von tcsh.
________________________________________________________________________
alias listet alle gesetzten alias auf
________________________________________________________________________
alias xemacs 'xemacs -bg white&'
________________________________________________________________________
Sprachen und Tastatur in der bash: siehe z.B.
man 7 unicode
man 7 utf-8
Welche lokalen Sprachen kann ich überhaupt benützen?
~> locale -a
Dann mit
~> locale
herausfinden, welche Variablen gesetzt wurden. Um sie zu ändern, z. B.
~> export LANG=de_CH.UTF-8
oder
~> export LANG=en_US.UTF-8
eingeben.
Und wie bringe ich es nun fertig, dass dies bei jedem Neustart so einge-
stellt ist? In der von SuSE generierten .bashrc Datei, in der ich eigene
Funktionen definieren durfte, steht, daß es besser ist, Sprach-Einstell-
ungen in der Datei .profile zu machen. Wenn die Datei noch nicht vorhan-
den ist:
~> cat > .profile
export LANG=de_CH.UTF-8
Control+d zum Abspeichern
oder obige Zeile mit einem Texteditor wie pico hinzufügen! Ober aber mit
cat >> .profile an die bestehende Datei anhängen.
Die globalen Einstellungen habe ich unter /etc/SuSEconfig/ gefunden, in-
dem ich in /etc mit grep -r 'LANG=' * gesucht habe. Ich fand eine Datei
profile, und habe dort alle Einträge _DE.UTF-8 nach _CH.UTF-8 geändert.
Damit brauche ich keine Datei .profile in meinem Heimverzeichnis, und es
kommen beim Start von Mozilla etc. keine Fehlermeldungen, daß bei diesen
lokalen Einstellungen das Programm nicht starten kann...
Zum aktiven konvertieren hilft der befehl ivonv. Mit dem Befehl file die
Datei-Art herausfinden!
~> file befehle.txt
befehle.txt: UTF-8 Unicode English text
Jetzt kann mit iconv --list angezeigt werden, was es alles für Formate
gibt, und mit
~> iconv -f UTF-8 -t ISO-8859-15 befehle.txt
die Datei zu (to) ISO-8859-15 konvertiert werden.
________________________________________________________________________
Sprachen und Tastatur in KDE3:
Ich persönlich empfehle, als Sprache US-Englisch zu verwenden. Denn wenn
Probleme auftauchen, kommt Hilfe aus dem Internet meist nur auf Englisch
und kann nur auf Englisch angefragt werden. Daß die Titel-/ Menü-Leisten
der Fenster dann auf Englisch sind, stellt wohl kaum ein Problem dar.
Falls weitere Sprachen installiert werden sollen (mittels Control-Center
eingstellt), dann müssen die entsprechenden kde3-i18n rpm-Pakete instal-
liert werden, mit YaST...! (i18n bedeutet i+18Buchstaben+n und steht für
internationalization).
Also, sollten im Control-Center keine weiteren Sprachen zur Wahl stehen,
dann mit YaST die entsprechenden kde3-i18n Pakete installieren, dann im
Control Center auswählen und "priorisieren" (d. h. an die oberste Stelle
verschieben), danach ev. X-Session neu Starten.
________________________________________________________________________
========================================================================
Archivierung
========================================================================
________________________________________________________________________
zip name.zip *.tex komprimiert alle Dateien.tex zu Datei name.zip
unzip name.zip dekomprimiert alle Dateien
________________________________________________________________________
tar xvf name.tar entpackt tar datei
tar xvf name.tar -C ~/progs entpackt tar datei nach ~/progs
tar xvjf name.tar.bz2 entpackt tar.bz2 datei
tar xvzf name.tar.gz entpackt g-zipte tar datei
tar xvzf name.war entpackt g-ziptes web archiv
tar cvfz foo.tar.gz datei dir archiviert datei und Verzeichnis dir
tar cvfj foo.tar.bz2 datei dir archiviert datei und Verzeichnis dir
oder in 2 Schritten:
1) gunzip name.tar.gz und dann
2) tar -xvvf name.tar
x: entpacken
v: verbose
f: file
z: g-zip komprimiert
c: erzeugen (compress)
________________________________________________________________________
Tips und Tricks mit tar- und war-Archiven
Bei KDE gibt es das Web-ARchiv war, dessen Inhalt (die index.html Seite)
vom Konqueror schöner angezeigt wird, als bei einem normalen Archiv mit
dem voreingestellten Mime Bild. Es handelt sich aber kein neues Datei-
format, sondern ein ganz normales (ev. komprimiertes) Archiv! D.h.:
Bei jedem Problem: mit dem Befehl file zuerste einmal überprüfen, in was
für einem Format die Archiv-Datei vorliegt:
file meinarchiv.war Gibt das Dateiformat an: tar, zip, gzip, bz...
Benenne die Datei dem Format entsprechend um, und versuche erneut zu de-
komprimieren, allenfalls in 2 Schritten, siehe unten. And be aware, that
a simple tar file coming from Windows might become a tar.tar file. Just
rename it properly file.tar!
You can also rename your archive.tar to file.tar.gz and then try to gun-
zip as usual: gzip -d file.tar.gz and then do tar -xf file.tar or in one
step: tar -xvvzf file.tar.gz
to unpack on the fly...
gunzip < FILE.tar.gz | tar xvf -
to pack on the fly...
tar cvf - FILE-LIST | gzip -c > FILE.tar.gz
If you get an "tar: Archive contains obsolescent base-64 headers" error
message, then rename your archive.tar to db-ojb-1.0.rc3.tgz and use:
tar -xzf db-ojb-1.0.rc3.tgz
________________________________________________________________________
less name.gz um name.tar.gz zu lesen, wie DOS: type
________________________________________________________________________
Internetseiten rekursiv archivieren (kann das Web-Archiv von Konqueror
3.3 noch nicht):
wget -k -p -r -l3 http://www.accesszone.com/clickdeath/index.html
-k die links werden angepasst
-p pager requisits, alles was benötigt wird
-r rekursiv
-l3 undzwar 3 Ebenen tief
dann die html-Seite zu index.html umbenennen
mv hauptseite.html index.html
und mit den Verzeichnissen html und assets komprimieren:
tar cvf - index.html html assets | gzip -c > click_of_death.tar.gz
schliesslich:
mv click_of_death.tar.gz click_of_death.war
und schon haben wir ein schönes Webarchiv (für Konqueror).
________________________________________________________________________
========================================================================
Netzwerk (Achtung, ev. können Befehle nur als su ausgeführt werden!)
========================================================================
________________________________________________________________________
rcnetwork status
rcnetwork restart
________________________________________________________________________
ifup wlan0
________________________________________________________________________
ifstatus
ifconfig Info über Netzwerkkarten, z.B. MAC, IP Adresse
ifconfig eth0
iwconfig wlan0
________________________________________________________________________
Probleme bei NFS Server/Client Konfiguration, alles mit YaST:
Beispiel: PC mit WLAN ist NFS Server, Notebook mit ETH ist Client.
Ich mußte die aktuellen IP Adressen (192.168.0.x & 192.168.0.y) heraus-
finden (als su in einem Terminal eingeloggt mittels dem Befehl ifconfig)
und sicherstellen, daß sie in den host Tabellen der anderen Rechner ein-
getragen sind. Dann zuerst am PC den NFS Server starten, danach Notebook
mittels Netzwerkkabel anschließen und NFS Client starten. Seit SuSE 9.2
bricht der NFS-Client start meist mit einer Fehlermeldung ab, obwohl das
Verzeichnis (mit more /etc/mtab kontrollieren) erfolgreich eingebunden
wurde! Es kann also losgehen, auch wenn SuSE einen Mißerfolg meldet. Mit
SuSE 9.3 habe ich weniger Probleme beim Starten des NFS-Client.
________________________________________________________________________
========================================================================
Manual pages
========================================================================
________________________________________________________________________
man man Allgemeines über man
man man.7 Macros zur Formatierung von man pages, erste
Informationen um eine man-page zu erstellen.
less /usr/share/man/man1/man.1.gz
um den Quelltext von man.1 zu betrachten.
________________________________________________________________________
========================================================================
LaTeX Befehle
========================================================================
________________________________________________________________________
In Linux verwende Editor kile!
kile & um kile von bash aus zu starten
________________________________________________________________________
Anfangs 1990er Jahre an der ETH...
obsolet: vor dem kompilieren: module add latex bzw. module add tex
________________________________________________________________________
Heute via Kommandozeile:
latex title.tex
________________________________________________________________________
xdvi title.dvi & um title.dvi unter unix anzusehen, oder
kdvi title.dvi & in linux mit KDE
________________________________________________________________________
dvips -o title.ps m um m.dvi zu title.ps konvertieren
Option -o: um den automatischen Ausdruck zu verhindern
Option -pp1,3,5-15 nur die Seiten 1, 3 und 5-15
________________________________________________________________________
dvips -pp 1,3,9-13 title.dvi druckt Seiten 1,3,9-13 von title.ps aus
________________________________________________________________________
psnup -pa4 -2 m.ps psoutput.ps druckt mehrere Seiten auf ein Blatt
________________________________________________________________________
gv & ghostview, um ps-Dateien anzusehen
________________________________________________________________________
BoundingBox in ps-Dateien manipulieren: als normalen Text öffnen und die
ersten 4 Zahlen (stehen nach %%) ändern; (x,y)-Ecke links unten und Ecke
rechts oben.
________________________________________________________________________
ps2ps t1.ps t2.ps "verschoenert" ps-Dateien
________________________________________________________________________
Um ein Glossar zu erzeugen, habe ich die "style"-Datei gglo.ist gesucht
und geändert. Im LaTeX Dokument muß die Zeile \makeglossary stehen, da-
mit die Datei .glo erzeugt wird. Danach kann die Datei glo.tex ans Doku-
ment angehängt werden.
makeindex -s mygglo.ist -c -o glo.tex m.glo
Option -s eigenes style file benützen
Option -o um in eine output Datei auszugeben
Option -c um ueberzaehlige blanks und tabs zu loeschen.
________________________________________________________________________
ps2pdf m.ps ändert nicht ausdruckbares file.ps nach file.pdf
pdftotext m.pdf erstellt Datei m.txt, c'p ins LaTeX, genial!
acrored m.pdf um das file.pdf anzuschauen, dann direkt drucken.
_________________________________________________________________________
========================================================================
Ausdruck in Buchform
========================================================================
________________________________________________________________________
dvips -o m.ps m.dvi
psbook -s16 m.ps t.ps
psnup -pa4 -2 t.ps d.ps
lpr -Zshortbind d.ps am hoengg
vpp -dest=hge26-1 -fo=shortbind.A4H -dev=HP5Si -noflag d.ps im zentru
vpp -dest=hgg30 -fo=weiss.a4H.shortbind -dev=pts d.ps g-stock
________________________________________________________________________
Ein einseitig erstelltes ps-Dokument zweiseitig (in Buchform) ausdrucken
(d. h. eine Leerseite als Seite 2 einfuegen):
psmerge scheint nicht zu funktionieren.
1) Deckblatt erstellen: psselect -p15,1 emacs.ps title.ps
2) Rueckseite: psselect -p14 emacs.ps back.ps
3) pstops '1:0U(21cm,29.7cm)' back.ps upside.ps
4) psnup -pa4 -2 title.ps d1.ps
5) psnup -pa4 -2 upside.ps d2.ps
6) d1.ps drucken:
vpp -dest=hge26-1 -fo=manual -dev=HP5Si -noflag d1.ps
7) dann das herusgekommene Blatt wie es ist in
den Einzeleinzugschacht einlegen, d2.ps drucken.
8) Rest drucken.
Etwas kniffliger wird die Situation, wenn das Vorder- und Rückblatt nur
rechts bedruckt werden soll, sonst leer. Dann muß bereits die erste Sei-
te die aufs Blatt rechts kommen soll, gedreht werden, dann psnup. Die 2.
Seite muß auch gedreht werden, dann psnup, aber dann nochmals gedreht!
________________________________________________________________________
mp3-Büchlein:
1) Erste Seite des Büchleins nach vorne verschoben drucken, zuerst also
dvips -O 11.5cm,0in -pp 1 -t landscape -o mp3.p1.ps mp3
Beachte, Durchmesser ist 11 cm, also entweder <11cm oder <16cm
verschieben, um ein rundes Büchlein zu erhalten oder Form der
Laschen der CD-Tasche zu bekommen.
2) danach die vierte Seite erstellen und drucken:
dvips -pp 4 -t landscape -o mp3.p4.ps mp3
3) Wir wissen, daß der Rand 1in beträgt, der Durchmesser 11+0.5cm, wenn
wir also um 11,5cm verschieben, dann beträgt der größere Rand 4.16cm,
d.h. wir müssen die zweite Seite um 1.62cm verschieben:
dvips -O 1.62cm,0in -pp 2 -t landscape -o mp3.p2.ps mp3
wegen veränderter Rändereinstellung im Drucker...(?)
dvips -O 2.0cm,0in -pp 2 -t landscape -o mp3.p2v2.ps mp3
4) die dritte Seite verschieben wir um 29,7cm-2*1in-11.5cm=13.12cm
dvips -O 13.12cm,0in -pp 3 -t landscape -o mp3.p3.ps mp3
wegen veränderter Rändereinstellung im Drucker...(?)
dvips -O 13.5cm,0in -pp 7 -t landscape -o mp3.p7v2.ps mp3
5) lp -o PrintoutMode=High
lpr -P dj -o PrintoutMode=High
________________________________________________________________________
Da KDE so eine tolle Oberfläche ist, das Eingeben von all den Zeilen nur
um ein Büchlein zu drucken viel zu mühsam, basteln wir uns ein Service-
Menu! Wir schreiben folgende Zeilen in eine Datei und kopieren sie nach
~/.kde/share/apps/konqueror/servicemenus/
oder ähnlich (je nach Distribution/Installation).
--------------------------------bof-------------------------------------
[Desktop Action ArrangeSides]
Exec=psbook -s4 %u %u_bk && psnup -2 %u_bk %u_book && rm %u_bk
Name[de]=4-seitige PS-Datei erzeugen
Name=4-page PS-file
Icon=contents
[Desktop Entry]
Actions=ArrangeSides
Encoding=UTF-8
ServiceTypes=application/postscript
--------------------------------eof-------------------------------------
Jetz kann mit dem Kontextmenü (Rechtsklick) einer ps-Datei diese Aktion
gestartet werden, und ein Booklet wird automatisch erzeugt!
________________________________________________________________________
Es können aber leider immer wieder Probleme auftauchen. Ich habe mir bei
einem bestens funktionierendem Skript die Zähne ausgebissen! Nur weil im
Pfad der Datei die ich angeklickt habe, ein & (amperstand) vorkam, brach
das Skript unverrichteter Dinge ab, natürlich ohne zu sagen wieso... Wie
sollte es auch. Ich habe die Ausführung des Skripts folgendermassen zum
Sprechen gebracht: statt
Exec=pdfbook %f
verwende ich
Exec=konsole --noclose -e pdfbook %f
wobei pdfbook ein funktionierendes Perl Skript ist, das ich mit /usr/bin
verlinkt habe. Der konsole Befehl öffnet eine neue Schell. In dieser ist
dann die Warnung ersichtlich! Datei nicht gefunden!
Hier noch eine Liste der desktop-entry-specs
http://www.freedesktop.org/wiki/Standards/desktop-entry-spec
%f A single file name, even if multiple files are selected. The sys-
tem reading the desktop entry should recognize that the program
in question cannot handle multiple file arguments, and it should
should probably spawn and execute multiple copies of a program
for each selected file if the program is not able to handle addi-
tional file arguments. If files are not on the local file system
(i.e. are on HTTP or FTP locations), the files will be copied to
the local file system and %f will be expanded to point at the
temporary file. Used for programs that do not understand the URL
syntax.
%F A list of files. Use for apps that can open several local files
at once.
%u A single URL.
%U A list of URLs.
%d Directory containing the file that would be passed in a %f field.
%D List of directories containing the files that would be passed in
to a %F field.
%n A single filename (without path).
%N A list of filenames (without paths).
%i The Icon field of the desktop entry expanded as two parameters,
first --icon and then the contents of the Icon field. Should not
expand as any parameters if the Icon field is empty or missing.
%c The translated Name field associated with the desktop entry.
%k The location of the desktop file as either a URI (if for example
gotten from the vfolder system) or a local filename or empty if
no location is known.
%v The name of the Device entry in the desktop file.
Eine weitere Anleitung zu einem speziellen servicemenu mit Interaktion
(Benutzereingabe) gibt es in der Datei audiocd in dieser Ebene.
________________________________________________________________________
========================================================================
drucken zu Hause
========================================================================
________________________________________________________________________
mit dem alten SuSE-Linux 6.2
lpr -Plp fuer normalen s/w Ausdruck 300x300dpi
lpr -Pcolor fuer normalen Farbausdruck 300x300dpi
lpr -Phigh fuer seltsamen Farbausdruck 600x600dpi
lpr -Pphoto fuer seltsamen Farbausdruck 600x600dpi
________________________________________________________________________
mit SuSE-Linux 8.2
lp -Pdraft oder normal oder high_grey
lp -Pdraft_grey oder normal_grey oder color
________________________________________________________________________
mit SuSE-Linux 9.0 unter CUPS obsolet
lphelp hp_deskjet845c zeigt Optionen an!
lp filename
lp -o PageSize=A4 -o PrintoutMode=Normal
lp -o PrintoutMode=Draft.Grey
________________________________________________________________________
mit SuSE-Linux 9.0 unter CUPS aktuell
Installation gelingt nur, wenn statt den tatsächlichen Mod. (HP-DeskJet-
845C und LaserJet-1015) die allgemeinen Treiber "DeskJet" und "LaserJet"
gewählt werden! Um das zu realisieren, hat mir SuSE einen ganzen Tag ge-
raubt! Fazit: NIE wieder SuSE!
Um einen bestimmten Drucker zu wählen, kann NICHT einfach wie in der CU-
PS Anleiung geschrieben steht, mit lp -d printer, gewählt werden, es muß
wie beim lpr -P Befehl, ohne Leerschlag: lp -dlpdj (dj für DeskJet) und
lpr -Plplj (lj für LaserJet) eingegeben werden.
2-seitig drucken wenn Drucker dies nicht unterstützt:
lp -dlplj -o cpi=13 -o lpi=8 -o page-set=odd -o page-top=43 cd.txt
kontrollieren, ob letzte Seite gedruckt wurde oder nicht, falls ja, dann
letzte entfernen, Papier wieder einlegen, und
lp -dlplj -o cpi=13 -o lpi=8 -o page-set=even -o page-top=43
-o outputorder=reverse cd.txt
lphelp lplj | less
Hilfe Seite:
http://localhost:631/sum.html
Nun kann ich mit dem HP-Deskjet nicht mehr farbig drucken, was ich aber
eben noch konnte... Was tun? SuSE rausschmiessen? Einrichten einer neuen
Warteschlange plus Test mit dem Befehl lpr -Pcolor file.ps ergibt einen
weiteren s/w-Druck.
Im nächsten Abschnitt stehen meine Erfahrungen mit SuSE und YaST! Finger
weg! mit dem ControlCenter aus KDE gings dann einwandfrei!
************************************************************************
Also schmeisse ich CUPS und alles raus, starte neu um neu einzurichten,
womit mir der Hardwareplugger die kalte Schulter zeigt und keine neu er-
kannte Hardware meldet. Beim Einrichten wird die Software zwar eingespi-
elt, dann schickt der Test mit dem Befehl lpr -Php_Deskjet845c irgend
eine Datei ins Nirvana, d. h. Drucker blinkt und bewegt sich auch nach 3
Minuten nicht... Hingegen ist mal wieder die Uhr total verstellt, statt
wie eben 17.00 habe ich jetzt 7.58... Doofes SuSE. Wichtig scheint diese
Markierung bei local filtering zu sein. Wenn ich dort die Markierung weg
nehme, dann wird wenigstens gedruckt, in ASCII statt graphisch richtige
Dateien... Ich werde nie wieder SuSE kaufen. Dann klicke ich auf fertig,
YaST schliesst und ein abgestürtztes SuSEplugger Fenster prangt auf mei-
nem Bildschirm... auch noch 3 Minuten später... Zur Hölle mit SuSE. Bei
weiteren Versuchen von Neuinstallationen wird der CUPS-Server x mal Ini-
tialisiert, was nicht "one or two minutes" dauert, sondern mind. 15 Min-
uten, und das eben x-mal. Schliesslich lade ich nochmals meine ursprüng-
liche user9.0.sel und mache eine letzte Testreihe: CUPS-Server, aber mit
unterschiedlichen Treibern. Mit dem DeskJet_845C-cdj880.ppd.gz wurde be-
reits mit der ersten Testseite meine nagelneue s/w-Patrone fast geleert.
Ein anderer Treiber macht mir Monster-Zombie-Buchstaben, und schließlich
mit dem Treiber DeskJet_845C-gimp-print.ppd.gz geht alles perfekt:
************************************************************************
lphelp dj
schon kann gedruckt werden, auch das Ablegen der Dateien im Printmanager
sollte gehen.
Den lj habe ich dann aus dem ControlCenter heraus installiert.
Zuerst habe ich unter Hewlett-Packard den LaserJet 1100 gimp Treiber ge-
nommen, NICHT so gut. Dann unter HP den LaserJet 1150 hpijs, ist besser,
und schließlich unter HP den LaserJet 1200 hpijs Treiber.
Wie in http://localhost:631/sum.html beschrieben kann ich jetzt drucken:
lpr -P lj -o page-set=odd d.ps
dann nehme ich den Stapel, kontolliere ob auf dem letzten Blatt bereits
die letzte Seite gedruckt wurde (und entferne dieses Blatt in dem Fall)
und schiebe den Stapel tel-quel, nein, "Kopf voran" (!) ins Papierfach.
lpr -P lj -o page-set=even -o outputorder=reverse d.ps
-o page-ranges=1 -o ppi=value
30.08.2004
Einrichten des HP Laserjet 1300N geht problemlos via ControlCenter.
Der Treiber Postsricpt (recommended) geht zwar gut, aber ich habe wieder
die von früher bekannten Probleme mit AutoCAD postscript Zeichnungen, in
denen die Strichstärke zu schwach ist, und bei erhöhen der setlinewidth
Kurvern dicker werden als gerade Linien... Also verwende ich den Treiber
Foomatic/hpijs Treiber, wie für den HP1015 Drucker.
Druck-Befehle wie oben.
13.09.05
Einaml mehr bleibt unser Drucker einfach hängen. Das ist natürlich nicht
der Fehler von CUPS, YaST etc., aber daß diese ollen GUIs und Programme
mir nicht einfach sagen können was los ist, und wieso kein Testdruck den
Drucker erreicht... Schauen wir also einmal mehr die lokale Hilfe-Seite
http://localhost:631/sum.html
an. Folgende Befehle waren mal aufschlußreich:
lpstat
ui, da hängt einiges
lpstat -p -d
gibt eine Liste von Printern und den Default Drucker, und die Info, daß
"printer netzwerk1300n disabled since Jan 01 00:00", ahh wie nett! Bitte
was muß ich jetzt machen? Und daß meine Shell auf UTF-8 läuft, scheint
dem CUPS nicht sonderlich zu gefallen! OK, lprm oder cancel:
lprm 159744
lprm: Job or printer not found!
cancel 159744
cancel: cancel-job failed: client-error-not-found
Was ja nicht verwundert, ist doch der Drucker gerade disabled! Hm, wäre
an der Zeit herauszufinden, wie ich den Drucker wieder enable...!
http://www.linuxprinting.org/cups-faq.html#q_1_2 ist sicher ganz nett,
aber es hilft nicht! http://www.nslu2-linux.org/wiki/HowTo/AddPrinter
sagt wenigstens, daß ich es mit
/opt/bin/enable [printer name]
versuchen soll.
bash: /opt/bin/enable: No such file or directory
auch als root! Hm.
http://channels.lockergnome.com/it/archives/20050209_control_printers_in
_linux_from_the_command_line.phtml
/usr/bin/lp Used to submit print jobs
/usr/bin/lp.cups Used to submit print jobs
/usr/bin/lpoptions Gets and sets printer options for a single user
when run by a user or for the system when used
by root
/usr/bin/lppasswd Changes printing passwords for an individual
user or adds, deletes, and changes printer users
and passwords when run by root
/usr/bin/lpq Shows the status of a printer queue
/usr/bin/lpq.cups Shows the status of a printer queue
/usr/bin/lpr Used to submit print jobs
/usr/bin/lpr.cups Used to submit print jobs, forcing use of CUPS
/usr/bin/lprm Used to remove print jobs from a queue
/usr/bin/lprm.cups Used to remove print jobs from a queue
/usr/bin/lpstat Gives status of the CUPS system, such as queue
lengths and printers
/usr/bin/lpstat.cups Gives status of the CUPS system, such as queue
lengths and printers
/usr/bin/cancel Cancels a print job
/usr/bin/enable Enables a print queue or class of printers,
requires a management password
/usr/bin/disable Disables a print queue or class of
printers, requires a management password
/usr/sbin/lpadmin Manages printers and classes, requires a
management password
/usr/sbin/lpc A compatibility program for Berkley style
printers, limited to queue status in CUPS
/usr/sbin/lpc.cups A compatibility program for Berkley style
printers, limited to queue status in CUPS
/usr/sbin/lpdomatic A filter script provided to be used in setting
up printers
/usr/sbin/lpinfo Shows available printer devices and drivers on
the system
/usr/sbin/lpmove Moves the jobs destined for a queue to
another queue
Also versuche ich es mal mit
/usr/bin/enable netzwerk1300n
Password for me on localhost?
habe aber natürlich keine Ahnung, was das für ein Passwort sein soll,
insbesondere, wenn es noch nie gesetzt wurde... Aaargh.
mybox:/home/me # lppasswd me
Enter password:
Enter password again:
lppasswd: user "me" and group "sys" do not exist.
Also wieso fragt es mich oben denn nach einem Passwort, daß ist ja
einfach nicht zu glauben, jetzt google ich schon eine Stunden, nur
um den Drucker via Commandozeile einzuschalten, hey, wo lebe ich?
Gibt nur noch eines, als root den Befehl
/usr/bin/enable netzwerk1300n
eingeben.
Die Jobs kann ich aber immer noch nicht abschießen, als user, da ich
immer noch nach einem nicht existenten Paßwort gefragt werde! Also muß
ich wohl oder übel eins anlegen (als root). man lppasswd hilft:
lppasswd -x me
lppasswd -a me -g users
jetzt versuche ich alle Jobs zu löschen:
lprm -
Password for me on localhost?
Das kann ich sooft angeben wie ich will, da ändert sich nichts!
cancel -a netzwerk1300n
will natürlich auch das Paßwort haben! Wie auch immer, ist es nicht
schön zu wissen: lppasswd: user "me" and group "sys" do not exist.
Dann erspart man sich das blöde umbringen!
Also: ich wüsste gern, wie ich als user wenigstens meine Druckaufträge
selber löschen kann, konkret, wie ich ein Paßwort setze und welche
Rechte ich habe muß, damit das geht. Kann da jemand helfen?
Konkret: ich habe alr root mit lppasswd -a me einen Benutzer "me"
angelegt, dieser kann sich dann über http://localhost:631/
einloggen und alles machen (z.B. Jobs löschen). Aber über die
Commandozeile wird das selbe Paßwort ignoriert!
Vorgehen alphacd.txt drucken:
1) Zeilen vom Dateiende der cdinvent.txt Liste löschen, speichern
2) sort cdinvent > alphacd.txt
3) alphacd.txt mit kwrite öffnen, kwrite einrichten, unter open/save die
Felder replace tabs with spaces etc. ankreuzen, neu speichern.
4) Letzte Kolonne mit Block-Selection löschen
5) Datei via Druck-Center nach print-to-file drucken, wobei der default-
printer "lj" 14 characters und 8 lines per inch druckt, in landscape!
6) dann mit obigen Befehlen "2-seitig" Drucken
________________________________________________________________________
In CUPS unter KDE: Drucker ist gestoppt und kann im GUI nicht mehr akti-
viert werden...
Als su einloggen und dann eingeben
lppasswd -a user
wobei user natürlich für den eigenen Benutzername steht. Mit dem neu ge-
setzten Paßwort kann der Drucker wieder aktiviert werden!
________________________________________________________________________
========================================================================
drucken an der ETH (als noch gedruckt werden durfte!)
========================================================================
________________________________________________________________________
vpp -dest=hge -fo=ds.A4h -dev=X4525 *.ps
________________________________________________________________________
vpp -dest=hge -fo=ds.A4h -dev=printer d.txt
________________________________________________________________________
vpp -dest=hge -fo=A4Q.shortbind -dev=printer alphacd.txt
________________________________________________________________________
vpp -dest=hge22 -fo=ds.A4h -dev=HP5Si -noflag nadja.ps
_________________________________________________________________________
vpp -dest=hge22 -fo=ds.A4h -dev=printer -noflag d.txt
________________________________________________________________________
vpp -dest=hge27 -fo=ds.A4.white -dev=lw2nta -noflag nadja.ps
________________________________________________________________________
vpp -dest=hge27 -fo=simplex.A4.white -dev=lw2nta -noflag nadja.ps
________________________________________________________________________
vpp -dest=hge27 -fo=duplex.A4.white -dev=lw2nta -noflag nadja.ps
________________________________________________________________________
vpp -dest=hge27 -fo=A4H.duplex -dev=printer -noflag nadja.txt
________________________________________________________________________
vpp -dest=hge26-1 -fo=ds.A4H -dev=HP5Si -noflag nadja.ps
________________________________________________________________________
vpp -dest=hge26-1 -fo=A4H.duplex -dev=printer -noflag d.txt
________________________________________________________________________
vpp -dest=hge26-1 -fo=A4HE.duplex -dev=printer -noflag befehle.txt
________________________________________________________________________
vpp -dest=hge26-1 -fo=A4HE.duplex -dev=printer -noflag cedes.txt
________________________________________________________________________
vpp -dest=hge26-1 -fo=A4HS.duplex -dev=printer -noflag alphacd.txt
________________________________________________________________________
vpp -dest=hge26-1 -fo=LISTH.duplex -dev=printer -noflag d1.txt
bei Zeile 287 beginnt die neue Seite
________________________________________________________________________
vpp -dest=hgg30 -fo=weiss.duplex -dev=printer d.txt
________________________________________________________________________
vpp -dest=hgg30 -fo=weiss.duplex -dev=pts a2.ps
________________________________________________________________________
vpp -dest=hgg30 -fo=duplex.A4H -dev=pts d.ps oder
________________________________________________________________________
vpp -dest=hgg30 -fo=600DPI.LONGBIND -dev=HPLASER a2.ps
________________________________________________________________________
vpp -dest=rzspez -dev=lbp1760 -form=a4.ds a2.ps SCHWARZWEISS
________________________________________________________________________
vpp -dest=rzspez -dev=clc1150 -form=a4.ds a2.ps FARBE
________________________________________________________________________
vpp -dest=rzspez -dev=clc1150 -form="a4.ds.scale(0.95)" d1.ps FARBE
________________________________________________________________________
vpp -dest=rzspez -dev=tek850 -form=folie d1.ps FARBFOLIE
________________________________________________________________________
vpp -dest=faxnr@FAX filename.txt
________________________________________________________________________
vpp -dest=faxnr@FAX -dev=PTS filename.ps
________________________________________________________________________
lpr -Zduplex m.ps
________________________________________________________________________
lpr -Zshortbind m.ps
________________________________________________________________________
lpr -Zbook m.ps
________________________________________________________________________
lpq drucker um den Druckerstatus abzufragen
________________________________________________________________________
lprm Druckerjobs zu loeschen
________________________________________________________________________
pf -dw2 a.ps im Astro-Institut, Stock d, 2-seitig auf weiss
________________________________________________________________________
pf -eg1 d.ps im Astro-Institut, Stock e, 1-seitig auf grau
________________________________________________________________________
lpr -P lp_sec_e d.ps im Astro-Institut, Stock e,
lpr -Plp_eg2 im Astro-Institut, Stock e, von Auriga, mit Tabs
lpr -Plp_ew2l im Astro-Institut, longbind?
________________________________________________________________________
lprm -P lp_sec_e 313 löscht Druckauftrag mit Job-ID 313
________________________________________________________________________
a2ps -B --pages=1-4 --output=d.ps in.txt
________________________________________________________________________
========================================================================
Mail und ftp
========================================================================
________________________________________________________________________
mail to login@city mail aus einem terminal verfassen
CNTRL + d zum abschicken
Beispiel:
mail empfänger@name.net -r from@adresse.ch -R reply@adresse.ch \
-s "Betreff mit Leerzeichen"
mit Enter zur Texteingabe wechseln
Text eingeben, mit CNTRL + d abschicken.
________________________________________________________________________
ftp
bin
prompt
mget
lcd
________________________________________________________________________
Aus Terminal:
ftp hg.n.ethz.ch oder auch
ftp rz.n.ethz.ch um auf nethz-account zuzugreifen.
ftp ftp.phys.ethz.ch nach Serapis (Hoengg)
ftp saturn.ethz.ch zum Astro Institut, dann ev. mit user zum login
Aus Konqueror:
ftp://fsuwald@saturn.ethz.ch
ftp://fsuwald:passwort@saturn.ethz.ch passwort verschwindet zwar sofort
in der Adressleiste, bleibt aber in der history
vorhannden...
________________________________________________________________________
========================================================================
emacs befehle
========================================================================
________________________________________________________________________
xemacs & zum starten
________________________________________________________________________
Abkuerzungen C:= CTRL = CTL = STRG
M:= ESC = META = ALT = # = EDIT
________________________________________________________________________
beenden C-x C-c
________________________________________________________________________
blaettern runter: C-v rauf: M-v
________________________________________________________________________
bewegen Mitte: C-l
Zeile: C-p, C-n (prev, next)
Zeichen: C-b, C-f (backw, forw)
Wort: M-b, M-f (backw, forw)
Satz: M-a, M-e (Anfang, Ende)
Datei: M-<, M-> (Anfang, Ende)
________________________________________________________________________
stopp C-g
________________________________________________________________________
Zeile löschen ab Cursor C-k
oops C-y
alles zurueck M-y
________________________________________________________________________
undo C-x u
________________________________________________________________________
Datei finden, oeffnen C-x C-f
________________________________________________________________________
speichern C-x C-s alle buffer C-x s
________________________________________________________________________
buffer listen C-x C-b fertig C-x 1
________________________________________________________________________
suchen C-s
weiterspringen C-s
zurueck del
fertig enter
________________________________________________________________________
neues Fenster C-x 2 nur ein Fenster C-x 1
________________________________________________________________________
Hilfe C-h a(propos) oder C-h ? fertig: q
________________________________________________________________________
alles markieren: M-x mark-whole-buffer enter
Achtung, es wird nichts angestrichen!!!
Es ist markiert, auch wenn du es nicht glaubst!!!
________________________________________________________________________
sortieren M-x sort-lines enter
________________________________________________________________________
save buffer as C-x C-w
________________________________________________________________________
========================================================================
weitere nützliche Programme
========================================================================
________________________________________________________________________
xmgr zum plotten von Funktionen
________________________________________________________________________
xv um file.gif und file.ps zu editieren
________________________________________________________________________
ghostwiev datei.ps um postscriptdatei anzuschauen
________________________________________________________________________
pstoedit um ps in ein gif-editierbares format umzuwandeln
________________________________________________________________________
xephem um astronomie zu betreiben
________________________________________________________________________
xsky ein Sternatlas
________________________________________________________________________
qcad
________________________________________________________________________
kile
________________________________________________________________________
ripit
________________________________________________________________________
figurine
________________________________________________________________________
fly
________________________________________________________________________
gocr
________________________________________________________________________
ecasound, extrace, hydrogen, ladcca, swami
________________________________________________________________________
pybliographe
________________________________________________________________________
========================================================================
Midas Befehle
========================================================================
________________________________________________________________________
starten inmidas
beenden bye
________________________________________________________________________
$unix-Befehl aus dem Midas heraus
________________________________________________________________________
changedir genaue Folge ../ etc. beachten
________________________________________________________________________
@@file.prg um batch im Midas aufzurufen
________________________________________________________________________
echo/off echo/full
________________________________________________________________________
crea/disp crea/graph
________________________________________________________________________
clear/over clear/disp
________________________________________________________________________
aver/col zz=raw0047.bdf cuts=0,100 ergibt Mittelwert der Kolonnen
________________________________________________________________________
aver/im pos1_v=raw0047,raw0048 ? ? median
________________________________________________________________________
plot zz zeigt im Graph den averige an
________________________________________________________________________
get/gcur um Messungen am Graphikdisplay zu machen
________________________________________________________________________
center/gauss cursor
________________________________________________________________________
stat/im raw0047.bdf cursor ergibt einen Rahmen im Display, mit
Pfeiltasten vergroessern/verkleinern
________________________________________________________________________
copy/disp laser copy/graph laser
________________________________________________________________________
read/tab time2 :UTHR
________________________________________________________________________
show/tab time1
________________________________________________________________________
stat/tab Minimum: outputr(1) Maximum: outputr(2)
Mittelwert (mean): outputr(3)
mittl. quadr. Fehler der Einzelmessung=
Unsicherheit der Einzelmessung=
standard Abweichung (st.dev): outputr(4)
Kolonnen Nummer: outputi(1)
# Werte nicht gleich Null: outputi(2)
________________________________________________________________________
plot/tab
________________________________________________________________________
========================================================================
Daophot-Befehle
========================================================================
________________________________________________________________________
set/cont doaphot aus Midas heraus im Terminal aufrufen
daophot
OP> night5.opt enter (oder direkt enter)
OPT> enter enter
COMMAND> attach v_saw0001 enter
COMMAND> sky (begutachten) enter
COMMAND> find (#Bilder:) 1,1 YES
COMMAND> phot
PHO> enter enter
COMMAND> pic (um Sterne zu finden) enter
COMMAND> psf (point spread function)
Kontrolliere in einem anderen Midas-Terminal:
load/im file.bdf cuts=3000,3003 oder aehnlich
enter
COMMAND> peak (file.nei heisst file.ap) enter
COMMAND> group critical overlap 0.1
COMMAND> nstar
COMMAND> substar (um unschoen Sterne zu entfernen)
COMMAND> sort (z.B. +4) file.nst
________________________________________________________________________
========================================================================
Teleskop-Bedienung
========================================================================
________________________________________________________________________
Sternwarte Telephon: 63 206 95
Computer einstellen: stern
check star um Focus-Window zu erhalten
identifier steht nachher in der Bildlegende: (eigener Name)
establish link zur Kamera
Temperatur setzen (-10 C)
Kuppel öfnen, Tür öffnen
Deckel entfernen, Netzschalter ein
Messungen....
________________________________________________________________________
Filterrad: 1=neutral, 2=uv (U), 3=blau (B), 4=visuell (V), 5=rot (R)
abends: FF-Reihenfolge U-B-V, d.h. Filterrad 2-3-4
morgens: V_B_U, d.h. Filterrad 4-3-2
________________________________________________________________________
Autoguider-Bedienung
1. AG-Icon anklicken
2. Focus
3. im Teleskopsockel Focus von unten (Handgeraet) auf oben schalten
4. im AG unter Track: Callibrate
5. im AG ...
________________________________________________________________________
CCD-Kamera, Temperatur langsam herauffahren
Daten kopieren
Deckel auf Teleskope
Kamera entfernen
Kuppel schließen
Teleskop nach Süden ausrichten
Teleskop parkieren: alpha = 0, delta = 45, blockieren
Netzschalter aus
Okkulare aufräumen
Schrank schließen, Licht aus, Türe zu.
________________________________________________________________________
========================================================================
Macintosh-Befehle
========================================================================
________________________________________________________________________
um eine Macintosh Diskette zu kopieren:
1) Diskette einlegen
2) Inhalt in einen neuen Ordner auf dem Desktop kopieren
3) ev. ein sich darin befindliches stuffit doppelklicken
4) in der oberen Taskleiste die zu entpackenden Dateien öffnen
5) auswählen und entpacken in einen neuen Ordner
6) stuffit beenden
7) in der Taskleiste des Finders Diskette zurücklegen
________________________________________________________________________
um einen Ordner zu transferiren:
1) Apple --> Chooser
2) Im neuen Fenster auch Knopf: Server Ip Adress klicken
3) Enter the Server Address: hg.n.ethz.ch, enter
4) Registered User: Name, Passwort, auf Connect klicken, enter
5) dann im neuen Fenster Häckchen machen bei allen 3 Einträgen:
afs, ethz.ch, fsuwald_home, OK, enter
6) Finder oben rechts blinkt, ev. kurz warten, draufklicken...
es erscheinen neue Icons auf dem Desktop, je eines für
afs, ethz.ch und fsuwald_home,
7) ins fsuwald_home Verzeichnis klicken, Dateien und Verzeichnisse
nach belieben verschieben,
8) nach Beenden all diese icons via Finder vom Desktop zurücklegen.
________________________________________________________________________
Um eine externe, ext3 formatierte Harddisk anzusprechen (geht angeblich
nicht mit Tiger, zum Glück haben wir Panther...).
http://sourceforge.net/projects/ext2fsx/
herunterladen und installieren.
Dann dachte ich: HD anhängen und fertig, auf Mac ist doch alles so ein-
fach... Aber leider geschieht nichts, rein nichts. Da hilft auch die rtf
Readme Datei nicht, denn ich finde keine Befehle, um der HD nachzuhelfen
oder mir zu helfen... Systemsteuerung ist offen, aber ich bemerke natür-
lich nicht, daß da zuunterst unter: Sonstige: ein neues Icon entstanden
ist: Manager von ExtFS. Tja, wenn ich das gewußt oder gesehen hätte, wär
ein halber Nachmittag nicht flöten gegangen. Ich hasse Mac. Also: Klick
auf das Icon, dann erscheinen alle HDs, und ich kann auf mein ext. Lauf-
werk klicken. Leider gibt's dann eine Fehler Meldung, ich solle das Disk
Utility verwenden. Noch nie gehört, was soll das. Aber im Terminal gibts
tatsächlich den Befehl
man diskutil
zuvor eruiere ich noch den Devicenamen des ext. Laufwerks:
disktool -l
sagt mir, daß es disktdisk1s1 heißt. Also rufe ich auf:
diskutil repairDisk disk1s1
womit fsck gestartet wird. Nach einer Weile fängt mein ext. Laufwerk ex-
trem an zu ruckeln, ich will schon abbrechen, aber nach ca. 20 Sekunden
ist alles erledigt. Und über die Systemsteuerung kann ich durch Klicken
das Laufwerk aktivieren. Dann erscheint ein neues Icon auf dem Desktop:
UNTITLED, wie wir es kennen, und ich kann wunderbar auf meine Daten zu-
greifen. Alles in allem: super cool, aber etwas mehr Info für den Mac-
Hasser wäre nett!
Nachteil: Wenn die externe Harddisk wieder an ein modernes Linux gehängt
wird, und dann wieder an das ibook, kommt die Warnung, die Harddisk sei
viele tausend mal gemountet worden und müsse mit DiskUtility geprüft neu
werden...
________________________________________________________________________
Turm + Q beenden
________________________________________________________________________
Turm + Weiche + Esc sofort beenden
________________________________________________________________________
Pfeil nach oben + Anklicken zur Auswahl hinzufügen
________________________________________________________________________
Turm + Pfeil nach rechts Ordner öffnen
________________________________________________________________________
Turm + Pfeil nach links Ordner schliessen
________________________________________________________________________
Weiche + Verschieben Kopieren
________________________________________________________________________
Control + Klick Kontextmenü
________________________________________________________________________
Turm + Weiche + Esc sofort beenden
________________________________________________________________________
WEP-Key in hex-Form eingeben: 0x (Null-iks) davor setzen
________________________________________________________________________