apt-get install build-essential kernel-package ncurses-dev
cd /usr/src
wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
tar xjf linux-2.6.20.tar.bz2
rm linux; ln -s linux-2.6.20 linux
cd linux
# Wenn schon eine alte Kernel-Config vorliegt:
# cp ../oldlinux/.config .
# make oldconfig # Neue Kernel Config Einstellungen bewundern
make menuconfig # Kernel Config anpassen
make-kpkg kernel_image --initrd
dpkg --install /usr/src/linux-image-2.6.xxx.deb
update-grub
dpkg --purge --force-remove-essential kernel-image-2.6.xxx
wget -H -r -l1 -A.zip http://www.url.com/
axel -n 3 http://www.url.com/datei.zip
ifconfig eth0 hw ether 00:DE:AD:BE:EF:00
pppd /dev/ttyUSB0 115200 10.0.0.2:10.0.0.1 noauth nodetach defaultroute persist
figlet FOOBAR | centericq-utf8 -s msg -p icq -t 1234567
for t in "Nachricht 1" "Nachricht 2"; do echo $t | centericq-utf8 -s msg -p icq -t 1234567; sleep 1m; done
postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / addr@example\.com/ { print $1 }' | tr -d '*!' | postsuper -d -
apt-get install lufs-utils
m-a a-i lufs
modprobe lufs
lufsmount ftpfs://ftp.bla.org /mnt/ftp_server
killall mysqld
mysqld --skip-grant-tables
# variante 1: komfortabler
mysqladmin -u root password 'newpasswd'
# jetzt mysqld wieder normal starten
# variante 2: falls mysqladmin nicht installiert ist
mysql -u root mysql
mysql> update user set password=PASSWORD("newpassword") where user='root';
mysql> flush privileges;
mysql> quit
dig axfr @dns_server.de zone.de
dig +norec @F.ROOT-SERVERS.NET HOSTNAME.BIND CHAOS TXT
rsync -a user@server.de:/directory /local_destination
nobackup
und deren Inhalte werden dabei nicht gesichert.
Der entfernte Rechner meinserver.de
verfügt über einen Systembenutzer rsync
, der sudo Rechte auf rsync
hat.
Mit bwlimit
wird die Bandbreite auf 1MB/s begrenzt, um den Server nicht auszulasten.
rsync --stats -aze 'ssh -i /var/backups/rsync/.ssh/id_rsa -l rsync' --bwlimit=1024 --rsync-path='sudo /usr/bin/rsync' \
--prune-empty-dirs --include '*/' --exclude '**/nobackup/**' --include '/etc/**' \
--include '/home/**' --include '/usr/local/**' --exclude '/**' \
rsync@meinserver.de:/ /var/backups/zielverzeichnis/
nobackup
und deren Inhalte werden dabei nicht gesichert.
Der entfernte Rechner meinserver.de
verfügt über einen Systembenutzer rdiff
, der sudo Rechte auf rdiff-backup
hat.
Es sollte darauf geachtet werden, dass sich die rdiff-backup
Versionen auf Client und Server nicht unterscheiden.--include
bzw. --exclude
unterscheidet sich ein wenig von rsync
!
rdiff-backup --print-statistics --remote-schema 'ssh -i /var/backups/rdiff/.ssh/id_rsa %s sudo rdiff-backup --server' \
--exclude "**/nobackup/**" --include /var/lib/mysql --include /etc \
--include /home --include /usr/local --exclude /\
rdiff@meinserver.de::/ /var/backups/zielverzeichnis/
rdiff-backup
ausgeben:
# rdiff-backup --list-increment-sizes /var/backups/zielverzeichnis/
Time Size Cumulative size
-----------------------------------------------------------------------------
Sun Nov 26 16:42:23 2006 1.51 GB 1.51 GB (current mirror)
Fri Oct 27 02:11:15 2006 2.02 MB 1.51 GB
Mon Oct 16 13:49:50 2006 568 bytes 1.51 GB
Fri Sep 8 02:59:50 2006 0 bytes 1.51 GB
Tue Aug 15 10:18:48 2006 3.92 KB 1.51 GB
Sun Jul 30 22:28:59 2006 0 bytes 1.51 GB
Tue Jul 25 22:05:22 2006 0 bytes 1.51 GB
Thu Jul 13 10:14:01 2006 17.0 MB 1.53 GB
Thu Jun 29 03:34:39 2006 0 bytes 1.53 GB
Thu Jun 15 00:57:32 2006 273 MB 1.80 GB
Wed Apr 19 20:51:38 2006 0 bytes 1.80 GB
# rdiff-backup --force --remove-older-than "2006-08-25" /var/backups/zielverzeichnis/
Deleting increments at times:
Mon Apr 3 19:48:15 2006
Mon Apr 3 21:35:17 2006
Tue Apr 11 22:45:13 2006
Tue Apr 11 23:17:34 2006
Wed Apr 19 20:51:38 2006
Wed May 3 01:44:03 2006
Wed May 10 21:48:46 2006
Thu Jun 15 00:57:32 2006
Thu Jun 29 03:34:39 2006
Thu Jul 13 10:14:01 2006
Tue Jul 25 22:05:22 2006
Sun Jul 30 22:28:59 2006
Tue Aug 15 10:18:48 2006
/usr/local/bin/bat
speichern.[ $( bat ) -lt 4 ] && beep
# directory of the battery status
bat=/proc/acpi/battery/BAT0
IFS=":"
echo $(( $( cat $bat/state $bat/info | while read a b; do
if [ "$a" == "remaining capacity" ]; then
echo -n "$b" | sed "s/[ mAh]//g"
echo -n " * 100 / "
fi
if [ "$a" == "last full capacity" ]; then
echo -n $b | sed "s/[ mAh]//g"
fi;
done ) ))
xev
starten, die Keycodes der Tasten herausfinden und in die Datei .Xmodmap
im home Directory eintragen mit den zugeorndneten Funktionen.
Eine .Xmodmap
könnte z.B. so aussehen:
keycode 144 = XF86AudioPrev
keycode 151 = XF86Launch1
keycode 153 = XF86AudioNext
keycode 159 = XF86LaunchA
keycode 160 = XF86AudioMute
keycode 161 = XF86Calculator
keycode 162 = XF86AudioPlay
keycode 164 = XF86AudioStop
keycode 174 = XF86AudioLowerVolume
keycode 176 = XF86AudioRaiseVolume
keycode 178 = XF86WWW
keycode 222 = XF86PowerOff
keycode 223 = XF86Sleep
keycode 227 = XF86WakeUp
keycode 229 = XF86Search
keycode 230 = XF86Favorites
keycode 231 = XF86Refresh
keycode 232 = XF86Stop
keycode 233 = XF86Forward
keycode 234 = XF86Back
keycode 235 = XF86OfficeHome
keycode 236 = XF86Mail
keycode 237 = XF86Video
$HOME/.kde/Autostart/
eine Datei mit folgendem Inhalt anlegt:
#!/bin/bash
/usr/bin/xmodmap $HOME/.Xmodmap
umount /mnt/devicename
e2fsck -f /dev/mapper/devicename
resize2fs /dev/mapper/devicename 800G # blockdevice verkleinern (800G ist kleiner als die Summe der verbleibenden Platten)
lvreduce -L 800G /dev/mapper/devicename
pvmove -v /dev/sdc
vgreduce devicename /dev/sdc
pvremove /dev/sdc
mount /mnt/devicename
umount /mnt/devicename
e2fsck -f /dev/mapper/devicename
pvcreate /dev/sdc
vgextend devicename /dev/sdc
lvextend -L +500G /dev/mapper/devicename
resize2fs /dev/mapper/devicename # ohne Groessenangabe wird das Dateisystem maximiert
mount /mnt/devicename
wodim -tao -v dev=/dev/hdc image.iso
# bzw
cdrecord -tao -v dev=/dev/hdc image.iso
mkisofs -iso-level 3 -J -joliet-long -R /verzeichnis1 /verzeichnis2 | wodim -v fs=6m dev=/dev/hdc -
apt-get install k3b cdparanoia libflac++5 libk3b2 vcdimager
apt-get install bluetooth bluez-utils kdebluetooth smstools
invoke-rc.d bluez-utils start
hcitool scan
rfcomm bind 0 00:01:E3:0B:A3:80 # Die Adresse vom scan
invoke-rc.d smstools start
gsmsendsms -d /dev/rfcomm0 017990123456 "Nachrichtentext ..."
obexftp -b 00:01:E3:0B:A3:80 --put file.mp3
convert vid:*.jpg index.jpg
convert *.jpg pix%03d.jpg
convert -sample 40% -normalize -quality 60 *.jpg zielverzeichnis/pix%03d.jpg
# Wenn zuviele Dateien gleichzeitig verarbeitet werden sollen, dann wird convert sehr langsam und es empfiehlt sich:
for i in *.jpg; do echo $i; convert -sample 40% -normalize -quality 60 $i zielverzeichnis/$i; done
mencoder mf://directory/*.jpg -audiofile musik.mp3 -mf w=640:h=480:fps=25:type=jpg -vf scale=640:480 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=3000:vhq -ffourcc XVID -oac copy -idx -o myvideo.avi
mencoder -ovc lavc -lavcopts vcodec=mjpeg -vf rotate=1 -oac copy original.asf -o output.avi
mencoder in.avi -o output.avi -oac mp3lame -srate 11025 -channels 1 -af-adv force=1 -lameopts preset=medium:aq=0 -ovc lavc -lavcopts vcodec=msmpeg4:vbitrate=300
loadkeys de-latin1
# ersetze "foo" durch "bar" in allen Dateien
find -path '*/.svn' -prune -o -type f -print0 | xargs -0 -n 1 sed -i 's/foo/bar/g'
apt-get install googleearth-package
make-googleearth-package
dpkg -i googleearth_4.2.198.2451+0.4.0-1_i386.deb # Name ändert sich natürlich
rm GoogleEarthLinux.bin
dd bs=512b conv=noerror if=/dev/sda of=backup.img
cat
en einer Binärdatei):
alias sane='echo -e "\\033c"; tput is2; stty $(stty -g)'
echo startkde | xinit /proc/self/fd/0 -- /usr/bin/Xnest :2
find -type f -print0 | xargs -0 chmod 644
find -type d -print0 | xargs -0 chmod 755
apt-key adv --recv-keys 23E7166788B63E1E
# oder:
# gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 07DC563D1F41B907 # Es muss natürlich der richtige key eingetragen werden
# gpg --armor --export 07DC563D1F41B907 | apt-key add -
adduser --disabled-login --home /var/backups/rdiff rdiff
cd leeres_verzeichnis
cdparanoia -B
for i in *.wav; do lame $i; done
mkfs.ext2 /dev/ram0 && mount /dev/ram0 /mnt/ramdisk
losetup -e aes -k 256 /dev/loop/0 file_or_device
mkfs.ext3 /dev/loop/0
losetup -d /dev/loop/0
# Das Dateisystem mounten (geht auch automatisch per fstab):
mount -oloop -oencryption=aes -okeybits=256 file_or_device /mnt/secret
echo $[$RANDOM%6+1]
# als user
watch -n 1 'dmesg|tail -n $[$LINES-2]'
# als root
while sleep 0.1; do dmesg -c; done
Error 2: Bad File or Directory Type
# Inode Size herausbekomen (statt sda2 muss natuerlich das ensprechende blockdevice angegeben werden)
tune2fs -l /dev/sda2 | grep "Inode size"
# Inode Size neu setzen (hat bei mir nicht funktioniert, war nicht supported):
# (Achtung: das ist ein grosses i, oben ist ein kleines l. Je nach Schriftart nicht zu unterscheiden :-)
tune2fs -I 128 /dev/sda2
# Die Inode Size direkt beim erstellen des Dateisystems anzugeben hat geholfen:
mkfs.ext3 -I 128 /dev/hda2
\texttrademark
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Feel free to leave a beer to my bitcoin address: 1JwiWthkzWRQ9dmaqTCfQUnyoYFcJjbURt