BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanneKontakt

5 Jahre chruetertee.ch

Vor fünf Jahren war es soweit, chruetertee.ch ging online.

Ganz herzlich danken möchte ich Alain, der mir während des ersten Jahres von chruetertee.ch und als der Server einen Hardwaredefekt hatte eine Jail zur Verfügung gestellt hat und regelmässig Support für das Flux CMS bietet.

Auch danken möchte ich allen, die regelmässig hier lesen, Kommentare schreiben oder chruetertee.ch verlinkt haben.

Ausserdem möchte ich an dieser Stelle miwi für seine Zeit und Geduld als Mentor, decke für seine Arbeit im gecko- und vbox-Team sowie andreast für seine Arbeit im gecko-Team danken.

Comments (5)  Permalink

Wartezeit des Bootloaders verändern

Standardmässig wartet der FreeBSD-Bootloader 10 Sekunden auf eine Eingabe bis der Bootvorgang vortgesetzt wird. Diese Zeit kann durch einen autoboot_delay-Eintrag in der /boot/loader.conf verändert werden. Im folgenden Beispiel wird die Wartezeit auf drei Sekunden gesenkt:

autoboot_delay="3"
Related Entries:
Neustart durch Ctrl+Alt+Del verhindern
Label- und Partitionseditor von sysinstall verwenden
Automatisches Aktualisieren von Konfigurationsdateien
Quellcode in der Tinderbox speichern
Liste aller Ports erstellen die nicht als Abhängigkeiten installiert wurden
Comments (0)  Permalink

Neustart durch Ctrl+Alt+Del verhindern

Möchte man verhindern, dass ein System durch das Drücken von Ctrl+Alt+Del neu gestartet werden kann, so kann folgende Option der Kernel-Konfiguration hinzugefügt werden:

options    SC_DISABLE_REBOOT

Danach muss der Kernel neu gebaut und das System neu gestartet werden.

Related Entries:
Wartezeit des Bootloaders verändern
Label- und Partitionseditor von sysinstall verwenden
Automatisches Aktualisieren von Konfigurationsdateien
Quellcode in der Tinderbox speichern
Liste aller Ports erstellen die nicht als Abhängigkeiten installiert wurden
Comments (0)  Permalink

Konsolenausgabe löschen

Arbeitet man unter FreeBSD auf der Konsole und möchte die bestehenden Ausgaben löschen, so kann dies durch das Drücken von Ctrl + l gemacht werden. Dies funktioniert auch nachdem man sich bereits von der Konsole abgemeldet hat.

Comments (0)  Permalink

Fehlende gzip-Dateiendung hinzufügen

Fehlt einer mit gzip komprimierten Datei die .gz-Dateiendung, so kann die Datei unter Umständen nochmals mit gzip komprimiert werden:

# file *
test:                          gzip compressed data, from Unix, last modified: Sat May  2 17:41:57 2009
virtualbox-2.2.2r19307.tar.gz: gzip compressed data, from Unix, last modified: Mon May  4 22:55:32 2009
# gzip virtualbox-2.2.2r19307.tar.gz
gzip: virtualbox-2.2.2r19307.tar.gz already has .gz suffix -- unchanged
# gzip test
# file *
test.gz:                       gzip compressed data, was "test", from Unix, last modified: Sat Aug 28 23:27:41 2010
virtualbox-2.2.2r19307.tar.gz: gzip compressed data, from Unix, last modified: Mon May  4 22:55:32 2009

Mit Hilfe von zforce kann nun allen mit gzip komprimierten Dateien ohne .gz-Dateiendung diese angefügt werden:

# file *
firefox.txt:                   news or mail text
virtualbox-2.2.1r19283.tar.gz: gzip compressed data, from Unix, last modified: Sat May  2 17:41:57 2009
virtualbox-2.2.2r19307.tar:    gzip compressed data, from Unix, last modified: Mon May  4 22:55:32 2009
virtualbox-2.2.2r19378.tar.gz: gzip compressed data, from Unix, last modified: Tue May  5 18:42:19 2009
virtualbox-2.2.2r19453.tar.gz: gzip compressed data, from Unix, last modified: Wed May  6 21:33:10 2009
# zforce *
virtualbox-2.2.2r19307.tar -- renamed to virtualbox-2.2.2r19307.tar.gz
# file *
firefox.txt:                   news or mail text
virtualbox-2.2.1r19283.tar.gz: gzip compressed data, from Unix, last modified: Sat May  2 17:41:57 2009
virtualbox-2.2.2r19307.tar.gz: gzip compressed data, from Unix, last modified: Mon May  4 22:55:32 2009
virtualbox-2.2.2r19378.tar.gz: gzip compressed data, from Unix, last modified: Tue May  5 18:42:19 2009
virtualbox-2.2.2r19453.tar.gz: gzip compressed data, from Unix, last modified: Wed May  6 21:33:10 2009

Auf FreeBSD ist zforce standardmässig im Basissystem vorhanden. Mehr Informationen zu zforce findet man in der Manpage zforce(1).

Comments (0)  Permalink

Datei sortieren

Mit Hilfe von sort lässt sich der Inhalt einer Datei oder die Ausgabe der Standardausgabe sortieren:

# cat testdatei 
1
k
5
l
0
e
c
d
# sort testdatei 
0
1
5
c
d
e
k
l

Sollen Zahlen sortiert werden, kann die -n Option verwendet werden so dass die Zahlen nach ihrem Wert sortiert werden:

# cat testdatei 
1
12
103
2
22
222
4
5
99
# sort testdatei
1
103
12
2
22
222
4
5
99
# sort -n testdatei
1
2
4
5
12
22
99
103
222

Soll das Ergebnis in umgekehrter Reihenfolge ausgegeben werden, kann die -r Option verwendet werden:

# sort -r testdatei
l
k
e
d
c
5
1
0

Durch die -u Option werden keine identischen Zeilen angezeigt:

# cat testdatei
c
b
a
c
b
a
# sort -u testdatei 
a
b
c

Auf FreeBSD ist sort standardmässig im Basissystem vorhanden. Mehr Informationen zu sort findet man in der Manpage sort(1).

Comments (0)  Permalink

Sortierte Datei durchsuchen

Mit Hilfe von look kann eine sortierte Datei nach Zeilen durchsucht werden, welche mit einer bestimmten Zeichenfolge beginnen:

# look 146.78.xxx.xxx testdatei
146.78.xxx.xxx: 1045 | 0

Da look nur mit sortierten Listen funktioniert ist es auf eine solche Suche optimiert und vor allem bei grösseren Dateien schneller als grep(1):

# du -h testdatei 
 29M    testdatei
# /usr/bin/time look 146.78.xxx.xxx testdatei
146.78.xxx.xxx: 1045 | 0
        0.00 real         0.00 user         0.00 sys
# /usr/bin/time grep ^146.78.xxx.xxx testdatei
146.78.xxx.xxx: 1045 | 0
        0.16 real         0.16 user         0.00 sys

Auf FreeBSD ist look standardmässig im Basissystem vorhanden. Mehr Informationen zu look findet man in der Manpage look(1).

Comments (0)  Permalink

Laufende Prozesse als Baum darstellen

Mit Hilfe von dtpstree lassen sich die laufenden Prozesse eines Systems als Baum darstellen. So kann angezeigt werden, welcher Prozess von welchem gestartet wurde. Bei dtpstree handelt es sich um eine Reimplementation von pstree. Im FreeBSD -Portbaum findet man dtpstree unter sysutils/dtpstree:

# cd /usr/ports/sysutils/dtpstree && make install clean

Ruft man dtpstree ohne Optionen auf, so werden alle für den Benutzer sichtbaren Prozesse als Baum angezeigt

# dtpstree 
init-+-adjkerntz
     +-console-kit-daemon
     +-cron
     +-2*[dbus-daemon]
     +-dbus-launch
     +-devd
     +-2*[dhclient]
     +-gconfd-2
     +-8*[getty]
     +-gpg-agent
     +-hald---hald-runner-+-hald-addon-mouse-sy
     |                    +-hald-addon-storage
     +-moused
     +-pflogd---pflogd
     +-powerd
     +-sshd
     +-syslogd
     +-wpa_supplicant
     +-xdm-+-Xorg
           +-xdm---fluxbox-+-csh---Eterm---csh---ssh
                           +-csh---sh---sh---thunderbird-bin
                           +-csh---sh---sh---firefox-bin---npviewer.bin
                           +-2*[csh---xterm---csh]
                           +-5*[csh---xterm---csh---ssh]
                           +-csh---xterm---csh---dtpstree
                           +-gkrellm
                           +-xearth
                           +-xscreensaver

Verwendet man die -p Option so wird jeweils die Prozess-ID jedes Prozesses angezeigt:

# dtpstree -p
init(1)-+-adjkerntz(131)
        +-console-kit-daemon(1775)
        +-cron(1692)
        +-dbus-daemon(1627)
        +-dbus-daemon(1881)
        +-dbus-launch(1880)
        +-devd(960)
        +-dhclient(1281)
        +-dhclient(1298)
        +-gconfd-2(1883)
        +-getty(1757)
        +-getty(1758)
        +-getty(1759)
        +-getty(1760)
        +-getty(1761)
        +-getty(1762)
        +-getty(1763)
        +-getty(1764)
        +-gpg-agent(1888)
        +-hald(1772)---hald-runner(1776)-+-hald-addon-mouse-sy(1781)
        |                                +-hald-addon-storage(1802)
        +-moused(1603)
        +-pflogd(637)---pflogd(646)
        +-powerd(1543)
        +-sshd(1681)
        +-syslogd(1321)
        +-wpa_supplicant(444)
        +-xdm(1765)-+-Xorg(1771)
                    +-xdm(1818)---fluxbox(1830)-+-csh(1836)---Eterm(1843)---csh(1844)---ssh(1860)
                                                +-csh(1861)---sh(1868)---sh(1872)---thunderbird-bin(1876)
                                                +-csh(1889)---sh(1896)---sh(1900)---firefox-bin(1904)---npviewer.bin(2259)
                                                +-csh(1911)---xterm(1918)---csh(1920)
                                                +-csh(1946)---xterm(1953)---csh(1955)---ssh(1964)
                                                +-csh(1965)---xterm(1972)---csh(1974)---ssh(1983)
                                                +-csh(1984)---xterm(1991)---csh(1993)---ssh(2002)
                                                +-csh(9454)---xterm(9461)---csh(9463)---ssh(9472)
                                                +-csh(9592)---xterm(9599)---csh(9601)---ssh(9614)
                                                +-csh(9737)---xterm(9744)---csh(9746)
                                                +-csh(9903)---xterm(9910)---csh(9912)---dtpstree(9931)
                                                +-gkrellm(1832)
                                                +-xearth(1834)
                                                +-xscreensaver(1833)

Mit der -u Option werden die Änderungen der Benutzers unter welchem der Prozess läuft sichtbar:

#  dtpstree -u
init-+-adjkerntz
     +-console-kit-daemon
     +-cron
     +-dbus-daemon(messagebus)
     +-dbus-daemon(beat)
     +-dbus-launch(beat)
     +-devd
     +-dhclient
     +-dhclient(_dhcp)
     +-gconfd-2(beat)
     +-8*[getty]
     +-gpg-agent(beat)
     +-hald(haldaemon)---hald-runner(root)-+-hald-addon-mouse-sy
     |                                     +-hald-addon-storage
     +-moused
     +-pflogd---pflogd(_pflogd)
     +-powerd
     +-sshd
     +-syslogd
     +-wpa_supplicant
     +-xdm-+-Xorg
           +-xdm---fluxbox(beat)-+-csh---Eterm---csh---ssh
                                 +-csh---sh---sh---thunderbird-bin
                                 +-csh---sh---sh---firefox-bin---npviewer.bin
                                 +-2*[csh---xterm---csh]
                                 +-5*[csh---xterm---csh---ssh]
                                 +-csh---xterm---csh---su---csh(root)---dtpstree
                                 +-gkrellm
                                 +-xearth
                                 +-xscreensaver

Benutze man die -a Option werden die Argumente, mit der -t Option die Pfade jedes Prozesses ausgegeben:

# dtpstree -a -t
/sbin/init --
  +-adjkerntz -i
  +-/usr/local/sbin/console-kit-daemon
  +-/usr/sbin/cron -s
  +-/usr/local/bin/dbus-daemon --system
  +-/usr/local/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
  +-dbus-launch --autolaunch 0e299d9692a650fd98b8ab2a00001627 --binary-syntax --close-stderr
  +-/sbin/devd
  +-dhclient: em0 [priv]
  +-dhclient: em0
  +-/usr/local/libexec/gconfd-2
  +-/usr/libexec/getty Pc ttyv0
  +-/usr/libexec/getty Pc ttyv1
  +-/usr/libexec/getty Pc ttyv2
  +-/usr/libexec/getty Pc ttyv3
  +-/usr/libexec/getty Pc ttyv4
  +-/usr/libexec/getty Pc ttyv5
  +-/usr/libexec/getty Pc ttyv6
  +-/usr/libexec/getty Pc ttyv7
  +-/usr/local/bin/gpg-agent --sh --no-use-standard-socket --daemon --default-cache-ttl 60 --max-cache-ttl 999999
  +-/usr/local/sbin/hald
  |   +-hald-runner
  |       +-hald-addon-mouse-sysmouse: /dev/psm0
  |       +-hald-addon-storage: /dev/acd0
  +-/usr/sbin/moused -p /dev/psm0 -t auto
  +-pflogd: [priv]
  |   +-pflogd: [running] -s 116 -i pflog0 -f /var/log/pflog
  +-/usr/sbin/powerd -a max -b min
  +-/usr/sbin/sshd
  +-/usr/sbin/syslogd -ss
[...]

Auch in einer Jails kann dtpstree verwendet werden obwohl der init-Prozess in der Jail nicht sichtbar ist:

# dtpstree
cron
httpd---10*[httpd]
2*[sendmail]
sshd
syslogd
tcsh---dtpstree

Mehr Informationen zu dtpstree findet man in der Manpage dtpstree(1).

Comments (0)  Permalink

Zugriffs- und Modifikationszeit einer Datei ändern

Mit Hilfe der -a Option von touch kann die Zugriffszeit einer Datei verändert werden. Mit der -t Option wird die neue Zeit angegeben:

# stat -f "modify: %Sm access: %Sa" testdatei
modify: Jul 31 15:04:12 2010 access: Jul 31 15:04:05 2010
# touch -a -t 198010020210 testdatei
# stat -f "modify: %Sm access: %Sa" testdatei
modify: Jul 31 15:04:12 2010 access: Oct  2 02:10:00 1980

Identisch kann mit der -m Option die Modifikationszei der Datei angepasst werden:

# touch -m -t 198010020210 testdatei
# stat -f "modify: %Sm access: %Sa" testdatei
modify: Oct  2 02:10:00 1980 access: Oct  2 02:10:00 1980

Verwendet man nur die -t Option wird sowohl die Zugriffs- als auch die Modifikationszeit der Datei geändert:

# touch -t 201010020210 testdatei
# stat -f "modify: %Sm access: %Sa" testdatei
modify: Oct  2 02:10:00 2010 access: Oct  2 02:10:00 2010

Mit der -r Option werden die Zugriffs- und Modifikationszeiten einer anderen Datei kopiert:

# stat -f "modify: %Sm access: %Sa" testdatei*
modify: Oct  2 02:10:00 2010 access: Oct  2 02:10:00 2010
modify: Jul 31 15:04:45 2010 access: Jul 31 15:04:45 2010
# touch -r testdatei2 testdatei
# stat -f "modify: %Sm access: %Sa" testdatei*
modify: Jul 31 15:04:45 2010 access: Jul 31 15:04:45 2010
modify: Jul 31 15:04:45 2010 access: Jul 31 15:04:45 2010

Auf FreeBSD ist touch standardmässig im Basissystem vorhanden. Mehr Informationen zu touch findet man in der Manpage touch(1).

Comments (0)  Permalink

Dateien einer bestimmten Grösse anlegen

Mit Hilfe von tuncate können Dateien mit einer bestimmten Grösse angelegt oder die Grösse einer Datei angepasst werden. Im folgenden Beispiel wird eine Datein welche 10MB gross ist angelegt:

# truncate -s 10M testdatei
# ls -lh testdatei
-rw-r--r--  1 beat  wheel    10M 31 Jul 15:04 testdatei

Diese Datei kann danach um weitere 10MB vergrössert werden:

# truncate -s +10M testdatei
# ls -lh testdatei
-rw-r--r--  1 beat  wheel    20M 31 Jul 15:04 testdatei

Auch kann mit truncate eine Datei angelegt werden, welche die identische Grösse einer anderen Datei hat. In diesem Falle kann mit der -r Option die Datei angegeben werden welche als Ausgangsgrösse genommen werden soll:

# truncate -r testdatei testdatei2
# ls -l testdatei*
-rw-r--r--  1 beat  wheel  20971520 31 Jul 15:04 testdatei
-rw-r--r--  1 beat  wheel  20971520 31 Jul 15:04 testdatei2

Auf FreeBSD ist truncate standardmässig im Basissystem vorhanden. Mehr Informationen zu truncate findet man in der Manpage truncate(1).

Comments (0)  Permalink
Next1-10/436