P°edchozφ Dal╣φ Obsah

1. Prvnφ prohlφdka systΘmu

1.1 SystΘm adresß°∙

Nainstalovali jste si Linux a zdß se vßm, ╛e mßte na disku n∞jak moc divn²ch adresß°∙, ve kter²ch je spousta jin²ch divn²ch adresß°∙? Nepropadejte panice! SystΘm adresß°∙ na *NIXech1 je toti╛ postaven na trochu odli╣nΘ filozofii ne╛ v DOSu. Shrn∞me si nejv∞t╣φ rozdφly.

Toto °e╣enφ mß svΘ v²hody i nev²hody. Namodelujme si nßsledujφcφ situaci. Mßte na svΘm poΦφtaΦi jeden pevn² disk rozd∞len² na dva oddφly a pou╛φvßte DOS. V╣e je v po°ßdku dokud k vßm nep°φjde vß╣ kolega (°φkejme mu t°eba Pepa) se sv²m diskem, ╛e chce od vßs n∞jakß data. Vy p°ipojφte Pep∙v disk do svΘho poΦφtaΦe a po nabootovßnφ zjistφte, (Pro ost°φlenΘho DOSistu ╛ßdnß novina) ╛e tam kde jste m∞li disk D, si lebedφ Pep∙v disk C, zatφmco z va╣eho b²valΘho D je nynφ E. To je mrzutΘ pokud t°eba na va╣em disku D mßte programy kterΘ spou╣tφte z autoexec.bat nebo programy kterΘ pro svou Φinnost cht∞jφ v∞d∞t na kterΘm disku le╛φ. Situace by byla daleko jednodu╛╣φ, kdyby se Pep∙v disk neobjevil automaticky, ale a╛ potom co si o n∞j °eknete - t°eba: "p°ipoj Pep∙v disk jako E:".

Tak takhle n∞jak to vypadß na *NIXech. Po nabootovßnφ je p°ipojen jenom hlavnφ disk (ten kter² byl p°edßn jßdru jako parametr ze kterΘho mß bootovat - viz 1.3 Start systΘmu). a dal╣φ disky se p°ipojujφ a╛ b∞hem startu systΘmu, samoz°ejm∞ to lze automatizovat - viz 1.2 D∙le╛itΘ soubory soubor fstab.

RuΦnφ p°ipojovßnφ p°inß╣φ trochu komplikace p°i prßci s v²m∞nn²mi mΘdii. Po zalo╛enφ mΘdia do mechaniky (CD-disk, disketa) se musφ disk p°ipojit (p°φkaz mount) a p°ed vyjmutφm zase odpojit.

Rozpt²lenφ program∙ po r∙zn²ch Φßstech disku se m∙╛e zdßt nep°ehlednΘ a obtφ╛nΘ na sprßvu, zvlß╣╗ kdy╛ velikost program∙ a poΦet jejich soubor∙ s nov²mi verzemi nar∙stß. Modernφ systΘmy disponujφ jak²misi sprßvci, nap°φklad rpm nebo dpkg, kte°φ krom∞ p°ehledu co kam pat°φ, obsahujφ i funkce na odinstalaci Φi kontrolu integrity program∙ (vφce informacφ zde).

Struktura adresß°∙ je na v╣ech *NIXech skoro stejnß. Co majφ v╣ichni spoleΦnΘ ukazuje nßsledujφcφ tabulka:
Hrub² popis struktury adresß°∙
/bin Nejd∙le╛it∞j╣φ programy nutnΘ pro prßci. (sh, bash, ls, cp, vi, ...)
/boot Jßdro (kernel) systΘmu a informace pot°enΘ k "nabootovßnφ2"
/dev Spousta zajφmav²ch systΘmov²ch soubor∙ (podrobnosti se doΦtete se pozd∞ji)
/etc Skoro v╣echny konfiguraΦnφ soubory systΘmu (ZpoΦßtku sem budete chodit hodn∞ Φasto)
/home Adresß°e jednotliv²ch u╛ivatel∙ (Na domßcφm poΦφtaΦi jich moc neb²vß)
/lib SdφlenΘ knihovny a moduly jßdra (I zde se podrobnosti dozvφte pozd∞ji)
/lost+found3 Sem se uklßdajφ soubory obsahujφcφ ztracenß data vlivem chyb v souborovΘm systΘmu nalezenΘ pomocφ programu e2fsck. (obdobn∞ jako soubory fileXXXX.chk a programu chkdsk Φi scandisk v DOSu).
/mnt Standartnφ umφst∞nφ takzvan²ch mountpoint∙ - adresß°∙ do kter²ch se p°ipojujφ jinΘ disky.
/proc Tento adresß° vlastn∞ doopravdy na disku v∙bec neexistuje. Jeho obsah je pouze jakoby virtußln∞ generovan² jßdrem a obsahuje informace o stavu systΘmu. (ZpoΦßtku vßs jeho obsah nemusφ moc zajφmat.)
/root Privßtnφ adresß° sprßvce systΘmu.
/sbin Zßkladnφ programy pro rozb∞hnutφ a administraci systΘmu (init, fdisk, lilo, ...) Jejich pou╛itφ je urΦeno v²hradn∞ pro sprßvce systΘmu.
/tmp Prostor pro pracovnφ soubory. Programy, kterΘ si cht∞jφ na chvφli odlo╛it data je dßvajφ sem.
/usr Obsahuje p°evß╛nou Φßst program∙ a datov²ch soubor∙ z celΘho systΘmu. Jeho struktura se z Φßsti podobß ko°enovΘmu adresß°i. (Dal╣φ podrobnosti viz nßsledujφcφ tabulka)
/var DatovΘ soubory, kerΘ se Φasto m∞nφ. (Nap°φklad TeX sem generuje svoje fonty, nebo se sem uklßdajφ data Φekajφcφ ve front∞ na tiskßrnu, uklßdß se sem doruΦenß po╣ta, kde Φekß na vyzvednutφ adresßtem, ...)

Nßsledujφcφ v²Φet nenφ kompletnφ, proto╛e se systΘm od systΘmu pon∞kud li╣φ, nicmΘn∞ to nejd∙le╛it∞j╣φ tady najdete. (To ov╣em neznamenß, ╛e ten zbytek m∙╛ete smazat :-)
Hrub² popis struktury adresß°e /usr
/usr/X11R6 Programy a knihovny pro X Window System
/usr/bin V∞t╣ina program∙ v systΘmu.
/usr/doc Dokumentace k program∙m. (Jedno z prvnφch mφst, kde je dobrΘ hledat informace p°i nesnßzφch.) Zvlß╣╗ je t°eba upozornit na podadresß° HOWTO!
/usr/games Co dodat?
/usr/include Pokud jste n∞co programovali v jazyce C, asi tu╣φte. Jsou tady hlaviΦkovΘ soubory knihoven jazyka C.
/usr/info Dal╣φ z forem dokumentace k program∙m. (Nap°φklad soubor bash.info.gz si zobrazφte p°φkazem info bash) TakΘ se naz²vß Texinfo dokumentace.
/usr/lib Ostatnφ sdφlenΘ knihovny
/usr/local Dal╣φ mo╛nΘ umφst∞nφ program∙
/usr/man Dal╣φ z forem dokumentace k program∙m - manußlovΘ strßnky. Dokumentace je rozd∞lena do n∞kolika skupin podle zam∞°enφ (u╛ivatelskΘ p°φkazy, administrßtorskΘ p°φkazy, p°φkazy knihoven jazyka C, popis formßtu konfiguraΦnφch soubor∙, ... Nap°φklad soubor echo zobrazφte p°φkazem man echo)
/usr/sbin P°φkazy pro pokroΦilej╣φ administraci. (Sprßva u╛ivatel∙, tiskov²ch front, n∞kter²ch sφ╗ov²ch slu╛eb, ...)


1*NIX je
2Mß n∞kdo p°ijateln∞j╣φ p°eklad?
3Tenhle adresß° vlastn∞ nesouvisφ se strukturou adresß°∙, ale vyskytuje se na ka╛dΘm logickΘm oddφlu disku se systΘmem e2fs a na disketßch naformßtovanych na e2fs.

1.2 Start systΘmu

*** tady nenφ v∙bec nic

1.2.1 Kernel

1.2.2 Init

1.2.3 Login

1.3 D∙le╛itΘ soubory

*** tady bude o: fstab,mtab,inittab,passwd,group,

1.3.1 /etc/fstab

Jak u╛ bylo °eΦeno s disky se pracuje na Linuxu pon∞kud odli╣n∞ ne╛ v DOS/Win. Existuje pouze jedin² adresß°ov² strom, v n∞m╛ ka╛dy adresß° (podstrom) m∙╛e b²t jin² disk (diskov² oddφl, partition). Nynφ se pokusφme objasnit kdy a jak se jednotlivΘ disky k tomuto adresß°ovΘmu stromu p°ipojujφ.

V╣e o discφch nalezneme v konfiguraΦnφm souboru /etc/fstab. Nejlep╣φ asi bude p°φklad.

/dev/hda3      /               ext2    defaults        1 1
/dev/hda2      swap            swap    defaults        0 0

/dev/fd0       /mnt/floppy     vfat    noauto,user     0 0
/dev/cdrom     /mnt/cdrom      iso9660 noauto,user,ro  0 0

/dev/hda1      /mnt/win        vfat    codepage=852,posix,iocharset=iso8859-2,quiet,umask=000,user        1 1
/dev/hdc1      /mnt/dos2       vfat    codepage=852,posix,iocharset=iso8859-2,quiet,umask=000        1 1
none           /proc           proc    defaults        0 0
V prvnφm sloupci je "za°φzenφ", tedy diskov² oddφl (partition), disketovΘ jednotky, CD-ROM apod. V druhΘm sloupci je cesta (adresß°) kam se danΘ za°φzenφ p°ipojit. T°etφ sloupec uvßdφ souborov² systΘm danΘho disku (FAT, vFAT, ext2). Pak ji╛ pokraΦujφ r∙znΘ p°epφnaΦe, kterΘ °φkajφ jak je danΘ za°φzenφ p°ipojit,

Na UNIXech jsou v∞╣kerß periferijnφ za°φzenφ (disky, my╣i,..) reprezentovavß specißlnφm souborem v adresß°i /dev. Nap°.

Probereme te∩ jednotlivΘ °adky.

/dev/hda3      /               ext2    defaults        1 1
Tedy na prvnφm je hlavnφ oddφl (logick² disk, partition) s nainstalovan²m Linuxem, tento je na prvnφm fyzickΘm disku na t°etφm oddφle (/dev/hda3). P°ipojuje se p°φmo do ko°enu adresß°ovΘho stromu ( / ). A je na n∞m souboruv² systΘm ext2 (nativnφ Linuxov² systΘm, second extended file system). Dal╣φ p°epφnaΦe majφ default hodnoty.

/dev/hda2      swap            swap    defaults        0 0
Druh² °ßdek popisuje odkladßcφ prostor (swap). Ta le╛φ na prvnφm disku v druhΘm oddφle (/dev/hda2). "Nikam" se nep°ipojuje, pouze se °φkß ╛e se jednß o swap. Souborov² systΘm se jmenuje p°ekvapiv∞ "swap". Dal╣φ p°epφnaΦe jsou op∞t ponechßny na zßkladnφch hodnotßch.

/dev/fd0       /mnt/floppy     vfat    noauto,user     0 0
T°etφ °ßdek definuje disketu. Prvnφ floppy jednotka (/dev/fd0). P°ipojuje se do adresß°e /mnt/floppy a soubor² systΘm je vfat (FAT s dlouh²mi nßzvy). P°epφnaΦ noauto zp∙sobφ ╛e se nebude p°ipojovat hned p°i startu. P°epφnaΦ user °φkß ╛e tuto jednotku m∙╛ou p°ipojovat takΘ obyΦejnφ u╛ivatelΘ, tedy nΘ pouze superu╛ivatel (root).

/dev/cdrom     /mnt/cdrom      iso9660 noauto,user,ro  0 0
╚tvrt² °ßdek definuje CD-ROM (/dev/cdrom), kterß se p°ipojuje do adresß°e /mnt/cdrom, mß souborov² systΘm iso9660 (standard pro CDROM). A p°ibyl p°epφnaΦ ro diky kterΘmu se CD-ROM p°ipojuje jako read-only.

/dev/hda1      /mnt/win        vfat    codepage=852,posix,iocharset=iso8859-2,quiet,umask=000,user        1 1
Velice zajφmav² °ßdek. P°ipojuje oddφl M$ Windows. Tedy prvnφ oddφl na prvnφm disku (/dev/hda1), do adresß°e /mnt/win jako vfat (pou╛itelnΘ i pro FAT32). P°epφnaΦ codepage °φkß v jakΘm k≤dovßnφ jsou nßzvy soubor∙, a iocharset °φkß do jakΘho kod≤vßnφ se mß p°evßd∞t (na UNIXech se zßsadn∞ pou╛φvajφ mezinßrodnφ ISO normy). P°epφnaΦ quiet zp∙sobφ ╛e se systΘm nebude sna╛it nastavovat na tomto disku soubor∙m unixovΘ atributy (stejn∞ by se mu to nepovedlo). umask nastavuje (maskuje) pro v╣echny soubory v╣echny unixovΘ atributy soubor∙ (viz 0.3.2 U╛ivatelΘ a soubory).

none           /proc           proc    defaults        0 0
Poslednφ °ßdek p°ipojuje specißlnφ adresß° s indormace mi jßd°e systΘmu.

A te∩ jak p°ipojit nap°. disketu. StaΦφ p°φkaz

mount /mnt/floppy
pokud mß disketa jin² souboruv² systΘm ne╛ jak je uvedeno v /etc/fstab pak ji m∙╛eme p°ipojit t°eba takto
mount /mnt/floppy -t ext2
Vφce se p°ikazu mount m∙╛ete dozv∞d∞t z manußlov²ch strßnek ($ man mount)

1.3.1 /etc/mtab

Soubor /etc/mtab obsahuje seznam prßv∞ p°ipojen²ch disk∙ (souborov²ch system∙). Jeho struktura je stejnß jako u /etc/fstab

1.4 P°φklady konfigurace

Vhodnß konfigurace jist∞ dokß╛e zp°φjemnit ╛ivot. Mn∞ se nap°φklad kdysi zdßlo, ╛e je dobrΘ mφt na konzolφch po nastartovßnφ zapnut² numlock. Zßmky na klßvesnici se dajφ ovlßdat programem setleds, a jeho parametry naleznete na jeho manußlovΘ strßnce (man setleds). Zb²vß zajistit nastavenφ p°i spu╣t∞nφ systΘmu, tedy n∞kam na konec souboru /etc/rc.d/rc.sysinit p°idat

/usr/bin/setleds -D +num < /dev/tty1
/usr/bin/setleds -D +num < /dev/tty2
/usr/bin/setleds -D +num < /dev/tty3
/usr/bin/setleds -D +num < /dev/tty4
/usr/bin/setleds -D +num < /dev/tty5
/usr/bin/setleds -D +num < /dev/tty6
/usr/bin/setleds -D +num < /dev/tty7
/usr/bin/setleds -D +num < /dev/tty8
/usr/bin/setleds -D +num < /dev/tty9
/usr/bin/setleds -D +num < /dev/tty10
nebo elegantn∞ji
for tty in /dev/tty[0-9]*; do
  /usr/bin/setleds -D +num < $tty
done

O n∞co jednodu╛╣φ je nap°φklad nastavit monitor aby se po urΦitΘ dob∞, kdy se na poΦφtaΦi nepracuje sßm vypφnal. Op∞t jej m∙╛ete zapsat do /etc/rc.d/rc.sysinit.

/usr/bin/setterm -blank 5 -powersave on -powerdown 8
Toto nastavenφ mß vliv pouze na konzoli. Chcete-li totΘ╛ v X Window, koukn∞te na /etc/X11/XF86Config a hledejte v sekci Screen polo╛ky BlankTime, StandbyTime, SuspendTime a OffTime. VyΦerpßvajφcφ informace naleznete v man setterm a man XF86Config.

P∙vodnφch 6 virtußlnφch konzolφ m∙╛ete zv²╣it tak, ╛e v souboru /etc/inittab ke stßvajφcφm

1:12345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
p°idßte
7:2345:respawn:/sbin/mingetty tty7
8:2345:respawn:/sbin/mingetty tty8
9:2345:respawn:/sbin/mingetty tty9
10:2345:respawn:/sbin/mingetty tty10

Abyste mohli na CD-ROM p°edhrßvat takΘ audio CD, je nutnΘ upravit atributy /dev/cdrom, tak aby mohl na CD p°φmo p°istupovat i normalnφ u╛ivatel (nebo jeho CD p°ehrßvaΦ).
Nap°. takto
$ ls -l /dev/cdrom

lrwxrwxrwx  1 root   root      3 Φerven  5 13:21 /dev/cdrom -> hdb

          // CD ROM je p°ipojena jako druh² disk (hdb)

$ ls -l /dev/hdb

brw-rw----  1 root   disk      3,  64 kv∞ten  5  1998 /dev/hdb

$ chmod 666 /dev/hdb

          //  nastavenφ prßv
          
$ ls -l /dev/hdb

          // kontrola

brw-rw-rw-  1 root   disk      3,  64 kv∞ten  5  1998 /dev/hdb

TakΘ je dobrΘ podobn∞ upravit disketu, tedy /dev/fd0



P°edchozφ Dal╣φ Obsah