Tag Archives: exported

Netzwerk Interface


title: “Netzwerk Interface”
date: 2015-04-06T19:13:26
slug: netzwerk-interface


Prüfen ob die Netzwerkkarte von Linux erkannt wurde:

dmesg | grep eth0

Beispielausgabe:
[ 3.598225] e1000 0000:02:01.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:8b:05:04
[ 3.598252] e1000 0000:02:01.0: eth0: Intel(R) PRO/1000 Network Connection
[ 22.634210] e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
[ 22.637148] ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 22.639106] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 33.419636] eth0: no IPv6 routers present

Oder auch:

lspci -v

Beispielausgabe (zeigt ob ein Treiber geladen wurde):
02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)
Subsystem: VMware PRO/1000 MT Single Port Adapter
Physical Slot: 33
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 19
Memory at fd5c0000 (64-bit, non-prefetchable) [size=128K]
Memory at fdff0000 (64-bit, non-prefetchable) [size=64K]
I/O ports at 2000 [size=64]
[virtual] Expansion ROM at e7b00000 [disabled] [size=64K]
Capabilities: [dc] Power Management version 2
Capabilities: [e4] PCI-X non-bridge device
Kernel driver in use: e1000

Standard Port Nummern


title: “Standard Port Nummern”
date: 2015-04-06T19:07:44
slug: standard-port-nummern


The /etc/services main ports:
ftp-data 20/tcp
ftp 21/tcp
ssh 22/udp
ssh 22/tcp
telnet 23/tcp
smtp 25/tcp mail
domain 53/tcp
domain 53/udp
http 80/tcp # www is used by some broken
pop-3 110/tcp # PostOffice V.3
sunrpc 111/tcp
sftp 115/tcp
uucp-path 117/tcp
nntp 119/tcp usenet # Network News Transfer
ntp 123/tcp # Network Time Protocol
netbios-ns 137/tcp nbns

Reservierte IP Adressen (für intranets)


title: “Reservierte IP Adressen (für intranets)”
date: 2015-04-06T18:41:49
slug: reservierte-ip-adressen-fur-intranets


In jedem der Netze class A, B und C befinden sich reservierte IP Blöcke die nicht im Internet genützt werden.

Diese Blöcke sind:

Class A: 10.x.x.x
Class B: 172.16.x.x — 172.31.x.x
Class C: 192.168.0.x

Netzwerk Klassen (A,B und C-Netz)


title: “Netzwerk Klassen (A,B und C-Netz)”
date: 2015-04-06T18:38:05
slug: netzwerk-klassen-ab-und-c-netz


Class A: 255.0.0.0 (8-Bit network / 24Bit Host Adressen)
2^24 – 2 = 16 777 214 verfügbare Adressen

Class B: 255.255.0.0 (16-Bit network / 16Bit Host Adressen)
2^16 – 2 = 65 534 verfügbare Adressen

Class C: 255.255.255.0 (24-Bit network / 8Bit Host Adressen)
2^8 – 2 = 254 verfügbare Adressen

Das Netzwerk .0 / .0.0 / .0.0.0


title: “Das Netzwerk .0 / .0.0 / .0.0.0”
date: 2015-04-06T17:48:21
slug: das-netzwerk-0-0-0-0-0-0


Ein Netzwerk kann anhand einer sich im Netzwerk befindende IP Adresse und der Netmaskberechnet werden.
z.B.

IP-Adresse: 192.168.132.4 (11000000.10101000.10000100.00000100)
Netmask: 255.255.254.0 (11111111.11111111.11111110.00000000)

Es handelt sich hier um eine 23 Bit Netmask (23 1er)
Bei der IP Adresse müssen jetzt alle Stellen nach 23 auf 0 gesetzt werden:
(11000000.10101000.10000100.00000000) = 192.168.132.0

Das Netzwerk lautet also: 192.168.132.0

Hier eine Tabelle zur Übersicht

|
Bits |

Netmask |

verfügbare Adressen |

| — | — | — |

|
/20 |

255.255.240.0 |

4096 |

|
/21 |

255.255.248.0 |

2048 |

|
/22 |

255.255.252.0 |

1024 |

|
/23 |

255.255.254.0 |

512 |

|
/24 |

255.255.255.0 |

256 |

|
/25 |

255.255.255.128 |

128 |

|
/26 |

255.255.255.192 |

64 |

|
/27 |

255.255.255.224 |

32 |

|
/28 |

255.255.255.240 |

16 |

|
/29 |

255.255.255.248 |

8 |

|
/30 |

255.255.255.252 |

4 |

Die Netzmaske


title: “Die Netzmaske”
date: 2015-04-06T17:37:03
slug: die-netzmaske


Eine 16 Bit und 17 Bit netmask:
Die Anzahl der 1er ergeben die Anzahl der Bits

| | | |
| — | — | — |
|
255.255.0.0 |

16-bit |

1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0 . 0 |

|
255.255.128.0 |

17-bit |

1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 0 0 0 0 0 0 0 . 0 |

Die IP-Adressen 32.128.1.1 und 32.128.0.11 besitzen folgende binäre schreibweise
00100000.10000000.00000001.00000001
00100000.10000000.00000000.00000011

Damit sich beide IP Adressen im selben Netz befinden, ist mindestens folgende netmask nötig:
11111111.11111111.11111110.00000000 = 255.255.254.0

Möglich wären auch Netzmasken 255.255.253.0, 255.255.252.0, usw.
Mit einer Netzmaske von 255.255.255.0 würden sich die IP Adressen in verschiedenen Netzen befinden.

The Dotted Quad notation


title: “The Dotted Quad notation”
date: 2015-04-06T17:22:30
slug: the-dotted-quad-notation


Eine IP Adresse kann decimal (192.168.1.1) oder auch binär (11000000.10101000.00000001.00000001) dargestellt werden.

| | |
| — | — |
|
Decimal |

Binary |

|
192.168.1.1 |

11000000.10101000.00000001.00000001 |

Die Umrechnung erfolgt blockweise, z.B:
192 = 11000000

Die Berechnung geht folgendermaßen:
192 wird durch 2 geteilt, das Ergebnis ist:
96 Rest 0
96 wird durch 2 geteilt, das Ergebnis ist:
48 Rest 0
48 wird durch 2 geteilt, das Ergebnis ist:
24 Rest 0
24 wird durch 2 geteilt, das Ergebnis ist:
12 Rest 0
12 wird durch 2 geteilt, das Ergebnis ist:
6 Rest 0
6 wird durch 2 geteilt, das Ergebnis ist:
3 Rest 0
3 wird durch 2 geteilt, das Ergebnis ist:
1 Rest 1
1 wird durch 2 geteilt, das Ergebnis ist:
0 Rest 1

Der Rest von unten nach oben gelesen ergibt: 11000000

cp kopieren von Dateien


title: “cp kopieren von Dateien”
date: 2015-04-06T17:08:46
slug: cp-kopieren-von-dateien


Kopieren der Datei readme.txt nach /tmp/readme.txt

cp readme.txt /tmp/readme.txt

Kopieren des Verzeichnisses output recursiv nach /tmp

cp -r output /tmp/

!! Der Befehl oben legt das Verzeichnis output in /tmp an und kopiert den Inhalt dort hinen

cp -r output/\* /tmp/

!! Der Befehl oben legt kein Verzeichnis output in /tmp , der Inhalt des Verzeichnisses output wird gleich nach /tmp kopiert

Kopieren der Datei readme.txt nach /tmp/readme.txt mit Übernahme der Berechtigungen

cp readme.txt /tmp/readme.txt

Wichtige Optionen für cp:
-d do not follow symbolic link (when used with -r)
-f force
-i interactive, prompt before overwrite
-p preserve file attributes
-r recursively copy directories

ps Aktuelle Prozesse anzeigen


title: “ps Aktuelle Prozesse anzeigen”
date: 2015-04-06T16:07:58
slug: ps-aktuelle-prozesse-anzeigen


Alle Prozesse des aktuellen Users anzeigen

ps ux

Alle Prozesse aller User anzeigen

ps aux

Alle Prozesse die im aktuellen Terminal laufen anzeigen

ps T

Prozessbaum des aktuellen Users anzeigen

ps xjf

Prozessbaum aller Userprozesse anzeigen

ps axjf

Ausgabe aller laufenden Prozesse mit erweiterten Informationen

ps -ef

Parent Prozess ID (PPID) oder UserID (UID) unter dem der Prozess 3622 läuft anzeigen:

ps -f 3622

Ausgabe ist:
UID = UserID unter welcher der Prozess läuft
PID = eindeutige Prozess ID
PPID = ID des Parent Prozesses
STIME = Uhrzeit zu der der Prozess gestartet wurde
TTY = gibt das Terminal an, auf dem der Prozess läuft
STAT = Gibt den Status des Prozesses aus (Tabelle unten)
CMD = Kommandoaufruf, der den Prozess erzeugt hat
NI – Nice-Priorität des Prozesses
PRI – Derzeitige Priorität des Prozesses
TIME – Bereits von dem Prozess verbrauchte CPU-Zeit

PROCESS STATE CODES
Here are the different values that the s, stat and state output specifiers (header “STAT” or “S”) will display to describe the state of a process:
D uninterruptible sleep (usually IO)
R running or runnable (on run queue)
S interruptible sleep (waiting for an event to complete)
T stopped, either by a job control signal or because it is being traced.
W paging (not valid since the 2.6.xx kernel)
X dead (should never be seen)
Z defunct (“zombie”) process, terminated but not reaped by its parent.

For BSD formats and when the stat keyword is used, additional characters may be displayed:
< high-priority (not nice to other users)
N low-priority (nice to other users)
L has pages locked into memory (for real-time and custom IO)
s is a session leader
l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
+ is in the foreground process group.

-f – Sehr detailierte Informationen
-a – Alle Prozesse des Terminals
-e, -A – Alle derzeit laufenden Prozesse
-l – Ausgabe aller Informationen im sog. long-Format (Benutzernamen werden aufgelöst etc.)
-U USERNAME – Filtern der Anzeige nach Prozessen des Benutzers USERNAME

Anzeigen der Spalten pid,ppid,pgid,sid,comm

ps xao pid,ppid,pgid,sid,comm

x = Prozesse die nicht nur im Terminal laufen
a = Alle derzeit laufenden Prozesse
o = Gibt die Spalten an die angezeigt werden sollen, nachfolgend die verfügbaren Spalten:
KEY LONG DESCRIPTION
c cmd simple name of executable
C pcpu cpu utilization
f flags flags as in long format F field
g pgrp process group ID
G tpgid controlling tty process group ID
j cutime cumulative user time
J cstime cumulative system time
k utime user time
m min_flt number of minor page faults
M maj_flt number of major page faults
n cmin_flt cumulative minor page faults
N cmaj_flt cumulative major page faults
o session session ID
p pid process ID
P ppid parent process ID
r rss resident set size
R resident resident pages
s size memory size in kilobytes
S share amount of shared pages
t tty the device number of the controlling tty
T start_time time process was started
U uid user ID number
u user user name
v vsize total VM size in KiB
y priority kernel scheduling priority

sed


title: “sed”
date: 2015-04-06T14:18:58
slug: sed


Ersetzen einen Strings mit einem anderen (linux nach Linux). Das g nachdem Slash bedeutet das im ganzen String ersetzt wird und nicht nur nach dem ersten Vorkommen.

sed 's/linux/Linux/g' readme.txt > ReadMe.txt

Von stdin den String bis zum letzten / abschneiden:
Hier im Beispiel wird von der Ausgabe des Befehles find (beinhaltet Pfad & Dateiname)
/root/.cache/tracker/first-index.txt
der Pfad abgeschnitten so das die Ausgabe nur noch
first-index.txt ist

find / -type f | sed 's/.\*\///g'

Den String in () nach 1 schreiben und ausgeben

sed 's/^Pl: <<"\(.\*\).\*">>$/\1/g'