Téma 10: Konfigurace HW v systému CentOS Základní konfigurace
Téma 10: Konfigurace HW v systému CentOS Teoretický úvod Stejně jako v prostředí MS Windows i v Linuxu lze konfigurovat HW. Pravdaže je to často znesnadněno ovladači dodávanými k danému typu zařízení. Jestliže ale máte „dobrý“ ovladač občas dokážete skutečně divy. To platí např. u nahrávacího HW apod. Velkou kapitolou v Linuxu obecně jsou pevné disky. Linux podporuje velké množství souborových systémů, jak jste se jistě už přesvědčili. Některé souborové systémy jsou vyvíjeny speciálně pro Linux. Obecně však UNIX-like systémech nacházíme širokou podporu a to dokonce i pro souborové systémy používané v MS Windows (např. FAT32, NTFS, atd.). V této kapitole se také blíže seznámíte s nástroji, které Vám pomohou sledovat co se děje v systému, tzn., který proces si bere nejvíce paměti apod. Jinými slovy budete zkoumat programy určené pro dohled systému.
2
Téma 10: Konfigurace HW v systému CentOS
Zadání cvičení Úlohy jsou rozděleny na dvě části: A) Konfigurace HW v systému CentOS 1) Vypište informace o veškerém hardware pomocí příkazu lshal. 2) Jaký program v prostředí CentOS hlídá změny HW, tedy automaticky jej detekuje a konfiguruje. Dále vyjmenujte co všechno kudzu má za úkol. 3) Jaký další nástroj pro konfiguraci HW znáte? 4) Konfigurace modulů. Připomeňte si, jak rozdělujeme nahrávané ovladače. Vypište aktuálně načtené moduly. Dále zjistěte další informace o modulu nf_nat; jaký soubor používá jako zdrojový, jaký je jeho alias a jakou má licenci. 5) Vypište všechny připojení oddíly v systému. 6) Jaká je jmenná konvence oddílů v prostředí Linuxu? Liší se nějak od konvence ve Windows? 7) Vypište všechny připojené disky v systému a zjistěte, kam jsou připojeny (do kterého místa). 8) Vysvětlete z jakého důvodu, nejsou připojeny žádné oddíly na: /proc /sys /dev/pts. 9) Zjistěte jaké všechny souborové systémy CentOS podporuje. A zjistěte, které jsou aktuálně používány. 10) Zjistěte jakým způsobem a s jakými parametry jsou moutovány systémy ve vaší instalaci CentOS. 11) V případě, že používáte jako souborový systém formát ext3 můžete ho konvertovat na novější verzi, tedy ext4. Souborový systém typu ext4 lze ale připojovat na typ ext3. Pomocí jakého příkazu konvertujete souborový systém ext3 na ext4? 12) Zjistěte, který oddíl je v systému nastaven jako bootovací. 13) Příkaz mount. Příkaz mount používá systém automaticky již při startu systému a to s parametrem -a (all). Proveďte příkaz mount. 14) Jakým způsobem připojíte disketovou mechaniku, která obsahuje souborový systém MS-DOS nebo Windows vfat? Přípojný bod bude /mnt/floppy0. Disketovou mechaniku připojte tak, abyste mohli zapisovat i číst. 15) Odpojte disketovou mechaniku. 16) Vytvořte souborový oddíl typu ext3 na vašem flash disku nebo na novém oddílu pevného disku. Pokud máte možnost, můžete i na disketové mechanice. 17) Připojte libovolný USB Flash disk a formátujte ho tak aby vzniknul souborový systém typu ext3 se žurnálováním.
3
Téma 10: Konfigurace HW v systému CentOS 18) DOBROVOLNÉ. Vyzkoušejte si formátování v grafických nástrojích. V prostředí CentOS můžete formátovat např. ve správci souborů, kde nástroj pro formátování (typicky: Pravé tlačítko myši na disk, který chceme formátovat => Formátovat). Další možností je použití nástroje Gparted(grafický interface), parted(textový mód), atp. 19) Zjistěte, kolik volného místa se nachází v systému. Proveďte pomocí grafického nástroje a pomocí konzolového nástroje. 20) Zjistěte, kolik místa zabírá složka /home/FimUHK a její jednotlivé podsložky. Po-té tento výpis proveďte ještě jednou ale s tím, že se vypíše pouze obsazené místo složky FimUHK. 21) Najděte pomocí příkazu find soubory, které vlastní uživatel FimUHK, vypište pouze soubory, které jsou větší než 2MB, tento výpis uložte do souboru /tmp/FimUHK.txt. B) Monitoring systému 1) Vypište aktuální běžící procesy. 2) CentOS umožňuje také sledovat parametry napájení pomocí APCI. Zjistěte zda-li Vás CentOS podporuje APCI. 3) Další metodou jak sledovat vytížení systému je přes grafické nástroje. Ty naleznete v horním menu GNOME. Applications => System tools => System monitor.
4
Téma 10: Konfigurace HW v systému CentOS
Řešení: A) Konfigurace HW v systému CentOS 1) Vypište informace o veškerém hardware pomocí příkazu lshal. [FimUHK@localhost]$ lshal info.subsystem = 'pci' (string) info.udi = '/org/freedesktop/Hal/devices/pci_8086_29e1' (string) info.vendor = 'Intel Corporation' (string) linux.hotplug_type = 2 (0x2) (int) linux.subsystem = 'pci' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:01.0' (string) pci.device_class = 6 (0x6) (int) . . Atd.
2) Jaký program v prostředí CentOS hlídá změny HW, tedy automaticky jej detekuje a konfiguruje. Dále vyjmenujte co všechno kudzu má za úkol. Správná odpověď: kudzu. Úkoly kudzu: a) Kontroluje připojení dalšího HW k PC. b) Porovnává hardware, který najde s daty uvnitř databáze, která je uložena /etc/sysconfig/hwconf souboru. c) Vyzývá ke změně systémové konfigurace, v důsledku připojení nebo odebrání hardware.
Vyjmenované úlohy: Síťová zařízení - přidává ethernet rozhraní a automaticky je pojmenovává (eth0, eth1, lo0, atd.) SCSI - přidává alias scsi_hostadapter Myš - používá nástroj mouseconfig ke konfiguraci a otestování myše. CD-ROM - odkazuje na /dev/cdrom Scanner - odkazuje na /dev/scanner Podobně pracuje kudzu jestliže odebíráte zařízení z PC tzn. že např. odebere odkaz na cdrom z /dev/cdrom. Pozn.: V RHEL 6 již kudzu není. Je proto pravděpodobné, že ani v budoucích verzích CentOS nebude.
5
Téma 10: Konfigurace HW v systému CentOS 3) Jaký další nástroj pro konfiguraci HW znáte? Typicky udev. 4) Konfigurace modulů. Připomeňte si, jak rozdělujeme nahrávané ovladače. Vypište aktuálně načtené moduly. Dále zjistěte další informace o modulu nf_nat; jaký soubor používá jako zdrojový, jaký je jeho alias a jakou má licenci. Načítané ovladače jsou buď: resident drivers nebo loadeble modules. Výpis provedeme pomocí příkazu: [FimUHK@localhost]$ lsmod Informace o načteném modulu nf_nat zjistíte pomocí příkazu: [FimUHK@localhost]$ modinfo nf_nat filename: alias: license:
/lib/modules/2.6.32-71.el6.i686/kernel/net/ipv4/netfilter/nf_nat.ko nf-nat-ipv4 GPL
srcversion:
843CC404FF4265C376518FF
depends:
nf_conntrack,nf_conntrack_ipv4
vermagic:
2.6.32-71.el6.i686 SMP mod_unload modversions 686
Moduly samozřejmě můžete zavádět sami, a to pomocí příkazu: modprobe NAZEV_MODULU Někdy je potřeba i další konfigurace např. při sdílení portů PC. Pro odstranění modulu používáme příkaz: rmmod NAZEV_MODULU. Tento způsob funguje jen v případě, že modul není používán jinak je třeba použít příkaz: modprobe -r NAZEV_MODULU. Vše samozřejmě provádíme pod uživatelem root. 5) Vypište všechny připojení oddíly v systému. Výpis všech oddílů provedete tímto příkazem: [FimUHK@localhost]$ sudo fdisk -l 6) Jaká je jmenná konvence oddílů v prostředí Linuxu? Liší se nějak od konvence ve Windows? Ano liší a dost zásadním způsobem. Linux nepoužívá žádné písmenka pro každý oddíl jako je tomu u Windows. Oddíly se připojují do složek. Můžete takto definovat každý oddíl do jiné složky. Jestliže tedy tvrdíme, že lze instalovat oddíl /boot na jiný disk máme pravdu. Je to dokonce běžnou praxí.
6
Téma 10: Konfigurace HW v systému CentOS Disky se zpravidla pojmenovávají jako sdX a jsou umístěny ve složce /dev/sdX. Písmenko X může obsahovat písmena a-z, můžeme se tedy setkat se zápisem /dev/sda nebo /dev/sdb. Oddíly na disku jsou pak odznačeny číselně, konkrétně: /dev/sda1 nebo /dev/sdd3. 7) Vypište všechny připojené disky v systému a zjistěte, kam jsou připojeny (do kterého místa). Výpis provedete pomocí příkazu: [FimUHK@localhost]$ mount 8) Vysvětlete, z jakého důvodu nejsou připojeny žádné oddíly na: /proc /sys /dev/pts. Jedná se o jiné souborové systémy, které jsou vytvářeny vždy při startu pc. Kupříkladu /proc je adresář kam se ukládá obraz všech běžících procesů. 9) Zjistěte jaké všechny souborové systémy CentOS podporuje. A zjistěte, které jsou aktuálně používány. Výpis všech podporovaných systémů provedete pomocí příkazu: [FimUHK@localhost]$ cat /proc/filesystems Aktuálně používány jsou všechny systémy, které nejsou uvozeny nodev. Pozor! Všechny souborové systémy jsou sice podporovány občas je ale nutné načíst modul pro ovladače, protože jádro nepodporuje všechny okamžitě, je tedy potřeba pouze zavést modul do jádra. 10) Zjistěte jakým způsobem a s jakými parametry jsou moutovány systémy ve vaší instalaci CentOS. Tyto informace získáte ze souboru fstab ve složce /etc/. Tedy: [FimUHK@localhost]$ cat /etc/fstab Systém při startu z tohoto souboru čte informace jak má jednotlivé souborové systémy připojit. Z toho vyplívá, že úprava tohoto souboru je velmi zásadní, dávejte velký pozor, jestliže budete tento soubor upravovat a vždy si vytvářejte záložní kopie. Úpravou souboru ale můžete jednoduše připojovat souborové systémy, případně upravovat vzniklé chyby vzniklé např. přesouváním disků na sběrnicích. Úpravy souboru /etc/fstab můžete provádět jen s uživatelem root nebo s uživatelem, který má podobná práva. Nezapomeňte, že jedině root může připojovat souborové systémy, stejně tak i odpojovat!
7
Téma 10: Konfigurace HW v systému CentOS 11) V případě, že používáte jako souborový systém formát ext3 můžete ho konvertovat na novější verzi, tedy ext4. Souborový systém typu ext4 lze ale připojovat na typ ext3. Pomocí jakého příkazu konvertujete souborový systém ext3 na ext4? Např.: [root@localhost]# tune2fs -O extents -E NOVY_SYS /dev/DEV prozkoumejte dále příkaz tune2fs v manuálu, určitě se Vám to bude někdy hodit. 12) Zjistěte, který oddíl je v systému nastaven jako bootovací. Máte dvě možnosti jak tuto informaci zjistit, první: [FimUHK@localhost]$ cat /etc/fstab
V případě fstab vidíme, že příznak bootování je označen pomocí /boot zde se tedy nachází oddíl, ze které CentOS bootuje. Zjistěte také, co jsou poslední dva parametry uvedené ve výpisu (jedná se o poslední čísla).
8
Téma 10: Konfigurace HW v systému CentOS druhá možnost pak přes: [FimUHK@localhost]$ sudo fdisk -l
U výpisu fdisk, který je o něco přehlednější zjistíme, že příznak boot je označen hvězdičkou u popisu zařízení (druhý sloupec Boot). Při zkoumání výstupu, který vytváří fdisk se speciálně zaměřte na poslední 4 parametry. 13) Příkaz mount. Příkaz mount používá systém automaticky již při startu systému a to s parametrem -a (all). Proveďte příkaz mount. [root@localhost]# mount
Pozn.: Příkaz je spouštět i pod jiným uživatelem nejen root. Příkaz vypíše všechny aktuálně připojené souborové systémy. Vidíme, že se v podstatě jedná o odkazy, které ukazují zpravidla na zařízení umístěné ve složce /dev, kde je umístěna většina zařízení.
9
Téma 10: Konfigurace HW v systému CentOS CentOS Vám připojuje automatická média, jako jsou flash disky, optické mechaniky apod. To je způsobené nastavením v fstab, např.: /dev/cdrom /mnt/cdrom auto auto,user,exec,ro 0 0 budeme připojovat cdrom do složky /mnt/cdrom automaticky. Jedná se až o druhý parametr auto, první parametr auto, je automatická detekce souborového systému v případě cdrom se jedná o: iso9660.
14) Jakým způsobem připojíte disketovou mechaniku, která obsahuje souborový systém MS-DOS nebo Windows vfat? Přípojný bod bude /mnt/floppy0. Disketovou mechaniku připojte tak, abyste mohli zapisovat i číst. [root@localhost]# mkdir /mnt/floppy0 [root@localhost]# mount -t msdos -w /dev/fd0 /mnt/floppy0 Pozn.: Pro tento úkol bude potřebovat povolit disketovou mechaniku ve virtualizačním nástroji. 15) Odpojte disketovou mechaniku. [root@localhost]# umount /mnt/floppy0 nebo [root@localhost]# mount /dev/fd0 V případě, že vám shell vypíše chybové hlášení např.: “device is busy”. Budete muset použít parametr -l (lazy). To je způsobené tím, že zařízení ještě využívá nějaký proces. Pomocí parametru -l odpojíte zařízení po době, kdy je zařízení nečinné. U některých souborových systémů je potřeba ještě použít parametr -f (forcibly). 16) Vytvořte souborový oddíl typu ext3 na vašem flash disku nebo na novém oddílu pevného disku. Pokud, máte možnost můžete i na disketové mechanice. [root@localhost]# mkfs -t ext3 /dev/fd0 mke2fs 1.39, (29-May-2006) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 184 inodes, 1440 blocks 72 blocks (5.00%) reserve . . atd. 10
Téma 10: Konfigurace HW v systému CentOS
Prozkoumejte další možnosti programu mkfs, především to jaké souborové formáty podporuje. 17) Připojte libovolný USB Flash disk a formátujte ho tak aby vzniknul souborový systém typu ext3 se žurnálováním. 18) DOBROVOLNÉ. Vyzkoušejte si formátování v grafických nástrojích. V prostředí CentOS můžete formátovat např. ve správci souborů, kde nástroj pro formátování (typicky: Pravé tlačítko myši na disk, který chceme formátovat => Formátovat). Další možností je použití nástroje Gparted(grafický interface), parted(textový mód), atp. 19) Zjistěte, kolik volného místa se nachází v systému. Proveďte pomocí grafického nástroje a pomocí konzolového nástroje. a) Grafický nástroj naleznete Applications => System tools => Disk usage analyzer (tento nástroj jste již používali v dřívějších cvičeních).
b) Konzolový nástroj, jako konzolový nástroj můžete využít např. df a du [FimUHK@localhost]$ df
11
Téma 10: Konfigurace HW v systému CentOS
Pozn.: Pro lepší čitelnost používejte parametr -h převádí jednotky do řekněme jasnější a jednodušší podoby. 20) Zjistěte, kolik místa zabírá složka /home/FimUHK a její jednotlivé podsložky. Po-té tento výpis proveďte ještě jednou ale s tím, že se vypíše pouze obsazené místo složky FimUHK. [FimUHK@localhost]$ du -h /home/FimUHK/
Obsazené místo pouze složkou FimUHK: [FimUHK@localhost]$ du -sh /home/FimUHK/ 21) Najděte pomocí příkazu find soubory, které vlastní uživatel FimUHK, vypište pouze soubory, které jsou větší než 2MB, tento výpis uložte do souboru /tmp/FimUHK.txt. [root@localhost]# find / -xdev -size +2000k -print | xargs ls -ldS > /tmp/FimUHK.txt
12
Téma 10: Konfigurace HW v systému CentOS B) Monitoring systému 1) Vypište aktuální běžící procesy. Máte možnost buď pomocí příkazu: [FimUHK@localhost]$ ps nebo daleko zajímavější výpis pomocí příkazu: [FimUHK@localhost]$ top Nechte běžet konzoly a v ní příkaz top; dále spusťte aplikaci firefox, sledujte změny. Zavřete aplikaci firefox pomocí konzoly. Jestliže to nepůjde standardním způsobem tedy “po dobrém” pak aplikaci zabijte pomocí kill. Určitě jste si všimli, že nástroj top nevypisuje jen běžící procesy ale také vypisuje vytíženost sytému a to dynamicky. Naleznete zde také celkové přehledy systémových zdrojů. Co se procesů týče, nabízí se jednoduchá otázka (opakování): Jaké číslo procesu má proces init? 2) CentOS umožňuje také sledovat parametry napájení pomocí APCI. Zjistěte, zda-li Vás CentOS podporuje APCI. Použijte příkaz: [FimUHK@localhost]$ dmesg | less zde zjistíte podporu APCI. Je třeba hledat řádky, které začínají APCI. PC, které podporu APCI nemá nalzete jen: ACPI: System description tables not found. V předchozích úlohách, jsme používali rouru na mocný nástroj grep. I zde ho lze použít pro efektivnější výstup: [FimUHK@localhost]$ dmesg | grep APCI 3) Další metodou jak sledovat vytížení systému je přes grafické nástroje. Ty naleznete v horním menu GNOME. Applications => System tools => System monitor. Na obrázku jsou oba systémy pro KDE a GNOME, v uvedeném pořadí.
13
Téma 10: Konfigurace HW v systému CentOS
Oba dva nástroje Vám umožňují sledovat vytížení procesoru paměti, odkládacího prostoru-SWAP (pokud existuje). Nástroj KDE je spíše grafickou nástavbou nástroje top. Z nástroje GNOME zase můžete vyčíst základní info o PC. Oba programy důkladně prozkoumejte!
14