Logdateien leeren unter Linux

Heute habe ich mit einem Programm herumexperimentiert, welches in eine Logdatei Infos geschrieben hatte. Da ich immer mal wieder den Status des Programm zurücksetzen wollte, musste ich die Logdatei leeren, ohne die Datei zu entfernen Hierzu habe ich verschiedene Möglichkeiten genutzt. Möchte man die Datei einfach nur leeren, so genügt: 1 :> logfile.log Sollen hingegen die letzten 5 Zeilen behalten werden, so nutzt man am besten eine Zwischendatei: 1 tail -n 5 logfile.log > logfile.log.tmp && mv logfile.log.tmp logfile.log Oder alternativ (ohne Zwischendatei, geht aber nicht immer): ...

screen

screen ist meiner Meinung nach eines der nützlichsten Tools. Es erstellt ein virtuelles Terminal, welches auch nach dem ausloggen weiterläuft, man kann aber noch viel mehr damit machen. Einen neuen Screen erstellt man mit: 1 screen -R name wobei der name freiwillig ist. Nun können wir beliebige Befehle eingeben und dann mit CTRL+a d detachen und befinden uns wieder im ursprünglichen Terminal. Wollen wir wieder zurück in den screen, geben wir den obigen screen-Befehl nochmals ein. Wir können uns auch von mehreren Terminals (z.B. auch über ssh) gleichzeitig auf einen screen verbinden, und zwar mit dem Aufruf: ...

Der Befehl "time" zum messen von Programmlaufzeiten

Heute habe ich mal wieder einen Kernel gebaut und wollte wissen wie lange das ganze dauert. Nachdem ich aber nicht die ganze Zeit wie gebannt davor sitzen möchte, habe ich also nach einem Programm gesucht, welches das kann. Das Programm “time” ermöglicht mir genau das. time wird einfach nur einer normalen Programmausführung vorgeschalten: 1 time wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.16.16.tar.bz2 und gibt dann einen output aus. Ich habe mal einen Kernel gebaut, was dann hier folgendes ergeben hat: ...

wget

Mit wget lassen sich einfach Dateien und sogar komplette Internetseiten herunterladen. Der folgende Aufruf lädt eine Datei runter: 1 wget http://www.server.com/grossedatei.tar.gz Wir können das Downloaden der Datei an einem beliebigen Zeitpunkt unterbrechen (z.B. mit CTRL+C) und dann mit dem -c-Switch an derselben Stelle wieder fortfahren. Wollen wir aus irgend einem Grunde die maximale Downlloadgeschwindigkeit runtersetzen, können wir dies mit –limit-rate tun. Folgender Aufruf setzt das herunterladen einer Datei mit 20 KByte/s fort: ...

ssh

Fast jeder kennt ssh. Mit ssh kann man zu entfernten Rechnern Verbindungen aufbauen: 1 ssh user@host Weniger bekannt ist, dass man mit ssh auch verschlüsselte Tunnels erstellen kann. Als einfaches Beispiel nehme ich eine komplett unverschlüsselte Telnet Verbindung zu einem netcat-Server. Rufen wir auf dem Server netcat auf mit: 1 nc -lp 2000 bzw. bei einigen Versionen: 1 nc -l 2000 Nebenbei starte ich noch den Sniffer ngrep, welcher mir alle Daten schön anzeigt und verbinde mich vom Server auf den Client mit: ...

Anzeige des letzten Systemstarts auf Linux-Systemen

Heute habe ich mir überlegt, dass es doch praktisch wäre, zu wissen, wann mein Server das letzte Mal gebootet wurde. Die Ausgabe von “uptime” fand ich dabei nicht so praktisch, da man immer erst kalkulieren musste. Nach einiger Suche fand ich einen Thread bei superuser.com  , der sich damit beschäftigte. ...

Hinzufügen eines Suffix an jede Zeile einer Datei mittels sed

Heute habe ich für ein Script eine Möglichkeit gesucht, an jede Zeile einer Datei einen Suffix anzufügen. Also beispielsweise aus 1 2 3 foo bar baz Das folgende zu machen: 1 2 3 fooULI barULI bazULI Um das zu erreichen habe ich sed benutzt: sed "s/.*/&suffix/" Dateiname Also in diesem Fall: sed "s/.*/&ULI/" Dateiname Vielleicht hilfts ja jemandem ;)

Zurücksetzen des geladenen Flash-speichers auf dem D-Link DNS-323 und Conceptronic CH3SNAS

Kurztipp: Will man das Root-Dateisystem des DNS-323 zur Laufzeit auf den Stand des internen Flashspeicher zurücksetzen, so genügt folgender Befehl: 1 touch /bin/.tv

Löschen und ersetzen mehrerer aufeinanderfolgender Leerzeichen mittels tr unter Linux

Heute hatte ich das Problem, dass ich aus einer Ausgabe eines Konsolenprogramms alle mehrfach aufeinanderfolgenden Leerzeichen löschen und diese jeweils durch ein einzelnes Leerzeichen ersetzen wollte. Leider hatte ich die Lösung nicht sofort, daher hier mal wieder ein Merkzettel ;) Die Lösung fand ich bei dem Programm “tr”: 1 tr -d "\ " Das wars ;) Sicher gibt es eine Million andere Wege, schreibt einen Kommentar, wenn ihr das anders machen würdet! ...

Spezielle USE-Flags für ein Paket und Demaskierung von Paketen unter Gentoo

Spezielle USE-Flags für ein Paket Möchte man für ein Paket bestimmte USE-Flags setzen, ohne dass es in der make.conf global gesetzt wird, kann man die Datei /etc/portage/package.use verwenden. Beispielsweise möchte ich für das Paket mysql die berkdb deaktivieren. Daher habe ich entsprechend: 1 dev-db/mysql -berkdb in der obenstehenden Datei eingetragen. Möchte man jedoch USB-Support für apcupsd (Ein Programm zur Steuerung von USV’s) haben, so muss man folgendes eintragen: 1 sys-power/apcupsd usb Jedes Paket beansprucht dabei eine Zeile. ...