BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

rc.d-Skripte mit Hilfe von service ausführen

Seit FreeBSD 7.3 und 8.1 können die rc.d-Skripte auch mit Hilfe von service ausgeführt werden. Im folgenden Beispiel wird getestet ob der Apache-Webserver läuft:

# service apache22 status
apache22 is running as pid 8052.

Desweiteren können Services auch gestartet, gestoppt oder neugestartet werden. Mit Hilfe der -e Option werde alle Services angezeigt, welche beim Systemstart automatisch gestartet werden:

# service -e
/etc/rc.d/hostid
/etc/rc.d/hostid_save
/etc/rc.d/ip6addrctl
/etc/rc.d/cleanvar
/etc/rc.d/devd
/etc/rc.d/pflog
/etc/rc.d/pf
/etc/rc.d/newsyslog
/etc/rc.d/syslogd
/etc/rc.d/dmesg
/etc/rc.d/virecover
/etc/rc.d/motd
/etc/rc.d/ntpd
/usr/local/etc/rc.d/mysql-server
/usr/local/etc/rc.d/tinderd
/usr/local/etc/rc.d/apache22
/etc/rc.d/sshd
/etc/rc.d/sendmail
/etc/rc.d/cron
/etc/rc.d/jail
/etc/rc.d/mixer
/etc/rc.d/bgfsck

Auf FreeBSD ist service seit FreeBSD 7.3 und 8.1 standardmässig im Basissystem vorhanden. Mehr Informationen zu service findet man in der Manpage service(1).

 Permalink

Wörter von zwei Dateien vergleichen

Mit Hilfe von wdiff lassen sich die einzelnen Wörter von zwei Dateien vergleichen. Im FreeBSD-Portbaum findet man wdiff unter textproc/wdiff:

# cd /usr/ports/textproc/wdiff && make install clean

Werden nun zwei Dateien mit wdiff verglichen, wird angezeigt welche Wörter hinzugekommen und welche entfernt wurden:

# cat datei1
I like FreeBSD.
# cat datei2
I love FreeBSD.
http://www.FreeBSD.org/
# wdiff datei1 datei2
I [-like-] {+love+} FreeBSD.
{+http://www.FreeBSD.org/+}

Mit der -s Option wird zusätzlich eine Statistik über die Veränderungen angezeigt:

# wdiff -s datei1 datei2
I [-like-] {+love+} FreeBSD.
{+http://www.FreeBSD.org/+}
datei1: 3 words  2 66% common  0 0% deleted  1 33% changed
datei2: 4 words  2 50% common  1 25% inserted  1 25% changed

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

 Permalink

PDF-Dateien durchsuchen

Mit Hilfe von pdfgrep kann eine PDF-Datei wie mit grep(1) durchsucht werden. Im FreeBSD-Portbaum findet man pdfgrep unter textproc/pdfgrep:

# cd /usr/ports/textproc/pdfgrep && make install clean

Nun kann die PDF-Datei nach Wörtern oder regulären Ausdrücken durchsucht werden und alle Zeilen welche den Suchbegriff beinhalten werden ausgegeben:

# pdfgrep "zpool upgrade" zfsadmin.pdf
Upgrading ZFS Storage Pools (zpool upgrade) .............21
Upgrading ZFS Storage Pools (zpool upgrade)
Upgrading ZFS Storage Pools (zpool upgrade)
version to take advantage of the latest features by using the zpool upgrade command. In
you can upgrade your pools with the zpool upgrade command to take advantage of the pool
action: Upgrade the pool using âzpool upgradeâ. Once this is done, the
# zpool upgrade -v
Then, you can run the zpool upgrade command to upgrade your pools. For example:
# zpool upgrade -a
zpool upgrade, 78

Mit der -n Option wird die Seitezahl angezeigt auf welcher Seite im Dokument man die angezeigte Zeile findet:

# pdfgrep -n "zpool upgrade" zfsadmin.pdf 
3: Upgrading ZFS Storage Pools (zpool upgrade) .............21
13: Upgrading ZFS Storage Pools (zpool upgrade)
21: Upgrading ZFS Storage Pools (zpool upgrade)
21: version to take advantage of the latest features by using the zpool upgrade command. In
78: you can upgrade your pools with the zpool upgrade command to take advantage of the pool
78: action: Upgrade the pool using âzpool upgradeâ. Once this is done, the
78: # zpool upgrade -v
79: Then, you can run the zpool upgrade command to upgrade your pools. For example:
79: # zpool upgrade -a
192: zpool upgrade, 78

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

Comments (2)  Permalink

Mehrere Dateien zeilenweise zusammenführen

Mit Hilfe von lam lassen sich die Zeilen von mehreren Dateien zusammenführen. Im folgenden Beispiel werden drei verschiedene Dateien verwendet:

# cat datei1 
1
2
3
4
5
# cat datei2
a
b
c
d
e
# cat datei3
z
y
x
w
v

Nun lassen sich mit lam die jeweiligen Zeilen zusammenführen:

# lam datei1 datei2 datei3
1az
2by
3cx
4dw
5ev

Mit der -S Option kann ein Trennzeichen definiert werden, welches zwischen die Zeilen der verschiedenen Dateien dargestellt wird:

# lam datei1 -S " " datei2 datei3
1 a z
2 b y
3 c x
4 d w
5 e v
# lam datei1 -S "\
" datei2 datei3
1
a
z
2
b
y
3
c
x
4
d
w
5
e
v

Auch lassen sich jeweils zwei Zeilen einer einzelnen Datei zu einer verbinden:

# lam - - < datei1 
12
34
5

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

Comments (2)  Permalink

Informationen über Systembenutzer anzeigen

Mit Hilfe von logins lassen sich Informationen über lokale Systembenutzer auslesen. Mit der -d Option kann herausgefunden werden welche Benutzer identische Benutzer-IDs haben:

# logins -d
root            0       wheel           0       Charlie &
toor            0       wheel           0       Bourne-again Superuser

Möchte man auslesen, welche Benutzer der gleichen Gruppen angehören, so kann die -g Option verwerdet werden:

# logins -g wheel
root            0       wheel           0       Charlie &
beat            1001    users           1001    Beat Gätzi

Informationen über einen Benutzer erhält man mit der -l Option:

# logins -l beat
beat            1001    users           1001    Beat Gätzi

Für Informationen über die sekundären Gruppen der Benutzer verwendet man die -m Option. Durch die -t Option wird die Ausgabe nicht nach der Benutzer-ID sondern nach dem Benutzernamen sortiert:

# logins -m -t
_dhcp           65      _dhcp           65      dhcp programs
_pflogd         64      _pflogd         64      pflogd privsep user
avahi           558     avahi           558     Avahi Daemon User
beat            1001    users           1001    Beat Gätzi
                        wheel           0      
                        vboxusers       920    
bin             3       bin             7       Binaries Commands and Source
bind            53      bind            53      Bind Sandbox
clamav          106     clamav          106     Clam Antivirus
                        mail            6      
daemon          1       daemon          1       Owner of many system processes
games           7       games           13      Games pseudo-user
haldaemon       560     haldaemon       560     HAL Daemon User
kmem            5       nogroup         65533   KMem Sandbox
mailnull        26      mailnull        26      Sendmail Default User
man             9       man             9       Mister Man Pages
messagebus      556     messagebus      556     D-BUS Daemon User
minbif          926     minbif          926     Minbif Daemon User
news            8       news            8       News Subsystem
nobody          65534   nobody          65534   Unprivileged user
operator        2       operator        5       System &
polkit          562     polkit          562     PolicyKit Daemon User
pop             68      mail            6       Post Office Owner
proxy           62      proxy           62      Packet Filter pseudo-user
pulse           563     pulse           563     PulseAudio System User
root            0       wheel           0       Charlie &
                        operator        5      
smmsp           25      smmsp           25      Sendmail Submission User
sshd            22      sshd            22      Secure Shell Daemon
test            1002    test            1002    Testbenutzer
toor            0       wheel           0       Bourne-again Superuser
tty             4       nogroup         65533   Tty Sandbox
uucp            66      uucp            66      UUCP pseudo-user
www             80      www             80      World Wide Web Owner

Informationen über das home-Verzeichnis und die verwendete Shell erhält man mit der -x Option. Verwendet man die -u Option werden keine Systembenutzer angezeigt:

# logins -x -u
beat            1001    users           1001    Beat Gätzi
                        /home/beat
                        /bin/csh
test            1002    test            1002    Testbenutzer
                        /home/test
                        /bin/tcsh

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

 Permalink

Loginnamen anzeigen

Mit Hilfe von logname lässt sich anzeigen mit welchem Benutzer man sich angemeldet hat:

# logname
beat

Dies funktioniert auch, wenn der Benutzer mit su(1) gewechselt oder die LOGNAME oder USER Umgebungsvariablen verändert wurden:

# su -
# id
uid=0(root) gid=0(wheel) groups=0(wheel),5(operator)
# logname
beat
 Permalink

Benutzer sperren

Möchte man einen lokalen Benutzer sperren so kann dazu pw lock als root verwendet werden:

# pw lock <Benutzernamen>

Soll der Benutzer danach wieder entsperrt werden, kann dies mit pw unlock gemacht werden:

# pw unlock <Benutzernamen>
 Permalink

Unterbrochener fetch-Transfer wiederaufnehmen

Lädt man eine grössere Datei mit fetch herunter, kann durch das verwenden der -R Option verhindert werden, dass die heruntergeladene Datei bei einem Transferunterbruch gelöscht wird:

# fetch -R ftp://ftp.ch.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.1/FreeBSD-8.1-RELEASE-i386-disc1.iso
FreeBSD-8.1-RELEASE-i386-disc1.iso             23% of  645 MB 1988 kBps 04m16s
/tmp: write failed, filesystem is full
FreeBSD-8.1-RELEASE-i386-disc1.iso             23% of  645 MB 1986 kBps 04m14s
fetch: FreeBSD-8.1-RELEASE-i386-disc1.iso: No space left on device

Mit der -r Option kann danach ein allfällig abgebrochener Transfer fortgesetzt werden:

# fetch -r ftp://ftp.ch.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.1/FreeBSD-8.1-RELEASE-i386-disc1.iso
 Permalink

Terminkalender für die Kommandozeile

Mit Hilfe von when lassen sich Termine auf der Kommandozeile verwalten. Im FreeBSD -Portbaum findet man when unter deskutils/when:

# cd /usr/ports/deskutils/when && make install clean

Ruft man when das erste Mal auf, werden die benötigten Dateien angelegt und der Standard-Editor festgelegt:

# when 
You can now set up your calendar. This involves creating a directory ~/.when, and making
a couple of files in it. If you want to do this, type y and hit return.
y
You can edit your calendar file using your favorite editor. Please enter the command you
want to use to run your editor, or hit return to accept this default:
  emacs -nw
nvi
You can now add items to your calendar file. Do ``when --help'' for more information.
Sat 2010 Nov 27   4:03

Starten man when mit der e Option, wird ein Editor gestartet und die Termine können eingtragen werden. Neben einmaligen Terminen lassen sich auch wiederkehrende Eintrage anlegen:

# when e
2010 nov 27 , Essen bei xyz 18:00
2010 nov 28 , Match 17:00
w=th , Training 20:30

Wird nun when nochmals aufgerufen, werden die Termine der nächsten zwei Wochen angezeigt:

# when 
Sat 2010 Nov 27   4:07

today      2010 Nov 27 Essen bei xyz 18:00
tomorrow   2010 Nov 28 Match 17:00
Thu        2010 Dec  2 Training 20:30
Thu        2010 Dec  9 Training 20:30

Mit der w Option lassen sich nur Termine der kommenden Woche anzeigen:

# when w
Sat 2010 Nov 27   4:10

today      2010 Nov 27 Essen bei xyz 18:00
tomorrow   2010 Nov 28 Match 17:00
Thu        2010 Dec  2 Training 20:30

Verwendet man die c Option wird der Kalender des aktuellen, des letzen und des kommenden Monats dargestellt:

# when c
-------October-------  ------November-------  ------December-------
 S  M  T  W  T  F  S    S  M  T  W  T  F  S    S  M  T  W  T  F  S 
                1  2       1  2  3  4  5  6             1  2  3  4 
 3  4  5  6  7  8  9    7  8  9 10 11 12 13    5  6  7  8  9 10 11 
10 11 12 13 14 15 16   14 15 16 17 18 19 20   12 13 14 15 16 17 18 
17 18 19 20 21 22 23   21 22 23 24 25 26 27   19 20 21 22 23 24 25 
24 25 26 27 28 29 30   28 29 30               26 27 28 29 30 31 

Mehr Informationen zu when findet man in der Manpage when(1). Vielen Dank an Lars für den Tip.

 Permalink

Apache Statistiken in der Konsole betrachten

Mit Hilfe von goaccess kann eine Apache-Logdatei eingelesen und die entsprechenden Statistiken angezeigt werden. Im FreeBSD-Portbaum findet man goaccess unter sysutils/goaccess:

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

Mit der -f Option wird der Pfad zur Apache-Logdatei angegeben, danach werden die Statistiken erstellt und angezeigt:

# goaccess -f /var/log/httpd-access.log
General Statistics - Information analyzed from log file - Unique totals                                                                                                                                                                                   [Active Module 1]

  Total Requests  1527869   Total Unique Visitors 1764    Total Referrers  163    Log  280.69 MB
  Failed Requests 0         Total Unique Files    40269   Total Unique 404 41107  BW   N/A
  Generation Time 22 sec    Total Static Files    1732    /var/log/httpd-access.log

 1 - Unique visitors per day - Including spiders
 HTTP requests having the same IP, same date and same agent will be considered a unique visit

  2       0.11%   20/Nov/2010      ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  5       0.28%   19/Nov/2010      ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  7       0.40%   18/Nov/2010      ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  4       0.23%   17/Nov/2010      |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  6       0.34%   16/Nov/2010      |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  3       0.17%   15/Nov/2010      |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

 2 - Requested files (Pages-URL)
 Top 6 different files requested sorted by requests - percent - [bandwidth]

  401306  26.27%  /server-status?auto
  201017  13.16%  /tinderbox/index.php
  190187  12.45%  /tb/index.php?action=latest_buildports
  110549  7.24%   /tb/index.php?action=latest_buildports_rss
  2467    0.16%   /tb/index.php
  880     0.06%   /tb/index.php?action=list_tinderd_queue

 3 - Requested static files - (Static content: png,js,etc)
 Top 6 different static files requested, sorted by requests - percent - [bandwidth]

  189031  12.37%  /tb/templates/paefchen/tinderstyle.css
  188987  12.37%  /tb/templates/paefchen/images/hdr_fill.png
  188958  12.37%  /tb/templates/paefchen/tinderstyle.js
  459     0.03%   /favicon.ico
  404     0.03%   //templates/paefchen/tinderstyle.js
  402     0.03%   //templates/paefchen/images/hdr_fill.png

 4 - Referrers URLs
 Top 6 different referrers sorted by requests

  726258  47.53%  -
  368101  24.09%  https://tinderbox.chruetertee.ch/tb/index.php?action=latest_buildports
  183953  12.04%  https://tinderbox.chruetertee.ch/tb/templates/paefchen/tinderstyle.css
  147500  9.65%   https://tinderbox.chruetertee.ch/tb/index.php
  40454   2.65%   http://tinderbox.chruetertee.ch/
  38295   2.51%   https://tinderbox.chruetertee.ch/tb/

 5 - HTTP 404 Not Found response code
 Top 6 different 404 sorted by requests

  78      0.01%   /tb/templates/default/index.php
  54      0.00%   /phpMyAdmin/scripts/setup.php
  53      0.00%   /phpmyadmin/scripts/setup.php
  47      0.00%   /mysqladmin/scripts/setup.php
  46      0.00%   /php-my-admin/scripts/setup.php
  45      0.00%   /phpMyAdmin-2.6.3/scripts/setup.php

 6 - Operating Systems
 Top 6 different Operating Systems sorted by unique requests

  1161    65.82%  Unknown          ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  387     21.94%  BSD              |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  167     9.47%   Windows          |||||||||||||||||||||||||||||||||
  25      1.42%   Macintosh        |||||
  24      1.36%   Linux            ||||


 7 - Browsers
 Top 6 different browsers sorted by unique requests

  1063    60.26%  Unknown          ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  464     26.30%  Firefox          |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  116     6.58%   MSIE             |||||||||||||||||||||||||
  78      4.42%   Others           |||||||||||||||||
  17      0.96%   Safari           |||
  16      0.91%   Crawlers         |||

 8 - Hosts
 Top 6 different hosts sorted by requests

  390975  25.59%  tinderbox.chruete||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  338434  22.15%  212.47.xxx.xxx   |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  201015  13.16%  212.47.xxx.xxx   |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  110549  7.24%   93.186.xxx.xxx   |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  40700   2.66%   85.2.xxx.xxx     ||||||||||||||||||||||||
  28036   1.83%   62.203.xxx.xxx   ||||||||||||||||

 10 - Top Referring Sites
 Top 6 different referring sites sorted by requests

  61064   4.00%   tinderbox.chruetertee.ch
  26      0.00%   xyz
  16      0.00%   www.netcraft.com
  6       0.00%   xyz
  4       0.00%   random.yahoo.com
  4       0.00%   xyz

 11 - Top Keyphrases used on Google's search engine
 Top 6 different keyphrases sorted by requests

  3       0.00%   free proxy checker

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

Comments (1)  Permalink
Prev Next61-70/521