Laserman' Tips & Tricks Stand: Juni 2003 ===================================================== Vorwort ===================================================== Dies ist das my_pub_howto.txt Ich benutze es als Speicher-Erweiterung für mein Gedächtnis. Input: Alles was ich für merkenswert halte, schreibe oder paste ich hier 'rein. Output: Ich öffne das File mit einem Editor/Browser und lasse ihn eine Volltextsuche zu einem Stichwort machen. ================================================= NO WARRANTY These informations are distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ================================================= hier fängt's jetzt an: --- Putty ist ein recht guter telnet/ssh client fuer Windows. --- kmuser: bequeme, graphische Verwaltung von usern & usergruppen aus dem "expect" paket: passmass - change password on multiple machines --- > Wie finde ich heraus, ob eine Domain belegt ist? whois domain.de whois -h whois.ripe.net domain.de whois -h whois.internic.net domain.com whois -h whois.internic.net domain.org whois -h whois.internic.net domain.net --- CD-R , CD-RW "brennen" Oberflächen: xcdroast ..bakeoven gnome-toaster koncd k3b CD-Cover-Design: kccc readcd dev=0,0,0 f=image1.iso #CD RW cdrecord -v dev=0,0,0 blank=fast cdrecord -v speed=16 dev=0,0,0 driveropts=burnfree -eject -data /kmLinuxTSE.iso check: mount /dev/dvdrecorder ; diff /media/dvdrecorder/setup/kmlinux /tmp/kmLinuxTSE3.1-CD/setup/kmlinux ; eject oder mount /dev/dvdrecorder ; md5sum /media/dvdrecorder/setup/kmlinux ; eject mkisofs -R -J -o bla.iso /quellpfad1 /quellpfad2 ... --- Multi-Session: cdrecord -v speed=8 dev=0,0 -eject -multi bla.iso -multi=Multi Session siehe /usr/doc/packages/cdrecord/README.multi letzten Sector ermitteln: cdrecord -msinfo dev=0,0 2.Session(z.B.): /top_dir/sub_dir/nutzdate_zweite_session mkisofs -o iso_2.raw -R -C 0,182301 -M /dev/scd0 /top_dir cdrecord -v speed=8 dev=0,0 -eject -multi iso_2.raw --- Bootbare CD: cd /tmp/nefi time tar cvfj ../kmLinux-CD/setup/kmLinux-b --exclude=usr/share/doc * time tar cvfj ../kmLinux-CD/setup/kmLinux-e usr/share/doc /tmp/ | +--kmLinux-CD/ | +--setup/ | +-- boot +-- boot.cat cd /tmp mkisofs -R -J -b setup/boot -c setup/boot.cat -o tserv.img kmLinux-CD3 cdrecord -v speed=8 dev=0,0,0 -eject -data tserv.img (siehe Linux Magazin 7/2001) --- VCD kopieren: cdrdao read-cd --device 0,0,0 --datafile hp1 --read-raw hp1.toc cdrdao write --device 0,0,0 hp1.toc cdrdao read-cd \ --device ${SRC} \ [ --driver ${SRCDRV} ] \ --datafile ${DATAFILE} \ --eject \ --read-raw \ ${TOCFILE} cdrdao write \ --device ${DST} \ [ --driver ${DSTDRV} ] \ --eject \ [ ${CDWRITEROPTS} ] \ [ ${VERBOSE} ] \ ${TOCFILE} --- cdparanoia III release 9.6 (August 17, 1999) A few examples, protected from the shell: A) query only with exhaustive search for a drive and full reporting of autosense: cdparanoia -vsQ B) extract an entire disc, putting each track in a seperate file: cdparanoia -B "1-" C) extract from track 1, time 0:30.12 to 1:10.00: cdparanoia "1[:30.12]-1[1:10]" cdparanoia -d /dev/scd0 -B "1-" lame batch script: mlame -r *.wav --- cdrdao (Disk at once) VCDs u.a. kopieren: "cdrdao read-cd \ --device 0,6,0 \ --read-raw \ --datafile .img \ .toc" Mit "cdrdao write \ --device 0,6,0 \ --eject \ .toc" wird das Ganze geschrieben Dabei ist die *.toc Datei sehr wichtig, da dort die Offsets der Sessions drinstehen. Ohne TOC kein Glück. (Frank Matthieß, LUG OWL) mkhybrid ( ISO & HFS(mac)) RockRidge = UNIX Long Names Joliet = MS Long Names El Torito = Bootable CD CDDB xcdroast erstellt von einer Audio CD .xinf Dateien, darin stehen die Songtitel: grep cddb_ttitle *.xinf | cut -d "=" -f2 | tr "\"" " " | tr -d " " --- Daten-DVD mit growisofs ======================= To master and burn an ISO9660 volume with Joliet and Rock-Ridge extensions on a DVD: growisofs -Z /dev/dvd -R -J /some/files To append more data to same DVD: growisofs -M /dev/dvd -R -J /more/files Make sure to use the same options for both inital burning and following sessions. To use growisofs to write a pre-mastered ISO-image to a DVD: growisofs -dvd-compat -Z /dev/dvd=image.iso --- ASCII 10 = Newline/LF = \n 13 = Return/CR = \r --- Ulimit zum Schutz vor "Out of memory" Sie setzen mit ulimit ein Limit für den zulässigen Speicherbedarf einer Applikation. Mit ulimit können Sie verschiedene Parameter begrenzen. Die in diesem Zusammenhang relevanten sind der Verbrauch an tatsächlichem Speicher und virtuellem Speicher. Tragen Sie in Ihre .bashrc bitte folgende Zeilen ein: # begrenzt den realen Speicher: ulimit -m xxxxx # begrenzt den virtuellen Speicher. ulimit -v xxxxx Dabei ersetzen Sie xxxxx durch einen Ihrem System entsprechenden Wert. Auf einem Rechner mit 128 MB RAM und 128 MB Swap könnte dieser Wert z.B. bei 98304 liegen. Da die Werte für ulimit in kb angegeben werden, ist dies der entsprechende Wert für 96 MB (96 x 1024 = 98304). Gegebenenfalls müssen Sie etwas experimentieren, um einen ansprechenden Wert zu ermitteln. Die Wirkung von ulimit liegt darin, jeden Prozeß, welcher über das eingestellte Mass hinaus Speicher für sich beansprucht, rigoros zu beenden. Damit riskieren Sie Datenverluste, haben aber ein laufendes System (die Datenverluste treten auch ein, wenn das System in Folge eines solchen Fehlers hart rebootet werden muß ;-). ulimit -u 40 The maximum number of processes available to a single user (default ist 1024) siehe auch man bash /ulimit --- DOS/Windows Menü, z.B. für verschiedene Netzwerkkarten Setup Tools, verschiedene etherboots oder ein boot-menü: lokal-Windows/netzwerk-Linux (look onto the w95 boot disk for example) --- --- --- "Too many open files in system" on the server. It is not uncommon to run out of files with a number of X Terminal stations running. Find out what this value is with: # cat /proc/sys/fs/file-max If you see e.g. 8192, you should increase the number of files that your system will allow to have open. This is done by changing a kernel parameter: # echo 65536 > /proc/sys/fs/file-max which will allow 65536 open files. Ragnar Wisløff in [Ltsp-discuss] --- Sounds like you're running out of file descriptors. Try this: echo 128000 > /proc/sys/fs/inode-max echo 64000 > /proc/sys/fs/file-max ulimit -n 64000 Zak McGregor in [Ltsp-discuss] --- file-nr and file-max -------------------- The kernel allocates file handles dynamically, but doesn't free them again at this time. The value in file-max denotes the maximum number of file handles that the Linux kernel will allocate. When you get a lot of error messages about running out of file handles, you might want to raise this limit. The default value is 4096. To change it, just write the new number into the file: # cat /proc/sys/fs/file-max 4096 # echo 8192 > /proc/sys/fs/file-max # cat /proc/sys/fs/file-max 8192 The three values in file-nr denote the number of allocated file handles, the number of used file handles, and the maximum number of file handles. When the allocated file handles come close to the maximum, but the number of actually used ones is far behind, you've encountered a peak in your usage of file handles and you don't need to increase the maximum. Quelle: /usr/src/linux/Documentation/filesystems/proc.txt TCP ECN: --- echo "0" >/proc/sys/net/ipv4/tcp_ecn ----------------- man und info ------------ Zu vielen (GNU-)Unix-Programmen werden keine man-Pages mehr gepflegt. Stattdessen gibt es info-Dateien. Nette Frontends für man und info: tkman, xman tkinfo, xinfo Das textbasierte Programm "info" benutzt man mit den folgenden Tasten: p - prev n - next Return - Link anklicken u - up(wie Netscape's "Back-Button") --- Statistik des Netscape-Mail-Ordners "LUG Marl" : cd ~/nsmail grep "^From:" "LUG Marl" | sort | uniq -c | sort -n --- Das Image einer Diskette auf der Festplatte speichern: 3 Wege, dasselbe Ergebnis: cp /dev/fd0 imagefilename dd < /dev/fd0 > imagefilename dd if=/dev/fd0 of=imagefilename bs=16k (mit einer groessen Blocksize(zB 16k) gehts schneller. 90*16k=1,44MB Loop-Device: mount -t -o loop ----------------- Drucken: farbige Testseite von yast2: /tmp/testpg.ps alle Jobs löschen: lprm -Pall all Turboprint: tpsetup tpconfig tputility ================================== Turboprint printer control utility ================================== I - Get ink quantity N - Nozzle check C - Clean print heads A - Alignment T - Testpage Q - Quit ------------------- xosview , gkrellm setserial -a /dev/ttySx --- ( (Platte schlafenlegen: (hdparm -Y /dev/hda ( (nach aufwachen: (hwclock --hctosys ..............................das stimmt zwar, aber es geht besser: Kernel mit APM-Support erzeugen, Pakete apmd und kcmlaptop installieren, eventuell Hardware(CMOS)-Uhr auf GMT stellen, nun kann man per Mausklick in Suspend oder Standby-modus gehen und nach dem Aufwachen stimmt die Uhr wieder. bei Suse siehe auch: /etc/rc.config.d/apmd.rc.config Es bleibt die Sorge: wie lange machen die Festplatten das mit ? APM, PNPBIOS, ACPI, APIC ======================== Nachfolger von APM (AdvancedPowerManagement) : ACPI (Advanced Configuration and Power Interface) Bei Mulitprozessor-Rechnern ist bei Verwendung von ACPI häufig auch APIC einzuschalten. Dies erreichen Sie mit dem Kernel Parameter: apic APIC = (Advanced Programmable Interrupt Controller) eine weitere Technik zur Interrupt-Verwaltung. --- Diagnosetools acpidmp und dmidecode. Sie finden diese Tools unter ftp.suse.com/pub/people/ak/diag ==== PERL ==== gute perlTk Beispiele/Demos: /usr/doc/packages/tix/demos GUI-Builder: specTcl/specJava für Perl,Java & Tcl Mit Regexpr spielen: tkREM www.phy.uni-bayreuth.de/~btpa25/perl/ #!/usr/bin/perl -w open FILE1, "|sort|uniq"; while { next unnless (/^From: /); print FILE2 $_, "\n"; } <> = stdin fängt mit "<" an | <([^>)]+) | | | alles bis > oder ) kommt -> $1 oder $2 nicht --- netcat ttcp ntsid (Windows-Programm um NT's system-id setzen) ============================================================== ============================================================== http://www.sysinternals.com/ntw2k/source/newsid.shtml ...."Duplicate SIDs aren't an issue in a Domain-based environment since domain accounts have SID's based on the Domain SID."... http://www.osnanet.de/kern/download.html DOS-Programm zur Erstellung von Diskettenimages (Freeware) 8139 Netzbootdiskettenimage mit Realtek 8139-Treibern und TCP/IP NE2000 Netzbootdiskettenimage mit NE2000-Treibern und TCP/IP dimage3_1 Diskettenimage 1 (Bootdiskette) - DriveImage 3 (Freeware) dimage3_2 Diskettenimage 2 (Programmdiskette) - DriveImage 3 (Freeware) SystemImager Partimage http://unattended.sourceforge.net/ http://ani.sourceforge.net/ Automated Network Installations http://www.listserv.dfn.de/cgi-bin/wa.exe?A2=ind0203&L=schul-netz&P=R8478&I=-3 http://www.listserv.dfn.de/cgi-bin/wa.exe?A2=ind0203&L=schul-netz&P=R8015&I=-3 http://www.microsoft.com/windows2000/downloads/tools/sysprep/default.asp http://www.microsoft.com/windows2000/downloads/servicepacks/sp2/deploytools.asp ====================================================================== ====================================================================== Netzwerktraffic auf Tastatur-LEDs anzeigen: xtleds -d 1 eth0 tleds -d 1 ppp0 martin:/home/mherweg # mii-tool -v eth0: negotiated 100baseTx-FD flow-control, link ok product info: vendor 00:10:5a, model 0 rev 0 basic mode: autonegotiation enabled basic status: autonegotiation complete, link ok capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control xfstt oder xfsft - Font-Server, die TrueType-Fonts benutzen können sind aber seit XFree 4.0 nicht mehr nötig, denn der kann TrueType Fonts direkt laden. Fonts: X-Window .pcf .pcf.gz Speedo .spd .spd.Z Type1 .pfa .pfa.Z .pfb Applix .bdf .pcf texmf .afm .pfm .mf .tfm .vf curses-fdisk: cfdisk /dev/hdb ---- Model=ST340823A, FwRev=3.54, SerialNo=5EF06JDF Festplatte /dev/hda: 255 Köpfe, 63 Sektoren, 4865 Zylinder Einheiten: Zylinder mit 16065 * 512 Bytes Gerät Booten Anfang Ende Blöcke ID Dateisystemtyp /dev/hda1 * 1 392 3148708+ 6 XXXXX /dev/hda2 393 393 8032+ 83 Linux /dev/hda3 394 426 265072+ 82 Linux (Auslagerung) /dev/hda4 427 3289 22997047+ 5 Erweiterte /dev/hda5 427 3037 20972826 83 Linux /dev/hda6 3038 3046 72261 82 Linux (Auslagerung) /dev/hda7 3047 3289 1951866 83 Linux ---- Festplatte /dev/hdc: 255 Köpfe, 63 Sektoren, 1653 Zylinder Einheiten: Zylinder mit 16065 * 512 Bytes ---- Model=FUJITSU MPB3032ATU E, FwRev=4010, SerialNo=01118763 Festplatte /dev/hdc: 128 Köpfe, 63 Sektoren, 785 Zylinder Einheiten: Zylinder mit 8064 * 512 Bytes Gerät Booten Anfang Ende Blöcke ID Dateisystemtyp /dev/hdc1 * 1 13 52384+ 83 Linux /dev/hdc2 14 737 2919168 83 Linux /dev/hdc3 738 785 193536 82 Linux (Auslagerung) ---- leafnode: Linux-Mag. 8/97 Hardware-Bastel-Projekte ======================== Conrad-DCF77 am Gameport CD1996.txt:/cdrom/ausgabe_1996_11/Funkuhr/dcf77.c Cross-Assembler für Microcontroller as von Alfred Arnold Best of Linux-Mag. Vol2 Eprom-Simulator füttern: cp file /dev/lp0 EYCar Roboter, Erik Thiele Funkmodem 1200baud AX.25, RT-Linux escape.unterland.de/~erik Best of Linux-Mag. Vol2 Servos am Parallelport per RT-Linux steuern http://www.linux-magazin.de/ausgabe.1998.11/Rtlinux/rtlinux2.html file:~/download/RT-Linux/servo.tgz easyLinux ========= www.eit.de /var/register /usr/etc/eprinter-catalogue /usr/eIT --- "MasterEyes" 1.)VNC ====== vncserver :4 vncserver -kill :4 vncviewer -shared -viewonly martin:4 ~/.vnc/xstartup ~/.vnc/passwd VNC-Viewer als Java-Applet: http://host:580n/ n=Display-Nr. kibitz -benötigt funktionierendes rlogin, wenn es nicht Lokal läuft benötigt einen Link auf /usr/bin/write: ln -l /bin/write /usr/bin/write 2.)xkibitz ========== esc-code=Ctrl-AltGr-9 + hostname:1 return For example, to start up xkibitz with three additional displays: xkibitz -display mercury -display fox -display dragon:1.0 3.) xmx ======= Einen X Desktop auf mehreren Bildschirmen Wenn Du ohne spezielle Hardware Deinen X Desktop auf sämtlichen Rechnern im Netzwerk darstellen willst, z.B. um während eines Vortrages einer Gruppe von Leuten etwas zu demonstrieren, ist 'xmx' (X Multiplexer) sehr nützlich. Credits: Christian Schrader Christian.Schrader@gmx.de Stand: Dezember 1999 Package name: xmx Version number: 1.0 Original author: John Bazik jsb@cs.brown.edu Original URL: ftp://cs.brown.edu/ Such mal auf Dejanews nach meinem Namen [also Christian, Red.] und xmx, dann findest Du ein paar Postings dazu, insbesondere die Lösung zu einem Compilierproblem. Vor längerer Zeit ließ es sich noch problemlos übersetzen, jetzt sind da aber irgendwelche Variablen doppelt gesetzt oder so. taken from the README: EXAMPLE 1 moe% echo $DISPLAY moe:0.0 moe% xmx -view larry curly& XMX Version 2.1, ready. moe% twm -display :1& Creates a virtual root window on moe, larry and curly. Moe provides all input to shared clients, larry and curly provide none. Twm (a window manager), is the only shared client. Using it, the user on moe can initiate other shared clients. EXAMPLE 2 moe% xmx :2 -geometry 1/1 -nodpy -floor larry -view curly& XMX Version 2.1, ready. moe% xterm -display :2& Creates a full-screen-sized virtual root window on larry and curly (-nodpy means ignore the DISPLAY environment variable). Larry provides input, curly does not. An xterm is run as the only shared client. --- Quelle:pingos liste 4.)xtv ====== xtv ist ein Programm, welches folgendes ermöglicht: - "Demo mode": ein X Display auf alle (einige) Displays multiplexen, dabei kann man einstellen, ob Tastatur/Maus von den "zuguckenden" Displays abgeschaltet werden sollen oder nicht - "Spy mode": Ein X Display von einem anderen Rechner einsehen und ggf. bearbeiten, wenn man den entsprechenden X-COOKIE besitzt (und die liegen in $HOME/.Xauthority auf dem Server, und sind somit für root einsehbar) --- Quelle:pingos liste 5.)rfb ====== Ähnlich wie VNC aber es öffnet keinen neuen X-Server sondern nimmt den laufenden. http://www.hexonet.de/software/rfb Citrix ICA-Client V 6.0 für Linux ================================= root@martin:/home/mherweg/download/citrix > cp Wfcmgr.ad /usr/X11R6/lib/X11/app-defaults/Wfcmgr mherweg@martin:~/download/citrix > export ICAROOT=/home/mherweg/download/citrix/ mherweg@martin:~/download/citrix > wfcmgr rdesktop ======== Client für WinNT Terminal server (RDP Protocol) --- SCRIPT(1) System Reference Manual SCRIPT(1) NAME script - make typescript of terminal session SYNOPSIS script [-a] [file] DESCRIPTION Script makes a typescript of everything printed on your terminal. It is useful for students who need a hardcopy record of an interactive session as proof of an assignment, as the typescript file can be printed out later with lpr(1). --- Schüler Bildschirme & Tastaturen sperren: #$1 ist eine Liste der Terminal-Namen / IPs for i in `cat $1` do xlock -remote -allowaccess -mode blank -display $i:0 & done WWWOFFLE ======== Mit Wwwoffle kann man offline surfen, Werbebanner ausblenden... ins ppp-up trägt man am besten ein: wwwoffle -online wwwoffle -fetch ins ppp-down: wwwoffle -offline Wenn man verhindern will, dass /var/spool/wwwoffle unendlich wächst, sollte man hin und wieder( 1 mal/Monat, je nach Surfverhaltren der User) wwwoffle -purge aufrufen um den cache wieder auf die in wwwoffle.conf eingestellte Größe zu bringen. --- SQUID ===== source_ping off Damit wird das Überprüfen der Erreichbarkeit des Quellservers abgeschaltet. Das ist eine Voraussetzung für den offline-Betrieb. Man sollte Squid mit der Option ,,-D &`` starten. Sie unterbindet, dass Squid beim Start den Nameserverzugriff testet und deshalb möglicherweise mit einer Fehlermeldung abbricht. Quelle: http://members.aol.com/reikla/ods/node36.html squid.conf: http_port 8080 http_access allow all # TAG: cache_mem (bytes) # NOTE: THIS PARAMETER DOES NOT SPECIFY THE MAXIMUM PROCESS # SIZE. IT PLACES A LIMIT ON ONE ASPECT OF SQUID'S MEMORY # USAGE. SQUID USES MEMORY FOR OTHER THINGS AS WELL. # YOUR PROCESS WILL PROBABLY BECOME TWICE OR THREE TIMES # BIGGER THAN THE VALUE YOU PUT HERE # cache_mem 64 MB # TAG: cache_dir # Usage: # # cache_dir Directory-Name Mbytes Level-1 Level2 # cache_dir /var/squid/cache 2000 16 256 /etc/squid/ab/ab_denied: ----------------------- 192.168.0.101 192.168.0.102 ... squid.conf: ----------- acl ab_denied src "/etc/squid/ab/ab_denied" acl ab_allowed url_regex www.admin2 acl badusers ident "/etc/squid/ab/badusers.txt" http_access allow ab_allowed http_access deny ab_denied http_access deny badusers --- Deutsche Man-pages ...werden bei suse auf Wunsch hier installiert: /usr/man/de diesen Pfad kann man dann der Umgebungsvariable MANPATH hinzufügen oder bei jedem man-Aufruf als parameter übergeben: man -M /usr/man/de viele Anwendungen geben ihre Meldungen auch in deutsch aus, wenn man die Umgebungsvariable LANG auf "german" einstellt Wie kriege ich in der Shell deutsche Meldungen hin? Was wurde schon übersetzt? Ganz einfach: (am besten in `/etc/environment' oder `/etc/profile' schreiben, wenn Du die DEBIAN Distribution benutzt, ist es einfacher, einfach das Paket `user-de' zu instellieren, da wird noch mehr mitgeliefert). export LC_TYPE=ISO-8859-1 export LANG=de_DE export LC_CTYPE=de_DE export LC_ALL=de_DE export MM_CHARSET="iso-8859-1" Falls Du Euro-Zeichen & Co willst, kannst du auch folgendes benutzten (das geht aber erst ab Kernel 2.2.x und muß explizit mit einkompiliert werden): export MM_CHARSET="iso-8859-15" Achtung: Der Debian Paketmanager hat in älteren Versionen einen Bug (in allen Versionen bis inklusive Debian 2.1 aka "Slink"), der ihn zum Abstürzen bringt, wenn LC_ALL und/oder LANG gesetzt ist. Also, falls Du dieses Problem hast, rufe das Teil so auf: unset LC_ALL unset LANG --- Wie kriege ich einen Teil einer Shell-Variablen zu fassen? Noch so ein kurzer. :) echo ${VAR:anfang:laenge} Zum Beispiel: $ VAR="Hello World" $ echo $VAR Hello World $ echo ${VAR:0:5} ${VAR:0:4} Hello Hell --- Die einfachste Möglichkeit, jemanden rauszuwerfen, ist folgendes: # Sag ihm was passiert ist (optional) echo 'Verschwinde!' > `who | grep $USER | awk { print $2 }` # Laß ihm Gelegenheit seinen Krempel zu speichern sleep 10 # Wirf ihn raus kill -9 `ps -au | grep $USER` wobei '$USER' natürlich durch den entsprechenden User ersetzt werden muß. Verhindern, daß er sich wieder einloggt, kann man mittels usermod -s /bin/false --- (Schreib-)Rechte auf DOS/Windows-Partitionen Zuerst meldest Du dich als der User, als der du auf die DOS Partition schreiben willst, (am besten auf einer anderen Konsole oder in einem anderen Terminal) an und findest mit dem Befehl id heraus, welche UID und GID (User ID und Group ID) dieser User hat (steht auch u.a. in der Datei `/etc/passwd'). Diese ersetzt Du jetzt duch die unten jeweils stehende 1000, trägst den Rest aber so ein. /dev/hdb1 /dos vfat noexec,uid=1000,gid=1000 0 0 Man kann auch eine Gruppe (z.b. `dosusers') erstellen, die Standard-Rechte für die DOS-Partition mit umask so setzen, daß alle Gruppenmitglieder schreiben dürfen, und dann jeden, der schreiben können soll, einfach dieser Gruppe hinzufügen --- Wer greift gerade auf mein CDROM zu? Wieso kann ich es nicht auswerfen? Wer kennt das nicht? $ umount /cdrom /dev/scd0: Device is busy Da greift irgendjemand noch auf das CDROM zu. Oder ein Terminal ist noch in einem Verzeichnis auf dem CDROM. Wer? Welches Programm? Finden wirs raus: $ fuser -u /cdrom /cdrom: 348c(bill) Aha, der böse Bill. :-) Es ist uns völlig egal, was der tut -- der hat gefälligst nicht auf dem CDROM zu sein: Töten wir ihn! $ fuser -k /cdrom /cdrom: 348c No automatic removal. Please use umount /cdrom $ umount /cdrom Na also. Geht doch. alternativ: lsof /dev/cdrom --- ____ _ _ | _ \ ___| |__ (_) __ _ _ __ | | | |/ _ \ '_ \| |/ _` | '_ \ | |_| | __/ |_) | | (_| | | | | |____/ \___|_.__/|_|\__,_|_| |_| DEBIAN Debian Anwender Handbuch www.openoffice.de/linux/buch ....Wenn ich an einem Server arbeite und z.B. die Datei "libg.h" oder "xauth" benoetige, dann finde ich es wesentlich einfacher, diese mit apt-file search libg.h und dann mittels apt-get install $rausgefundener_packetname zu installieren.... Marcel Noe kpackage debootstrap Mit diesem Befehl kann man ein neues Debian-System aus einem bestehenden System erzeugen, z.B. für ein Netzboot-System. Beispiel: debootstrap woody /test sources.list ins /test/etc/apt kopieren, dann chroot /test und danach normal apt usw. benutzen. ------------------------------------------- #!/bin/bash RootPartition=hda4 mke2fs /dev/$RootPartition mount /dev/$RootPartition /mnt/$RootPartition export LANG debootstrap woody /mnt/$RootPartition # Speziell für Knoppix sonst ist das OK /bin/rm /mnt/$RootPartition/etc/resolv.conf /bin/cp /KNOPPIX/etc/resolv.conf /mnt/$RootPartition/etc # sources.list ... copieren install -o root -g root -m 0644 sources.list /mnt/$RootPartition/etc/apt chroot /mnt/$RootPartition apt-get update chroot /mnt/$RootPartition apt-get upgrade chroot /mnt/$RootPartition apt-get install kernel-image-2.4.18-bf2.4 chroot /mnt/$RootPartition base-config --------------------------------------------------------- KNOPPIX Remastering step 1: time mkisofs -R -L /mnt/hda7 | create_compressed_fs - 65536 > /mnt/hda6/custom/KNOPPIX_CD/KNOPPIX/KNOPPIX step 2: time mkisofs -J -T -v -r -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -o knoppix_custom.iso KNOPPIX_CD http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto ======================================================================= Wie sichere ich mein komplettes Linux-System z.B. auf Band? ************** Achtung dump ist nur für ext2 geeignet!!!! *********** Versuchs mit dump. Alle Zugriffsrechte, Zeiten, Links und sonst alles Notwendige werden gesichert. dump 0f /dev/st0 /mountpoint # sichert eine Partition dump 0f /dev/st0 # sichert einzelne Files cd /mnt ; restore rf /dev/st0 # stellt eine Partition wieder her cd /mnt ; restore if /dev/st0 # stellt einzelne Files per interaktivem Eingriff wieder her Zu weiteren Optionen siehe "man dump" und "man restore" (ggfs. vorher installieren)... Wenn man eine Liste von Dateien haben will, die gesichert wurden, und mittels dieser Liste dann `schnell' einzelne Dateien restaurieren will (d.h. aus 2GB innerhalb von 1-2 Minuten, nicht einer Stunde), sollte man sich einmal `dds2tar' anschauen. Das ist eine Erweiterung für `tar', welche eine Indexdatei erzeugt und beim restore das Band `schnell' an die richtige(n) Stelle(n) spulen kann. `tar' selbst kann das von Haus aus normalerweise nicht. Wer eine hübsche, simple GUI für das Tape-Backup haben will, und ein DAT Tape hat, kann sich ruhig mal `kdat' angucken. Das Programm für das K Desktop Environment (KDE) erzeugt Standard-tar Archive auf dem Tape, diese lassen sich also auch ohne ein laufendes KDE wieder restaurieren. Und es erlaubt ein Restore von einzelnen Dateien, erzeugt Index-Dateien und ist nett zu bedienen. --- Gibts ein 'defrag' für Linux? Muß ich meine Festplatte defragmentieren? nein. Wenn Du zu Windows gehst und Dateien speichern willst, sagt dir der Windows Festplattenchef: Fang einfach vorne bei der Festplatte an und nimm die ersten freien Sektoren. Wenn Dir was im Weg liegt, überspring es und mach an einer anderen Stelle weiter. Wenn Du dann sagst, daß das früher oder später im Chaos endet, so sagt der: Wir stellen jedes Wochenende ein paar Leute ein, die alles Aufräumen. Kunde bezahlt. Wenn Du zu Linux gehst, fragt dich der Festplattenverwalter: Wie groß ist die Datei? Und dann sagt er Dir eine Stelle, wo die ganz hinpaßt, wenn es so eine gibt. Oder er zeigt dir die größtmöglichen Stücke falls es nicht in einem paßt. --- HILFE! Ich habe meine Partitionstabelle zerschossen! Vorweg: Sobald du deine Partitionstabelle wiederhergestellt hast, mache mit fdisk -l eine Kopie der Partitionsinhalte, und sichere mit dd if=/dev/hda of=/dev/fd0 bs=512 count=1 deinen Partitionssektor der (hier) ersten EIDE Platte (wo normalerweise LILO installiert ist) auf eine (nicht mehr benötigte) Diskette. Diese muß nicht leer oder formatiert sein, sollte aber keine wichtigen Daten enthalten. Falls Du dir die Partitionstabelle wieder zerschießt (z.B. LILO nicht mehr startet o.ä.) kannst du mit dieser Diskette booten und die Tabelle z.B. mit fdisk wiederherstellen. Wiederbelebung: Wenn Du dich genau an die Partitionsgrößen erinnern kannst, dann partitioniere die Platte doch einfach neu. AFAIK werden dabei keine Daten innerhalb der Partitionen überschrieben, da die Partitionstabelle an einer anderen Stelle zu finden ist. Danach solltest Du alle Partitionen read-only (sicher ist sicher) mounten und testen, ob alles wieder da ist. Falls Du dich nicht an alle Größen erinnern kannst, schadet es nichts, z.B. eine Partition über die gesamte Platte auszudehnen, das Dateisystem auf dieser (read-only) zu mounten und mit df die Größe anzeigen zu lassen; dann unmounten und die Größe anpassen. Diese entspricht der alten Partition. Das ganze mußt Du dann noch zwei mal (für die zweite und dritte, die vierte belegt hofftentlich den Rest der Platte) machen. Bei einer Swap-Partition funktioniert das nicht, aber im Swapspace stehen normalerweise auch keine Daten, die dann noch wichtig sind. Wichtig: Mache alle Plattenaktionen mit dem Linux fdisk, denn das ist das einzige, welches nicht schon beim Anlegen von Partitionen in den Partitionen selbst rumpfuscht. Das Teil ist zwar nicht gerade hübsch, aber kann solche Aktionen einwandfrei. Für solche Zwecke sollte man auch ggf. irgendwo die Manpage zu fdisk ausgedruckt haben (im SuSE Handbuch ist sie abgedruckt), damit man falls nötig was nachschlagen kann. --- Mein Drucker druckt in Farbe zu dunkel! genau das Problem hatte ich auch. In der Doku stand ich solle mal { 0.45 exp } dup dup currenttransfer setcolortransfer an den Anfang des Postscriptfiles einfuegen. Damit sah es dann gut aus. Je hoeher der Wert in den geschweiften Klammer desto heller wird das Bild. --- --- Harddisk Performance verbessern Die Standardeinstellungen für (E)IDE Festplatten sind ziemlich konservativ (kein DMA, kein 32-bit I/O, etc..). Mittels hdparm läßt sich da schnell einiges verbessern. Ein Sonderfall sind high-performance Konfigurationen, wo man sich evtl. zusätzlich über blocksize des filesystems und andere Dinge Gedanken machen sollte, bzw. als Filesystem ReiserFS einzusetzen (wird ext2fs verwendet kann tune2fs zusätzlich einiges verbessern). hdparm ist bei Linux inkludiert, bzw. bei metalab den aktuellen source code downladen und selbst kompilieren. Ein paar Parameter die nützlich sind: (Einfach so etwas ähnliches wie diese commands in rc.local oder eine andere startup datei eintragen: if [ -x /sbin/hdparm ]; then /bin/echo -n "Setting hdparm options.. " /sbin/hdparm -c1 -A1 -m16 -d1 -X34 -S243 /dev/hda /sbin/hdparm -c1 -A1 -m16 -d1 -X34 -S243 /dev/hdb /bin/echo "Done.." fi -c 1 (E)IDE 32-bit I/O support aufdrehen -A 1 IDE Festplatten read-lookahead aufdrehen -m 16 count für multiple sector I/O auf 16 stellen. Mit dem flag -i kann man rausfinden wie viel die Platte unterstützt. -d 1 DMA support enablen -X 34 multiword DMA mode2 transfers enablen -S 243 standby (spindown) Zeit auf 1.5 Stunden einstellen Obige Werte sind in vielen Fällen OK, bitte aber vorher per "hdparm -i /dev/hda" bzw. "hdparm -i /dev/hdb" ansehen was die Festplatte unterstützt bzw. vorher mit "man hdparm" nochmal überprüfen, ob alle Parameter für die jeweilige Platte richtig gesetzt sind. Ein ordentliches Backup (ist sicher ohnehin vorhanden ;-) können wir rein aus prinzipiellen Gründen vor derartigen Aktivitäten nur allerwärmstens empfehlen. --- IDE Brenner unter Linux (Kernel 2.2) installieren Das Modul, welches Du benötigst, heißt "ide-scsi". Es dürfte bei allen aktuellen Distributionen bereits vorkompiliert sein. Installiere es einfach einmal: modprobe -v ide-scsi Falls es keine Fehlermeldungen gibt, wurde es korrekt installiert, und Du kannst die Ausgabe des Moduls im Systemprotokoll (/var/log/messages oder /var/log/syslog) beobachten. Es sollte ein "Virtueller SCSI-Adapter" installiert worden sein, der Deine CDROMs übernommen hat. Brennerprogramme wie "xcdroast" sollten jetzt etwas sinnvolles finden. Du kannst das ide-scsi Modul dazu zwingen, nur Deinen Brenner zu "übernehmen", und die restlichen IDE-Geräte in Ruhe zu lassen. Dafür mußt Du dem Linux-Kernel beim Starten mitgeben, welches der vier möglichen IDE-Geräte das "Pseudo-SCSI" Gerät werden soll. Das geht am besten mit LILO, hänge einfach an den zu ladenden Kernel Parameter an: LILO boot: linux hdc=ide-scsi hier wird "hdc" (Master, 2. Controller) gekidnappt. Danach dann wie oben das Modul laden und gut ist. Wenn es funktioniert und Du das permanent so haben willst, dann trägst Du es in die LILO-Konfiguration /etc/lilo.conf ein: append="hdc=ide-scsi (andere-optionen...)" und rufst einmal "/sbin/lilo" auf, damit die Einstellungen in den Boot-Block übernommen werden. Ab kernel 2.4 hat sich da wohl was geändert. --- Video-CDs lesen / abspielen Credits: Gerhard Olejniczak gerhard.olejniczak@odn.de Das Kommandozeilenprogramm mtvp ist frei und unbeschr.nkt. Ich mach das so: xreadvcd vcd-Datei | mtvp -s0 -a1 -aq0 - & bzw. xreadcdi cdi-Datei | .... DVD Player mplayer -dvd 1 -vo sdl oder mplayer -dvd 1 -vo x11 DVD record ========== DVD analysieren: ---------------- Zunächst müsst ihr euch mal kurz die DVD die ihr rippen wollt ansehen (einlegen aber nicht mounten). Dazu solltet ihr in einer X Konsole mal eingeben: mplayer -dvd 1 Die DVD sollte abgespielt werden. Die Sprache sollte Deutsch sein. Ist das alles richtig, dann steht dem rippen nichts mehr im Wege. Manchmal ist allerdings die 1 noch nicht der Film sondern nur ein Trailer oder so was. Dann müsst ihrs mal mit ner anderen Zahl versuchen, also 2. VCD: Auflösung: 352x288 Audio Bitrate: 224 kBit SVCD: Auflösung: 480x576 Audio Bitrate: 192 kBit Enziel AVI: mencoder dvd://1 -ovc xvid -oac mp3lame -lameopts br=128 -o Ausgang.avi Endziel VCD: mencoder dvd://1 -ovc xvid -vop scale=352:288 -oac mp3lame -lameopts br=224 -o Ausgang.avi Endziel SVCD: mencoder dvd://1 -ovc xvid -vop scale=480:576 -oac mp3lame -lameopts br=192 -o Ausgang.avi Option für Sprache: -aid X X ist hier z.B. 128 für Englisch und 129 für Deutsch Option für Untertitel: -sid X X ist hier z.B. 0 für Englisch und 1 für Deutsch usw. Erzeugen einer VCD: Ich setze vorraus das ihr dem Beispiel oben gefolgt seit und bereits mit Mencoder die Auflösung und die Bitrate für Audio angepasst habt. Die weitere Umwandlung des AVIs zu einem VCD kompatiblen MPEG sieht dann so aus: transcode -i Eingang.avi -x xvid,mp3 -V -o Ausgang -y mpeg2enc,mp2enc -G 0.9 -F 1,"-S 792 -V 230" -R 3 -E 44100 -b 224 -J normalize mplex -f 1 -o Ausgang_%d.mpg Ausgang.m1v Ausgang.mpa Ähnlich für den Fall SVCD: transcode -i Eingang.avi -x xvid,mp3 -V -o Ausgang -y mpeg2enc,mp2enc -G 0.9 -F 4,"-S 792 -V 230" -R 3 -E 44100 -b 192 -J normalize mplex -f 4 -o Ausgang_%d.mpg Ausgang.m2v Ausgang.mpa VCD: vcdimager Ausgang.mpg -c NAME.cue -b NAME.bin SVCD: vcdimager Ausgang.mpg -t svcd -c NAME.cue -b NAME.bin mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2400 -o Film.avi Video Harddisk recording ffmpg -s cif bla.mpg ca. 2MB/min oder: streamer -o prince-tokyo.avi -f mjpeg -F mono16 -r 25 -t 45:00 -s 352x288 ffmpeg -hq -i prince-tokyo.avi prince.mpg videoschnitt: avidemux --- Falls Netscape sehr lange braucht, bis es nach dem Start reagiert, oder es ständig eine Verbindung aufbauen will, oder ähnliches, versuche mal MOZILLA_NO_ASYNC_DNS=true export MOZILLA_NO_ASYNC_DNS --- NetMeeting Jaaa, es soll ja Leute geben die sowas benutzen (müssen) ... Um einen Linux (oder beliebigen anderen) Firewall so zu konfigurieren, daß NetMeeting durch kommt, mußt du folgende Ports öffnen: Port Protokoll Dienste 389 TCP Internet Locator Server 522 TCP User Location Service 1503 TCP T.120 1720 TCP H.323 call setup 1731 TCP Audio call controll Dynamisch TCP H.323 call control Dynamisch UDP H.323 streaming (RTP) Port 389: Der NetMeeting Directory Service wird vom Client (LDAP) zum Server aufgebaut. Quelladresse Zieladresse Protokoll Quellport Zielport ACK Client Server TCP 1024:65535 389 - Server Client TCP 389 1024:65535 ja Port 522: Der User Location Service wird nur noch von NetMeeting 1.0 benötigt. Eine Freischaltung bei Verwendung von NetMeeting Clients ab Version 2 ist nicht nötig. Ports 1503, 1720: Der T.120 und H.323 call setup Service wird zwischen den Konferenzteilnehmern aufgebaut. Quelladresse Zieladresse Protokoll Quellport Zielport ACK Client Client2 TCP 1024:65535 1503 - Client2 Client TCP 1503 1024:65535 ja Client Client2 TCP 1024:65535 1720 - Client2 Client TCP 1720 1024:65535 ja Client Client2 TCP 1503 1024:65535 ja Client2 Client TCP 1024:65535 1503 - Client Client2 TCP 1720 1024:65535 ja Client2 Client TCP 1024:65535 1720 - Ports 1731, Dynamisch TCP, Dynamisch UDP: Diese Ports zwischen den Konferenzteilnehmern sind f#r die Audio und Video #bertragung n÷tig. Wird auf Audio und Video verzichtet, k÷nnen die folgenden Ports gesperrt werden. Quelladresse Zieladresse Protokoll Quellport Zielport ACK Client Client2 TCP 1024:65535 1731 - Client2 Client TCP 1731 1024:65535 ja Client Client2 TCP 1731 1024:65535 ja Client2 Client TCP 1024:65535 1731 - Client Client2 TCP 1024:65535 1024:65535 - Client2 Client TCP 1024:65535 1024:65535 - Client Client2 UDP 1024:65535 1024:65535 Client2 Client UDP 1024:65535 1024:65535 Netmeeting Client für Linux: angeblich klappt's mit ohphone, ist aber wohl nicht so einfach. besser freewebfone http://www.freewebfone.com/ benutzen, das gibts für Linux und Windows --- SSH remote login ohne Passworteingabe Einloggen per SSH ohne Passwortangabe: mit ssh-keygen -t dsa ein private/public key pair generieren (erzeugt ~/.ssh/id_dsa und ~/.ssh/identity.pub) identity.pub auf dem remote server nach ~/.ssh/authorized_keys2 kopieren (bzw. hinzufügen) mit ssh -v remote einloggen zum Testen lokalen window manager mit ssh-agent wrapper starten (z.B mit "exec /usr/local/bin/ssh-agent /usr/X11R6/bin/fvwm2 $@" in ~/.Xclients) sich mit ssh-add dem ssh-agent gegenüber authentifizieren voila, that's it, mit ssh -v wieder testen, remote login ohne passworteingabe sollte jetzt funktionieren. Mehr Details auch auf der OpenSSH homepage. --- rsync rsync macht dasselbe wie rcp oder scp nur effektiver. damit es funktioniert, muss es auf beiden rechnern installiert sein. auf dem entfernten Rechner sollte ein ssh-Server laufen. alternativ auch inetd+rsh aber das ist unsicher. Beispiel: rsync -avz --rsh=ssh --progress --stats QUELLVerz USER@RECHNER:/ZIELPFAD das ergibt dann auf dem Zielrechner/ZIELPFAD/QUELLVer -n dry run = was währe wenn -a, --archive This is equivalent to -rlptgoD. It is a quick way of saying you want recursion and want to preserve everything. -v, --verbose increase verbosity -z compression will be used to reduce the size of data portions of the transfer. weitere Optionen: --delete delete files that don't exist on the sending side --force force deletion of directories even if not empty --rsync-path=PATH specify path to rsync on the remote machine kann man auch lokal benutzen , z.B. um Dateien und Verzeichnisse abzugleichen/zu kopieren, das klappt auch mit symlinks und Dotfiles: rsync -alxcW --safe-links --delete /etc/skel.library.mh/ /home/$USER/ Should work (you may need a trailing "/" on one or both paths, I forget). What it would do is go through the /home/${user} dir, delete any file in that dir which wasn't also in /home/skeleton, and then any existing files which were different (based on CRC check) from /home/skeleton would be overwritten from /home/skeleton. This copies both dotfiles and relative symlinks (which point inside the tree being copied) correctly. You can speed it up by not using the "c", which will cause it to assume a file is ok if it has the same size and modification time of the one in /home/skeleton (but this could potentially fail if you have a really clever/evil user who knows how to fake modification times). rsync -h man rsync --- WebMagick - erzeugt HTML & Javascript Bilderalbum incl. navigation und thumbnails cd BilderVerzeichnis rm -r ./AtariST/.cache rm -r ./linux/apps/.cache rm -r ./linux/cluster/.cache rm -r ./linux/vest/giga/.cache rm -r ./linux/vest/.cache rm -r ./linux/books/.cache rm -r ./linux/games/.cache rm -r ./linux/.cache webmagick --prefixpath marl --iconpath marl --recurse alternativ: album ~/media/images/ --- System Watchdog Wie kann man mit einfachen Mitteln sicherstellen, dass ein server ordentlich läuft, bzw. automatisch rebootet falls er sich aufhängt? Es gibt die Möglichkeit, ein special device file (/dev/watchdog) einzurichten. Falls der Kernel das enabled hat (so gut wie bei allen Distributionen), kann man einen daemon starten, der regelmässig auf dieses file schreibt. Sollte das System unresponsive werden und diser write ausbleiben, obwohl das file geöffnet ist, veranlasst der Kernel automatisch einen reboot. Daneben kann man den daemon auch so konfigurieren, dass er eine Reihe von Dingen im user space überprüft (Systemlast, Menge an verfügbarem virtual memory, Netzwerkverfügbarkeit, Laufen bestimmter Prozesse, ob wichtige files regelmässig upgedated werden, etc..) und im Eventualfall eingreift und das Problem behebt (Netzwerk neu starten, etc..) bzw. einen geordneten reboot auslöst. RPM (x86, ältere Version): ftp://ftp.redhat.com/pub/contrib/libc6/i386/watchdog-4.5-2.i386.rpm Source Code: ftp://metalab.unc.edu/pub/Linux/system/daemons/watchdog-5.1.tar.gz Installation: Entweder RPM installieren mit "rpm -Uvh watchdog-4.5-2.i386.rpm" oder selbst kompilieren: configure; make; make install (siehe INSTALL file). Zusätzlich am besten das file examples/repair.sh kopieren nach /usr/sbin/repair. Das file rc.watchdog.redhat kopieren nach /etc/rc.d/init.d/watchdog. Die folgenden commands ausführen: rm -f /dev/watchdog /dev/temperature mknod /dev/watchdog c 10 130 mknod /dev/temperature c 10 131 /sbin/chkconfig --add watchdog Konfiguration: /etc/watchdog.conf: # Netzwerkaddressen die erreichbar sein müssen, sonst wird das script # /usr/sbin/repair getriggered, in dem versucht werden kann, das # Netzwerk neu zu starten. #ping = 127.0.0.1 #ping = 192.168.13.1 #interface = eth0 # file das gemonitored wird. Trigger wird gestarted falls das file # innerhalb von "change" nicht upgedated wird #file = /var/log/messages #change = 1407 # Maximale Load im 1-, 5-, 15-Minuten durchschnitt. Falls diese workload # überschritten werden sollte tritt der trigger in Kraft max-load-1 = 24 max-load-5 = 18 max-load-15 = 12 # Minimale Anzahl freier pages virtuelles memory min-memory = 1 # Programm, das versucht, Probleme zu beheben. repair-binary = /usr/sbin/repair #test-binary = watchdog-device = /dev/watchdog # Falls die Hardware Temperatur der CPU ausgeben kann: #temperature-device = #max-temperature = 120 # Falls ein Problem auftritt wird versucht, ein e-mail an admin # zu versenden admin = root # Intervall, in dem /dev/watchdog upgedated wird. interval = 10 # watchdog prozess wird nicht aus dem memory geswapped, falls realtime # auf yes gesetzt ist (empfohlen) realtime = yes priority = 1 # check, ob bestimmte Prozesse noch laufen #pidfile = /var/run/syslogd.pid /etc/rc.d/init.d/watchdog: Am besten die Zeile ganz oben ändern von # chkconfig: 12345 02 98 auf # chkconfig: 12345 12 98 Anschliessend noch einmal /sbin/chkconfig --add watchdog. Ansonst wird der watchdog gestarted, bevor das Netzwerk gestarted wird. Hat man das "ping" monitoring enabled, wird gleich /usr/sbin/repair aufgerufen, da das Netzwerk noch nicht hochgekommen ist, bzw., falls repair-binary nicht enabled ist, wird gleich wieder gerebooted ;-) PS: in der derzeitigen Version von watchdog (v5.1) kann es evtl. zu leichen Kompilierproblemen unter RedhHat 6.2 im NFS code kommen. Solltest Du Probleme haben, schicke uns ein e-mail! PPS: für den echt professinellen Einsatz gibt es auch hardware watchdog (WDT500P, WDT501P, PCI WDT500/501, PSC-6x86, ..), siehe "make config" Optionen beim Kompilieren eines neuen kernels oder Documentation/Configure.help im Linux Kernel source code durchsuchen nach dem string "WATCHDOG". --- Login von root via KDE _verhindern_ Ich habe in einer Schule (siehe 100% Linux an der Schule - Erfahrungsbericht und Dokumentation) KDE auch eingerichtet, und da möchte ich grundsätzlich verhindert, daß einer der Lehrer, die zwar das root-Passwort haben aber noch nicht so fürchterlich firm in Linux sind, möchte ich ihnen das root-Login nur auf der Konsole erlauben. Da sind sie von Natur aus vorsichtiger, als mit der Maus. :-) Das geht ganz einfach. Ich habe mir das Skript /usr/bin/startkde vorgenommen und am Anfang einen kleinen Abschnitt eingefügt: if [ test "$UID" -eq "0" ] ; then xmessage -center " Sich als root unter KDE einloggen ist eine SEHR schlechte Idee. Bitte loggen Sie sich als normaler Benutzer ein, und benutzen Sie die Befehle su oder ssh, um als ein anderer Benutzer Befehle ausführen zu können." exit 1 fi Da das ganze Schul-KDE-Netzwerk via rsync synchronisiert wird (siehe Schul-Artikel) brauchte ich diese Änderung auch nur EINmal zu machen. :-) --- Einen X Desktop auf mehreren Bildschirmen Wenn Du ohne spezielle Hardware Deinen X Desktop auf sämtlichen Rechnern im Netzwerk darstellen willst, z.B. um während eines Vortrages einer Gruppe von Leuten etwas zu demonstrieren, ist 'xmx' (X Multiplexer) sehr nützlich. Credits: Christian Schrader Christian.Schrader@gmx.de Stand: Dezember 1999 Package name: xmx Version number: 1.0 Original author: John Bazik jsb@cs.brown.edu Original URL: ftp://cs.brown.edu/ Such mal auf Dejanews nach meinem Namen [also Christian, Red.] und xmx, dann findest Du ein paar Postings dazu, insbesondere die Lösung zu einem Compilierproblem. Vor längerer Zeit ließ es sich noch problemlos übersetzen, jetzt sind da aber irgendwelche Variablen doppelt gesetzt oder so. --- "Hilfe! Mein Programm ist abgestürzt!" oder "Eine kleine Segmentation Fault Einführung" Ja, auch Linux-Programme verabschieden sich von Zeit zu Zeit. Das, was bei Dir als Segmentation Fault zurückkommt, ist im Grunde programmiertechnisch nichts anderes als was unter Windows eine Allgemeine Schutzverletzung ist: Ein Programm will auf Speicher zugreifen, der ihm nicht zugeteilt wurde; meist durch wildgewordene Pointer. Der Unterschied besteht nur in folgenden Dingen: - Das Betriebssystem schmeißt das Programm raus, bevor es Schaden anrichten kann, im Gegensatz zu Windows. Das heißt, ein abgestürztes Programm beeinflußt den Rest des Systems überhaupt nicht. - Du hast als Anwender eine *konkrete* Möglichkeit, herauszufinden, warum das Programm abgestürzt ist, dem Programmierer sinnvolle Informationen zu geben, damit er das Problem beheben kann. Sachen wie "... bei mir funktioniert das aber..." sind dann für den Programmierer keine Ausrede mehr :) Natürlich muß der Fehler reproduzierbar sein, sonst macht das alles keinen Sinn. Also, du gehst folgendermaßen vor: Nebenbei: Diese Methode ist AUCH für ganz normale Anwender interessant und durchführbar, man kann nichts kaputtmachen! Noch einmal: Dies macht NUR Sinn, wenn der Fehler reproduzierbar ist. Starte das betreffende Programm noch einmal, so: $ gdb /usr/bin/meinprogramm Du siehst so etwas (Ausgaben in [Klammern] können abweichen): GNU gdb [4.17] Copyright [1998] Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "[myproc-mydist-linux]"... (gdb) Das Programm läuft jetzt unter der Kontrolle des Debuggers. Es wird nun gestartet: (gdb) run Starting program: [/path/to/prog/myapp] Das Programm wird jetzt ganz normal laufen. Wenn es ein X11 Programm ist, werden Fenster dargestellt. Deine Aufgabe ist es jetzt, den Fehler zu provozieren. Wenn das Programm dann abgestürzt ist, mache das X Fenster NICHT zu! Du siehst im gdb Fenster: Program recieved signal SIGSEGV, Segmentation fault. 0x[804858b] in [main] () (gdb) Die Addressen können etwas anders aussehen, das ist unwichtig. Diese Speicheraddressen (im Gegensatz zu den Windows-Fehlermeldungen) sind aber für den Programmierer unheimlich wertvoll, weil er jetzt genau weiß wo sein Programm ins Nirvana geritten ist. Wir wollen jetzt die Zeit etwas zurückdrehen und gucken, was kurz vor dem Absturz passiert ist: (gdb) backtrace 10 Es erscheint so etwas: #0 0x[804854f] in [segfault] () #1 0x[8048648] in [deep_12] () #2 0x[8048634] in [deep_11] () #3 0x[8048620] in [deep_10] () #4 0x[804860c] in [deep_9] () #5 0x[80485f8] in [deep_8] () #6 0x[80485e4] in [deep_7] () #7 0x[80485d0] in [deep_6] () #8 0x[80485bc] in [deep_5] () #9 0x[80485a8] in [deep_4] () ... (gdb) Dies ist der saftige Teil, diese Ausgaben mußt Du, zusammen mit einer genauen Beschreibung, was du gemacht hast, an den Programmierer schicken. (Beispiel unten.) Jetzt würgen wir das Programm sauber ab: (gdb) kill Kill the program being debugged? (y or n) y (gdb) quit $ --- Wie kann ich bestimmte Verzeichnisse (z.B. `/home') zentral halten? Du willst Teile des Plattenplatzes des Server auf dem Netz verteilen. Das macht man mit NFS (Network File system). Ist relativ simpel, du brauchst nur zwei Dateien anpassen. Auf dem Server schreibst du in die `/etc/exports' folgendes: /home *.local.domain(rw) (näheres gibts mit man 5 exports). Auf den Clients haengst du an die /etc/fstab folgendes an: dein_server:/home /home nfs defaults 0 0 Dann löschst du auf dem Client /home und alles, was darunter existiert (oder schiebst es irgendwo anders erstmal hin). { das als root, natuerlich } Dann sagst du auf allen Clients mount /home und (falls das Netzwerk steht) sollte `/home' jetzt den Inhalt von dem `/home' auf dem Server anzeigen -- fuer alle User (nicht nur fuer dich). Eventuell ist statt defaults da oben als Optionen rsize=8192,wsize=8192,nolock,intr,hard (veraltet) nützlich, das sind Tuning-Optionen, die den Kram etwas beschleunigen könnten, und Kompatibilitätsoptionen, die bei manchen Programmen sonst Probleme machen könnten. Siehe auch 'man mount' dazu. Wenn du den kernel NFS daemon benutzen willst, der beim 2.2 Kernel dabei ist (z.B. weil du File Locking benötigst), mußt Du allerdings jeden Rechner, an den die jeweiligen Dateisysteme exportiert werden sollen, explizit in der `/etc/exports' aufführen -- sonst kann es u.U. Probleme bei Wiederverbindung nach Netzwerkunterbrechungen geben (den Tip habe ich aus der linux-kernel Mailingliste). Der `knfsd' ist auch sonst zu empfehlen, er ist nämlich etwas schneller als der normale `nfsd'. Allerdings hat der momentane `knfsd' das Problem, daß er a) noch nicht ganz fertig ist und b) mandatory locks nicht vernünftig implementiert, falls er also bei Dir nicht funktioniert, benutze den alten user-space `nfsd' - der ist zwar langsamer, aber dafür auch bombenstabil. --- Wie kann ich mich automatisch anmelden (ohne ständige Passworteingabe)? Es geht noch einfacher als unten, wenn dies für _alle_ Benutzer gelten soll: Das nennt sich dann _RhostsRSAAuthentication_ und funktioniert wie die alte ".rhosts" Methode, nur muß der Zielrechner nicht nur Deine IP als "erlaubt" gesagt bekommen haben, sondern _zusätzlich_ Deinen ssh_host_key. Das funktioniert natürlich nur wenn Du ROOT bist, sonst kannst Du es (natürlich) nicht für _alle_ User einstellen. :-) Einrichtung: /etc/shosts.equiv (alle Rechner, die "können sollen", eintragen) /etc/ssh_known_hosts (alle public keys eintragen) /etc/sshd_conf (RhostsRSAAuthentication auf "yes" setzen) Ach ja: Das ssh binary muss ueberall suid root installiert sein (damit es den host key lesen und ein bind() auf einen privileged port machen kann). Das ist für Workgroup-Installationen ganz nett, dann kann man sich von jedem Rechner auf jedem Rechner einloggen und hin und her springen, ohne ständig Passwörter einzugeben. Wenn die erste Anmeldung per NIS erfolgt, ist das Passwort ja sowieso überall das gleiche, stellt also auch kein Sicherheitsrisiko dar. --- Im Prinzip gehe davon aus, daß Linux dich immer fragen wird, wer du bist. Ohne dieses Wissen funktioniert das System nicht so einfach. Nun ja, aber wenn Du ständig remote auf anderen Rechnern zu tun hast, ist es lästig, bei jedem telnet wieder den login: Prompt beantworten zu müssen. Und dafür gibts Abhilfe. Voraussetzung: die SECURE SHELL, aka ssh. Erstmal generierst Du dir einen Schlüssel: ssh-keygen Falls du auf die Kennworteingabe bei einem entfernten Login verzichten willst, gibst du hier, wenn er dich nach einem RSA Password fragt, einfach ENTER ein. So, damit hast du gleich mehrere Vorteile gegenüber telnet auf einmal geschlagen. - X wird transparent durchgeschleust - d.h. keine DISPLAY Variablen mehr nötig. - Es findet Kompression statt - besonders bei X sehr wichtig. (optional) - Es findet Verschlüsselung(!) statt. telnet sendet alles, auch Passwörter, im Klartext! - Man kann sich die Eingabe des Kennwortes sparen, wenn man die ssh richtig konfiguriert hat. Für die Kompression mußt Du die shell mit -C aufrufen. Natürlich muß auf beiden Seiten die ssh installiert sein, das ist sie unter Linux aber fast immer. Dann machst du folgendes: Du fügst den Inhalt der Datei `$HOME/.ssh/identity.pub' auf deinem Rechner an die Datei `$HOME/.ssh/authorized_keys' auf dem Rechner, auf dem du dich einloggen willst, an. Ab sofort sollte ein ssh -C anderer_rechner dich ohne Kennworteingabe auf den anderen Rechner befördern und du kannst dort X Programme ausführen, ohne daß Du irgendwelche DISPLAY Variablen o.ä. beachten mußt. Beachte allerdings, daß du, wenn Du kein RSA Kennwort angibst, dein Account auf dem anderen Rechner auf den gleichen "Sicherheitslevel" runtersetzt, auf dem dein Account auf deinem Rechner liegt. D.h. falls jemand es schaffen sollte, in deinen lokalen Account einzudringen, hat er automatisch auch immer Zugriff auf den 'anderen' Account, weil du halt eine Shell ohne Kennwort zugelassen hast. Ob das zu undurchsichtig wird, bleibt dir überlassen. Ich finde es sehr praktisch in einem LAN von drei Rechnern, die sowieso nur von mir, jedenfalls auf Linux-Seite, benutzt werden. --- Wie kann ich Verbindungen zwischen zwei Rechnern durch 'ssh' tunneln? Credits: kreft@seven.ai-lab.fh-furtwangen.de (Helmut Kreft) Stand: September 1999 Folgender Befehl startet einen SSH-Tunnel vom lokalen Port 110 des Rechners bethor zum Rechner box.domainxy.de, der die Daten dann unverschluesselt zum Rechner mail weiterleitet. Dank -g duerfen sich dann auch alle moeglichen anderen Rechner auf den Port 110 des Rechners Bethor connecten, so lange ihnen das nicht mit /etc/hosts.deny /etc/hosts.allow verboten wurde. (Eintrag sshdfwd-pop3 : Alle erlaubten Netze oder hosts). Das Ding geht in den Hintergrund, sodass der Tunnel auch nach dem Ausloggen besteht. Damit die ganze Sache funktioniert muss mit ssh-keygen ein Public/private Key-Pair erzeugt werden, wobei der private Key nicht Passwortgeschuetzt sein darf. Es ist eine gute Idee, den dann nicht irgendwo fuer Kreti und Pleti lesbar herumfliegen zu lassen. (Stichwort: RSA-Authentifizierung) Mittels cron-Job kann der Tunnel nach einem Zusammenbruch auch automatisch wieder aufgebaut werden. bethor:/root # ssh box.domainxy.de -g -n -f -l luser \ -L 110:mail.domainxy.de:110 sleep 360000 < /dev/null > /dev/null 2>&1; Es ist natuerlich geschickter bethor:/root # ssh mail.domainxy.de -g -n -f -l luser \ -L 110:localhost:110 sleep 360000 < /dev/null > /dev/null 2>&1; zu nehmen, wenns geht... --- Ein Rechner soll TAUSENDE von IP-Adressen besitzen Sowas solls ja geben. Quelle: Linux Kernel Mailing-Liste. Ein Rechner soll mehrere TAUSEND IP-aliase besitzen. Das Problem ist, daß er dann 50% CPU-Zeit im Kernel verbringt, um nachzugucken, ob er denn auf _der_ Adresse nun gerade antworten soll oder nicht... Lösung: ifconfig lo:1 192.168.10.0 netmask 255.255.255.0 route add -net 192.168.10.0 netmask 255.255.255.0 dev lo Das LOOPBACK-Interface besitzt die Fähigkeit, ein komplettes Netzwerk zu bedienen (hier halt 192.168.10.0/24), ohne daß für jede einzelne IP ein ifconfig-Kommando eingetragen werden muß. Also, statt tausend alias-IPs einzutragen, nimmt man stattdessen einige virtuelle LOOPBACK-Interfaces (die sind auf dem Netzwerk durchaus sichtbar, wenn nicht via 'ipchains' o.ä. blockiert) und ist glücklich. Der "korrekte" Weg, dies zu tun, ist natürlich mit den neuen IP-Tools von Kernel 2.4. Diese sind auch schon als Backports für 2.2 erhältlich, insofern kann man sie problemlos benutzen (muß sie sich bloß selbst kompilieren). Für exotische Netzwerkkonfigurationen lohnt es sich allemal. /sbin/ip addr add 10.20.30.0/24 dev eth0 --- Wie kann ich Quotas für 500 User auf einmal festlegen? Das Programm "edquota" ist ganz nett, aber wenn man es 500mal ausführen muß, wirds nervig. Gottseidank gibts da die Option "-p", die für "duPlicate" steht und auch genau das tut: edquota -p hans hans2 hans3 hans4 hans5 setzt die Quotas von hans[2..5] auf die gleichen Werte wie die von hans. Und edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd` setzt die Quotas von allen Usern mit UID > 500 auf die Werte von "bob". Ist doch ganz einfach, oder nicht? :-) --- Dynamischer DNS beim Provider und PPP Quelle: Andreas Voegele andreas.voegele@gmx.de Stand: Juni 2000 > Ich will vorübergehend als ISP http://www.freenet.de/ verwenden. > Problem: Der DNS-Server wird dynamisch vergeben... > Frage: Wie muß ich den DNS-Server eintragen ??? Die Datei "/etc/ppp/peers/provider" muss die Option "usepeerdns", die ab ppp-2.3.7 unterstuetzt wird, enthalten. Die Adressen der Nameserver stehen dann nach dem Verbindungsaufbau in den Umgebungsvariablen "DNS1" und "DNS2" sowie in der Datei "/etc/ppp/resolv.conf". In der Manual-Page des "pppd" und in "/usr/doc/ppp/changelog.gz" gibt es (zumindest unter "potato") weitere Informationen. Ich habe ein kleines Python-Programm, dass die Umgebungsvariablen auswertet und in "/etc/ppp/ip-up.d" installiert werden muss, geschrieben. Hier ist es: /f/Files/dyndns-update.py --- Pinguin statt Energy-Star beim Booten Aus news://de.comp.os.linux.misc: Hier noch mal ein MINI-HOWTO als Ergnzung zu folgender Website: http://www.geocities.com/SiliconValley/Chip/4378/ und http://geggus.net/sven/linux-bootlogo.html Zweck der Sache: Das ENERGY-Logo beim booten durch einen Linux Pinguin auszutauschen! Achtung, dieses vorgehen habe ich nur mit Award BIOS getestet! Zuerst braucht man folgende Utils: das Flash Proggi fürs Bios: ist meistens beim Board dabei, oder gibts z.B. bei http://www.asus.com das Proggi um das Bios zu verndern: http://geggus.net/sven/cbrom224.zip das Logo: http://geggus.net/sven/pingu.epa oder wenn Ihr selber eins machen wollt: http://geggus.net/sven/bmp2epa.zip dann bootet Ihr am besten ein nackisches DOS (ohne HIMEM/EMM386/..). mit dem Flash Utility (z.B. das ASUS Flash) das BIOS auslesen und in eine Datei speichern (Save Current BIOS To File) (ich habe es org.rom genannt) Den Inhalt könnt Ihr Euch listen lassen mit: cbrom124 org.rom /d wer will kann sich jetzt sein altes Logo mit cbrom124 org.rom /epa extract speichern.. so und jetzt gehts los: cbrom124 org.rom /epa pingu.epa hat das fehlerfrei funktioniert, könnt Ihr nochmal überprüfen, ob das auch funktioniert hat: cbrom124 org.rom /d da sollte jetzt als EPA pattern der pingu.epa drinstehen. sieht das irgendwie seltsam aus, den nächsten Schritt nicht machen! Das folgende geschieht auf eigene Gefahr hin, mit dem ausdrücklichen Hinweis, das unter dummen Umständen, das Bios beschädigt werden kann! Wer hier immer noch weitermachen will, sollte jetzt wieder das Flash-Proggi des Boardes ausgraben und das `org.rom' wieder zurck ins Bios spielen! Augen zu... ... und Rechner ausschalten ... und wieder einschalten ... und dann isser hoffentlich da: der Pinguin!! --- Quelle: http://www.linuxfaq.de/ http://portico.org/ Fran at 1 October, 12:13:23 Netscape has a bad habit of making small text so small it is unreadable, and increasing the standard font size makes normal text too big. To fix this, add Netscape*documentFonts.sizeIncrement: 5 to your .Xdefaults file, log out and log in again. ! normalerweise +/-20% ! hier +/-5% : Netscape*documentFonts.sizeIncrement: 5 !versuchen wir mal einen anderen Weg... Netscape*documentFonts.xResolution*iso-8859-1: 100 Netscape*documentFonts.yResolution*iso-8859-1: 100 --- Netscape & ISDN > Warum muß Netscape immer online sein, damit es arbeitet. Selbst wenn man > nur alte e-mails lesen oder Einstellungen machen will, muß es online > sein. > Wenn ich mal kurz offline gehe, um mal in ruhe einen Brief zu schreiben, > hängt es irgend wann. Auch anschließendes online gehen hilft dann nicht > mehr. Was kann ich dagegen machen? H.Bohr: Bei mir hat export MOZILLA_NO_ASYNC_DNS=True geholfen. Martin H.: Das Problem mit dem ISDN Zugang ist, dass immer das Device ippp0 und eine Default-Route darauf besteht, egal, ob die Leitung gerade steht, oder nicht. Also denkt Netscape er kann jederzeit jeden Recher erreichen und jeden Namen per DNS auflösen. Bei einem Modem-Zugang hast Du das Problem nicht: Device und Route gibt es nur solange, wie die Leitung steht. hilfreiche Massnahmen: *Rechner des Providers (Nameserver,mailserver,proxy...) in /etc/hosts eintragen *wenn isdn auflegt, dann auch die default-Route entfernen (route del .... ) eventuell auch den Nameserver aus /etc/resolv.conf entfernen und bei Anwahl wider eintragen - natürlich nicht von Hand sondern alles per Script/Programm - bei mir macht das kppp, vielleicht kann man kisdn genauso einstellen. *bei Netscape leere Seite oder eine lokale Seite als Startseite eintragen *bei Netscape die beiden smart browsing Optionen ausschalten *Netscape so einstellen, dass er nicht alle n Minuten nach neuer mail schaut. *wwwoffle oder squid als proxy verwenden Gernot Tenchio (gernot@tenchicolor.de) sagt dazu: Ein "tcpdump" ergab, dass Netscape versucht herauszufinden welche Adresse ein Host namens "dribble" hat. Ich kann leider nicht nachvollziehen warum dies geschieht, weiss aber sicher einen solchen Host noch nie irgendwo definiert zu haben. Der Eintrag 127.0.0.1 dribble in der /etc/hosts sollte Abhilfe schaffen. ??? ;-) ----- GNOME Applications gnp gnotepad+ (HTML-)Editor gnomecal Terminplaner gnomecard vCard-Adressverwaltung balsa e-mail-client gnome-ppp like kppp gmix like kmix gtop like ktop lum interaktiv Optik lernen mtrack interaktive Satelliten-Karte HTML Editoren: quanta+ bluefish http://bluefish.openoffice.nl/ Netscape StarOffice ApplixOffice webmaker tidy Bereinigt HTML-Code ------- Rechtschreibkorrektur ispell export DICTIONARY=deutsch Wörterbücher/Übersetzungsprogramme: English-Deutsch,Deutsch-English: steak, xsteak, ding auch andere Sprachen: xdic ------- Zugriff auf io-Ports in C: #include ioperm(port,1,1); outb(wert,port-adresse); wert=inb(port-addresse); -------- Skript zum bearbeiten einer verschlüsselten Datei: pgp -d $1.pgp kedit $1 pgp -ew $1 "Martin Herweg" rm $1~ ls -l $1* -------- Ein (tgz)File verschlüsseln: gpg -e file.tgz entschlüsseln: gpg file.tgz.gpg --------------- apache httpd ============ Ziel: User soll sein eigenen "Members-Only" Bereich pflegen können 1.)root muss httpd.conf anpassen: ------------------------------------ ... # This should be changed to whatever you set DocumentRoot to. ... # This controls which options the .htaccess files in directories can # override. Can also be "All", or any combination of "Options", "FileInfo", # "AuthConfig", and "Limit" # ! NEU: AllowOverride Limit AuthConfig # Controls who can get stuff from this server. # Order allow,deny Allow from all --------------------------------------- 2.) User muss in seinem "Members-Only"-Verzeichnis die Datei .htaccess anlegen, zB : --------------------------------------- AuthUserFile /usr/local/httpd/htdocs/mherweg/intern/.htpasswd AuthGroupFile /dev/null AuthName LUG-Marl AuthType Basic require user lug --------------------------------------- 3.) User erzeugt mit htpasswd -c .htpasswd lug eine .htpasswd-Datei und kopiert sie an die oben genannte Stelle (im Beispiel: /usr/local/httpd/htdocs/mherweg/intern/.htpasswd ) .htaccess und .htpasswd sollten die Rechte 644 haben. 4.) root muss den Webserver restarten damit die neuen config-Dateien eingelesen werden debugging: tail -f /var/log/httpd.error_log ---------------------------------- Apache als reverse-proxy auf die firewall für Fernwartung: Den Zugang von Außen regelen wir hier z.B. über einen Reverse-Proxy, sodass ich sogar von zu Hause aus die Systeme administrieren kann. In der Apache-Doku steht dazu einiges drin. Der entsprechende Teil in der httpd.conf auf dem Reverse-Proxy sieht so aus: # Reverse-P. zu erreichen über Port 82 ServerName www.MYDOMAIN.de # Diese Adresse gebe ich im Browser an ProxyVia On ProxyRequests on ProxyPass / http://www.MYREALSERVER.de/ # Da will ich wirklich hin ProxyPassReverse / http://www.MYREALSERVER.de/ NoCache * Wenn man dann auf MYREALSERVER noch die default-route entfernt kann gar nichts mehr schief gehen, da er ja nicht selbstständig in die Außenwelt kann. OK, MYREALSERVER verwendet nur https, aber das geht ohne Probleme durch den Proxy. Da wäre u.U. auch der rinetd von Interesse. (Holger Biber) ---------------------------------- webcam mit bttvgrab (update 3/2002) 1.)mit xtvscreen den Composite eingang wählen 2.) bttvgrab -f webcam:/tmp/bttvgrab/ -s 3 -w 300 -o jpg -Q 3.) (server push) http://martin/cgi-bin/nph-webcam xtvscreen-snapshots werden als *.pnm gespeichert in jpeg wandeln: eines: cjpeg name.pnm > name.jpg viele: # script "machjpeg" files='ls *.pnm' for i in $files do echo $i cjpeg $i > $i.jpg done #EOF ----- XF86Setup H V VGA 640x480 @ 60Hz 31.5 60 SVGA 800x600 @ 56Hz 31.5-35.1 55-60 Ext. SVGA 800x600 @ 60Hz 31.5-37.9 55-90 1024x768 @ 60Hz 31.5-48.5 55-90 1024x768 @ 70Hz 31.5-57.0 55-90 1280x1024 @ 60Hz 31.5-64.3 50-90 1280x1024 @ 74Hz 31.5-79.0 50-100 kommerzielle X-server: 1.) Xaccel , V 1.2-7 by X Inside,Caldera 1.0 setup: Xsetup benötigt das Verzeichnis /etc/X11 und ein paar fonts und ein Link: Xaccel-aout -> Xaccel-elf findet die Fonts: applix, b&h , sun(nur Cursors) macht 1024x768@75Hz im Gegensatz zu XFree(nur 60Hz) 2.) metroX (Caldera 1.1) setup:configX --- alte Graphikkarten ================== Cirrus Logic GD5426 (VLB, 1MB) max dot-clock for 16bpp: 45.556MHz 800x600@16bpp_65Hz 8bpp: OK 16bpp: problematisch: Currently the framebuffer code 16-bit, 24-bit, and 32-bit pixels in the SVGA server requires linear addressing. Option "linear" can be specified in a depth-specific screen section to enable linear addressing; a MemBase setting (in the device section) is probably also required. ... If you have a 542x/543x on the ISA bus, and you have 16Mb or more of system memory, linear addressing is impossible. 16bpp is out, sorry. If you have less than 14Mb of memory, you may be able to map the framebuffer at 14Mb, using `MemBase 0x00e00000'. That's five zeros after the `e'. Unfortunately many ISA cards don't support linear addressing. - XF86Config.S3_805_800x600@16bpp "Targa" - XF86Config.S3-868-800x600-16bpp XF86Config.S3-868-800x600-16bpp-61Hz XF86Config_S3_86C805_2MB_att20c491 XF86Config.S3Trio64 XF86Config.s3v_800x600@60Hz XF86Config.s3v_800x600@84Hz_16Bit XF86Config.stealth24 XF86Config.svga_800x600@61Hz_16Bit XF86Config.svga_800x600_61Hz_8bpp XF86Config.TridentTGUI9440AGi_1024x768@8bpp XF86Config.TridentTGUI9440AGi_800x600@16bpp_47Hz --- ein devicefile anlegen: mknod -m 660 /dev/bla c --- NTP : genaue Zeit aus dem Internet holen netdate -v ben.cs.wisc.edu wave.mbari.org oder ntpdate ben.cs.wisc.edu wave.mbari.org hwclock --systohc Liste von weiteren Time-Servern: http://www.eecis.udel.edu/~mills/ntp/clock1.htm c't Artikel zum Thema: 1/97 sowas könnte man warscheinlich gut in /etc/ppp/ip-up.local eintragen, weil dieses Script vermutlich mit root-rechten läuft, und root-rechte braucht man um System- oder Hardware-Uhr zu stellen. Auf diese Ide kam ich damals aber nicht, darum habe ich das so gelöst: kppp->"Führe bei Verbindung Programm aus:" /home/mherweg/scripts/anwahl #------------------------ # scripts/anwahl # MH 6/99 # 2/2000 aim , icq , dialog hinzugefügt sleep 3 wwwoffle -online wwwoffle http://www.freenet.de wwwoffle -fetch # gaim & # licq & /usr/sbin/ntpdate -v ben.cs.wisc.edu wave.mbari.org su1 hwclock --systohc date su1 hwclock sleep 3 #------------------------EOF Das script läuft mit normalen user-rechten, bei ntpdate habe ich das suid-bit gesetzt. hwclock durfte ich mit hilfe von su1 ausführen, viele nehmen für sowas auch das Programm "sudo" su1 hat natürlich auch eine config-Datei: #------------------------- # /etc/su1.priv # Define the paths for running programs and no log file paths /bin /usr/bin /sbin /usr/sbin /usr/local/bin /usr/local/sbin logfile /tmp/su1.log ask never allow mherweg prefix hwclock #------------------------EOF Mit "date" das DATUM und Uhrzeit stellen: date 123123592001 12 31 =31.Dezember 23 59 = 23:59 2001 = 2001 Quelle: info date Linux in a Nutshell (Buch) --- Im Hardware-sleep-modus läuft die System-Uhr nicht weiter. Deshalb beim Aufwachen: hwclock --hctosys nach einem reboot ist die uhr auch wieder richtig APM-Support im kernel macht dies automatisch richtig. ------------------------- wie werde ich die lästige xconsole beim start mit xdm oder kdm los ? In /etc/X11/xdm/Xsetup die letzten Zeilen aukommentieren vorher: ( exec setsid $xconsole -notify -nostdin -verbose -exitOnFail ) & echo $! > /var/run/xconsole.pid exit 0 nachher: #( # exec setsid $xconsole -notify -nostdin -verbose -exitOnFail #) & echo $! > /var/run/xconsole.pid exit 0 wie verhindere ich das stoppen & starten des X-Servers bei xdm oder kdm? Quelle: http://www.suse.de/sdb/de/html/cg_xdm.html Dieses Verhalten wird über eine Resource in der Datei /usr/X11R6/lib/X11/xdm/xdm-config gesteuert. Um den Start eines neuen X-Servers nach dem Ausloggen zu unterdrücken nehmen Sie bitte folgende Veränderung an dieser Datei vor: Ersetzen Sie bitte die Zeile DisplayManager._0.terminateServer: true durch DisplayManager._0.terminateServer: false --- Seit SuSE Version 6.3 ist es nicht mehr möglich über Netzwerk eine Verbindung zum xdm oder kdm herzustellen. Um den Zugriff wieder zu ermöglichen müssen Sie in der Datei /var/X11R6/lib/xdm/Xaccess eine Zeile mit dem Zeichen * einfügen. Alternativ können Sie auch nur die Rechnernamen eintragen, für die der Zugriff erlaubt sein soll. Quelle: http://sdb.suse.de/sdb/de/html/adrian_xaccess.html das ganze ist aber bei 7.0 und 7.1 immer noch nicht nachvollziehbar, mit xdm klappts eigentlich immer, mit kdm jedoch von manchen Clients ja, von manchen aber nicht. --- ~/.xsession interessannt wenn man über kdm/xdm startet .xsession startet .xinitrc ~/.xinitrc kommt zum Zuge, wenn man mit startx startet --- coole xscreensaver-module: decayscreen ifs galaxy bouboule flag (andere Bilder möglich ?) goop starfish xflame phosphor xmatrix superquadrics pipes --- > Ich wollte gestern mal versucht einen weiteren x-Server zu starten. > leider bekomme ich dann immer einen Server Error. Weißjemand woran das > liegen könnte.? $ X :1 vt8 :1 setzt eine andere Server Nummer (für DISPLAY) und vt8 läßt den Server auf Konsole 8 laufen. Konsole 7 ist ja bereits vom ersten belegt. Quelle: Werner Koch ,Mailingliste der elug ------------------------------ Feintuning eines Toshiba 4010 Laptop ==================================== Quellen: file:/usr/doc/howto/en/mini/Battery-Powered.gz http://www.suse.de/sdb/de/html/apm.html X-Window: svga 800*600 16 Bit Sound: OSS: SBpro partitionen: hda1 ist eine 5MB dos-Partition auf die ich tsetup installieren möchte, - wenn ich es irgendwo finde :-( neuer kernel gemäss: http://www.suse.de/sdb/de/html/apm.html /sbin/init.d/halt: "halt" durch "halt -p" ersetzt folgende Pakete nachinstalliert: xsvga pcmcia apmd kcmlaptop so_de x11amp xv oss chmod 666 /dev/apm_bios chmod +s /usr/bin/apm "Standby" apm -S ...wakes an any key, HD not sleeping "suspend" apm -s ...wakes on Power-Switch, HD goes to sleep damit die Festlatte bei laufendem System oft und lange schlafen kann: (1)every-minute-cronjobs in every-hour ändern: /etc/crontab vorher: # Run any at jobs every minute * * * * * root [ -x /usr/sbin/atrun ] && /usr/sbin/atrun nachher: # Run any at jobs every hour 00 * * * * root [ -x /usr/sbin/atrun ] && /usr/sbin/atrun (2)aufruf von update in /sbin/init.d/boot(suse) ändern: vorher: /sbin/update || ECHO_RETURN=$rc_failed nachher(nur noch jede Stunde): /sbin/update -s 3600 -f 3600 || ECHO_RETURN=$rc_failed ---------------- wakeonlan z.B. wakeonlan 192.168.1.30 00:11:0A:A1:C5:BB erfolgreich getestet mit HP Compaq t5515 ---------------- Notebook/Laptop FSC/SNI Fujitsu Siemens Mobile 510 AGP ====================== VGA: Neomagic MagicMedia 256AV (NM2200) 1024x786@16bit XFree 3.3.6 & 4.0.1 - both ok PCMCIA: TexasInstruments 1225 -> i82365 internal CD-ROM, internal Floppy, Akku : Hot-Swapable Sound: Neomagic MagicMedia 256AV (NM2200) emulates a WSS(Windows Sound System) Driver "sb" is not working Driver "ad1848" & "adlib_card" (WSS) work fine Sound must be set up manually and can not be auto-detected. COM2=(Fast)irDA USB: Intel 82371AB -> UHCI I tried the following Linux Distributions: Suse Linux 7.0 Mandrake Linux 7.2 RedHat 7.0 1/2001 m.herweg@gmx.de Stefan Evert schreibt über sein Mobile 510 AGP: Soweit ich es verstehe gibt es die NMG-Chips in verschiedenen Versionen, die unterschiedliche Soundchips enthalten. Bei mir scheint ein Yamaha OPL3 SA2 drinzustecken, und mit diesem Treiber hat's schliesslich funktioniert: [in /etc/conf.modules] alias char-major-14 opl3sa2 alias midi opl3 options opl3 io=0x388 options opl3sa2 mss_io=0x530 irq=5 dma=0 dma2=1 mpu_io=0x330 io=0x370 post-install opl3sa2 modprobe "-k" opl3; modprobe "-k" midi; modprobe "-k" softoss2 ---------------- ATARI Emulator -------------- stonx -color -private stonx -fs D:/dos/e/fu -para /dev/lp1 stonx -disk a:/dev/fd0 Druckerschnittstelle und Sound geht nur wenn man stonx als root startet, gilt natuerlich auch fuer Schribzugriff auf /dos/fu GFA-Basic Listings (*.lst) druckt man am besten so: a2ps -2 -M A4dj --borders no --print-anyway yes etrain.lst vorher ist eventuell ein recode AtariST etrain.lst sinnvoll. wine - der Windows Emulator --------------------------- läuft brauchbar mit wine: Data Becker Routenplaner Europa V.4.05 Tele Info Cityführer '97 kernel-configuration: /usr/src/linux/.config AOL IM: port 5190 crontab: minute stunde Tag(1-31) Monat Wochentag(0-6,0=Sonntag,6=Samstag) # alle 15 minuten, von 9-14 uhr */15 9-14 * * * myscript >>datei 2>&1 cron bei suse: /usr/lib/cron/run-crons /var/cron/lastrun /etc/cron.hourly /etc/cron.daily /etc/cron.weekly /etc/cron.mothly ------------------------------ cut -c 12-18 #die Zeichen 12 bis 18 jeder Zeile cut -f 2 -d ' ' #das 2.Feld, Feldtrenner ist ' '(blank) tr -s '[:blank:]' # sqeeze meherere blanks-> ein blank tr -d ' ' # alle blanks löschen date +"%d.%m. %H:%M" ergibt z.B.folgendes Ausgabeformat: 07.08. 18:20 ps aux | grep "^demo" | tr -s ' ' | cut -f 2 -d ' ' 1 2 3 4 5 6 7 8 9 10 11 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND -------------------------------------------------------- SOUND audiosend audiocompose showaudio metamail IP-Telefon: speakf WWW: http://www.fourmilab.ch/ Speak Freely for Unix can intercommunicate with Speak Freely for Windows scheinbar läuft Speak Freely in Full-Duplex schlecht oder garnicht, ich habe es mit den Treibern ossfree und Alsa probiert, ohne Erfolg. xspeakfree - nettes Frontend, allerdings sieht man die Fehlermeldungen z.B von sfspeaker nicht, sfspeaker meldet: opening audio output device: Das Gerät oder die Ressource ist belegt A common cause of this error is a sound board or driver which cannot run in full duplex mode (some boards which are physically capable of full duplex have drivers which cannot run them in this mode). Try uncommenting the line: DUPLEX = -DHALF_DUPLEX in the Makefile, then "make clean", then "make". This will operate your board in half-duplex mode and avoid the conflict which probably caused the error opening audio output. weiterhin heisst es in den Quellen: # Depending on how your driver handles non-blocking I/O, # you may also have to add -DAUDIO_BLOCKING to the # CCFLAGS line. was ich dann auch tat, was aber nichts half, dann gab es noch den Tip dass OSS zwei getrennte /dev/audio und /dev/audio1 hat oder haben will, das habe ich aber nicht mehr probiert. Als ich die neuen binaries mit rpm -bb installiert habe, wurden mir dabei neue X-Fonts instaliert ?! :-( hätte ich mal lieber "make install" gemacht. sfspeaker ist für die Soundausgabe zuständig, man startet es am besten so: sfspeaker -d -j1000,1000 sfkike sendet das was vom Mic oder aus einer *.au Datei kommt an einen oder mehrere hosts. sfmike -t sfmike -t datei.au sfecho hat be meinen Versuchen zwar Pakete emfangen, aber keine gesendet :-( was jedenfalls gklappt hat, war: kleiner> sfmike -t martin datei.au martin> sfspeaker -d -j1000,1000 --- IP-Telefon: ephone ephoned starten ephone :X-Window-Client ephone-client :console-client Personal Homepage: http://www.wpi.edu/~murti ECE Homepage: http://ece.wpi.edu IP Telefon: cat /dev/audio | rsh dd of=/dev/audio (besser netcat statt rsh, dann braucht man keine .rhost-Rechte) oder vielleicht noch besser: ssh IP Telefon: gphone ...benötigt GSM-Lib, läuft im LAN ganz gut, full duplex IP Telefon: phone http://www.linuxmotors.com/phone/ benötigt einen internet-server zur kontaktaufnahme, danach nicht mehr, die server-Software wird allerdings nicht zum download angeboten :-( IP Telefon: erikyyyphone - nur half duplex - nur push to talk - 6 sec. delay!!! + konferrenzschaltung möglich ? beide parteien müssen jeweils server & client(=frontend) starten: erikyyyphoneserver -a 127.0.0.1 & erikyyyphone -h 127.0.0.1 dann kann man die IP Adesse des Partners eintippen und mit Leertaste zwischen sprechen & hören umschalten. IP Telefon: freewebfone - leider nicht open-source, gute qualität, full-duplex, gibts auch für Windows IP Telefon: ohphone - gute qualität, fast kein delay, full-duplex anrufen: ohphone -ne auf anruf warten: ohphone -lena (Spion ;-) -l --listen : Only listen for incoming calls -e --silence : Disable silence detection for GSM and software G.711 -n --no-gatekeeper : Disable gatekeeper discovery. -a --auto-answer : Automatically answer incoming calls ohphone kann auch audio+videoübertragung: anrufen & Bild senden: ohphone -ne --videotransmit --videoinput 1 auf anruf warten & Bild emfangen: ohphone -lena --videoreceive sdl anrufen & Bild senden & empfangen: ohphone -ne --videotransmit --videoinput 1 --videoreceive x11 --videolocal auf anruf warten & Bild senden & emfangen: ohphone -lena --videotransmit --videoreceive sdl --videolocal das --videoinput 1 sollte man weglassen, wenn man nur eine USB-Cam hat, und keine TV-Karte Die beiden letztgenannten ( freewebfone und ohphone ) haben mir am besten gefallen. icecast: Radiosender im Internet, als client ist z.B. xmms oder Winamp geeignet. TTS Text to Speach - Sprachausgabe von ASCII-Texten --------------------------------------------------- http://www.linux-magazin.de/ausgabe/2000/05/Sprachsynthese/sprachsynthese.html cat | txt2pho -p data/ -f | mbrola de3/de3 - -.au | play - -t au cat |pipefilt | numfilt | txt2pho -p data/ -f | mbrola de3/de3 - -.au | play - -t au echo "m.herweg@web.de" | pipefilt | preproc Rules.lst | txt2pho -p data/ | mbrola de3/de3 - -.au | play - -t au --- MBONE www-nrg.ee-lbl.gov/vic/ www-nrg.ee-lbl.gov/vat/ www-nrg.ee-lbl.gov/wb/ www-mice.cs.ucl.ac.uk/mice/rat/ (iX 1/98) .mid ----- Paket adagio:mp xmp timidity playmidi xplaymidi(X-Window) splaymidi(SVGA) .mod ---- tracker gmod mikmod xpm s3mod mod nspmod yampmod .wav ---- wavplay wavrec xltwavplay mxv DAP record play(Frontend to sox) xplay bplay .mpg .mp2 .mp3 -------------- mpg123 kmpg maplay maplay3 splay sajber jukebox amp 0.7.6, (C) Tomislav Uzelac 1996,1997 xaudio x11amp mp3blaster encoder: bladeenc - wav-File muss 32, 44.1 oder 48kHz sein lame weezer07.wav lame -h -S weezer07.wav & -h high Quality, -S silence # ripit.pl - Rips CD Audio and creates MP3 files # Does the following: # Query CDDB data for Album/Artist/Track info # Rip the Audio wav files from the CD # Encode the MP3 files # id3 tag the MP3 files # Create an M3U file cat x.voc > /dev/dsp cat x.wav > /dev/dsp cat x.au > /dev/audio dd bs=8k count=4 < /dev/audio >file.au cat /dev/sndstat /dev/mixer0 /dev/mixer1 /dev/sequencer /dev/music OSS: www.4front-tech.com/ossfree RealaudioPlayer 4 linux volume soundstudio, sox kmidi OPL-3 Synthesizer kmid spielt Sapmles nach Noten(klingt besser, aber mehr CPU-Last) kmix kann 4 Presets(mixer layouts) speichern, siehe: file:/opt/kde/share/doc/HTML/default/kmix/index-4.html#ss4.1 Ich bin 'drauf gestossen, als ich zufällig mal "1" gedrückt habe, als das kmix-Fenster gerade aktiv war. wenn man kmix mit -r startet, dann braucht man aumix nicht mehr, um die Lautstärke beim booten einzustellen. wer benutzt gerade das device oder die Datei xy , hält es also busy ? fuser -v /dev/dsp oder fuser -mv /dev/hdc oder lsof /dev/dsp siehe auch: /usr/src/linux/Documentation/sound Kernel(2.0.x)-config Einträge für meine MAD16: # # Sound # CONFIG_SOUND=m # CONFIG_PAS is not set # CONFIG_SB is not set CONFIG_ADLIB=y # CONFIG_GUS is not set # CONFIG_MPU401 is not set # CONFIG_UART6850 is not set # CONFIG_PSS is not set # CONFIG_GUS16 is not set # CONFIG_GUSMAX is not set # CONFIG_MSS is not set # CONFIG_SSCAPE is not set # CONFIG_TRIX is not set CONFIG_MAD16=y # CONFIG_CS4232 is not set # CONFIG_MAUI is not set CONFIG_AUDIO=y # CONFIG_MIDI is not set CONFIG_YM3812=y MAD16_BASE=530 MAD16_IRQ=11 MAD16_DMA=0 MAD16_DMA2=1 MAD16_MPU_BASE=0 MAD16_MPU_IRQ=9 DSP_BUFFSIZE=65536 # CONFIG_LOWLEVEL_SOUND is not set -------- conf.modules Einträge für meine MAD16-Soundkarte (ist warscheinlicht nicht 100% korrekt(vieles doppelt), aber es funktioniert so) ... #alias char-major-14 off #alias sound off #alias midi off options mpu401 io=0x0330 irq=9 options opl3 io=0x0388 alias char-major-14 mad16 options sb mad16=1 mpu_io=0x330 options mad16 io=0x530 irq=11 dma=0 dma16=1 mpu_io=0x330 mpu_irq=9 post-install mad16 modprobe "-k" "opl3" ... ---- conf.modules Einträge für Soundblaster AWE32: #alias char-major-14 off #alias sound off alias midi awe_wave post-install awe_wave /bin/sfxload /etc/midi/GU11-ROM.SF2 alias char-major-14 sb post-install sb /sbin/modprobe "-k" "opl3" options sb io=0x220 irq=7 dma=0 dma16=5 mpu_io=0x330 options adlib_card io=0x388 options opl3 io=0x388 ---- Basti's Soundkarte (Logitech Soundman Wave=Media Vision Jazz 16)läuft gut mit OSS für Midi-sounds "wavetable?" wird die (DOS)Datei MIDI0001.BIN / TSUNAMI.BIN benötigt. Jumper: SB IRQ 2,3,>5<,7,10 Midi irq >2< 3 5 7 SB DMA DACK 0 >1< 2 DRQ 0 >1< 2 SBA 0 >1< 2 IO:0x220 /etc/soundconf ??? * Open Sound System installation completed successfully * Device configuration has been saved to /lib/oss/devices.cfg ALSA - Nachfolger von OSS ? http://www.alsa-project.org/alsa ID: SoundCard chipset/type SC: SoundCard name IF: Supported interfaces (MIXER,PCM,SYNTH,SYNTH_MIDI,SEQ,OPL,MIDI,EMUL,HWDEP) MA: Maintainer CO: Coder yakumo on-board "pci-soundchip" ID: Trident 4DWave DX/NX SC: Best Union Miss Melody 4DWave PCI SC: HIS 4DWave PCI SC: Warpspeed ONSpeed 4DWave PCI SC: AzTech PCI 64-Q3D SC: Addonics SV 750 SC: CHIC True Sound 4Dwave SC: Shark Predator4D-PCI SC: Jaton SonicWave 4D SC: Hoontech SoundTrack Digital 4DWave NX IF: MIXER,PCM,MIDI MA: audio@tridentmicro.com Module snd-card-trid4dwave.o Module for Trident 4DWave DX/NX soundcards. snd_dac_frame_size_dx - max dac (playback) frame size in kB (4-64kB) snd_adc_frame_size_dx - max adc (record) frame size in kB (4-64kB) snd_dac_frame_size_nx - max dac (playback) frame size in kB (4-128kB) snd_adc_frame_size_nx - max adc (record) frame size in kB (4-64kB) snd_pcm_channels - max channels (voices) reserved for PCM Module supports up to 8 cards and autoprobe. chaintech on-board "PCI"soundchip, steht jedenfalls so im Handbuch, tatsächlich war auf dem Mainboard ein anderer Chip, der mit Kernel-Treibern des Kernel 2.3.x lief: ID: ESS Solo-1 ES1938 IF: MIXER,PCM --- IBM ViaVoice Testen ob Microfon geht, zB mit krecord cd /etc/profile.d . viavoice.sh cd /usr/lib/ViaVoice/bin/ vvuseradm -newuser -userid mherweg vvuseradm -newenrollid -userid mherweg -enrollid mhid vvuseradm -userid mherweg -enrollid mhid -setdefault audiog xvoice nun kann man in eine beliebige X-Anwendung hinein diktieren, allerdings nur auf english. ------------------------------ Modeminit bei NT: at w0 s95=249 s25=0 s38=0 at s7=60 s30=0L3M1\N3%C3&K3X4 3 Tasten Maus ------------- Section "Pointer" Protocol "mousesystems" Device "/dev/mouse" # ClearDTR # These two lines probably won't be needed, # ClearRTS # try without first and then just the DTR EndSection # 2 Tasten Maus: # Protocol "Microsoft" # Device "/dev/mouse" # BaudRate 1200 # Emulate3Timeout 50 # SampleRate 0 # Emulate3Buttons ------------------------------ alle ausser(non match): grep -v "suchstring" file RegExpr: "" -wegen Space [,],: durch \ vor Soderbedeutung schützen .* Wildcard für beliebig viele beliebige Zeichen grep "pppd\[...\]\: local" /var/log/messages --------------------------- mmv -r "*.htm" "#1.html" mmv -r "*.JPG" "#l1.jpg" <- alles kleinschreiben mmv -r "*" "#l1" <- alles kleinschreiben mmv "image*.jpg" "mh#1.jpg" (-r =rename) trackXY.cdda.mp3 -> trackXY.mp3 mmv "track*.cdda.mp3" track#1.mp3 ------------------------- vgetty : Nachfolger von mgetty :Voice,Fax,Modem-Login agetty: erweitertes getty für Serielles Terminal in /etc/inittab eintragen: mo:23:respawn:agetty -L 9600 /dev/modem dann: "init q" um es zu aktivieren -------------------------- Palm, Handspring Visor mit USB Cradle Erfolg: (Medion/Aldi) Handspring Visor & Suse 7.2 (Kernel 2.4.4) cd /dev ln -s /dev/ttyUSB1 pilot ln -s /dev/ttyUSB1 palm ln -s /dev/ttyUSB1 visor modprobe usbserial modprobe visor # ERST Hotsync-Button drücken , dann piept der PC (usbmgr), dann... pilot-xfer -b backup oder pilot-xfer -i neues-programm.prc oder jpilot oder coldsync pilot-xfer -p /dev/ttyUSB1 -i Plucker.prc pilot-xfer -p /dev/ttyUSB1 -i dahb.pdb siehe auch: http://www.linuxlookup.com/html/guides/visor-jpilot.html#2.3 LinuxUser Heft 2/2001 Bisher keinen Erfolg: dasselbe Gerät mit Suse 7.3 (Kernel 2.4.10), weil bei Suse 7.3 der usbmgr durch "hotplug" ersetzt wurde. Das "visor" Kernelmodul kann sogar einen Total-Absturz verursachen!!! bei Suse 8.0 sieht's schon wieder besser aus: pilot-xfer funktioniert wieder wie gewohnt. Ausserdem ist mir aufgefallen, dass das Gerät bei einem DELL PC mit 2 USB Controllern mit je 2 USB Buchsen, am ersten USB Controller besser erkannt wird als am zweiten: USB Bus1: Mar 2 08:30:55 linux kernel: hub.c: USB new device connect on bus1/1, assigned device number 9 Mar 2 08:30:55 linux kernel: usbserial.c: Handspring Visor converter detected Mar 2 08:30:55 linux kernel: visor.c: Handspring Visor: Number of ports: 2 Mar 2 08:30:55 linux kernel: visor.c: Handspring Visor: port 1, is for Generic use and is bound to ttyUSB0 Mar 2 08:30:55 linux kernel: visor.c: Handspring Visor: port 2, is for HotSync use and is bound to ttyUSB1 Mar 2 08:30:55 linux kernel: usbserial.c: Handspring Visor converter now attached to ttyUSB0 (or usb/tts/0 for devfs) Mar 2 08:30:55 linux kernel: usbserial.c: Handspring Visor converter now attached to ttyUSB1 (or usb/tts/1 for devfs) Mar 2 08:31:12 linux kernel: usb.c: USB disconnect on device 9 Mar 2 08:31:12 linux kernel: usbserial.c: Handspring Visor converter now disconnected from ttyUSB0 Mar 2 08:31:12 linux kernel: usbserial.c: Handspring Visor converter now disconnected from ttyUSB1 USB Bus2: Mar 1 14:59:25 linux kernel: hub.c: USB new device connect on bus2/2, assigned device number 2 Mar 1 14:59:28 linux kernel: usb_control/bulk_msg: timeout Mar 1 14:59:28 linux kernel: usb.c: USB device not accepting new address=2 (error=-110) Mar 1 14:59:29 linux kernel: hub.c: USB new device connect on bus2/2, assigned device number 3 Mar 1 14:59:32 linux kernel: usb_control/bulk_msg: timeout Mar 1 14:59:32 linux kernel: usb.c: USB device not accepting new address=3 (error=-110) Mar 1 15:00:50 linux kernel: hub.c: USB new device connect on bus2/2, assigned device number 4 Mar 1 15:00:53 linux kernel: usb_control/bulk_msg: timeout Mar 1 15:00:53 linux kernel: usb.c: USB device not accepting new address=4 (error=-110) Mar 1 15:00:53 linux kernel: hub.c: USB new device connect on bus2/2, assigned device number 5 Mar 1 15:00:56 linux kernel: usb_control/bulk_msg: timeout Mar 1 15:00:56 linux kernel: usb.c: USB device not accepting new address=5 (error=-110) Mar 1 15:01:43 linux kernel: usb.c: USB disconnect on device 1 Mar 1 15:01:43 linux kernel: usb.c: USB bus 1 deregistered Mar 1 15:01:43 linux kernel: usb.c: USB disconnect on device 1 Mar 1 15:01:43 linux kernel: usb.c: USB bus 2 deregistered PPP Verbindung zwischen Handspring Visor(Palm) und Linux via IrDA irattach /dev/ttyS1 -s vi /etc/ppp/options-palm ----------------------------------------- /dev/ircomm0 115200 10.0.0.1:10.0.0.2 auth local lock # ms-dns 194.246.96.79 persist ----------------------------------------- vi /etc/ppp/chap-secrets ----------------------------------------- username * geheim * ----------------------------------------- irattach /dev/ttyS1 -s pppd file /etc/ppp/options-palm Auf dem Palm/Handspring: Einstellungen->Netzwerk-> Dienst: Windows RAS Benuter: username Kennwort: geheim Verbindung: IR an PC/Handheld -> Verbinden nun kann man den palm pingen und z.B. PalmVNC oder den Browser Eudora nutzen. Quelle: freeX 2/2003 -------------------------- efax ==== Senden: fax s NUMMER DATEI.[txt|ps] Empfang: fax r [DATEI] Anschauen: fax v DATEINAME Drucken: fax p DATEINAME ankommende Faxe annehmen: fax a [DATEI] /etc/fax.config gefax - Frontend zu efax ===== ich musste diverse Verzeichnisse erzeugen: ~/Fax/Bin ~/Fax/Inbox /tmp/gefax einmalig das Adressbuch speichern, z.B. nach ~/Fax/adressbuch einen Link zu den pixmaps machen, ~/gefax -> /usr/share/pixmaps/gefax/ - danach läuft's gut. sendfax ======= How to create a fax file that sendfax/mgetty can accept and send: gs -sDEVICE=faxg3 -sOutputFile=/tmp/fax.g3.%d yourdocument.ps Assuming that your ps document yourdocumnet.ps contains three pages, this will result in the creation of fax.g3.1 fax.g3.2 fax.g3.3 su sendfax -l /dev/ttyS0 Fax-Nr Datei.g3.1 ... Hylafax ======= Hylafax - der Server faxsetup durchführen- siehe Suse-Handbuch Susefax - ein Client, benoetigt Java (JDK oder RuntimeUmgebung) hfaxd NICHT ueber inetd starten(Probleme mit Rechten), sondern Standalone. also nicht in inetd.conf eintragen. RingsBeforeAnswer 0 ->nicht abheben, manuell abheben mit faxanswer Wenn alles ok aussieht , faxe aber nicht gesendet werden: faxmodem /dev/modem start von faxgetty in /etc/inittab: ---------------------------------- # fax getty (hylafax) mo:23:respawn:/usr/lib/fax/faxgetty /dev/modem inittab neu einlesen: init q /etc/rc.config -------------- START_HYLAFAX=yes folgende Prozesse mussen laufen: uucp 2873 0.0 1.1 1936 344 ? S 20:56 0:00 /usr/sbin/faxq uucp 2875 0.0 0.3 1940 116 ? S 20:56 0:00 /usr/lib/fax/hfaxd -i uucp 3974 0.7 3.3 2016 1040 p3 S 00:59 0:00 /usr/lib/fax/faxgetty Grafikdatei zum faxen: 200x200 dpi 1728x2300 pixel efax ==== auf eingehendes Fax warten: fax answer FILENAME Fax senden: fax send 0800567111 Datei.[txt|ps] GUI: gefax Quelle: freeX 3/2001 --------------------- GAMES acm Flugsimulator xgal (Galaga) battalion (3D(Mesa)Monster Rampage,netzwerk-fähig) battleball (3D(Mesa)Fussball mit Panzern , netzwerk-fähig) mirrormagic Maelstrom (Laserman's Highscore: 157080 Wave 12) Up to three players can play, and the syntax is as follows: (On machine 1) Maelstrom -player 1 -player 2@machine2 -player 3@machine3 (On machine 2) Maelstrom -player 1@machine1 -player 2 -player 3@machine3 (On machine 3) Maelstrom -player 1@machine1 -player 2@machine2 -player 3 libSDL-1.0.so.0 wird von Maelstrom-3.0.1-1 gebraucht Quake,Doom xpilot -name foo (2D, gravity space shooter , netzwerk-fähig) xpilots -robots 0 xpilot-server sasteroids (SVGA) abalone,reversi,solitaire,minesweper,tetris,Tamagotchi mahjongg Konquest xtron 1-2 Spieler, Tastatur:Player1:cursorkeys Player2:ASDW pacman nicht gut xthrust 8bpp only xblast @ @ .... +bw (Dynablaster-like) antipoli ? craft (Civilisation,auch Multiplayer) crossfire xfrisk, friskserver (8bit colors) imaze, imazesrv mimaze (Multicast imaze) net3d, net3dserv netmaze -s localhost , netserv (Midimaze Clone) xboing -speed 1 -sound -sync (Breakout-Game) xbill lincity(SVGA), xlincity /usr/games/SpaceBoom/SpaceBoom (SVGA 2D scroll Ballerspiel) terroid (8bit X-Win 2D scroll Ballerspiel) xpipeman rocksndiamonds (Boulderdash, X, good Stereo-Sound) koules loser gnibbles xnibbles gtali(Kniffel) iagno flfs flight gear flight simulator SABRE flight simulator speedx (3D aber nicht OpenGL) xralley (2D aufsicht) wormux (needs SDL, GLX) OpenGL 3D-Spiele ---------------- flfs flight gear flight simulator xracer sound tuxracer Eis, Schnee, Felsen,Bäume car world Looping gracer verschiedene Tracks, Wetter, autos bzFlag Search & Rescue GLTron mhockey screenfun ========== oneko (katze fängt Mauscursor) xroach (Ungezifer) xsnow xearth xphoon -t 1 (Mond als Hintergrund) xmountains -b xteddy xpinguin xcruise - Filesystem wirt zum Planetensysten roottail - Tail im RootWindow(Desktop-Hintergrund) unclutter - blendet mousecursor aus, solange man die Maus nicht bewegt. modprobe joystick modprobe joy-analog jscalibrator ---------------- videotext - problem mit kwm , beser fvwm nehmen Treiber starten: insmod vtx vtxget 200.0-280 > Datei.txt =alle Seiten und SubSeiten in dem Bereich vtxget hat viele Outputformate: -f Ansi-Farbig,gif,postscript... vtxget -f gifint > datei.gif -kann man in einen cron job packen, dann die Seiten zB mit netscape ansehen. ------------------------------- X -bs =disable backing Store deadly ping: von w95 oder NT aus: ping -l 65508 desthost mirabillis-Java-ICQ-client needs env-variables JAVA_HOME und ICQ_HOME my ICQ Nr 13653368 besser licq , gtkicq, evverybuddy o.ä. nehmen xanim: spielt audio&video einzelne codecs als .xa Files(DLLs) im Verzeichnis /usr/local/xanim/mods http://smurfland.cit.buffalo.edu/xanim aktion: KDE Oberfläche zu xanim Vorteil: man kann interaktiv das Bild vergrössern, auch Vollbild ist möglich vorsicht: aktion versucht bei Defaulteinstellung den gesamten Film ins RAM zu laden und zu dekompressen, bevor es ihn abspielt. Videoschnitt mit Broadcast2000 /usr/local/bcast2000/ LinuxMagazin 6/2000 Plattenplatzfresser finden: kfind nach grossen Dateien suchen lassen. oder nach Grösse sortiertes du: du -s * | sort -n oder: du soll nur Verzeichnisse >1MB anzeigen: du -sh * 2>/dev/null | grep [GM] schreibt eine liste aller Verzeichnisse mit ihrer Grösse: find / -type d -exec du -sh {} \; > /tmp/dirsizes.lst Verzeichnisse >1MB anzeigen: grep [GM] /tmp/dirsizes.lst | less oder: ls -lR | sort +4nr | less oder ls -lR | sort +4nr >/tmp/filesizes.lst zeigt Dateien und ihre Grösse, nach Grösse sortiert allerdings nicht ihren Pfad /dev/hda: 13GB WesternDigital (LBA) hda1 1GB FAT hda2 16MB /boot hda3 256MB swap hda5 4,6GB / hda6 4GB /HDA6 hda7 3,2GB /HDA7 Festplatte /dev/hda: 255 Köpfe, 63 Sektoren, 1653 Zylinder Einheiten: Zylinder mit 16065 * 512 Bytes Gerät boot. Anfang Ende Blöcke Id Dateisystemtyp /dev/hda1 * 1 131 1052226 6 FAT16 /dev/hda2 132 133 16065 83 Linux /dev/hda3 134 166 265072+ 82 Linux Swap /dev/hda4 167 1653 11944327+ 5 Erweiterte /dev/hda5 167 740 4610623+ 83 Linux /dev/hda6 741 1250 4096543+ 83 Linux /dev/hda7 1251 1653 3237066 83 Linux --- cityweb dialin: 02364 92730 my dynamic IP z.B. 195.71.72.101-138 ppp-host: 204.151.209.125 ppp-host: 204.151.209.126 --- Wie kann ich eine dynamische ip auf eine html site bekommen sodaß ich die dann via web abrufen kann, die site und remote drauf zugreifen kann. Damit weiss ich ja die ip. :) Zum Beispiel: in die ip-up aufnehmen: echo $4 >/tmp/ipnr cat /pfad/index1.html /tmp/ipnr /pfad/index2.html>/tmp/index.html su (lokaler-user -c 'ftp -d -v webrechner.com >/tmp/ftplog' die .netrc des lokalen-users sieht dann so aus: machine webrechner.com login username password geheim macdef init cd webverzeichnis lcd /tmp put index.html close quit Index1.html:

TRALLALATEXT
In index1.html darauf achten daß nach http:// kein Zeichen mehr kommt! Wenn du ISDN hast gibt es auch noch die nette Möglichkeit die Einwahl durch einen Anruf von einem bestimmten Telefon/Handy auf eine bestimmte deiner Nummern zu starten: in isdn.conf einfügen: [FLAG] FLAGS = I|R PROGRAM = /pfad/remotedial \$2 \$3 die Datei remotedial: #!/bin/sh FROM=$1 TO=$2 if [ "$FROM" != "+49172xxxxxxx" ] then exit fi if [ "$TO" != "+4957xxxxxxx" ] then exit fi /usr/sbin/isdnctrl huptimeout ippp3 30 /usr/sbin/isdnctrl dial ippp3 echo date>>/tmp/rdial echo $FROM $TO>>/tmp/rdial --- Laserman's "anwahl" skript: #--------------------------------------- # MH 6/99 # 2/2000 aim , icq , dialog hinzugefügt # dem wwwoffled sagen, dass ich online bin wwwoffle -online # wwwoffle soll 2 dummy-seiten ansurfen, damit ich nicht # mit der erzwungenen startseite des providers belästigt werde. wwwoffle http://www.nix.de wwwoffle http://www.abseilen.de # nun soll wwwoffle Seiten holen die ich haben will wwwoffle -fetch #gaim=AOL Instant Messenger, licq=ICQ # nervt aber wenn die jedesmal starten # deshalb nun auskommentiert # gaim & # licq & # 2 Internet NTP server nach Uhrzeit & Datum fragen # und dann die Rechner-uhr stellen # dazu bracht man root-rechte, das mache ich mit su1 # in meiner /etc/su1.priv steht: # allow mherweg prefix hwclock /usr/sbin/ntpdate -v ben.cs.wisc.edu wave.mbari.org su1 hwclock --systohc date su1 hwclock # experimetelle Spielereien, auskommentiert: #STUNDE=`date +%H` #echo $STUNDE #if [ $STUNDE -gt 17 ] #then #fi # dialog --msgbox "$STUNDE" 5 30 # EOF -------------------------------- --- su kdesu sux - --- netstat -a 1 | grep tcp tcpdump -i ppp0 #alles zeigen, ausser WWW,WWW-Proxy,DNS-Anfragen und IRC tcpdump -i ppp0 not port 80 and not port 8080 and not port 53 and not port 6667 netstat -atu -atun -ltu -tun lsof - list open files z.B. lsof -i TCP:80 lsof -i TCP lsof -i UDP lsof /dev/cdrom lsof /dev/dsp --- ntop -w 3000 -i eth0 http://rechner-wo-ntop-läuft:3000 root@martin:~ > cat .ntop # # File format # # user pw # # root root --- NFS,rpc,portmap =============== rpcinfo -p hostname showmount -a host showmount -e host mount moonshot:/home /home -o rsize=4096,wsize=4096 Nachfolgend ein Teil der Optionen, die Sie möglicherweise verwenden möchten: rsize=n und wsize=n Bestimmt die bei Schreib- bzw. Leseanforderungen von NFS-Clients verwendete Datagramm-Größe. timeo=n Bestimmt die Zeit (in Zehntelsekunden), die ein NFS-Client auf den Abschluß einer Anforderung wartet. Der voreingestellte Wert ist 7 (0,7 Sekunden). hard Markiere dieses Volume explizit als »hart« gemountet. Per Voreinstellung aktiviert. soft »Weiches« Mounten des Verzeichnisses (im Gegensatz zu hartem Mounten). intr Unterbrechung von NFS-Aufrufen über Signale möglich. Nützlich, wenn ein Server nicht antwortet und der Client abgebrochen werden muß. Per Voreinstellung gibt ein Client bei einem schwerwiegenden Timeout eine Fehlermeldung auf der Console aus und versucht es erneut. Dabei wird das ursprüngliche Timeout-Intervall verdoppelt. Theoretisch könnte dies immer so weitergehen. Volumes, die eine Operation störrisch wiederholen, bis der Server wieder verfügbar ist, werden als fest gemountet (hard-mounted) bezeichnet. Die andere Variante wird als weich gemountet (soft-mounted) bezeichnet und generiert einen I/O-Fehler für den rufenden Prozeß, wenn ein schwerwiegender Fehler auftritt. Quelle: Online-Buch "Linux: Wegweiser durch das Netzwerk" --- smail MTA : siehe Linux: Wegweiser durch das Netzwerk (NAG) Kapitel 14 Netzwerkkarte, die in Kleiner steckte: intel etherexpress io=0x300 irq=10 Treibermodul heisst eexpress --- Enforcing 100BaseTX/Full-duplex (on NetBSD) # ifconfig fxp0 media 100BaseTX mediaopt Full-duplex # ifconfig -a fxp0: flags=[...] media: Ethernet 100baseTX full-duplex Using autonegotiation (default) # ifconfig fxp0 media auto # ifconfig -a fxp0: flags=[...] media: Ethernet autoselect (100baseTX) To perform the filling of unused data blocks with zero-bytes, there are several ways, depending on what operating system you use on your computer, and what software you have available: Standard Unix: This works on any Unix variant - Linux, NetBSD, Solaris, etc.: dd if=/dev/zero of=/0bits bs=20971520 # bs=20m rm /0bits Quelle: http://rfhs8012.fh-regensburg.de/~feyrer/g4u/#hints --- Rechner Martin (ASUS P3B): Interrupts IRQ I/O-Adr. 3 ser2/Sony-CDROM 0x340 4 ser1 5 PCI-SCSI 7 printer 9 Sound,USB,eth0 10 TV 11 VGA 12 PS/2 14,15 IDE PCI Slots: 1=AGP 2 3=6 4=5 --- IRQ(Interrupts) und DMA-Kanäle, ganz allegemein, also OS-neutral betrachtet: IRQ frei Belegung 0 timer 1 Keyboard 2 . cascade, manchmal verwendbar 3 . Serial2 4 Serial1 5 + z.B. TV-Karte 6 Diskette 7 + z.B. Sound oder Drucker* 8 RTC(Hardware-Uhr) 9 . manchmal verwendbar, z.B. VGA-Karte 10 + z.B. Netzwerkkarte 11 + z.B. SCSI-Controller 12 . PS2-Maus, falls vorhanden 13 FPU(Fleisskomma-Prozessor) 14 IDE 15 IDE *Drucker brauchen nicht unbedingt einen IRQ DMA bit 0 8 z.B. SoundBlaster8 1 8 2 8 Floppy 3 8 4 8 cascade 5 16 z.B. SoundBlaster16 6 16 7 16 ------------------------------- ixsoft.de linuxland.de VHS Gelsenkirchen(vhs-ge.gelsen-net.de): UNIX Grundlagen: Dr Ulf Grantz Einführung Linux: Gunther Bartelt ------------------------------------ majordomo lug-marl mailingliste 1.) Mail an majordomo@kappa.de Betreff(subject): egal Inhalt(body): subscribe lug-marl 2.) man bekommt eine Antwort-mail von majordomo mit einen auth.-code , den man wieder zurücksenden muss: 3.) Mail(reply) an majordomo@kappa.de Betreff(subject): egal Inhalt(body): auth subscribe lug-marl Beispiel: auth e616dad6 subscribe lug-marl mherweg@pcc.de 4.) eine mail an lug-marl@kappa.de geht jetzt an alle, die sich in diese Mailingliste eingetragen haben Alternative zu majordomo: ezmlm - bequem & komplett in Deutsch ---------------------------- NETWORKING & SECURITY ---------------------------- find / -uid 0 -perm +4000 linux kmod/ptrace bug --------------------- workaround: nachladen von Kernelmodulen unmöglich machen: echo /bin/false >/proc/sys/kernel/modprobe Normalzustand: martin:~ # cat /proc/sys/kernel/modprobe /sbin/modprobe Quelle: http://www.securityfocus.com/archive/1/315635 ssh --- mit ssh-keygen die Datei /etc/ssh_host_key erzeugen. KEINE Passphrase eingeben. in einem init-startscript sshd (ssh-Server) starten ssh Port: 22 Windows-Client: fsecure SSH (Pay-Ware) TerraTerm + SSH Extension (share- oder freeware glaub' ich) putty einen port tunneln: ssh -L port1:host1:port2 host1 telnet abhören: sniffit -A . -p 23 -t -A . : nicht ASCI-Zeichen durch Punkt ersetzen -p 23: port 23 (telnet) -t Target host tcpdump -s 1000 -w dumpfile.txt host and host and port Telnet für MS-Windows: dtelnet X-Server für MS-Windows und MacOS: MIX in config Datei: UseLocalWindowManager modernes Grafik-Format für's Internet: png netcat -v -r -w 3 hostname AnfPort-EndPort -v verbose: mindestens 1 sonst sieht man nix -w 3 wartezeit -r randomize source und dest-Port(dest-port within Range) -p set local port-nr -s set my source IP use "spy" with netcat: echo "/proc/net/dev" | netcat 192.168.1.33 5999 sicherer Ersatz für ftp: (m)put: scp : (m)get: scp : X-Window-Protocol: Display 0 on port 6000 Display 1 on Port 6001 u.s.w. wenn man xdm oder kdm benutzt aber nicht Display 0 sondern lieber 1 haben will: /usr/X11R6/lib/X11/xdm/Xservers oder /etc/X11/xdm/Xservers -------------- # # :1 local /usr/X11R6/bin/X :1 vt07 # # --------------- netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:6001 *:* LISTEN udp 0 0 *:xdmcp *:* --------------------- ic-marl.de ---------- 194.231.62.3 ns.ic-marl.de t-online -------- DNS: 194.25.2.129 proxy: www-proxy.btx.dtag.de pop3: pop.btx.dtag.de Homepage bei t-online: nur über t-online Internetzugang ftp home-up.t-online.de (194.25.2.226) xcept 3.0 zuerst ppp-verbindung aufbauen: ppp-up t-online server: 192.168.0.1 port: 516 mobilcom/freenet -------- Tel. 01019 01929 username: t passw.: DNS: 62.104.196.134 pop3: pop3.01019freenet.de SMTP: mx.01019freenet.de Netmask: 255.255.0.0 e-mail-Postfach auf einer Webseite extra beantragen. freemail.web.de --------------- pop3: pop3.web.de SMTP: smtp.web.de loginname von foo@web.de : foo ------------------------------------------------ found on DLD-Distri: batchftp radio (audio over IP) "GSM" toast,untoast,tcat sampling->.au-files lde Disk(Sektor) editor macutils mftp Motif ftp xdu graphisches du xephem Sternenhimmel-simulator xpcd Photo-CDs lesen xmris,luxman,pacman Pacman-Clones acm Flugsimulator xblast Netzwerk-Spiel xfrisk Netzwerk-Risiko-Spiel xtron Tron-Game, auch zu zweit spielbar Motif 2.0 von Xinside -------------------------------------- Rechner "overdrive" RAM war locker Netzwerkkarte: intel eepro 10 (modul eepro io=0x300 default IRQ=5 - Konflikt mit Soundcard - jetzt irq=10 io=0x300 setup-diskette "softset2" ausm internet - ok Fesplatte Quantum ProDrive LPS 270MB C=262 H=32 S=63 80MB(Xterminal)Platte zum booten ok 2GB Quantum als primary slave ok 2GB Quantum: hdb1:w95-Reste 1GB hdb2:swap hdb3:ext2 1GB --------------------------------------- Rechner dx66 intel 486DX2-66 (AMD P75-133 möglich) VLB Mainboard 8MB RAM (8*1MB 31pin) Festplatte:WD Caviar 31200, 1200 MB 2484 16 63 (leider laut) VLB IDE-Controller(1 IDE Bus -> max 2 Geräte) Grafik: Cirrus Logic CL-GD5426 1MB(VLB) 800*600@16bpp , virtual 1024 768 bei 8bpp Netzwerk: intel etherexpress 16 --------------------------------------- Xnest -xkbmap /usr/X11R6/share/rdesktop/keymaps/de -query 192.168.0.254 :1 fping -g 192.168.0.0/20 2>/dev/null > rechnerliste alten Rechner als X-Terminal benutzen: Festplatte kann als swap benutzt werden, 12 MB RAM sollte ein Xterminal haben. auf dem HostRechner muss kdm oder xdm laufen. auf der X-Terminal-Station ausführen: X -quiet -query HostRechner oder X -quiet -query HostRechner -bpp 16 zwischen verschiedenen Hosts wählen: X -indirect HostRechner ....oder das ganze für den User NOCH bequemer machen: 1.) ein Startscript /sbin/init.d/xquery schreiben: #!/bin/sh /usr/X11R6/bin/X -query 2.) falls die Runlevels 2 und 3 weiter wie üblich benutzt werden sollen: einen eigenen Runlevel anlegen, indem man alle Symlinks aus rc2.d nach rc4.d kopiert und einen Symlink hizufügt: cd /sbin/init.d/rc4.d ln -s ../xquery S30xquery 3.) den oben genannten Runlevel in /etc/inittab aktivieren: ... l0:0:wait:/sbin/init.d/rc 0 l1:1:wait:/sbin/init.d/rc 1 l2:2:wait:/sbin/init.d/rc 2 l3:3:wait:/sbin/init.d/rc 3 l4:4:wait:/sbin/init.d/rc 4 ... # getty-programs for the normal runlevels # ::: # The "id" field MUST be the same as the last # characters of the device (after "tty"). 1:1234:respawn:/sbin/mingetty --noclear tty1 2:1234:respawn:/sbin/mingetty tty2 3:1234:respawn:/sbin/mingetty tty3 4:1234:respawn:/sbin/mingetty tty4 5:1234:respawn:/sbin/mingetty tty5 6:1234:respawn:/sbin/mingetty tty6 4.) für diesen X-Terminal-Modus einen lilo-menupunkt hinzufügen: /etc/lilo.conf -------------- # LILO Konfigurations-Datei # Start LILO global Section boot=/dev/hda # eine Meldung die die verschiedenen Bootmöglichkeiten # anzeigt & erläutert message = /etc/lilomessage.txt # kleine schrift, man kann hier auch zahlen angeben(VGA-VESA-Modes) vga=ext weitere VESA-Modi: 800x600 1024x768 16bpp 788(0x314) 791(0x317) # zusätzliche bootparameter nur mit passwort erlauben restricted password=hallo # End LILO global Section # # normal linux booten, default runlevel image = /boot/vmlinuz root = /dev/hda3 label = suse6.1 # ein aliasnamen für tippfaule alias = 1 # # linux in den runlevel 4 starten: X -query steht im letzten Startscript image = /boot/vmlinuz root = /dev/hda3 label = xq alias = 2 append = " 4" # # # other = /dev/hda1 label = dos alias = 3 table = /dev/hda # #------------------------- /etc/lilomessage.txt -------------------- ================================== Du hast die Wahl... [1] Diesen Rechner als lokalen Linux-Host benutzen [2] Diesen Rechner als X-Terminal benutzen um remote auf dem Linux Application Server zu arbeiten [3] DOS starten ================================= ... so ich glaube das war´s - bleibt jetzt nur noch die Frage wie viele X-Terminals,KDE-Desktops,applixwares verkraftet ein Application-Server und das Netzwerk ??? - Das hängt sehr von der Performance des Servers ab. ein 133er verkraftete nur ca. 5 Clients , dann wurd's zu langsam. besonders stark wurden die anderen Clients gebremst, wenn einer gerade etwas grosses neu startet(zB Netscape,KDE,Applix) -> zu wenig Server-RAM Nachträge: Booten: wenn man so bootet, hat man X-Window auf Console 2 und keine lokale Tekxtconsole mehr ;-( so war das nicht gedacht. wenn man normal startet und dann init 4 macht hat man das problem nicht. Applixware: Wenn man Applixware startet, dann will es weitere fonts aus dem nicht vorhandenen lokalen /opt/applix Verzeichnis in den X-Server laden. schnelle Lösung: /opt/applix per nfs vom Application Server mounten. schöne Lösung: auf dem Application Server einen FontServer laufen lassen. aus startkde(auf dem ApplicationServer) sollte man maudio und kaudioserver auskommentieren. keine bunten Screensaver verwenden (Netzlast!) pro user entstehen ca. 10-20 TCP Verbindungen aber kaum Netzlast ----------------------------------------------------------------------- pgp encrypt: pgp -sea add a key: pgp -ka Extract key: pgp -kxa besser gpg verwenden --- CFS = Crypto File System cmkdir cattach cdetach StegFS CryptFS ------------------------------------- Samba SMB ========= sambafaq-2.html#ss2.2: Samba does not implement the primary domain name controller stuff for several reasons, 3.8 I've applied NT 4.0 SP3, and now I can't access Samba shares, Why? As of SP3, Microsoft has decided that they will no longer default to passing clear text passwords over the network. To enable access to Samba shares from NT 4.0 SP3, you must do ONE of two things: 1.Set the Samba configuration option 'security = user' and implement all of the stuff detailed in =============== ENCRYPTION.txt. 2.Follow Microsoft's directions for setting your NT box to allow plain text passwords. see Knowledge Base Article Q166730 4.1 MS Office Setup reports "Cannot change properties of '\MSOFFICE\SETUP.INI'" When installing MS Office on a Samba drive for which you have admin user permissions, ie. admin users = username, you will find the setup program unable to complete the installation. To get around this problem, do the installation without admin user permissions The problem is that MS Office Setup checks that a file is rdonly by trying to open it for writing. Admin users can always open a file for writing, as they run as root. You just have to install as a non-admin user and then use "chown -R" to fix the owner. HBBK read this: file:/usr/doc/packages/samba/textdocs/DOMAIN_CONTROL.txt file:/usr/doc/packages/samba/textdocs/DOMAIN.txt LinuxTag99-CD:samba-Vortrag: Samba kann seit Version 2 auch Chef (PDC) einer Domäne werden. Um die Domänenfunktion zu aktivieren muss nur der Parameter domain logons = yes in die smb.conf eingetragen werden. Um eine NT-Workstation anzumelden, muss ein Maschinenkonto erstellt werden. Bevor dies geschehen kann, muss ein Unix-Benutzer mit der Bezeichnung Rechnername gefolgt von einem Dollarzeichen angelegt werden. Anschließend wird mit smbpasswd -a -mRechnername$ das Samba-Maschinenkonto angelegt. Drucker des Windows-Rechner benutzen smbclient \\\\Rechnername\\sharename [password] -U Rechnername -N -P #eigentlich \\Rechnername\sharename aber jedes \ wird vor der bash geschützt smb:\>print smb:\>exit Drucker eines Windows-Rechners benutzen: Beispiel Suse 8.1, yast2 *auf dem Windows-Rechner einen Benutzer mit passwort anlegen, der Drucken darf. *IP & Name des Windows-Rechners beim Linux-Rechner in /etc/hosts eintragen *yast2: Drucker über SMB, RechnerNAME! , nicht die IP eingeben entferte Warteschlange = Freigabename des Druckers Benutzer & Passwort - beides ist erforderlich! Entfernten SMB Zugang testen (getestet mit w2000 am 19.11.2002 von m.herweg) Backup einer Windows-Platte in ein tar-file oder auf band smbclient \\\\Rechnername\\sharename [password] smb:\>tar c /dev/st0 smb:\>exit smbclient als ftp-Ersatz smbclient //192.168.1.2/homes -U user mounten, (Server z.B. NT4.0,SP6): smbmount //Rechnername/Freigabe /mnt -o username=meinuser,password=luser smbmount //Rechner1/Verzeichnis /Linuxrechner1/verzeichnis -o \ uid=500,gid=100,fmask=770,dmask=770,rw,username=meinuser,password=luser (entspricht umask 002) smbmount //server/share /mountpoint -W Workgroup -U Winuser statt smbmount geht auch mount: mount -t smbfs -o username=yyyy,password=xxxx //RECHNER/Freigabe /mnt/mountpoint so auch: in /etc/fstab: --------------- //RECHNER/Freigabe /mnt/mountpoint smbfs noauto,uid=500,gid=100,fmask=664,dmask=775,username=yyyy,password=xxxx 0 0 --------------- (eine lange Zeile) mount /mnt/mountpoint ------ /etc/printcap /var/spool/lpd/smb/.config /usr/local/samba/smbprint lokal rastern, remote drucken: /etc/printcap /var/spool/lp1/lpd2printfile /var/spool/lp1/okips /var/spool/lp1/epsonps /var/spool/lp1/hpps /var/spool/lp1/images/oki/ /var/spool/lp1/images/epson/ /var/spool/lp1/images/hp/ Samba kann man wunderbar auf das lokale Netz beschränken: bind interfaces only interfaces = eth0 192.168.0.0/24 sagt Samba, es möchte nur auf das eigene lokale Netz horchen. Auf seinem Router alles Blocken was mit Samba zu tun hat. Also Ports 137-139, und seit W2k auch Port 445. Und wo wir grad dabei sind auch Ports 389 und 3268 weil das das Active Directory bei w2k ist. ---------------------------------------------- Error: Cannot execv /tmp/bla Mögliche Ursache: in der Ersten Ziel des skript "/tmp/bla" fehlt der Eintrag: #!/bin/bash Alle Prozesse killen die ein device busy halten: fuser -km /dev/cdrom Mac-fs ? paket hfsutils batchftp Partition mit dd kopieren bs=87040 (85*1024) -> 2,6s/1MB Ausgabe-Umlenkung ----------------- statt find / -name *.mp3 > /tmp/ergebnis.lst 2>&1 geht auch(kürzer) find / -name *.mp3 >& /tmp/ergebnis.lst 3D Grafik & Animation mit Blender ( http://www.neogeo.nl ) --------------------------------- Damit die Alt-Taste richtig funktioniert: die lokale(z.B. /home/martin/.Xmodmap) $HOME/.Xmodmap Datei ändern alt: keycode 64 = Meta_L keycode 0x6D = Multi_key neu: ! Alt-Taste für Blender keycode 64 = Alt_L keycode 0x6D = Multi_key ! ab hier: andere sinvolle Einträge, die nix ! mit blender zu tun haben ! ! für StarOffice/StarCalc: keycode 0x5B = comma ! damit der Nummernblock sofort als solcher nutzbar ist: ! (dann braucht man die NumLock Taste nicht) ! wenn man KDE >= 2.2 verwendet , ist dieser Trick nicht mehr nötig keycode 79 = KP_7 keycode 80 = KP_8 keycode 81 = KP_9 keycode 83 = KP_4 keycode 84 = KP_5 keycode 85 = KP_6 keycode 87 = KP_1 keycode 88 = KP_2 keycode 89 = KP_3 keycode 90 = KP_0 ! vorsicht: 91=0x5b, das beisst sich also mit dem "comma" ! für StarOffice keycode 91 = KP_Separator Dann X-Window neustarten oder xmodmap ~/.Xmodmap eingeben. Bewegung eines Objekts(Gegenstand,Lampe,Camera...)entlang einer Kurve: * curve-path erzuegen & nach Geschmack gestalten * Objekt & Kurve selecten, Parent machen (control-p) , reihenfolge ist mir hier noch nicht ganz klar Das "Manual" findet man bei einem Suse Rechner hier: /usr/doc/packages/blender/manual_1.02/manual00.html Die Beispiele sind unter /usr/X11/lib/blender Animationen werden als Einzelbilder oder als AVIs gespeichert. Wichtig: ordentliche Dateipfade einstellen, wo man auch schriben darf, z.B. /tmp/mh Formate: Targa, hamX lassen sich in Blender mit Play abspielen speed einstellen ? Jpeg: Play in Blender geht dann nicht, aber mit foldendem script mache ich ein gif-ani draus: # die Bilder heissen z.B. mh0001 bis mh0078 PICS="`ls mh0*`" # alle jpeg in gif wandeln for i in $PICS ; do echo $i $i.gif djpeg -gif -outfile $i.gif $i done gifsicle -O2 -l --colors 256 mh*gif > ani_mh.gif # EOF Eine Farbe in einer kompletten gif-animation ändern: gifsicle --change-color 0,49,115 0,58,123 intro.gif > neu_intro.gif --- VRML 1.0 - viewer: vrweb-1.5-mesa-LinuxELF2.0.27 VRML 2.0 / VRML 97 ------------------ 1.) libVRML97/lookat (der beste Viewer, den ich bisher kenne) -------------------- w wireframe t texture l light numpad,cursorkeys, a-z, Pos1=reset view 2.) FreeWRL-0.20 (a Perl Program) ----------------- d = enter "decent" fly-mode a-z 7-9 8-k o-u j-l w = walk mode (mouse) e = examine mode / = show current veiwpoint v = go to next viewpoint b = go to previous viewpoint q = quit 3.) kwrl-0.0.7 (pre alpha) -------------- -------------------------- Nullmodemkabel Portfolio PC/Atari 9pol F 25pol F 2---------------2 3---------------3 5---------------7 4-6(Brücke im 9pol Stecker) 7-8(Brücke im 9pol Stecker) Auf der Linux-Seite: cd /home/mherweg/portfolio/a mv * ../old seyon -modems /dev/ttyS1 baud:19200 Empfang startet automatisch, NICHT manuell triggern Auf dem Portfolio: pterm Alt-u(upload) alt-Z Einstellungen alt-h Hilfe --------------------------- IP-chains ========= ab Kernel 2.2 Vortrag auf LinuxTag CD 1999 http://ipmasq.cjb.net/ http://www.rustcorp.com/linux/ipchains/ http://www.knopper.net/firewall/ IP-Forwarding ------------- Mit dem Kommando echo 0 > /proc/sys/net/ipv4/ip_forward lässt sich das Forwading, unabhängig von gesetzten Firewall-Regeln oder Routing-Tabellen, deaktivieren. mit echo 1 > /proc/sys/net/ipv4/ip_forward lässt es sich aktivieren. Sascha Schneider sagt: > Das würde ich mit sysctl -w net/ipv4/ip_forward=1 machen > das mit dem echo 1 > .. klappt nicht immer. Default-Policies(router) ---------------- Wenn noch keine Regeln definiert wurden oder nach Aufruf von ipchains -F input ipchains -F output ipchains -F forward sind üblicherweise die Default-Behandlungen alle gleich ACCEPT, d.h. es werden Pakete in ein- und ausgehender Richtung akzeptiert und je nach Herkunft- und Zieladresse weitergeleitet. Daher genügt es, mit route die statischen Routes und das Defaultgateway zu setzen, um einen Linux-Rechner als Router zu betreiben. IP Masquerading =============== http://www.indyramp.com/masq/ für das lokale netz 192.168.1.0: ipchains -A forward -s 192.168.1.0/24 -d 0/0 -j MASQ etwas kürzer: ipchains -A forward -j MASQ IP Masquerading bei suse ------------------------ Internet Provider 194.173.104.129(ppp Server) | modem | 194.173.104.245 ppp0(ppp Client) martin(Masq-Host) 192.168.1.1 eth0 | | 192.168.1.4 eth0 kleiner(Client) Paket firewall/masq. installieren! Auf dem masquerading-host "martin" habe ich in /etc/rc.config (SuSE 5.3) folgendes eingetragen: # dies gibt es bei suse 7.1 immer noch: IP_FORWARD=yes # dies gibt es bei suse 7.1 micht mehr, stattdessen eine längliche firewall-config-datei FW_START="no" MSQ_START="yes" MSQ_DEV=ppp0 MSQ_NETWORKS="192.168.1.0/255.255.255.0" MSQ_MODULES="ip_masq_ftp ip_masq_irc ip_masq_raudio" dann /sbin/init.d/masquerade start ausgeführt. # das masqurade-startscript findet man aber noch in der Suse SDB Auf dem anderen Rechner(kleiner) im lokalen Netz(1.1.1.0) habe ich folgendes Routing: Destination Gateway Genmask Flags Metric Ref Use Iface kleiner.lug- * 255.255.255.255 UH 0 0 0 dummy0 192.168.1.0 * 255.255.255.0 U 0 0 3 eth0 loopback * 255.0.0.0 U 0 0 4 lo default 192.168.1.1 0.0.0.0 UG 0 0 8 eth0 d.h. ich habe "martin" als default-gateway eingetragen: route add -net default gw 192.168.1.1 Ausserdem benötigen alle masq-Clients(Kleiner,...) einen Nameserver-Eintrag in /etc/resolv.conf # # /etc/resolv.conf # # Automatically generated by SuSEconfig on Mon Nov 1 12:41:35 CET 1999. # # PLEASE DO NOT EDIT THIS FILE! # # Change variables (NAMESERVER + SEARCHLIST) in /etc/rc.config instead. # # search wrd.de nameserver 194.173.104.222 nameserver 194.173.104.223 nameserver 62.104.196.134 nameserver 194.231.62.3 und auch eine /etc/host.conf # # /etc/host.conf # # Automatically generated by SuSEconfig on Sun Feb 14 01:09:19 CET 1999. # # PLEASE DO NOT EDIT THIS FILE! # # Change variables (NAMESERVER + YP_SERVER) in /etc/rc.config instead. # # order hosts bind multi on SuSE's firewall&masq-script bei SuSE 7.0: /etc/rc.config.d/firewall.rc.config start stop check test - zeigt alles was abgewiesen werde würde. iptabels - Paketfilter mit dem Kernel 2.4 ----------------------------------------- hier ein Beispiel für einen Masq-Host mit firewall aus dem LinuxMagazin 6/2000: (siehe auch LinuxMagazin 4/2000 und 7/2000) #!/bin/sh # ISDN INTERFACE=ippp0 # Modem #INTERFACE=ppp0 # Ethernet (eth0=LAN, eth1=DMZ, eth2=Internet) #INTERFACE=eth2 insmod ip_tables insmod ip_conntrack insmod ip_conntrack_ftp insmod ipt_state insmod iptable_nat insmod ipt_MASQUERADE iptables -F iptables -N block iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A block -m state --state NEW -i ! $INTERFACE -j ACCEPT iptables -A block -j DROP iptables -A INPUT -j block iptables -A FORWARD -j block iptables -A POSTROUTING -t nat -o $INTERFACE -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward ---- IP Traffic nach UID filtern: iptables -A OUTPUT \! -d 192.168.0.0/16 -p tcp -m owner --uid-owner username -j REJECT --reject-with tcp-reset oder auch nach GID: --gid-owner groupid ---- LDAP ou=People,dc=skole,dc=skolelinx,dc=no cn=teachers,ou=Group,dc=skole,dc=skolelinux,dc=no ldapsearch -LLL -h ldap -x -b ou=group,dc=skole,dc=skolelinux,dc=no \ "cn=admins" memberUid siehe auch: http://www.skolelinux.org/de/documentation/tips_and_tricks/ ---- SDB: Manche Webseiten lassen sich nicht aufrufen ============================================== Dieses Phänomen kann zwei verschiedene Ursachen haben: 1.) ICMP Pakete des Path MTU discovery kommen nicht beim entfernten Server an. Dies ist inklusive Fehlerbehebung im SDB Artikel "T-DSL (u.a.): Manche Server sind nicht erreichbar" (http://sdb.suse.de/de/sdb/html/cg_pmtu2.html) beschrieben. 2.)Sie haben die standardmässig abgeschaltete TCP-option "ECN" - Explicit congestion notification aktiviert. Der 1. Fehler tritt überwiegend in Verbindung mit T-DSL oder anderen ADSL Anbietern auf die PPPoE als Protokoll einsetzen. Bei diesen Anbietern ist die zulässige Paketgröße eines Datenpaketes nicht mehr 1500 Byte sondern nur noch 1492 Byte da der PPPOE Header insgesamt 6+2 Byte verbraucht. Der 2. Fehler tritt auf, wenn Sie die Option DISABLE_ECN in der Datei /etc/rc.config auf "no" gestellt haben. Dies geschieht nur wenn Sie diese Einstellung manuell geändert haben, da nach der Installation diese Einstellung auf "yes" steht. Üblicherweise ist "ECN" damit deaktiviert. Eine detaillierte technische Beschreibung was ECN ist finden Sie im RFC 2481. Die Lösung zu Punkt 1(MTU MRU): Fügen Sie in die Datei /etc/ppp/peers/pppoe folgende Zeilen ein: mtu 1492 mru 1492 In der Datei /etc/ppp/options suchen Sie nach mtu und mru, und ändern die auskommentierten Zeile wie folgt ab: mtu 1492 mru 1492 für Router: Wenn Sie iptables verwenden genügt es wenn Sie lediglich den T-DSL Router umkonfigurieren. Eine explizite Konfiguration der Clientmaschinen ist unnötig. Geben Sie auf dem Router als Benutzer root folgendes Kommando ein: iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu Dieses Kommando bewirkt daß die "MSS" Option die beim Verbindungsaufbau zwischen dem Internet-Server und einer Clientmaschine Ihres Netzwerkes ausgetauscht wird vom Router "umgeschrieben" wird. Die Lösung zu Punkt 2 (ECN): Geben Sie bitte folgendes Kommando ein: echo "0" > /proc/sys/net/ipv4/tcp_ecn setzen Sie DISABLE_ECN="yes" ------------------------- Internet-Provider ----------------- * freenet super CbC Tel 019231760 18:00-8:00: 0,89c, sonst 1,45c Erste Seite nach Anwahl = freenet-portal :-( - ein Fall für wwwoffle oder wget ;-) transparenter Zwangsproxy * planet-interkom.de by call, kein Vertrag,sekundengenau, kein PAP, nur CHAP! DNS:195.182.96.28 DNS:195.182.96.61 * wel.de 2,5pf 24h OK - expressnet no carrier :-( - gkas no carrier :-( Mailprovider: ------------ pop3.web.de smtp.web.de ------------------------------------ Inhaltsverzeichnis (zB einer CD) drucken: cd /cdrom find . -exec ls -l {} \; | a2ps ..hmm doch nicht so gut :-( ... was hab' ich mir damals dabei gedacht ? oder sowas ist auch ganz nett: find . -printf "%7s %p\n" Volltextsuche: find . -type f -exec grep -i "expression" /dev/null {} \; oder find . -type f -exec grep -q "expression" /dev/null \; grep -r Schnelle Volltext-Indizierung und Suche: glimpse Quelle der Tips: http://www.linuxfocus.org/Deutsch/September1998/article3.html ------------------------- rekursives chmod Dateien und Verzeichnisse gleich(macht nicht so viel Sinn): chmod -R 700 Verz nur Verzeichnisse: find Verz -type d -exec chmod 700 {} \; nur die Dateien: find Verz -type f -exec chmod 660 {} \; dateien , die sich innerhalb der letzten 24 Stunden geändert haben: find Verz -mtime -1 --- root@martin:~ > rm -r .gphoto/ root@martin:~ > /usr/local/bin/gphoto2 -P --- KDE1 KDE1 als standard-WM: /opt/kde/bin/startkde nach ~/.xinitrc kopieren chmod a+x .xinitrc globales Startmenu: /opt/kde/share/applnk KDE Hotkeys cntrl-alt-esc Alt-Tab Alt-F1 Strtmenü Alt-F2 command-line Alt-F3 WM-Menü des aktuellen Fensters Alt-F4 Fenster schliessen mehere Objekte markieren: ctrl-Maus bei Suse 6.4 ist ein lästiges langsamens /opt/kde/bin/startkde mitgeliefert. Ich habe einiges aukommetiert und sleep-Werte von 3 auf 1 gesetzt, hier ist das diff: mherweg@martin:/usr/X11R6/bin > diff startkde startkde.alt 360,361c360,361 < #install_default_theme < #create_default_desktop --- > install_default_theme > create_default_desktop 376,379c376,379 < #TEST=`ls /var/run/ipppd.ippp?.pid 2>/dev/null` < #if [ "$TEST" -a -x /opt/kde/bin/kimon ]; then < # (sleep 4 && startifthere kimon) & < #fi --- > TEST=`ls /var/run/ipppd.ippp?.pid 2>/dev/null` > if [ "$TEST" -a -x /opt/kde/bin/kimon ]; then > (sleep 4 && startifthere kimon) & > fi 383c383 < waits=1 --- > waits=3 KDE 1.1 ======= ksamba Samba Sever konfigurieren & überwachen kcmbind DNS(Name)-Server konfigurieren & überwachen kcmdhcp DHCP Server konfigurieren & überwachen kwrite Editor mit Syntax-Highlighting & vertikaler Auswahl Koffice: ------- kword kontour Illustrator kpresenter kivio Diagramme Gnome-Office: ------------ gnome-db dia Diagramme AbiWord abisuite ? gnumeric das beste freie Tebellenkalkulation, sagt man StarOffice ---------- Sie möchten mit Staroffice auf Ihre Dateien auf einer Windowspartition zugreifen, Staroffice meldet jedoch: "Nichtexistentes Objekt. Datei existiert nicht." Ursache: Staroffice kann nicht auf Partitionen zugreifen die in Verzeichnisse gemountet sind, deren Name einen Großbuchstaben enthält. Lösung: Ändern Sie den Mountpoint in Kleinbuchstaben um. StarOffice multiuse/netzwerkinstallation: setup -net gilt für linux und auch für Windows caitoo Mutithread-Download-Tool wget Rekursiver Download per ftp oder http /etc/wgetrc Rekursives Holen: -r, --recursive rekursives Web-Saugen -- mit Umsicht verwenden! -l, --level=Zahl maximale Rekursionstiefe (0 ohne Begrenzung) -k, --convert-links nicht-relative Verweise in relative umwandeln pavuk -X Download-Tool nt Web-Downloader für X k4de Povray-Frontend karchive ein/aus-Packer kcdwrite,kisocd,kreatecd,kEasyCD alle noch nicht ausprobiert kleandisk löscht Dateileichen kmplot,kplot,kplot3d Funktionsplotter kmysql,kmysqladmin > ich habe eben nen bissl mit MySQL rumgespielt und dabei die kompletten > Rechte auseinandergepflückt: Der Benutzer root darf jetzt nix mehr tun. > Egal was ich tun will, immer gibts nen > Access denied for user: 'root@localhost' > Was mache ich jetzt?? starte MySQL mal mit der Option --skip-grant-tables neu http://www.mysql.com/doc/en/mysql_install_db.html kover CD-Covers kvave kspec Spectrum Analyzer ksysctrl Win-Style "Geräte Manager" ktron nice Tron Game ssystem Sonnensystem-Simulator (is it KDE ?) (noch) nicht so gut: ktvision kuickshow kwebdev ksoundsystem,kwav ossmixer xqmixer --- IceWM Hotkey für screenshot printout: The keys file: key "Alt+p" /home/m1/printscreen The printscreen script itself is very simple, and is as follows: #!/bin/sh if["$1"]; then xwd | convert xwd:- ps:- | lpr -P$1 else xwd | convert xwd:- ps:- | lpr fi Quelle: http://www.meadvillelibrary.org/os/ltsp.html --- Re: [Ltsp-discuss] LTSP without DHCP Thu, 16 May 2002 10:03:08 +0200 Von: dumas@centre-cired.fr (Patrice DUMAS - DOCT) An: ltsp-discuss@lists.sourceforge.net I did for floppies. It is based on xterminals script, and also use Jim's initrd kit. It worked with the 3.0.0 initrd kit, I didn't updated it. I just replace dhclient with a script: echo "echo ROOTPATH=$rootpath > /etc/dhcpc/dhcpcd-eth0.info" >> /mnt/initrd/bin/dhclient echo "hostname $hostname" >> /mnt/initrd/bin/dhclient which sets the hostname and also put information aboot the nfs root in /etc/dhcpc/dhcpcd-eth0.info see also: makeboot-initrd.sh --- xfce xfce_remove xfce_setup xfclock looks like CDE, angeblich Ressourcenschonend ? na, ich weiss nicht.... ftp mit Midnight Commander (mc) mc cd /#ftp:user@host welche shared libraries benötigt das Programm foo? ldd foo mherweg@martin:~ > ldd /bin/bash libncurses.so.4 => /lib/libncurses.so.4 (0x4001f000) libdl.so.2 => /lib/libdl.so.2 (0x40068000) libc.so.6 => /lib/libc.so.6 (0x4006b000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) --- DHCP /etc/dhcpd.conf Unter Linux gibt es zum Betrieb des Servers noch eine Kleinigkeit zu beachten, welche jedoch von großer Bedeutung ist. Anfragen von Clients werden immer an den allgemeinen Broadcast, sprich die Adresse 255.255.255.255 gesendet. Linux behandelt diese Adresse jedoch nicht in der Form, daß diese Anfragen nicht ins lokale Netzwerk gesendet werden. Darum muß noch folgende Route gesetzt werden: route add -host 255.255.255.255 dev eth0 Natürlich muß dieses Kommando als root abgesetzt werden, und sollte auch nach dem Systemstart automatisch ausgeführt werden. Quelle: http://www.linux-info.de/db/lnxi-shkommentar2.php3?eid=52 --- Freie Online-Shop Software: minivend -------------------------- DNS Nameserver bind 4 bind Version 4.x oder 8.x ? bei Suse 6.1: bind-4.9.7-57 /etc/named.boot: ------------------------------------ ; That domain has IP numbers 192.168.x.x. ; ns = 192.168.1.1 ; All relative file names can be found in this directory. ; Named changes also in this directory on startup. So it will dump core here. directory /var/named ; If you want to use this as your primary ns, enable this. All information ; is read from the file "/var/named/my.domain.file". ; IP -> hostname translation is done by ".../my.domain.file.rev". primary laserfactory.de laserfactory primary 1.168.192.in-addr.arpa laserfactory.rev ; If you have further child zones and you are not a secondary ns for them, ; specify a stub here: ;stub subzone.my.domain.edu 192.168.2.1 subzone.stub ; Use the following entries, if you want to use this as a secondary server. ; The primary server is contacted from time to time for the most recent ; information. "my.domain.file.bak" is used as starting file at boot time until ; the primary ns has been contacted (and in case of the primary ns is down). ; You should then also put this host into the "NS" part of the primary ns. ;secondary my.domain.edu 192.168.7.7 my.domain.file.bak ;secondary 168.192.in-addr.arpa 192.168.7.7 my.domain.file.rev.bak ; primary . localhost ; primary 127.in-addr.arpa 127.in-addr.arpa ; Always enable the next line. Read the beginning for how to get the newest ; version of it. (/var/named/root.cache) cache . root.cache ;cache . laserfactory.cache ; Change the following line, if you have further name servers, which might ; have more information cached. A good choice here is the ns which is ; authoritive for the zone above you. forwarders 194.173.104.1 ; If the servers defined by the "forwarders" line do not know the answer, ; this ns will contact the root ns for it. If you enable "slave", it will ; ask one of the "forwarders" to fetch the correct answer. This will lead ; to more complete "forwarding" ns and should be done. slave ------------------------------------------------------------ /var/named/laserfactory ------------------------------------------------------------- ; ; ; laserfactory - entspricht named.hosts im TCP-IP-Buch ; ; ; ; @ IN SOA martin.laserfactory.de. mherweg.martin.laserfactory.de. ( 10118 43200 3600 3600000 2592000 ) IN A 192.168.1.1 ;------------------------------------------------------ IN NS martin.laserfactory.de. ; Nameserver IN MX 10 martin.laserfactory.de. ; zuständiger Mailserver ;------------------------------------------------------ localhost IN A 127.0.0.1 martin IN A 192.168.1.1 zwei IN A 192.168.1.2 drei IN A 192.168.1.3 vier IN A 192.168.1.4 ;-------------------------------------------------------- /var/named/laserfactory.rev -------------------------------------------------------- ; ; ; laserfactory.rev - entspricht named.rev im TCP-IP-Buch ; ; ; ; @ IN SOA martin.laserfactory.de. mherweg.martin.laserfactory.de. ( 10118 43200 3600 3600000 2592000 ) IN NS martin.laserfactory.de. ; Nameserver 1 IN PTR martin.laserfactory.de. 2 IN PTR zwei.laserfactory.de. 3 IN PTR drei.laserfactory.de. 4 IN PTR vier.laserfactory.de. ----------------------------------------------------------------------- nslookup >server >ls wrd.de <- zeig mir die Einträge zur Domain wrd.de hostcvt hostcvt ist ein Programm, das Ihnen bei Ihrer anfänglichen BIND-Konfiguration helfen soll, indem es Ihre hosts-Datei in Master-Dateien für named umsetzt. dnswalk dnswalk, ein perl-basiertes Paket, das Ihre DNS-Daten durchwandert und nach häufigen Fehlern sucht und sicherstellt, daß die Informationen konsistent sind. ndc status dumpdb reload --------------------- Altavista und Infoseek fragen "wer hat links auf meine Seite?" link:myURL anchor:teil-meiner-URL --- elographics inc. USA E281-4035 Touchscreen Controller IO: 0x280,per jumper änderbar IRQ: 7 per jumper änderbar --- dumpe2fs, tune2fs ----------------- Wie kann ich den "maximal mount count" hochsetzen, damit nicht bei jedem 20. booten(Standardwert) ein zeitraubendes fsck durchgeführt wird ? Den "maximal mount count" und die maximale Zeit zwischen 2 fsck kann man mit dumpe2fs | less ansehen und mit tune2fs -c 50 /dev/hda1 # setze den max mount count von /dev/hda1 auf 50 tune2fs -i 3m /dev/hda1 # setze den max Zeitintervall auf 3 Monate verändern. WARNING Never use tune2fs to change parameters of a read/write mounted filesystem! Use this utility at your own risk. You're modifying a filesystem! Auszug aus "man fsck": Das fünfte Feld, (fs_freq), wird von dump(8) benutzt um zu entscheiden welche Dateisysteme gedumpt werden müssen. Ist das fünfte Feld nicht vorhanden, wird für diesen Wert Null angenommen und dump geht davon aus, daß das Dateisys­ tem nicht gedumpt werden muß. ((Anm. dump ist ein Backup-Tool, wenn es keiner startet, dann wird auch nix gedumpt )) Das sechste Feld, (fs_passno), wird von fsck(8) benutzt um die Reihenfolge, in der die Dateisysteme während des Reboots geprüft werden, festzulegen. Das root Dateisystem sollte mit einer fs_passno von 1 versehen sein, andere Dateisysteme mit einer fs_passno von 2. Dateisysteme innerhalb eines Laufwerks werden sequentiell geprüft, Dateisysteme auf verschiedenen Laufwerken jedoch gle­ ichzeitig, um parallel arbeitende Hardware zu unterstützen. Ist das sechste Feld nicht vorhanden oder Null, wird sinnigerweise eine Null zurückgegeben und fsck geht davon aus, daß das Dateisystem keiner Prüfung bedarf. Auszug aus file:/home/mherweg/txt/linuxtag99CD/elementare_backupwerkzeuge.html Einer der Dauerbrenner unter den Fragen neuer Unix-Benutzer ist, wie man ein Verzeichnis (ein Dateisystem) komplett und vollständig kopieren kann. Neben aufgebohrten modernen Implementierungen von cp(1), deren (Un)fähigkeiten und notwendige Optionen in dieser Beziehung schwanken und schon für manche unangenehme Überraschung gesorgt haben, können auch alle hier besprochenen Backupwerkzeuge für diesen Zweck eingesetzt werden. Für tar lautet die Befehlszeile: cd quelle; tar cf - . | (cd ziel; tar xpf -) übers Netz: tar cf - QUELLVERZ | rsh ZIELRECHNER "tar xfp - -C ZIELVERZ" (freeX 1/2002) oder aber auch so: zcat PlattenImage.gz | ssh root@zielmaschine "cat > /dev/hda" dump Für Backups ist dump, um eine amerikanische Redewendung zu bemühen, das Beste seit geschnittenem Brot... ... Und zu guter Letzt das vollständige Kopieren eines Dateisystems: # dump 0f - quelle | (cd ziel; restore rf -) ... allerdings nur für ext2 Dateisysteme!!! Tar Backup auf mehrere Disketten (multiple Media) schriben: tar Mcvf /dev/fd0 lesen: tar Mxvf /dev/fd0 on-the-fly: tar cvf - verz1 verz2 verz3 | tar -C Zielverz -xf - Quellverzeichnisse/dateien aus einer Liste lesen: tar cvz -T liste.txt -f bla.tgz --exclude=PATTERN' When performing operations, tar will skip files that match PATTERN. Recovery & Backup CD: mkcdrec ------------------------------ cd mkcdrec vi Config.sh make auf der CD: start-restore.sh oder clone-dsk.sh automount ========= mit KDE geht klassisches mounten auf einer Workstation ja recht bequem, aber viele Server haben keine Tastaur, Monitor, KDE... + automount ist bequem für "removable media"(CD,zip,floppy) und remote-NFS-mounts + es gibt ein altes automount: "amd"- amd arbeitet als lokaler NFS-Server (Vorbild Sun) + das aktuelle, kernel-basierte automount-system heisst "autofs" + klassisches mounten gibt eine Fehlermeldung, bewirkt aber durch autofs dennoch das Gewünschte. + klassisches umount ist weiterhin möglich. der automount-demon wird per Start/stop-script gestartet u. gestoppt. hier ein Laufender in der ps-liste: root@martin:/sbin/init.d > ps PID TTY STAT TIME COMMAND 4015 ? S 0:00 bash 4159 ? S 0:00 automount -t 30 /misc file /etc/auto.misc uid=520 4253 ? R 0:00 ps midestens 2 config-Dateien in /etc /etc/auto.master: ----------- /misc /etc/auto.misc ----------- und /etc/auto.misc ----------- # $Id: auto.misc,v 1.2 1997/10/06 21:52:04 hpa Exp $ # This is an automounter map and it has the following format # key [ -mount-options-separated-by-comma ] location # Details may be found in the autofs(5) manpage #kernel -ro ftp.kernel.org:/pub/linux #boot -fstype=ext2 :/dev/hda1 #removable -fstype=ext2 :/dev/hdd cdrom -fstype=iso9660,ro :/dev/cdrom floppy -fstype=vfat :/dev/fd0 ----------- ich habe dazu ein Verzeichnis /misc angelegt und 2 sym-links erzeugt: ln -s /misc/floppy /mnt/floppy ln -s /misc/cdrom /mnt/cdrom weil es die Verzeichnisse in /misc nur gibt, wenn sie gemountet sind. ausserdem kann man diverse (mount-)optionen im Startscript /sbin/init.d/autofs angeben: -------------- ... # We can add local options here # e.g. localoptions='rsize=8192,wsize=8192' # localoptions='uid=520' # We can change the default umount time here # e.g. 30 sec: time='-t 30' time='-t 30' ... --------------- umount & eject cd ----------------- +geht mit oder ohne autofs ;obsolete: ; 1.) paket cd-console installieren. ; 2.) einen Einzeiler "auswurf" schreiben: ; umount /cdrom ; echo "eq" | cd-console oder besser: paket eject installieren. eject: eject cdrom eject scd0 load: eject -t cdrom eject -t scd0 Quellen: automount mini-Howto, SuSE-SDB kostenloser NFS-Server für WinNT: SOSS bash "cheatcodes" ================= Strg-a Cursor an den Anfang der Zeile Strg-e Cursor ans Ende der Zeile Strg-u Zeile löschen Tab Wort vervollständigen Strg-c Programm abbrechen Strg-z Programm einfrieren Strg-d Dateiende-Kennung setzen kommando &>Datei Standard- und Fehlerausgabe in die Datei umlenken man kann, muss aber nicht, Shellvariablen in geschweifte Klammern packen: echo ${VARIABLE} Variable entfernen: unset VARIABLE single Quotes 'bla' d.h. Wildcards und Variablennamen bleiben unbeachtet double Quotes "bla" Wildcards bleiben unbeachtet, Variablen werden ersetzt back-quotes var=`ls` Kommando wird ausgeführt, Variable enthält die Ausgabe des Kommandos $# Anzahl der Argumente $0 name des scripts $* alle Argumente als ein String $@ alle Argumente als eine Kette von Strings $? exit-status des vorigen Kommandos, 0=OK $$ die PID des laufenden Prozesses Quelle: "Learning Debian GNU/Linux" Kapitel 13 Bash debugging: bash -x script.sh Quelle: http://www.freeos.com/guides/lsst/ch03sec09.html echo zeit0{1,2,3,4,5,6,7,8,9} zeit01 zeit02 zeit03 zeit04 zeit05 zeit06 zeit07 zeit08 zeit09 --------------------------------------------------------------------------------------------- X-terminal, xdm starten, ohne dass ein X-Server auf dem xdm-Server läuft : The reason I started this. I had a 486DX2/66 left over from an upgrade and I wanted to have a quiet X-terminal while the server makes noise somewhere else. 486 or Pentium best. 16 MB should be the minimum. Put in the best video card you can get for it. Normal NIC should do. On the server, make sure the DC is matched by a clause in /etc/X11/xdm/Xaccess and comment out the :0 in /etc/X11/xdm/Xservers. ------------------------------------------------ Then make sure that xdm is run from the init scripts. On the client, run X -query server You will get the xdm login box and then all your X clients will run on the server. --------------------------------------------------------------------------------------------- ftape & tar Entladen des Floppydisk-Treibers ist nicht nötig. Ich habe das ftape-Howto noch mal etwas genauer gelesen, da steht: ----------------------------------------------------------------------- 11.10. Why do I get "/dev/qft0: No such device" errors? I assume that the following is the problem: The Ftape module is loaded OK into the kernel: /usr/src/ftape-3.03b-970603# lsmod Module Pages Used by ftape 22 0 but then this happens: $ ftmt -f /dev/qft0 status ftmt: /dev/qft0: No such device Solution You need to load the zftape.o module as well. With Ftape-3.* the ftape.o module doesn't implement the VFS interface. This is done by zftape.o. ------------------------------------------------------------------------ das war's ! Obwohl das nicht logisch ist: ich will ja garnix mouten, nix mit VFS machen, trotzdem - es hat geholfen. Ich habe jetzt folgendes in meiner /etc/conf.modules stehen: ... alias char-major-27 ftape post-install ftape /sbin/modprobe "-k" "zftape" ... Beispiel Full-Backup: --------------------- tar cvf /dev/ftape Beispiel Restore,alles: ----------------------- cd tar xvf /dev/ftape Beispiel Restore,nur eine Datei aus dem Archiv ---------------------------------------------- cd tar xvf /dev/ftape home/mherweg/meinedatei Inhalt des Bandarchivs anzeigen: -------------------------------- tar tvf /dev/ftape Dateien anzeigen, die sich nach dem Backup verändert haben: ----------------------------------------------------------- cd tar df /dev/ftape Mit der zusätzlichen Option "z" wird das Archiv gnu-zipped, das macht die Sache kleiner, schneller aber gefährlicher, denn wenn nur 1 Bit falsch gelesen wird.... tar cfvz ... tar xvfz ... u.s.w. Ausser tar gibt es natürlich noch andere Backup-Tools(z.B. dump & restore), aber tar kenn ich am besten. KDE winzip-Clone: karchiveur kann tar,tgz,bz2,zip,rar.... unrar e unace x Mit dem Tool "mt" kann man diverse Bandoperationen durchführen: rewind,retension... Wenn alles läuft, dann sagt... root@martin:~ > lsmod Module Size Used by zftape 56532 -1 (autoclean) ftape 101820 0 (autoclean) [zftape] ... und... root@martin:~ > cat /proc/ftape Kernel Driver version : ftape v3.04d 25/11/97 used data rate: 1000 kbit/sec dma memory : 96 kb debug messages: informational Tape Drive vendor id : 0x014e drive name: Conner C250MQ wind speed: 80 ips max. rate : 1000 kbit/sec FDC Controller FDC type : i82077AA FDC base : 0x3f0 FDC irq : 6 FDC dma : 2 FDC thr. : 8 max. rate : 1000 kbit/sec Tape Cartridge segments : 150 tracks : 28 length : 307ft formatted : yes writable : yes QIC spec. : QIC-80 fmt-code : 2 ... siehe dazu auch LinuxTag1999-CD, file:/home/mherweg/txt/linuxtag99CD/elementare_backupwerkzeuge.html ------------------------------- mulinux comes with superformat ... aber man kann auch > fdformat /dev/fd0H1722 Doppelseitig, 82 Spuren, 21 Sektoren/Spur, Totale Kapazität: 1722kB. Formatieren ... Beendet Überprüfen ... Beendet benutzen um 1,7MB Disketten zu erhalten Monkey Linux: 7,5MB incl. X-Server ----------------------------- BIOS Passwords Das AMI-BIOS bietet einen Passwortmechanismus als Schutz gegen unbefugtes Starten des PCs. Der Passwortschutz wird im "ADVANCED CMOS SETUP" aktiviert, waehrend das Passwort selber unter dem Menüpunkt CHANGE PASSWORD auf der ersten Maske des CMOS-SETUP veraendert wird. Haben Sie nur den Passwortschutz aktiviert, nicht aber das Standardpasswort veraendert, so lautet das vom BIOS vorgegebene Passwort "AMI". Generalcode fuer AWARD-BIOS bis Version 4.50 Das Award-Bios speichert das Master-Passwort als 2-Byte-Pruefsumme im CMOS. Master-Passwoerter: alfarome aLLy award_sw biostar efmukl HLT lkwpeter j262 SER SKY_FOX 589589# BIOS-PASSWORT LOESCHEN Sie wollen etwas im BIOS aendern und benoetigen dazu ein Passwort, daß Sie vor Jahren einmal eingerichtet und danach vergessen haben. Folgendes Programm loescht alle BIOS-Daten (und damit auch das Passwort), damit Sie wieder Zugang zum BIOS haben. Im DOS-Modus (auch DOS-Fenster in Windows95) starten Sie Qbasic und geben folgende 2 Zeilen ein: 1. 10 OUT &H70,17 2. 20 OUT &H71,0 Das Programm ausfuehren und Rechner neu starten. Sie erhalten nun eine Fehlermeldung die besagt, daß die CMOS-Checksumme fehlerhaft ist und gelangen in das BIOS. ------------------------------------------------------------ Linux Artikel in c't(ROM) 1997: 1/97 Executor: PC emuliert Macintosh 5/97 Linux Schwerpunktthema:A Star is Born,Fit fürs Büro,Geschäftsfähig 6/97 mtools 7/97 MkLinux für Power Macintosh 6100, 7100, 8100, 7200, 7500, 7600, 8200, 8500, 9500, 9600 und kompatible 8/97 HFS(Mac)-Dateisystem und -Utilities für Linux Ghostscript 5.01 NetWare-Messages als Popup für OpenLinux Kalle Dalheimer:KDE 10/97 CD-Writer-Software für OS/2 und Linux 10/97 ISA-Plug&Play-Karten unter Linux betreiben 12/97 Morphing-Werkzeug XMRM 1.2 für Linux 13/97 Tips und Tricks für Linux-Systemverwalter 15/97 Erste Schritte mit TeX Linux Artikel in c't 1998: 3/98 Kernel 4/98 PTS-Linux 1.1 , DLD 5.3 for Alpha 5/98 PPP,Pilot 6/98 IRC-Clients 7/98 webbrowser,internettools,allgemeines. 9/98 Linux Einstieg leichtgemacht 13/98 SMP Buch "Running Linux" S 91,108,130,171 279: groff, techinfo Linux Magazin 8/98 S.40: Pinguin statt eNTe samba,fechmail,procmail --------------------- IRC Clients ircii bitch(x) tkirc zircon prompt> rpm -qf /usr/bin/wserv ircii-2.9-14 bitchx-75p1-1 ---- lilo, /etc/lilo.conf lilo macht Sicherheitskopieen des MBR: /boot/boot.0200 /boot/boot.0300 usw. mit dd restaurieren. lilo.conf --------- message = message-datei.txt # das booten aller oder einzelner Betriebssysteme kann man durch ein # passwort schützen. ganz nützlich, damit nicht ein DAU aus neugier Linux #bootet und dann nicht richtig runterfährt. password = xyz # einzelne Einträge können einen Aliasnamen bekommen z.B. "1" "2" "3" "4" alias = 1 alternative Bootmanager: ------------------------ * grub GRUB Partitionsnamen: linux GRUB /dev/fd0 (fd0) /dev/hda1 (hd0,0) /dev/hda2 (hd0,1) /dev/hda3 (hd0,2) /dev/hda4 (hd0,3) /dev/hda5 (hd0,4) /dev/hda6 (hd0,5) * http://www.xosl.org/ * CHOS ---- RedHat - RPM installieren rpm -i licq-0.76-1.i386.rpm meckert über failed dependencies ? z.B. Fehler: fehlgeschlagene Paket-Abhängigkeiten: qt >= 2.0.2 wird von licq-0.76-1 gebraucht libncurses.so.5 wird von licq-0.76-1 gebrauchtÙ hmm, mal schauen ob das stimmt... root@martin:/home/mherweg > rpm -qa | grep qt qtlib-1.44-54 qtcompat-1.44-54 qtlib2-2.0.2-5 qtext-1.44-54 qtdevel-1.44-54 root@martin:/home/mherweg > rpm -qa | grep curses ncurses-4.2-83 qt heisst bei Suse qtlib2 , libncurses heisst ncurses, Version 5 habe ich zwar nicht, sondern nur 4.2 aber man kann es ja trotzdem mal versuchen: rpm -i --nodeps download/licq-0.76-1.i386.rpm fein, scheint zu laufen. --- SRPM Nachdem man ein Soure-RPM Paket installiert, findet man meisst 3 Dateien : 1.)Das RPM-spec-File: /usr/src/packages/SPECS/.spec 2.)Das tgz-Paket der Quellen ("pristine sources") /usr/src/packages/SOURCES/.tar.gz 3.)Die Patch/Diff Datei /usr/src/packages/SOURCES/.dif Auspacken und Patchen: cd /usr/src/packages/SPECS/ rpm -bp .spec (-bp = build prep-stage, siehe man rpm) danach sind die gepatchten Quellen in /usr/src/packages/BUILD/ --------------------- Netscape-Bookmarks as one file: ------------ pbm - Public Bookmark Generator (v0.5) Copyright (C) 1998-1999 Martial MICHEL bookmark -look shortestblank -keyword PR -new 30 -index 2 \ -Fromfile Fromfile/mh.html ~/.netscape/bookmarks.html /home/mherweg/pub_html2/mylinuxlinks.html \ -Duplicate mh_dups -Newheader -fastaccess -timestamp localtime mit einer unter-Ebene: ---------------------- # bookmarks.html bereinigen, d.h. Folder "Linux" -> / und nach ~/download/bookmark-converter/bm2html/linuxliks2.html # kopieren cd cp .netscape/bookmarks.html download/bookmark-converter/bm2html/linuxliks2.html cd ~/download/bookmark-converter/bm2html vi footer.html # Datum im Footer aktualisieren rm links.shtml ; bm2html.pl -o linuxliks2.html ; cp *.shtml links # links ist ein symlink auf ~/pub_html2/links mit Unterverzeichnissen: ---------------------- bm2html.pl -y bookmarks.html ---------------------- 2.34 Bei Anleitungen zur Netzwerkkonfiguration findet man haeufig Angaben wie 192.168.1.0/24. Was bedeutet das "/24"? Es handelt sich hier um eine Kurzschreibweise der Netzmaske. Die Zahl steht fuer die Anzahl der 1-Bits, die in der Netzmaske den Netzwerkteil der davorstehenden Adresse angeben. In diesem Beispiel sind es 24 1-Bits, die Netzmaske ist also in binaerer Schreibweise 11111111.11111111.11111111.00000000 bzw. dezimal 255.255.255.0. 3.12 Funktionieren Parallelport-Streamer unter Linux ? Nicht mit dem in den 2.0.X-Kerneln integrierten FTape-Treiber. Unter http://www-math.math.rwth-aachen.de/~LBFM/claus/ftape/ ist jedoch ein aktuelleres FTape-Paket zu finden, welches einige Parallelport-Streamer unterstuetzt (u.a. einige Iomega-Ditto-Parallelport-Laufwerke). Genauere Informationen zu den unterstuetzten Typen sind dem Paket zu entnehmen. 3.16 Wenn ich ein externes SCSI-Geraet (z.B. einen Scanner) erst nach dem Booten einschalte, ist es nicht ansprechbar. Wie kann ich es trotzdem benutzen ? Der SCSI-Bus wird normalerweise nur bei der Initialisierung des Hostadapters nach Geraeten abgesucht. Initialisiert wird der Hostadapter entweder beim Booten, wenn der Treiber fest eincompiliert ist, oder, falls er als Modul vorliegt, beim Laden des Moduls. Wenn ein SCSI-Geraet zu diesem Zeitpunkt nicht eingeschaltet ist, kann es nicht gefunden werden. Neben der unbefriedigenden Loesung, beim Systemstart alle Geraete einzuschalten, besteht die Moeglichkeit, dem Kernel auch im laufenden Betrieb mitzuteilen, dass nach einem SCSI-Geraet gesucht werden soll. Dazu wird das Kommando "scsi add-single-device " in die Pseudo-Datei /proc/scsi/scsi geschrieben. Dabei bedeuten Host : die Nummer des Hostadapters (bei nur einem Hostadapter wird hier 0 angegeben), Channel : die Nummer des SCSI-Kanals auf dem ausgewaehlten Hostadapter (bei einem einkanaligen Adapter, was wohl der haeufigste Fall sein wird, wird eine 0 angegeben), ID : die SCSI-ID des neu hinzugekommenen Geraetes, LUN : soweit mit LUNs (Logical Unit Numbers) gearbeitet wird, die LUN des hinzugekommenen Geraetes. Um also z.B. einen Scanner mit der SCSI-ID 6 an einem einzelnen einkanaligen Hostadapter nachtraeglich anzumelden, genuegt in der Shell das Kommando echo "scsi add-single-device 0 0 6 0 " >/proc/scsi/scsi Dabei sollte das spaeter eingeschaltete Geraet die hoechste SCSI-ID im Strang haben, da es ansonsten zu Problemen mit der Vergabe der Device-Namen kommen kann. SCSI-Devicenamen (/dev/sdx fuer Festplatten, /dev/stx fuer Streamer, /dev/scdx fuer CDROMs und /dev/sgx fuer generic SCSI-Devices wie z.B. Scanner oder CD-Brenner) werden in der Reihenfolge der SCSI-IDs vergeben. Damit waere z.B. sda die Platte mit der kleinsten SCSI-ID, sdb die Festplatte mit der naechstgroesseren SCSI-ID etc. Es gibt aber keine feste Kopplung der Buchstaben an die SCSI-ID, sondern es kommt nur auf die Reihenfolge an, d.h. die erste Festplatte muss nicht unbedingt ID 0 und die zweite Festplatte ID 1 haben, sondern sie koennten z.B. auch die IDs 3 und 6 haben. Wird jetzt nachtraeglich ein Geraet eingebunden, das eine kleinere ID hat, als ein bereits angemeldetes, wuerden sich die Devicenamen aller Geraete mit einer hoeheren ID verschieben, was ein ziemliches Chaos zur Folge haette. WICHTIG: Auch wenn es moeglich ist, nachtraeglich eingeschaltete Geraete zu erkennen, duerfen waehrend des Betriebes keine Geraete physikalisch an den Bus angeschlossen oder von ihm abgetrennt werden (sogenanntes Hot-Plugging), da das zu schweren Hardwareschaeden fuehren kann. Dies ist nur mit speziell dafuer ausgelegten Hostadaptern und SCSI-Geraeten moeglich. Stephan Loescher (loescher@leo.org) hat in de.comp.os.linux.hardware ein kleines Skript gepostet, das unter Benutzung des o.g. Kommandos den SCSI-Bus nach neuen Geraeten absucht. Der Artikel traegt die Message-ID und ist bei Bedarf mit DejaNews zu finden (siehe oben). 3.22 Wie kann ich meine Festplatten nach einer gewissen Zeit der Inaktivitaet automatisch abschalten lassen (sog. "Spindown") ? Bei IDE-Platten geht das mit "hdparm -S", fuer SCSI-Platten ist ein Kernelpatch ("SCSI-Idle") notwendig. In der Praxis ist ein solcher Spindown aber nur selten sinnvoll. Unter Linux, wie unter jedem Unix, erfolgt normalerweise spaetestens alle paar Minuten irgendein Plattenzugriff, es sei denn, es handelt sich z.B. um eine reine Datenplatte, die nicht gemountet ist. Dadurch wird eine Platte, falls der Timeout so kurz ist, dass sie zwischen den Zugriffen den Motor abschalten kann, dauernd herunter- und und wieder heraufgefahren, was die Lebensdauer der Platte rapide verkuerzen kann, insbesondere, wenn es sich um eine Desktopplatte handelt, die im Gegensatz zu einer Notebookplatte nicht fuer solche Stromsparmassnahmen ausgelegt ist. 3.24 Ich moechte den bei meinem Scanner mitgelieferten SCSI-Hostadapter AVA 1505 oder 1502 unter Linux benutzen, finde jedoch keinen Treiber. Sowohl der AVA 1505 wie auch der 1502 funktionieren mit dem Treiber fuer die Adaptec 152x-Reihe. Wichtig ist, dass die Typen 1505 und 1502 kein BIOS haben und deshalb vom Treiber nicht automatisch erkannt werden koennen. Es ist daher noetig, dem Kernel IRQ und IO-Basisadresse als Bootparamter zu uebergeben, z.B. durch einen Eintrag in /etc/lilo.conf in der Form append="aha152x=0x340,11" (fuer Basisadresse 0x340 und IRQ 11). Naehere Erlaeuterungen zu Bootparametern finden sich im BootPrompt-HOWTO. modprobe aha152x aha152x=0x340,11 Nov 30 18:21:31 martin kernel: aha152x: BIOS test: passed, detected 1 controller(s) Nov 30 18:21:31 martin kernel: aha152x0: vital data: PORTBASE=0x340, IRQ=11, SCSI ID=7, reconnect=enabled, parity=enabled, synchronous=disabled, delay=100, extended translation=disabled Nov 30 18:21:31 martin kernel: aha152x: trying software interrupt, ok. Nov 30 18:21:31 martin kernel: scsi0 : Adaptec 152x SCSI driver; $Revision: 1.7 $ Nov 30 18:21:31 martin kernel: scsi : 1 host. Nov 30 18:21:33 martin kernel: Vendor: TEAC Model: CD-R58S Rev: 1.0K Nov 30 18:21:33 martin kernel: Type: CD-ROM ANSI SCSI revision: 02 Nov 30 18:21:33 martin kernel: Detected scsi CD-ROM sr0 at scsi0, channel 0, id 2, lun 0 Nov 30 18:21:34 martin kernel: sr0: scsi3-mmc drive: 24x/24x writer cd/rw xa/form2 cdda tray Nov 30 18:21:34 martin kernel: Uniform CDROM driver Revision: 2.55 /usr/local/bin/scanimage -b --batch-count=1 --format=pnm -d snapscan:/dev/sg0 /usr/local/bin/scanimage --format=pnm -d snapscan:/dev/sg0 >bla.pnm -------------------------------------- Nach Paragraph 28 Abs. 3 Bundesdatenschutzgesetz widerspreche ich der Nutzung oder Uebermittlung meiner Daten fuer Werbezwecke oder fuer die Markt- oder Meinungsforschung. ------------------------------------- Red Hat 5.2 -bootet nicht von CD 1.CD: RPMS + Handbuch in HTML 2.CD: SRPMS 3.CD: non GPL Applications 1.2.2 Traffic Shaping Support: shapecfg The printtool printer configuration utility now supports the configuration of NetWare-based remote printers. +kann man auch von einem Win-Netzwerk-Share installieren setup-tool: linuxconf Sound: There are a few things that you should know about sndconfig: Plug and Play Aware -- sndconfig is able to detect and automatically configure Plug and Play sound cards such as the Sound Blaster 16 PnP. The configuration information is stored in the /etc/isapnp.conf file, along with the configuration information for any other Plug and Play devices. In order to ensure that no configuration will be lost, sndconfig saves your original /etc/isapnp.conf file as /etc/isapnp.conf.bak. Modifies /etc/conf.modules -- sndconfig modifies the module configuration file /etc/conf.modules by adding information about the module options required for your sound card. Note that sndconfig saves your original /etc/conf.modules file as /etc/conf.modules.bak. Red Hat Linux uses a user private group (UPG) scheme, which makes UNIX groups much easier to use. The UPG scheme does not add or change anything in the standard UNIX way of handling groups. It simply offers a new convention for handling groups. 11.4 User Authentication with PAM /etc/sysconfig LILO: If your system boots, but does not allow you to log in when it has completed booting, you can use the single or emergency boot option. At the LILO boot: prompt, type linux single in order to boot in single-user mode. In single-user mode, your local filesystems will be mounted, but your network will not be activated. In emergency mode, almost nothing will be set up. Only the root filesystem will be mounted, and it will be mounted read-only. efax - This is a program to send and receive faxes over class 1 or class 2 fax modems. It has a nice interface to help facilitate faxing. arpwatch Arpwatch and arpsnmp are tools that monitors ethernet or fddi activity and maintain a database of ethernet/ip address pairings. ical ical is a popular X-based calendar/scheduler application which can help you keep track of single events and recurring events (daily, weekly, monthly, or yearly), and sets off alarms to warn you of appointments. ACM is an X based flight simulator. It also have network cabailities for multiple player games. Due to the need for automated installation, Red Hat Software has created the kickstart installation method. With this method, a system administrator can create a single file containing the answers to all the questions that would normally be asked during a typical Red Hat Linux installation. ------------------------------------------------------------------------- Musik in Webseiten: als link: Hier ist Musik drin Netscape: IE: <BGSOUND=musik.wav > ausser .wav ist auch .mid möglich. --- LATEX, g-brief , tk-Brief, Koma : Schreibe einfach noch folgendes in Deinen Header: \usepackage[T1]{fontenc} % Benutzt EC-Fonts \usepackage[latin1]{inputenc} % Jetzt kannst Du Umlaute direkt benutzen Die EC-Fonts bringen Dir noch deutsche Trennmuster. ---- renice +10 -u username ImageMagick: convert -size 800x600 -rotate -90 p1010014.jpg playmais6.jpg