Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Hrátky z řádky: Na neznámém stroji a hrátky s časem

Opět se setkáváme u pravidelné pondělní dávky tipů a triků z černé řádky. Dnes se podíváme na několik příkazů, které nám pomohou při prvním přihlášení na nám dosud neznámý vzdálený počítač. Dále se podíváme na pravidelné spouštění úloh pomocí démona cron a na závěr si pohrajeme s přesným časem.

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Kdo a kde jsem, co je to za stroj?

Občas dostanu od někoho ssh údaje pro přihlášení s tím, že mám na daném stroji něco udělat. Napřed je dobré mít nějaké informace. Kdo jsem a do kterých skupin patřím, mi řekne příkaz id.

$ id
uid=1001(pm) gid=1001(pm) groups=1001(pm), 0(wheel), 5(operator)
$ su
Password:
#  id
uid=0(root) gid=0(wheel) groups=0(wheel), 5(operator)

Můžeme zjišťovat informace i o jiných uživatelích:

$ id tm
uid=1003(tm) gid=1003(tm) groups=1003(tm), 80(www)

Pokud se nám server slušně nepředstaví po přihlášení, zeptáme se ho příkazem uname. Bez parametru nám toho moc neřekne, s parametrem -a už se dozvíme spoustu věcí. U FreeBSD třeba verzi, patch level, jaké jádro používáme, …

pm@mail ~ $ uname -a
FreeBSD mail.firma.cz 6.2-RELEASE-p4 FreeBSD 6.2-RELEASE-p4 #0: Mon May 21 11:33:00 CEST 2007
root@mail.firma.cz:/usr/obj/usr/src/sys/KERNEL_MAIL_FIRMA_CZ  i386

Pokud se ani takhle nedozvíte potřebné informace (znám servery, které na uname říkají jen: linux), zkuste:

$ cat /etc/*version

nebo

$cat /etc/*release

Ke zjištění DNS jména serveru příkaz hostname. Příkazy who a w se také mohou hodit – zobrazí informace o přihlášených uživatelích a co právě dělají.

Když se chcete dozvědět něco o hardware, použijte příkaz dmesg, v některých distribucích dmesg -a. Ve FreeBSD dosáhnete stejného výsledku pomocí

$ cat /var/run/dmesg.boot

Příkaz vám vypíše buffer, uvidíte v něm např. zprávy o bootu systému, jaký HW byl nalezen a co se spouštělo.

Další příkazy, které se mohou hodit (některé už jsme si ukázali, některé ještě probereme):  users, whoami, uptime, last.

Cron – pravidelné spouštění úloh

Nedávno jsme si ukázali program at určený pro jednorázové spouštění úlohy ve stanovený čas. Dnes se podíváme na pravidelné spouštění pomocí démonu cron. V běžném systému si každý uživatel může spravovat svou cron tabulku. Úlohy se tedy spouští s právy uživatele vlastnícího příslušnou cron tabulku. Ke správě tabulky slouží příkaz crontab. Nejprve si ukážeme, jak takový crontab může vypadat, to se provádí pomocí příkazu  crontab -l:

00 23 * * *         /usr/sbin/ntpdate tak.cesnet.cz >> /dev/null
40 22 * * 5         /usr/local/bin/zalohuj >> zalohovani_chyby
30 10 14,28 * *     /usr/local/bin/lynx -dump http://www.mujserver.cz/cron/zaloha_sql.php

Pravá strana výpisu je asi jasná, udává, který příkaz nebo příkazy (oddělené středníkem) se budou spouštět. Levá strana už tak jasná není. Je to v podstatě pět sloupečků, jsou odděleny mezerou nebo tabulátorem. Každý zastává nějaký časový údaj:

1. minuty (může být 0-59)
2. hodiny (může být 0-23)
3. den v měsíci (může být 1-31)
4. měsíc (může být 1-12)
5. den v týdnu (může být 0-7, 0 i 7 je neděle)

Hvězdička pak znamená libovolný. Pokud bychom zadali 5× hvězdičku, úloha by se spouštěla každou minutu. Objasníme si to na výše uvedené tabulce. První záznam říká, že ntpdate se spustí každý den ve 23:00. Druhý řádek je podobný, zálohování se spustí ve 22:40, ale jen v pátek. Třetí záznam se spustí v 10:30 každý 14. a 28. den v měsíci.

U zadávání máme ještě další možnosti:
*/5 * * * * Toto nám spustí úlohu každých 5 minut
10 0 * * 1–5 spustí se v pondělí až pátek v 00:10
5 0–23/2 * * * spustí se každou sudou hodinu:5 (02:05, 04:05, …)
55 0 13 * 5 načasovat se dá vše, tohle je pátek třináctého

Ještě si můžeme ovlivnit chování, např. pomocí parametrů SHELL, MAILTO a PATH si můžeme nastavit jiný shell, cesty a komu se má mailovat výsledek spuštění:

SHELL=/bin/sh
MAILTO=uzivatel
PATH=/usr/bin:/bin

Uživatel root může prohlížet a měnit tabulky všech uživatelů, slouží k tomu parametr

-u uzivatel

Čas

Na serveru, kde nepotřebuji úplně přesný čas, používám v crontabu uživatele root toto:

50 23 * * *         /usr/sbin/ntpdate tak.cesnet.cz >> ntpdate.log

Každou noc se mi seřídí čas dle serveru tak.cesnet.cz a v logu je krásně vidět, jak se synchronizovalo:

$ cat /root/ntpdate.log
19 Jan 23:50:00 ntpdate[99830]: adjust time server 195.113.144.201 offset -0.030088 sec
20 Jan 23:50:00 ntpdate[3488]: step time server 195.113.144.201 offset -1.068216 sec
21 Jan 23:50:00 ntpdate[7068]: step time server 195.113.144.201 offset -1.093893 sec

Samozřejmě pokud chcete mít přesnější čas, je potřeba zkonfigurovat ntpd démon. Ve FreeBSD stačí přidat do /etc/rc.conf:

ntpd_enable="YES"

Vytvořit konfigurační soubor /etc/ntp.conf:

logfile /var/log/ntpd
driftfile /var/db/ntpd.drift
statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

server ntp.mujposkytovatel.cz
server ntp.verejnyserver.cz
server tik.casovy.cz

a spustit:

$ /etc/rc.d/ntpd start

Seznam ntp serverů najdete na ntp.org a konkrětně pro ČR v sekci cz. Potom může tento ntpd sloužit jako server pro další stroje ve vaší síti.

Školení: Linux – Zálohování, Vysoká dostupnost, SNMP dohled

Na třídenním školení se naučíte nainstalovat a spravovat systém zálohování, replikace dat a vysoké dostupnosti dat. Dále také pracovat s RAID a LVM poli a nainstalovat a spravovat si vlastní dohledový systém.

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 2,80

Přehled názorů

z časem?
Michal Šimara 10. 3. 2008 01:02
Nový
├ 
Re: z časem?
anonymní uživatel 10. 3. 2008 02:08
Nový
│
├ 
Re: z časem?
haha 10. 3. 2008 08:04
Nový
│
│
└ 
Re: z časem?
ak47 12. 3. 2008 16:27
Nový
│
└ 
Re: z časem?
vd 10. 3. 2008 13:28
Nový
└ 
Re: z časem?
Petr Krčmář 10. 3. 2008 08:32
Nový
Pa 13
pht 10. 3. 2008 06:35
Nový
├ 
Re: Pa 13
Petr Krčmář 10. 3. 2008 08:34
Nový
└ 
Re: Pa 13
Petr Macek 10. 3. 2008 08:35
Nový
Patek +13
Jirka 10. 3. 2008 07:07
Nový
└ 
Re: Patek +13
Petr Macek 10. 3. 2008 08:50
Nový
 
└ 
Re: Patek +13
Jirka 10. 3. 2008 09:36
Nový
 
 
└ 
Re: Patek +13
anonymní uživatel 10. 3. 2008 10:30
Nový
hostname nic s DNS
ivast 10. 3. 2008 09:01
Nový
└ 
Re: hostname nic s DNS
Sten 12. 3. 2008 00:28
Nový
Vzdaleny powersave
karel 10. 3. 2008 11:54
Nový
└ 
Re: Vzdaleny powersave
r080 10. 3. 2008 13:08
Nový
/etc/issue*
zaq 10. 3. 2008 12:00
Nový
└ 
Re: /etc/issue*
theSlayer 10. 3. 2008 18:15
Nový
 
├ 
Re: /etc/issue*
Petr Macek 10. 3. 2008 21:01
Nový
 
└ 
Re: /etc/issue*
Pavel Trubl 11. 3. 2008 08:31
Nový
Dalsi prase...
purporte[X] 10. 3. 2008 12:19
Nový
└ 
Re: Dalsi prase...
Pavel Trubl 10. 3. 2008 13:03
Nový
 
└ 
Re: Dalsi prase...
Marek Turnovec 10. 3. 2008 13:25
Nový
 
 
└ 
Re: Dalsi prase...
Pavel Trubl 10. 3. 2008 13:48
Nový
 
 
 
└ 
Re: Dalsi prase...
Marek Turnovec 10. 3. 2008 13:51
Nový
 
 
 
 
├ 
Re: Dalsi prase...
Pavel Trubl 10. 3. 2008 13:57
Nový
 
 
 
 
└ 
Re: Dalsi prase...
Petr Macek 10. 3. 2008 14:00
Nový
re:
zippy 10. 3. 2008 15:22
Nový
/usr/sbin/ntpdate
karpi 10. 3. 2008 20:27
Nový
radime script kiddies co delat na prave exploitly masine ?
ak47 12. 3. 2008 16:35
Nový
└ 
Re: radime script kiddies co delat na prave exploitly masine ?
smal 7. 4. 2008 13:54
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem