lsof
ΠΡΠ²ΠΎΠ΄ΠΈΡ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΎΡΠΊΡΡΡΡΡ , Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ°ΠΉΠ»ΠΎΠ² Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π±Π»ΠΈΡΡ. Π ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΊΠ°Π·Π°Π½Ρ -- Π²Π»Π°Π΄Π΅Π»Π΅Ρ ΡΠ°ΠΉΠ»Π°, ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π°, ΡΠΈΠΏ ΡΠ°ΠΉΠ»Π°, ΠΏΡΠΎΡΠ΅ΡΡ, ΠΎΡΠΊΡΡΠ²ΡΠΈΠΉ ΡΠ°ΠΉΠ», ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. Π‘Π°ΠΌΠΎ ΡΠΎΠ±ΠΎΠΉ ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΡΠΎ Π²ΡΠ²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ lsof ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½, Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ΅, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡ grep ΠΈ/ΠΈΠ»ΠΈ awk.
bash$ lsof
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
init 1 root mem REG 3,5 30748 30303 /sbin/init
init 1 root mem REG 3,5 73120 8069 /lib/ld-2.1.3.so
init 1 root mem REG 3,5 931668 8075 /lib/libc-2.1.3.so
cardmgr 213 root mem REG 3,5 36956 30357 /sbin/cardmgr
...
strace
ΠΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΈ ΡΠΈΠ³Π½Π°Π»ΠΎΠ². Π ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ: strace COMMAND.
bash$ strace df
execve("/bin/df", ["df"], [/* 45 vars */]) = 0
uname({sys="Linux", node="bozo.localdomain", ...}) = 0
brk(0) = 0x804f5e4
...
ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅ truss.
nmap
Π‘ΠΊΠ°Π½Π΅Ρ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠΎΡΡΠΎΠ². ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅Ρ Π² ΠΏΠΎΠΈΡΠΊΠ°Ρ ΠΎΡΠΊΡΡΡΡΡ ΠΏΠΎΡΡΠΎΠ² ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΏΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ.
#!/bin/bash
SERVER=$HOST # localhost.localdomain (127.0.0.1).
PORT_NUMBER=25 # ΠΏΠΎΡΡ ΡΠ»ΡΠΆΠ±Ρ SMTP.
nmap $SERVER | grep -w "$PORT_NUMBER" # ΠΡΠΎΠ²Π΅ΡΠΈΡΡ -- ΠΎΡΠΊΡΡΡ Π»ΠΈ Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΡΡ?
# grep -w -- ΠΏΠΎΠΈΡΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΡΡ ΡΠ»ΠΎΠ²,
#+ ΡΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΡ 1025 Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΏΡΡΠ΅Π½.
exit 0
# 25/tcp open smtp
free
ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ, Π² ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅. ΠΡΠ²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ grep, awk ΠΈΠ»ΠΈ Perl. ΠΠΎΠΌΠ°Π½Π΄Π° procinfo ΡΠΎΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΡΠ΅Π΄ΠΈ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅Π³ΠΎ.
bash$ free
total used free shared buffers cached
Mem: 30504 28624 1880 15820 1608 16376
-/+ buffers/cache: 10640 19864
Swap: 68540 3128 65412
ΠΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ RAM:
bash$ free | grep Mem | awk '{ print $4 }'
1880
procinfo
ΠΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ /proc.
bash$ procinfo | grep Bootup
Bootup: Wed Mar 21 15:15:50 2001 Load average: 0.04 0.21 0.34 3/47 6829
lsdev
Π‘ΠΏΠΈΡΠΎΠΊ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² Π² ΡΠΈΡΡΠ΅ΠΌΠ΅.
bash$ lsdev
Device DMA IRQ I/O Ports
------------------------------------------------
cascade 4 2
dma 0080-008f
dma1 0000-001f
dma2 00c0-00df
fpu 00f0-00ff
ide0 14 01f0-01f7 03f6-03f6
...
du
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΌ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ . ΠΡΠ»ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π½Π΅ ΡΠΊΠ°Π·Π°Π½, ΡΠΎ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
bash$ du -ach
1.0k ./wi.sh
1.0k ./tst.sh
1.0k ./random.file
6.0k .
6.0k total
df
ΠΡΠ²ΠΎΠ΄ΠΈΡ Π² ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
bash$ df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda5 273262 92607 166547 36% /
/dev/hda8 222525 123951 87085 59% /home
/dev/hda7 1408796 1075744 261488 80% /usr
stat
ΠΠ°Π΅Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ (ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°) ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ².
bash$ stat test.cru
File: "test.cru"
Size: 49970 Allocated Blocks: 100 Filetype: Regular File
Mode: (0664/-rw-rw-r--) Uid: ( 501/ bozo) Gid: ( 501/ bozo)
Device: 3,8 Inode: 18185 Links: 1
Access: Sat Jun 2 16:40:24 2001
Modify: Sat Jun 2 16:40:24 2001
Change: Sat Jun 2 16:40:24 2001
ΠΡΠ»ΠΈ Π·Π°Π΄Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ, ΡΠΎ stat Π²Π΅ΡΠ½Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅.
bash$ stat nonexistent-file
nonexistent-file: No such file or directory
vmstat
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
bash$ vmstat
procs memory swap io system cpu
r b w swpd free buff cache si so bi bo in cs us sy id
0 0 0 0 11040 2636 38952 0 0 33 7 271 88 8 3 89
netstat
ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ: ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ· /proc/net (ΠΠ»Π°Π²Π° 27). Π‘ΠΌ. ΠΡΠΈΠΌΠ΅Ρ 27-2.
netstat -r -- ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅ route.
uptime
ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π³ΠΎ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
bash$ uptime
10:28pm up 1:57, 3 users, load average: 0.17, 0.34, 0.27
hostname
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠΌΡ ΡΠ·Π»Π° (ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ ΠΈΠΌΡ ΡΠΈΡΡΠ΅ΠΌΡ). Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ ΠΈΠΌΡ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ /etc/rc.d/rc.sysinit. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅ uname -n ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $HOSTNAME.
bash$ hostname
localhost.localdomain
bash$ echo $HOSTNAME
localhost.localdomain
hostid
ΠΡΠ²ΠΎΠ΄ΠΈΡ 32-Π±ΠΈΡΠ½ΡΠΉ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠΈΡΠΈΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ.
bash$ hostid
7f0100
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ "ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ" ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠΎΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π² ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΏΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°, hostid ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ IP Π°Π΄ΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ Π΅Π³ΠΎ Π² ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠΈΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π²Π»ΡΡ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΏΠ°ΡΡ Π±Π°ΠΉΡ.
ΠΠ±ΡΡΠ½ΠΎ, IP Π°Π΄ΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΠ°ΠΉΠ»Π΅ /etc/hosts.
bash$ cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
ΠΠ΅ΡΠ΅ΡΡΠ°Π²ΠΈΠ² ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π±Π°ΠΉΡΡ, ΠΏΠΎΠΏΠ°ΡΠ½ΠΎ, Π² Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΌ Π°Π΄ΡΠ΅ΡΠ΅ 127.0.0.1, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ 0.127.1.0, Π² ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠΈΡΠΈΡΠ½ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ 007f0100, ΡΡΠΎ Π² ΡΠΎΡΠ½ΠΎΡΡΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π²ΡΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ hostid. ΠΠ°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ "ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ" ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ.
sar
ΠΠΎΠΌΠ°Π½Π΄Π° sar (system activity report) Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ UNIX-ΡΠΈΡΡΠ΅ΠΌ. ΠΠ½Π°, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π½Π΅ Π²Ρ ΠΎΠ΄ΠΈΡ Π² Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Linux-ΡΠΈΡΡΠ΅ΠΌ. ΠΠ½Π° Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΡΠΎΡΡΠ°Π² ΠΏΠ°ΠΊΠ΅ΡΠ° sysstat utilities, Π°Π²ΡΠΎΡ: Sebastien Godard.
bash$ sar
Linux 2.4.7-10 (localhost.localdomain) 12/31/2001
10:30:01 AM CPU %user %nice %system %idle
10:40:00 AM all 1.39 0.00 0.77 97.84
10:50:00 AM all 76.83 0.00 1.45 21.72
11:00:00 AM all 1.32 0.00 0.69 97.99
11:10:00 AM all 1.17 0.00 0.30 98.53
11:20:00 AM all 0.51 0.00 0.30 99.19
06:30:00 PM all 100.00 0.00 100.01 0.00
Average: all 1.39 0.00 0.66 97.95
readelf
ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΡΠΎΡΠΌΠ°ΡΠ° elf. ΠΡ ΠΎΠ΄ΠΈΡ Π² ΡΠΎΡΡΠ°Π² ΠΏΠ°ΠΊΠ΅ΡΠ° binutils.
bash$ readelf -h /bin/bash
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
. . .
size
ΠΠΎΠΌΠ°Π½Π΄Π° size [/path/to/binary] Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ . Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ.
bash$ size /bin/bash
text data bss dec hex filename
495971 22496 17392 535859 82d33 /bin/bash
Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΠΆΡΡΠ½Π°Π»
logger
ΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΠΆΡΡΠ½Π°Π» (/var/log/messages) ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±Π»Π°Π΄Π°ΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
logger Experiencing instability in network connection at 23:10, 05/21.
# Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π΄Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ 'tail /var/log/messages'.
ΠΡΡΡΠ°ΠΈΠ²Π°Ρ Π²ΡΠ·ΠΎΠ² logger Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ, Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π½ΠΎΡΠΈΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΠΆΡΡΠ½Π°Π» /var/log/messages.
logger -t $0 -i Logging at line "$LINENO".
# ΠΠ»ΡΡ "-t" Π·Π°Π΄Π°Π΅Ρ ΡΡΠ³ Π·Π°ΠΏΠΈΡΠΈ Π² ΠΆΡΡΠ½Π°Π»Π΅.
# ΠΠ»ΡΡ "-i" -- Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ID ΠΏΡΠΎΡΠ΅ΡΡΠ°.
# tail /var/log/message
# ...
# Jul 7 20:48:58 localhost ./test.sh[1712]: Logging at line 3.
logrotate
ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ Π½Π°Π΄ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ ΠΆΡΡΠ½Π°Π»ΠΎΠΌ: ΡΠΎΡΠ°ΡΠΈΡ, ΡΠΆΠ°ΡΠΈΠ΅, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ/ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π΅Π³ΠΎ ΠΏΠΎ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΠ΅, ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΡΠΈΠ»ΠΈΡΠ° logrotate Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π΄Π΅ΠΌΠΎΠ½ΠΎΠΌ crond Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ.
ΠΠΎΠ±Π°Π²Π»ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Π² /etc/logrotate.conf, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΡΡΠ°Π²ΠΈΡΡ logrotate ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΠΆΡΡΠ½Π°Π», Π½ΠΎ ΠΈ Π²Π°Ρ Π»ΠΈΡΠ½ΡΠΉ.
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΡΠΌΠΈ
ps
Process Statistics: Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΠΈΡ ΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². ΠΠ±ΡΡΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ax, Π²ΡΠ²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ grep ΠΈΠ»ΠΈ sed, Ρ ΡΠ΅Π»ΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° (ΡΠΌ. ΠΡΠΈΠΌΠ΅Ρ 11-10 ΠΈ ΠΡΠΈΠΌΠ΅Ρ 27-1).
bash$ ps ax | grep sendmail
295 ? S 0:00 sendmail: accepting connections on port 25
pstree
Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΠΈΡ ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π² Π²ΠΈΠ΄Π΅ "Π΄Π΅ΡΠ΅Π²Π°". Π‘ ΠΊΠ»ΡΡΠΎΠΌ -p -- Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΈΡ PID.
top
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π°ΠΊΡΠΈΠ²Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². Π‘ ΠΊΠ»ΡΡΠΎΠΌ -b -- ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π΄Π΅ΡΡΡ Π² ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΡΡΠΎ Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°Π½Π°Π»ΠΈΠ·Π° Π²ΡΠ²ΠΎΠ΄Π° ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²Π½ΡΡΡΠΈ ΡΡΠ΅Π½Π°ΡΠΈΡ.
bash$ top -b
8:30pm up 3 min, 3 users, load average: 0.49, 0.32, 0.13
45 processes: 44 sleeping, 1 running, 0 zombie, 0 stopped
CPU states: 13.6% user, 7.3% system, 0.0% nice, 78.9% idle
Mem: 78396K av, 65468K used, 12928K free, 0K shrd, 2352K buff
Swap: 157208K av, 0K used, 157208K free 37244K cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND