Hledání
Pro příznivce Midnight Commanderu mám dobrou zprávu. I on zvládá hledání. Spousta lidí asi ohrne nos, ale midnight zvládá víc než jen jednoduché hledání. Klávesou F9 do menu, potom nabídka command (nebo rychle klávesouESC a potom ?). Zadáváte adresář, v kterém chcete hledat nebo jej můžete zvolit tlačítkem Tree. Ve jméně souboru můžeme použít zástupné znaky *
a ?
. Je možné vyhledávat soubory podle jejich obsahu, k tomu je políčko content
. Zde je možné používat i regulární výrazy. Když se pak zobrazí výsledek, můžete rovnou soubory prohlížet (klávesa F3) nebo editovat (F4). Když prohlížení/edit ukončíte, dostanete se zpět na seznam vyhledaných souborů. Zajímavou vlastností je tzv. panelizace. Když hledáte například *.mp3 a zobrazí se výsledek, klikněte dole na „Panelize“. Všechny nalezené soubory se zobrazí v jednom okně a můžete je třeba hromadně smazat.
Je to sice šikovná věc, ale linux/unix systémy mají pro hledání daleko mocnější nástroje, jako je treba příkaz locate
a find
. Podíváme se na ně.
Program locate neprochází adresářovou strukturu, pouze prohledává svou databázi, v které má zatříděné soubory a adresáře. Takže stačí zadat například:
bash-2.05b$ locate umount /rescue/umount /sbin/umount /usr/local/share/swat/help/manpages/smbumount.8.html /usr/local/share/swat/help/manpages/umount.cifs.8.html /usr/share/man/man8/umount.8.gz /usr/src/sbin/umount /usr/src/sbin/umount/Makefile ...
Výhoda locate je v rychlosti, neprochází se totiž data na disku, jen se prohlíží databáze. Ta se v pravidelných časových intervalech aktualizuje (většinou denně nebo týdně) pomocí programu locate.updatedb (takto se jmenuje ve FreeBSD, v Linuxu je to updatedb). A v tom spočívá i nevýhoda – pokud jste vytvořili soubor před pár minutami, locate jej pravděpodobně nenajde. Při update databáze se indexují jen některé filesystémy; co přesně se indexuje se můžete dozvědět v konfiguraci (ve FreeBSD /etc/locate.rc).
Další utilitou je whereis
. Ta vyhledává jen něco a někde:
- v adresářích, které jsou standardně určené pro spouštění (
/bin
,/sbin
,/usr/bin
a/usr/sbin
) - v adresáři s manuálovými stránkami
- v adresářích uvedených v proměnné
PATH
- ve zdrojových kódech (
/usr/src
)
Můžeme hledat ve všech těchto lokacích:
[pm@minastirith pm]$ whereis umount umount: /sbin/umount /usr/share/man/man8/umount.8.gz /usr/src/sbin/umount
Nebo například jen v manuálových stránkách:
[pm@minastirith pm]$ whereis -m umount umount: /usr/share/man/man8/umount.8.gz
Podobně se chová program which
, ten ale prohledává pouze adresáře zadané v uživatelově proměnné PATH a hledá spustitelné soubory:
[root@minastirith pm]# which mount /sbin/mount
Which zobrazí první nalezený, zároveň je to ten, který je v adresáři v proměnné path uveden nejdříve. Pokud bychom měli například ještě druhý příkaz mount v adresáři /bin, našel by se ten. Pokud chceme vidět všechny nálezy, slouží k tomu parametr -a
:
[root@minastirith pm]# which mount /bin/mount /sbin/mount
Již dříve tu bylo zmiňováno prohledávání souborů podle obsahu. Následující příklad najde všechny soubory, v kterých se vyskytuje slovo poklad a nezáleží na velikosti písmen:
grep -ri poklad *
Nmap
Velice užitečná utilitka, běžně se používá ke scanování portů. Tím si můžeme stroj trochu oťukat a zjistit co na něm běží.
$nmap www.mujserver.cz Starting Nmap 4.20 ( http://insecure.org ) at 2008-03-25 21:52 CET Not shown: 1683 closed ports PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 25/tcp open smtp 80/tcp open http 135/tcp filtered msrpc 136/tcp filtered profile ...
A vidíme ftp, ssh, mail a www server. Nmap lze také použít ke zjištění, co je v síti živé:
root@mail ~ # nmap -sP 192.168.0.0/24 Starting Nmap 4.20 ( http://insecure.org ) at 2008-03-25 22:00 CET Host 192.168.0.81 appears to be up. MAC Address: 00:1A:4B:23:D6:F4 (Unknown) Host 192.168.0.180 appears to be up. MAC Address: 00:14:38:95:D8:67 (Hewlett Packard) Host 192.168.0.181 appears to be up. MAC Address: 00:15:60:E2:F1:F2 (Hewlett Packard) Host 192.168.0.193 appears to be up. MAC Address: 00:0F:FE:09:46:6B (G-pro Computer) Host 192.168.0.253 appears to be up. Host 192.168.0.254 appears to be up. MAC Address: 00:1C:C4:A7:E7:14 (Unknown) Nmap finished: 256 IP addresses (6 hosts up) scanned in 7.977 seconds
Zároveň se nám dle MAC adres snaží napovědět výrobce. I to se může někdy hodit. Pokud nmap nepozná výrobce karty, můžete zkusit například www.coffer.com/mac_find.
Nmap má spoustu funkcí a parametrů, spusťte si jen nmap a zobrazí se malý help. Můžete například provádět UDP scan, scanovat jen vybrané porty. Pokud budete scanovat moc, nemusí se to každému líbit a může se začít bránit – například začne omezovat počet spojení za vteřinu nebo se s vámi přestane bavit úplně.