Name | Kurzform | Beschreibung | Datum ändert sich | |||
---|---|---|---|---|---|---|
Datei anlegen | Dateiinhalt lesen | Dateiinhalt ändern | Dateinamen ändern | |||
Access (Zugriff) | atime | Datum des letzten Zugriffs (auch lesend) | Ja | Ja | Nein | Nein |
Modify (Modifiziert) | mtime | Datum des letzten schreibenden Zugriffs | Ja | Nein | Ja | Nein |
Change (Geändert) | ctime | Datum der letzten Statusänderung | Ja | Nein | Ja | Ja |
Quelle (2011-08-04): http://video.golem.de/pc-hardware/5415/bluetooth-morsetastatur-(herstellervideo).html
httrack - Copy websites to your computer (Offline browser)
4 Bit = nibble, semioctet 8 Bit = byte, octet 16 Bit = word, short 32 Bit = doubleword, dword, longword, long 64 Bit = quadword, qword, quad, long long 128 Bit = octaword, double quadword n Bit = n-bit integer
# blkid /dev/sda6: LABEL="swap" UUID="6ba8d252-b664-4aca-8a3c-8d20d42a7bf2" TYPE="swap" /dev/sda1: LABEL="/boot" UUID="86a90784-434d-4f9b-bdac-43339c872326" TYPE="ext3" /dev/sda2: UUID="FzNbsT-Wr6U-oxtS-6MBN-Zf80-gIzb-pSYu1U" TYPE="LVM2_member" /dev/sda5: LABEL="/" UUID="20e8b653-2ced-4abb-a761-f43893a4a9eb" TYPE="ext3"
# blkid -t TYPE="ext3" /dev/sda1: LABEL="/boot" UUID="86a90784-434d-4f9b-bdac-43339c872326" TYPE="ext3" /dev/sda5: LABEL="/" UUID="20e8b653-2ced-4abb-a761-f43893a4a9eb" TYPE="ext3"
# blkid -o device -t TYPE="ext3" /dev/sda1 /dev/sda5
Manchmal steht man vor dem Problem (besonders bei Verwendung der „ext*“-Dateisysteme), dass man keinen Platz mehr auf dem Dateisystem zur Verfühgung hat aber es gibt keine Datei, die außergewöhnlich groß wird.
In soeinem Fall möchte man nicht nur sehen weiviel Platz auf dem Datenträger noch zur Verfühgung steht, dass geht mit df ganz gut, sondern man möchte auch wissen ob die Summe aller Dateien den von df veranschlgten Platzverbrauch, belegen.
Für diesen Zweck habe ich das folgende Script geschrieben:
#!/bin/sh echo "verbrauchter Platz auf '/': $(df -hPl /|egrep ' /$'|awk '{print $3}')" echo "durch Dateien belegter Platz auf '/': $(echo "($(du -skc / 2> /dev/null|egrep 'insgesamt$|total$'|awk '{print $1}' 2> /dev/null)-$(du -skc $(df -Pl | egrep -v ' /$' | egrep '^/dev/' | awk '{print $NF}') 2> /dev/null|egrep 'insgesamt$|total$'|awk '{print $1}'))/1024^2"|bc -l) GB"
Es misst den Platzbedarf aller Dateien im System und zieht davon den Platzbedarf aller Dateien ab, die auf separaten Mount-Point's liegen. So bekommt man als Rest, den Platzbedarf aller Dateien auf dem root-FS ('/').
Tritt hier eine große Differenz auf, dann ist es dringend angesagt, dem System einen fsck -y / im Single-User-Mode zu gönnen.
Nmap ist das Original, will man in einem Netz nur einen TCP-Port scannen, ist das Werkzeug doscan ganz praktisch.
Möchte man zum Beispiel wissen welche Rechner in einem bestimmten Netz per SSH erreichbar sind, dann schickt man das folgende Kommando ab:
# doscan --banner 100 -p 22 192.168.1.0/24 2010-04-25 10:02:17.843 192.168.1.1 SSH-2.0-OpenSSH_5.2p1 FreeBSD-20090522\r\n 2010-04-25 10:03:17.983 192.168.1.204 SSH-2.0-OpenSSH_5.1p1 Debian-6ubuntu2\r\n 2010-04-25 10:03:17.996 192.168.1.207 SSH-2.0-OpenSSH_5.1p1 Debian-6ubuntu2\r\n
Installiert wird doscan in FreeBSD mit:
# portinstall -prO security/doscan
Installiert wird doscan in Ubuntu mit:
# aptitude install doscan
Dieses Programm kann nur nach einem Port scannen, es ist eben für den schnellen Einsatz zwischendurch gedacht.
Der gute alte lsof ist in manchen Fällen zu langsam, dann bietet sich die Nutzung von fuser an:
Alle PID's mit Status-Buchstaben, die eine Datei offen halten (FreeBSD):
# fuser -c [Verzeichnis]
Alle PID's mit Status-Buchstaben, die eine Datei offen halten (Linux):
# fuser -mn file [Verzeichnis]
Alle PID's, die eine Datei offen halten (Linux):
# fuser -mn file [Verzeichnis] 2>&1 | tr -s '[ \t]' '\n' | sed -e 's/[a-zA-Z]*$//g' | grep -E '^[0-9]'
Alle Prozesse, die eine Datei offen halten (FreeBSD):
#!/usr/bin/env bash #------------------------------------------------------------------------------# # # Zeigt die PIDs aller offenen Prozesse an, # die eine Datei in einem Verzeichnis offen hält # #------------------------------------------------------------------------------# if [ -d "${1}" ] ; then unset PID PID="$(fuser -c "${1}" 2>&1 | tr -s '[ \t]' '\n' | sed -e 's/[a-zA-Z]*$//g' | grep -E '^[0-9]' | tr -s '\n' '|' | sed -e 's/|$//;s/|/ | /g;s/.*/ & /')" #----------------------------------------------------------------------# if [ "x${PID}" = "x" ] ; then echo "frei PID='${PID}'" else echo "offen PID='${PID}'" ps alx | grep -Fv grep | grep -E "${PID}" fi #----------------------------------------------------------------------# else echo "${0} [Verzeichnis]" echo "${0} /tmp" fi #------------------------------------------------------------------------------#
Es kommt beim Austausch von Dateien von, das man nicht so genau auf die entsprechenden Zeichensätze achtet. Dabei werden dann Zeichen wie diese:
& ä ö ü ß ´ á é à è
oft unleserlich. Das stört natürlich gewaltig.
Aus diesem Grund habe ich ein Script geschrieben, welches von der aktuellen Position aus rekursiv alles durcharbeitet und die Verzeichnisnamen sowie Dateinamen von diesen und weiteren Zeichen befreit.
Im speziellen handelt es sich um Leerzeichen, doppelten Unterstrichen sowie den folgenden Zeichen:
& ä ö ü ß ´ á é à è < > { [ ] } , ; ( ) " ! ' `
Hier das Script:
#!/bin/sh # alles aus dem aktuellen Verzeichnis for i in $(find . -type d | awk -F'/' '{print NF}' | sort -n | tail -n1 | awk '{for(i=1;i<$1;i++){print i}}') do find . -maxdepth ${i} | egrep -i '__|-_-|\&|ä|ö|ü|ß|\´|á|é|à|è| |<|>|\{|\[|\]|\}|\,|\;|\(|\)|\"|\!' | while read ORIGINAL do NEUERNAME="$(echo "${ORIGINAL}" | sed \ -e 's/\&/_und_/g' \ -e 's/ /_/g' \ -e 's/</-_/g' \ -e 's/>/-_/g' \ -e 's/{/-_/g' \ -e 's/\[/-_/g' \ -e 's/\]/_-/g' \ -e 's/}/_-/g' \ -e 's/\,/_-_/g' \ -e 's/\;/_/g' \ -e 's/\´//g' \ -e 's/\`//g' \ -e 's/ß/ss/g' \ -e 's/ä/ae/g' \ -e 's/ö/oe/g' \ -e 's/ü/ue/g' \ -e 's/Ä/AE/g' \ -e 's/Ö/OE/g' \ -e 's/Ü/UE/g' \ -e 's/á/a/g' \ -e 's/Á/A/g' \ -e 's/à/a/g' \ -e 's/À/A/g' \ -e 's/é/e/g' \ -e 's/É/E/g' \ -e 's/è/e/g' \ -e 's/È/E/g' \ -e 's/(/_-_/g' \ -e 's/)/_-_/g' \ -e 's/_$//g' \ -e 's/-$//g' \ -e 's/_$//g' \ -e 's/-$//g' \ | tr -d '!' | tr -d '"' | tr -d "'" | tr -s '_' '_' | sed -e 's/-_-/-/g')" mv -fv "${ORIGINAL}" ${NEUERNAME} done find . -maxdepth ${i} | egrep -i "'|\`" | while read ORIGINAL do NEUERNAME="$(echo "${ORIGINAL}" | tr -d "\`" | tr -d "'")" mv -fv "${ORIGINAL}" ${NEUERNAME} done done
Dieses Script macht zum Beispiel aus
Berlin - l'effacement des traces
das
Berlin_-_leffacement_des_traces
und aus
Jessy Matador - Allez Olla Olé
wird das
Jessy_Matador_-_Allez_Olla_Ole
Die Anmeldedaten setzen sich wie folgt zusammen:
früher:
Anschlusskennung + T-Online – Nummer + Mitbenutzernummer/Suffix
heute:
Anschlusskennung + Zugangsnummer + Mitbenutzernummer/Suffix
Zusammengesetzt sieht es dann so aus: 0000000000009876543210001@t-online.de