BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

sendmail Statistiken erstellen

Mit Hilfe von mailstats können Statistiken des sendmail-Daemon erstellt werden. Dabei werden verschiedene Werte der sendmail-Mailer dargestellt. Der Wert msgsfr zählt alle vom Mailer versendeten, der Zähler msgsto die vom Mailer empfangenen Mails an. Die Werte bytes_from und bytes_to zeigen die Grösse der versendeten und empfangenen Mails in Bytes an. Die Anzahl zurückgewiesener Mails wird durch den Zähler msgsrej, die Anzahl verworfenen Mails wird durch den Zähler msgsdis angezeigt. In der Spalte T wird das Total aller Mailer angezeigt, die Spalte C zeigt die Anzahl TCP Verbindugen an:

# mailstats
Statistics from Sat Jan 17 03:01:03 2009
 M   msgsfr  bytes_from   msgsto    bytes_to  msgsrej msgsdis msgsqur  Mailer
 3        7      78364K        1          2K        0       0       0  local
 5       23      39201K       23         25K        0       0       0  esmtp
=====================================================================
 T       30     117565K       24         27K        0       0       0
 C       27                   49                    0

Möchte man die Statistiken einer gespeicherten sendmail-Statistikdatei anzeigen, so kann diese mit der -f Option an mailstats übergeben werden:

# mailstats -f /var/log/sendmail.st.3
Statistics from Sun Dec 21 22:18:17 2008
 M   msgsfr  bytes_from   msgsto    bytes_to  msgsrej msgsdis msgsqur  Mailer
 3       19         96K       17         98K        0       0       0  local
 5        2          2K        0          0K        1       0       0  esmtp
=====================================================================
 T       21         98K       17         98K        1       0       0
 C       20                    0                    1

Im FreeBSD und OpenBSD Basissystem ist mailstats bereits vorhanden. Mehr Informationen zu mailstats findet man in der Manpage mailstats(8).

 Permalink

FreeBSD mit einer GUID Partitionstabelle installieren

Ab dem FreeBSD 7.1-Release lässt sich FreeBSD mit Hilfe einer GUID Partitionstabelle anstatt des MBR starten. Damit lassen sich bis zu 128 Partitionen erstellen. Auch lassen sich Partitionen erstellen, welche grösser als 2TB sind.

Um FreeBSD mit einer GUID Partitionstabelle zu installieren, kann man zum Beispiel die FreeBSD-Installations DVD booten und dann den Fixit-Modus und das Live-Dateisystem der CDROM/DVD wählen. Im folgenden Beispiel wird die FreeBSD Installation mit einer GUID Partitionstabelle auf der Disk /dev/ad0 vorgenommen.

# ls /dev/ad0
/dev/ad0

Nun wird als erstes eine GUID Partitionstabelle auf die Disk geschrieben. Mit der -f Option wird ein allfällig vorhandenes Master Boot Record überschrieben:

# gpt create -f ad0

Danach wird das Booten von einer GUID Partitionstabelle ermöglicht. Dabei werden die Bootloader von der Installations-DVD installiert:

# gpt boot -b /dist/boot/pmbr -g /dist/boot/gptboot ad0

Jetzt können die verschiedenen Partitionen erstellt werden. Die Grösse, welche mit der -s Option angegeben wird, wird dabei in Anzahl Blocks (standardmässig 512B) angegeben. Im folgenden Beispiel wird eine 1GB grosse Root-Partition erstellt. Danach wird eine 1GB grosse Swap Partition, eine 1GB grosse Partition für /tmp und eine 2GB grosse Partition für /var erstellt. Mit dem restlichen Speicherplatz wird eine Partition erstellt, auf welcher /usr gemountet wird:

# gpt add -t ufs -s 2097152 ad0
# gpt add -t swap -s 2097152 ad0
# gpt add -t ufs -s 2097152 ad0
# gpt add -t ufs -s 4194304 ad0
# gpt add -t ufs ad0

Nun kann die Partitionstabelle mit dem show Kommando verifiziert werden:

# gpt show ad0
     start      size  index  contents
         0         1         PMBR
         1         1         Pri GPT header
         2        32         Pri GPT table
        34       128      1  GPT part - FreeBSD boot
       162   2097152      2  GPT part - FreeBSD UFS/UFS2
   2097314   2097152      3  GPT part - FreeBSD swap
   4194466   2097152      4  GPT part - FreeBSD UFS/UFS2
   6291618   4194304      5  GPT part - FreeBSD UFS/UFS2
  10485922   6291261      6  GPT part - FreeBSD UFS/UFS2
  16777183        32         Sec GPT table
  16777215         1         Sec GPT header

Einzelne Partitionen können, falls nötig, wieder entfernt werden. Dabei wird der Index der zu entfernenden Partition mit der -i Option angegeben:

# gpt remove -i 3 ad0

Die ganze Partitionstabelle kann, falls gewünscht, mit dem destroy Kommando wieder entfernt werden:

# gpt destroy ad0

Nun kann auf allen Partitionen ein Dateisystem erstellt werden:

# newfs -U /dev/ad0p2
# newfs -U /dev/ad0p4
# newfs -U /dev/ad0p5
# newfs -U /dev/ad0p6

Danach wird die Root-Partition nach /mnt gemountet. Ausserdem werden die Verzeichnisse für die restlichen Partitionen erstellt und entsprechend gemountet:

# mount /dev/ad0p2 /mnt
# mkdir /mnt/tmp
# mkdir /mnt/var
# mkdir /mnt/usr
# mount /dev/ad0p4 /mnt/tmp
# mount /dev/ad0p5 /mnt/var
# mount /dev/ad0p6 /mnt/usr

Nun wechselt man ins base Verzeichnis der Installations-DVD und setzt die DESTDIR Variable auf die gemountete Festplatte:

# cd /mnt2/7.1-RELEASE/base
# DESTDIR=/mnt
# export DESTDIR

Jetzt kann das Basissystem und der GENERIC -Kernel installiert werden:

# ./install.sh
You are about to extract the base distribution into /mnt/ -
are you SURE you want to do this over your installed system (y/n) y
# cd ../kernels
# ./install.sh GENERIC
# cd /mnt/boot
# mv GENERIC kernel

Nachdem die Installation abgeschlossen wurde, wird eine entsprechende fstab erstellt:

# cd /mnt/etc
# vi fstab
/dev/ad0p3      none    swap    sw      0       0
/dev/ad0p2      /       ufs     rw      1       1
/dev/ad0p4      /tmp    ufs     rw      2       2
/dev/ad0p6      /usr    ufs     rw      2       2
/dev/ad0p5      /var    ufs     rw      2       2

Zu guter Letzt werden die gemounteten Partitionen geunmountet und der Fixit-Modus verlassen:

# umount /mnt/usr
# umount /mnt/var
# umount /mnt/tmp
# cd && umount /mnt
# exit

Nachdem der Rechner neu gebootet wurde, startet das installierte FreeBSD und kann nun konfiguriert werden. Mehr Informationen zur GUID Partitionstabelle und zu gpt findet man in der Manpage gpt(8).

Comments (2)  Permalink

Speicherplatzverbrauch darstellen

Möchte man herausfinden, welche Dateien wieviel Speicherplatz verbrauchen, so kann dies mit Hilfe von durep übersichtlich dargestellt werden. durep findet man im FreeBSD Portbaum unter sysutlis/durep:

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

Nun kann das gewünschte Verzeichnis angegeben werden und der Speicherplatzverbrauch wird entsprechend angezeigt. Dabei werden die Verzeichnisse und Dateien anhand des gebrauchten Speicherplatzes sortiert:

# durep /tmp/test
[ /tmp/test     3.3M (0 files, 1 dirs) ]
   3.3M [##############################] 100.00% test2/
       1.9M [#################             ]  57.35% file1
       1.0M [#########                     ]  30.92% test3/
         578.9K [################              ]  55.01% file2
         473.4K [#############                 ]  44.99% file3
     399.1K [###                           ]  11.73% file4

Möchte man die Tiefe der Darstellung begrenzen, kann die -td Option verwendet werden:

# cd /usr/local
# durep -td 1
[ /usr/local   652.5M (0 files, 12 dirs) ]
 358.9M [################              ]  55.00% lib/
 152.4M [#######                       ]  23.36% share/
  62.4M [##                            ]   9.56% bin/
  57.7M [##                            ]   8.84% include/
   7.8M [                              ]   1.19% man/
   6.1M [                              ]   0.93% info/
   5.0M [                              ]   0.76% libexec/
   1.7M [                              ]   0.27% sbin/
 357.8K [                              ]   0.05% translations/
 145.2K [                              ]   0.02% etc/
  84.7K [                              ]   0.01% libdata/
  12.4K [                              ]   0.00% www/

Sollen nur Dateien angezeigt werden, welche mindestens eine bestimmte Grösse aufweisen, so kann dafür die -hs Option verwendet werden. Mit der -f Option werden nur Dateien überprüft, allfällige Subverzeichnisse werden nicht berücksichtigt:

# durep -f /home/test -hs 100m
[ /usr/home/test     2.3G (599 files, 0 dirs) ]
   1.6G [#####################         ]  71.58% test.tar.gz
 250.3M [###                           ]  10.80% test2

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

Comments (1)  Permalink

Aktuelle sendmail-Aliase anzeigen

Mit Hilfe von Aliasen lassen sich im sendmail-Daemon Mailweiterleitungen einrichten. Dabei werden die Aliase in der Datei /etc/mail/aliases konfiguriert und mit Hilfe von newaliases(1) die /etc/mail/aliases.db Datenbank erstellt, aus welcher die Aliase vom sendmail-Daemon ausgelesen werden.

# newaliases 
/etc/mail/aliases: 28 aliases, longest 35 bytes, 314 bytes total

Möchte man den Inhalt der aliases.db auslesen, falls z.B. die aliases-Datei nicht mehr vorhanden ist, kann praliases aufgerufen werden, wodurch die aktuelle Aliases-Konfiguration angezeigt wird:

# praliases 
root:admin1@example.org,admin2@example.org
beat:beat@example.org
postmaster:root
hostmaster:root
abuse:root
[...]

Im FreeBSD und OpenBSD Basissystem ist praliases bereits vorhanden. Mehr Informationen zu paraliases findet man in der Manpage praliases(8).

 Permalink
Prev81-84/84