BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanneKontakt

Fotogalerie fürs Web auf der Kommandozeile generieren

Mit Hilfe von llgal kann auf der Kommandozeile aus einem Verzeichnis mit Fotos eine statische Fotogalerie generiert werden, welche danach auf ein Webserver geladen werden kann. Im FreeBSD -Portbaum findet mann llgal unter www/llgal:

# cd /usr/ports/www/llgal && make install clean

Möchte man die Fotogalerie erstellen, wechselt man in das Verzeichnis mit den Fotos und führt llgal aus:

# llgal
Listing entries in . :  100.00%
Preparing entries:  100.00%
Found 13 entries in current directory
Using '/usr/local/share/llgal/slidetemplate.html' as HTML slide template.
Creating individual slides:  100.00%
Using '/usr/local/share/llgal/indextemplate.html' as HTML index template.
Creating the index.html file:  100.00%
No llgal.css in .llgal/, getting a copy from /usr/local/share/llgal

Eine index.html Datei als Startseite wurde dabei automatisch generiert. Danach kann das ganze Verzeichnis auf ein Webserver geladen werden. Ein Galerie-Titel kann mit der --title Option festgelegt werden. Mit der --sy Option können alle Bilder auf eine bestimmte Höhe in Pixel angepasst werden:

# llgal --title "Meine Fotos" --sy 480

Alle Optionen von llgal erhält man mit der -h Option.

Comments (0)  Permalink

Meta-Daten aus Dateien auslesen

Möchte man aus verschiedenen Dateien die gespeicherten Meta-Daten auslesen so kann dazu IExtract verwendet werden. Im FreeBSD -Portbaum findet man IExtract unter sysutils/iextract:

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

Nun können die in einer Datei gespeicherten Meta-Daten ausgelesen werden:

# IExtract bookmarks.html gravatar.jpg qemu.png pack.gif qemu.png Lied.mp3 pf-firewall-eurobsdcon.pdf zusammenfassung.doc
bookmarks.html - My Bookmarks     25.05.2005 15:00:04
gravatar.jpg -     Created with The GIMP 27.10.2005 15:06:51
qemu.png -       06.01.2006 14:22:44
pack.gif -     Created with The GIMP 03.07.2005 09:18:21
qemu.png -       06.01.2006 14:22:44
Lied.mp3 - Irgendein Interpreter! Sein Lied! 07.04.2005 15:48:03
pf-firewall-eurobsdcon.pdf - Brannmur med OpenBSDs PF Peter N. M. Hansteen pdfpagemode Foredrag for BLUG 15.11.2006 17:41:00
zusammenfassung.doc - Kapitel 1 OSI-Referenzmodell   14.04.2005 06:56:12

Möchte man Verzeichnisse rekursiv durchsuchen, so kann dazu die -r Option verwendet werden. Alle Optionen von IExtract erhält man mit der -h Option.

Comments (0)  Permalink

LaTeX-Dokument aus CSV-Datei generieren

Möchte man aus einer CSV-Datei ein LaTeX-Dokument generieren so kann dazu csv2latex verwendet werden. Im FreeBSD Portbaum findet man csv2latex unter textprox/csv2latex:

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

Nun kann ein LaTeX-Dokument aus der CSV-Datei generiert werden:

# csv2latex links.csv > links.tex

Soll der generierte LaTeX-Code in ein bestehendens Dokument integriert werden, so kann der LaTeX-Dokumentenkopf mit der --nohead Option nicht erstellt werden:

# csv2latex --nohead links.csv > links.tex

Werden in der CSV-Datei nicht Kommas sondern zum Beispiel Semikolons als Trennzeichen verwendet so kann das Trennzeichen mit der --separator Option festgelegt werden:

# csv2latex --separator s links.csv > links.tex

Alle Optionen von csv2latex erhält man, wenn csv2latex ohne Optionen aufgerufen wird.

Comments (0)  Permalink

Apache Status auf der Kommandozeile abfragen

Mit Hilfe von ftasv kann der Status eines Apache-Servers auf der Kommandozeile abgefragt werden. Dies ist besonders nützlich, wenn die Server-Status-Seite des Apaches durch ein Problem nicht mehr erreichbar ist. Im FreeBSD Portbaum findet man ftasv unter www/ftasv:

# cd /usr/ports/www/ftasv && make install clean

Damit ftasv verwendet werden kann, muss das Status-Modul aktiviert und der Apache entsprechend konfiguriert werden:

LoadModule status_module libexec/apache2/mod_status.so

<IfModule mod_status.c>
  ScoreBoardFile /var/run/apache_status
  ExtendedStatus On
  <Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from localhost
  </Location>
</IfModule>

Nachdem die neue Konfiguration aktiviert wurde, kann der Apache-Status als root mit ftasv ausgelesen werden:

# ftasv /var/run/apache_status
6473    _       83.76.xx.xx    tinderbox.chruetertee.ch        GET /tb/templates/paefchen/tinderstyle.css HTTP/1.1
6805    K       83.76.xx.xx    tinderbox.chruetertee.ch        GET /tb/ HTTP/1.1
7026    _       83.76.xx.xx    tinderbox.chruetertee.ch        GET /tb/templates/paefchen/images/hdr_fill.png HTTP/1.1
7094    _       93.186.xx.xx   tinderbox.chruetertee.ch        GET /tb/index.php?action=latest_buildports_rss HTTP/1.1
7331    _       tinderbox.chruetertee.ch        tinderbox.chruetertee.ch        GET /server-status?auto HTTP/1.1
7589    C       83.76.xx.xx    tinderbox.chruetertee.ch        GET /tb/templates/paefchen/tinderstyle.js HTTP/1.1
41883   _       83.76.xx.xx    tinderbox.chruetertee.ch        GET /tb/templates/paefchen/images/hdr_fill.png HTTP/1.1
42153   _       212.47.xx.xx   tinderbox.chruetertee.ch        GET /tinderbox/index.php HTTP/1.1
42155   C       83.76.xx.xx    tinderbox.chruetertee.ch        GET /tb/templates/paefchen/images/hdr_fill.png HTTP/1.1

Mehr Informationen findet man in der Datei /usr/local/share/doc/ftasv/README.

Comments (0)  Permalink

Anzahl Zeichen, Zeilen und Worte einer Datei zählen

Mit Hilfe von wc können verschiedene Informationen zu einer Textdatei ermittelt werden. Mit der -l Option können die Anzahl Zeilen einer Datei gezählt werden:

# wc -l chruetertee-latin1.tex
  18199 chruetertee-latin1.tex

Möchte man die Anzahl Wörter einer Datei zählen, so kann die -w Option verwendet werden:

# wc -w chruetertee-latin1.tex
   91070 chruetertee-latin1.tex

Die Anzahl Zeichen einer Datei wird mit der -m Option angezeigt:

# wc -m chruetertee-latin1.tex
  774362 chruetertee-latin1.tex

Die Läge der längsten Zeile einer Datei bestimmt man mit der -L Option:

# wc -L chruetertee-latin1.tex chruetertee.tex
   20928 chruetertee-latin1.tex
    1548 chruetertee.tex
   20928 total

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

Comments (0)  Permalink

LaTeX-Befehle aus einem Dokument entfernen

Möchte man aus einer Datei alle LaTeX-Befehle ausfiltern, so dass nur noch der Text angezeigt wird, kann man dazu detex verwenden. Im FreeBSD Portbaum findet man detex unter print/detex:

# cd /usr/ports/print/detex && make install clean

Nun ruft man detex mit der LaTeX -Datei auf und alle LaTeX-Befehle werden entfernt:

# head -20 chruetertee-latin1.tex
\documentclass[10pt]{article}
\usepackage{fullpage, graphicx, url}
\setlength{\parskip}{1ex}
\setlength{\parindent}{0ex}
\title{chruetertee.ch}
\begin{document}
\section*{chruetertee.ch}
\subsection*{Fotos auf der Kommandozeile aufbessern}
 [ Befehl der Woche ]  by Beat @ 26.12.2009 11:21 CET

 Mit HIlfe von aaphoto lassen sich Fotos auf der Kommandozeile aufbessern, zum Beispiel automatisch die Farben korrigiert. Im FreeBSD Portbaum findet man aaphoto unter graphics/aaphoto:
\begin{verbatim}

# cd /usr/ports/graphics/aaphoto && make install clean

\end{verbatim}

 Ruft man aaphoto ohne Optionen auf, werden automatisch die Farben des Bildes verbessert und dieses in einer neuen Datei gespeichert:
\begin{verbatim}

# detex chruetertee-latin1.tex | head -20

chruetertee.ch

chruetertee.ch
Fotos auf der Kommandozeile aufbessern
 [ Befehl der Woche ]  by Beat @ 26.12.2009 11:21 CET

 Mit HIlfe von aaphoto lassen sich Fotos auf der Kommandozeile aufbessern, zum Beispiel automatisch die Farben korrigiert. Im FreeBSD Portbaum findet man aaphoto unter graphics/aaphoto:


 Ruft man aaphoto ohne Optionen auf, werden automatisch die Farben des Bildes verbessert und dieses in einer neuen Datei gespeichert:

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

Comments (0)  Permalink

Verzeichnisstruktur graphisch darstellen

Mit Hilfe von tree lässt sich eine Verzeichnisstruktur graphisch als Baum darstellen. Im FreeBSD Portbaum findet man tree unter sysutils/tree:

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

Nun kann eine Baumansicht aller Dateien eines Verzeichnisses und dessen Unterverzeichnisse angezeigt werden:

# tree /usr/ports/www/fluxcms
/usr/ports/www/fluxcms
|-- Makefile
|-- distinfo
|-- files
|   |-- patch-install-dist-conf-config.xml
|   |-- pkg-deinstall.in
|   `-- pkg-message.in
|-- pkg-descr
`-- pkg-plist

1 directory, 7 files

Mit Hilfe der -p Option werden zusätzlich die Rechte und mit der -h Option die Grösse einer Datei angezeigt:

# tree -ph /usr/ports/www/fluxcms
/usr/ports/www/fluxcms
|-- [-rw-r--r-- 1.2K]  Makefile
|-- [-rw-r--r--  242]  distinfo
|-- [drwxr-xr-x  512]  files
|   |-- [-rw-r--r--  323]  patch-install-dist-conf-config.xml
|   |-- [-rw-r--r--  332]  pkg-deinstall.in
|   `-- [-rw-r--r-- 1.1K]  pkg-message.in
|-- [-rw-r--r--  280]  pkg-descr
`-- [-rw-r--r-- 158K]  pkg-plist

1 directory, 7 files

Mehr Informationen und alle Optionen von tree findet man in der Manpage tree(1).

Comments (0)  Permalink

Eintrag aus known_hosts entfernen

Ändert sich ein SSH Schlüssels eines Rechner, weil dieser zum Beispiel neu aufgesetzt wurde, so muss der alte Eintrag in der known_hosts-Datei gelöscht werden. Dies kann zum Beispiel von Hand mit einem Editor oder automatisch mit unssh gemacht werden. Im FreeBSD -Portbaum findet man unssh unter security/unssh:

# cd /usr/ports/security/unssh && make install clean

Versucht man mit dem alten Eintrag in der known_hosts auf den neuen Rechner zu verbinden, so wird eine entsprechende Meldung angezeigt:

# ssh test.chruetertee.ch
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the DSA host key has just been changed.
The fingerprint for the DSA key sent by the remote host is
05:9f:e5:9c:ff:9f:0a:85:30:21:f8:60:95:e3:e5:9b.
Please contact your system administrator.
Add correct host key in /home/beat/.ssh/known_hosts to get rid of this message.
Offending key in /home/beat/.ssh/known_hosts:25
DSA host key for test.chruetertee.ch has changed and you have requested strict checking.
Host key verification failed.

Nun wird der alte Eintrag mit unssh gelöscht:

# unssh test.chruetertee.ch
Found test.chruetertee.ch, deleting...OK
all done, deleted 1 entries

Danach kann man sich wieder mit dem Rechner verbinden. Dabei sollte der SSH Fingerprint überprüfen werden, welcher danach wieder in die known_hosts-Datei geschrieben wird.

Comments (1)  Permalink

Systemintegrität überprüfen

Verwendet man freebsd-update zum Aktualisieren eines Systems, so kann auch mit Hilfe von freebsd-update die Integrität der Systemdateien überprüft werden:

# freebsd-update IDS
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching metadata signature for 8.0-RELEASE from update5.FreeBSD.org... done.
Fetching metadata index... done.
Inspecting system... done.
/.cshrc has SHA256 hash 6c023117f7a92667b56a2a36acc6f8cd4b2de5972dcf44cbfbbc2967d6aa83ef, but should have SHA256 hash e1450d7b3c8b61f305b55792a653a547492b949d315ff7168205bdf279bd2f3e.
/etc/csh.cshrc has SHA256 hash 07f4515289339e203480041f3ff3982f6eb292584cbb164761f52215569b6136, but should have SHA256 hash 84c3dcd7eabd6b0da5077261c98b3dd345a7bd1e34e630921e02445e8d165249.
/etc/group has SHA256 hash d47fb1922b56d37dff6c214fec708bf98fc11e04b735fd9de4693bcf43cdaf19, but should have SHA256 hash a2b26924da4c1fa1007f4c06f8607f07bc909f36112d8d671f95a6126d7b8c15.
/etc/hosts has SHA256 hash 7af8062be560432c3f7fd5f3ceaac70c5fb5a4e8b840b1ad7f8a9c4a86277e8c, but should have SHA256 hash fc7360aff275514c9d437adc3e3a1d7fa94a88e6a2c88804f2287bc302b05fb0.
/etc/manpath.config has SHA256 hash 047f43d8f50eb3d51c5f39416c77ef0dff890cc37582eded7b772c70f018a324, but should have SHA256 hash 1cefa217b837cc940405ef849d6a88a8fb493f34f1b990c87d0b639b636485d4.
/etc/master.passwd has SHA256 hash 90fde15b127e00df91d5f7bb0c76e716b529652b0b513ebc5a896075647c040c, but should have SHA256 hash 212f97df7b05493facc106ed75c17a0131df99b5e656695bce8f07e8cde7ec6a.
/etc/motd has SHA256 hash d996410887344e5d1890959f0f10cfc5362b60c16eb2328428ebc3e0de549298, but should have SHA256 hash ba25bc1d24e50377ebaaa125c2322cf590c238e001c2e11a54d956bc18c4832a.
/etc/ntp.conf has SHA256 hash 15ca2615c6ef84646c973af2e97e34c7589748742657cfe5f7c34814eec1c50c, but should have SHA256 hash 99f129acc512fcd042bcc54f0ee93fed1a06d216b42433328c0adaab83585243.
/etc/passwd has SHA256 hash c74f20892267aec63768790f0ef5e796074724742e58e3782297f568e7f82eed, but should have SHA256 hash 52dfb31101cc03b9065bd20e606cb15e13e194686798250c40c907a64383b27a.
/etc/pwd.db has SHA256 hash 4e73815afdb4b7163b1ae5c211846a9d1e6a3a0a6d4f9a51c48ddbcddc9ff086, but should have SHA256 hash 6d7f65a6482e666dfd0ce892b0dd729aa1adbe6a2da136b73ecba7aaa7a503b7.
/etc/spwd.db has SHA256 hash ad753b14c7846879b467d08dc6868bf970310ea586e83303f4d7c44e6ed5afd9, but should have SHA256 hash ccd36805ad87d19e6ffa86bf2a71714761d37e802891b46ca1d50516cff9b445.
/etc/ssh/ssh_config has SHA256 hash e173a7ffd6d846eee4a4c2f5d4b3444c35f50fc8a03f6278c40aef0a8cbd63eb, but should have SHA256 hash eb8e55d3acbffd4f83681fc5b60d1ae66b69a1d3c04c3d71307a3432cc0ac2ce.
/etc/ttys has SHA256 hash 7343c0427e81844bff6404ac123cefa0c17ea5bb0d38546830ebdfb764212bc1, but should have SHA256 hash 92d4e87e657add80879eb47cb87071a07cbfb723f8044d27219265328a98ef80.
/root has 0700 permissions, but should have 0755 permissions.
/root/.cshrc has SHA256 hash 6c023117f7a92667b56a2a36acc6f8cd4b2de5972dcf44cbfbbc2967d6aa83ef, but should have SHA256 hash e1450d7b3c8b61f305b55792a653a547492b949d315ff7168205bdf279bd2f3e.

Nun kann geprüft werden wieso diese Dateien verändert worden sind. Mehr Informationen zu freebsd-update findet man in der Manpage freebsd-update(8).

Comments (0)  Permalink

Netzwerkdurchsatz aufzeichnen

Mit Hilfe von vnStat kann der Netzwerkdurchsatz eines Rechners aufgezeichnet werden. Im FreeBSD Portbaum findet man vnstat unter net/vnstat:

# cd /usr/ports/net/vnstat && make install clean

Danach kann in der /etc/crontab folgende Zeilen eingetragen werden, damit die Datenbank von vnStat automatisch alle 5 Minuten aktualisiert wird:

# run vnstat update every 5 minutes if installed
*/5 *   * * *   root    if [ -x /usr/local/bin/vnstat ] && [ `ls -l /var/db/vnstat/ | wc -l` -ge 1 ]; then /usr/local/bin/vnstat -u; fi

Nun muss eine Konfigurationsdatei für vnStat angelegt werden. Dazu kann als Basis die Beispielskonfiguration verwendet werden. in der Konfiguration kann zum Beispiel mit Interface die Standardnetzwerkschnittstelle angegeben werden:

# cd /usr/local/etc/
# cp vnstat.conf.sample vnstat.conf

Nun muss das Verzeichnis angelegt werden in dem die Datenbanken abgelegt werden. Danach wird für jede Netzwerkschnittstelle eine Datenbank angelegt. Im folgenden Beispiel wird nur für tun0 eine Dankenbank erstellt:

# mkdir /var/db/vnstat
# vnstat -u -i tun0

Nachdem die Datenbank das erste Mal aktualisiert wurde, können die gespeicherten Informationen abgerufen werden. Wird keine Schnittstelle mit der -i Option angegeben, so wird die Standardschnittstelle aus der Konfiguration genommen:

# vnstat 
Database updated: Sat Jan  9 21:25:00 2010

   tun0 since 09.01.2010

          rx:  95.11 MiB      tx:  5.63 MiB      total:  100.74 MiB

   monthly
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
       Jan '10     95.11 MiB |    5.63 MiB |  100.74 MiB |    1.07 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated       331 MiB |      17 MiB |     348 MiB |

   daily
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
         today     95.11 MiB |    5.63 MiB |  100.74 MiB |   10.70 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated       106 MiB |       5 MiB |     111 MiB |

Mit der -s Option werden die Informationen in kompakter Form angezeigt:

# vnstat -s

                      rx      /      tx      /     total    /   estimated
 tun0:
       Jan '10     95.11 MiB  /    5.63 MiB  /  100.74 MiB  /  348.00 MiB
         today     95.11 MiB  /    5.63 MiB  /  100.74 MiB  /     111 MiB

Wird die -h Option verwendet, so wird der Netzwerkdurchsatz pro Stunde, mit der -w Option der Woche und mit der -m Option des Monats angezeigt:

# vnstat -h
 tun0                                                                     21:25 
  ^                                               r                             
  |                                               r                             
  |                                               r  r                          
  |                                               r  r                          
  |                                               r  r                          
  |                                               r  r                          
  |                                               r  r                          
  |                                               r  r                          
  |                                               r  r  r     r                 
  |                                               r  r  r  r  r                 
 -+---------------------------------------------------------------------------> 
  |  22 23 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21    
                                                                                
 h  rx (KiB)   tx (KiB)      h  rx (KiB)   tx (KiB)      h  rx (KiB)   tx (KiB) 
22          0          0    06          0          0    14     30'404      1'352
23          0          0    07          0          0    15      9'932        814
00          0          0    08          0          0    16      5'997        574
01          0          0    09          0          0    17      7'995        715
02          0          0    10          0          0    18      2'644        650
03          0          0    11          0          0    19        421        176
04          0          0    12          0          0    20          0          0
05          0          0    13     38'000      1'169    21      1'999        311

Mit der -tr Option wird der aktuelle Verkehr einer Netzwerkschnittstelle für 5 Sekunden gemessen. Soll nicht die Standard-Netzwerkschnittstelle verwedent werden, kann mit der -i Option eine alternative Schnittstelle angegeben werden:

# vnstat -tr -i wlan0
128 packets sampled in 5 seconds     
Traffic average for wlan0

      rx        70.40 kbit/s            13 packets/s
      tx        20.80 kbit/s            12 packets/s

Mit der -l Option wird der aktuelle Verkehr einer Schnittstelle angezeigt, bis Ctrl + C gedrückt wird:

# vnstat -l -i wlan0
Monitoring wlan0...    (press CTRL-C to stop)

   rx:       16 kbit/s    15 p/s          tx:       24 kbit/s    18 p/s

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

Comments (0)  Permalink
Next1-10/233