Verzi�t�rt�net | ||
---|---|---|
Verzi�: 0.06 | 2004.03.10 | �tdolgozta: ns |
Hozz�adva a Linux-2.6-r�l sz�l� fejezet. | ||
Verzi�: 0.05 | 2003.12.26 | �tdolgozta: ejh |
Technikai �tvizsg�l�s. | ||
Verzi�: 0.04 | 2003.12.11 | �tdolgozta: ns |
Verzi�: 0.03 | 2003.12.02 | �tdolgozta: ejh |
Technikai �tvizsg�l�s. | ||
Verzi�: 0.02 | 2003.10.30 | �tdolgozta: ns |
V�ltoz�sok. |
Ezen dokumentum elj�r�sokat mutat be USB flash mem�ria eszk�z�k (memory stick; mem�riak�rtya) telep�t�s�re, valamint arra, hogyan form�zzuk �ket k�l�nb�z� f�jlrendszerekre, mint p�ld�ul vfat (ahogy �ltal�ban kapjuk �ket) �s ext2 (ami jobban illeszkedik a Linuxon val� haszn�lathoz). Tov�bb� bemutatjuk hogyan particion�ljuk az egys�get k�t r�szre k�l�nb�z� f�jlrendszerekkel.
A dokumentum c�lja, hogy le�rja az USB flash mem�ria eszk�z�k (memory stick; mem�riak�rty�k) Linuxon val� haszn�lat�t. Ez az al�bbiakb�l �ll:
�j eszk�z v�s�rl�sa, el�re form�zva MS Windows rendszerekhez, m�k�dik Linuxon;
az eszk�z ext2 f�jlrendszerre form�z�sa �s be�zemel�se. Azokban az esetekben, melyekben az eszk�zt kiz�r�lag Linuxos g�pen tervezz�k haszn�lni.
k�t part�ci� ext2 �s vfat f�jlrendszerre form�z�sa �s be�zemel�se. Ha Linux-Linux �s Linux-Windows k�z�tti adatcsere is lehets�ges.
az eszk�z felhaszn�l� bar�tt� t�tele.
az eszk�z f�jlrendszer�nek karbantart�sa.
Linux-2.6.x �jabb funkci�inak haszn�lata.
A dokumentumban bemutatott elj�r�sok m�k�dnek b�rmely olyan USB mem�ria eszk�z�n, ami k�pes �rhat�-olvashat� egys�gk�nt �zemelni. A csak olvashat� eszk�z�k nem tartoznak ebbe a kateg�ri�ba. Az elj�r�sok nem fognak m�k�dni, ha az eszk�z �r�si k�pess�ge ki van kapcsolva (azaz, ha a �r�sv�d� kapcsol� akt�v �ll�sban van).
A form�z�sra �s karbantart�sra bemutatott elj�r�sok (elvileg) alkalmazhat�k m�s f�jlrendszereken is, p�ld�ul ext3 �s reiserfs. Ezeket azonban nem pr�b�ltuk ki, �s nem is tesztelt�k. Nem szentelt�nk figyelmet a m�dszerek m�s oper�ci�s rendszereken t�rt�n� alkalmaz�s�ra sem.
A digit�lis kamer�khoz haszn�lt flash mem�ria �jraform�z�sa vesz�lyes lehet. El�fordulhat, hogy a kamera nem fogja felismerni. Haszn�lja a kamera be�p�tett men�j�t a m�velethez. |
Flash mem�ria eszk�z�k f�leg kis m�ret�, hordozhat� egys�gekk�nt vagy digit�lis kamer�k r�szek�nt �rkeznek. Gyakori elnevez�seik memory stick (mem�riak�rtya) vagy kulcstart�. Ezek tartalmukat nem vesztik el kikapcsol�skor (non-volatile devices), m�k�d�si elv�ket tekintve elektromos t�lt�seket haszn�lnak az adatok bin�ris form�ban val� t�rol�s�hoz. A t�lt�sek szinte ak�rmeddig v�ltozatlanul maradhatnak, de a v�ltoztat�sok (p�ld�ul �r�s) korl�tozz�k az eszk�z �lettartam�t (100000 �r�s / 8MB).
A mem�riak�rty�k k�zvetlen�l az USB-porthoz csatlakoznak a sz�m�t�g�p h�toldal�n (esetleg el�lapj�n vagy oldal�n - a lektor). Energiaig�ny�ket az USB-port l�tja el. N�ha k�nyelmes az USB hosszabb�t� k�bel haszn�lata, hogy k�nnyen el�rhet� k�zels�gbe hozzuk az eszk�zt.
A mem�riak�rty�k �ltal�ban rendelkeznek �r�sv�d� kapcsol�val, amit aj�nlatos kikapcsolni, hogyha �rhat�-olvashat� eszk�zk�nt akarjuk haszn�lni. Ha a kapcsol� "be" �ll�sban van, az eszk�z csak olvashat�. Az eszk�z�n �ltal�ban van egy LED (Light Emitting Diode; f�nykibocs�t� di�da), ami jelzi a m�k�d�k�pes �llapotot. A LED villog�sa az adatforgalmat mutatja.
A digit�lis kamer�k mem�riak�rty�t haszn�lnak a k�pek t�rol�s�ra. Ezeket a kamera l�tja el �rammal, �s egy csatlakoz�k�bel seg�ts�g�vel lehet a sz�m�t�g�p USB-portj�hoz k�tni. A sz�m�t�g�ppel val� �sszek�t�shez a kamer�t be kell kapcsolni az �tvitel idej�re, �s egyszer�en ki kell kapcsolni miut�n az eszk�zt lev�lasztottuk. Fontos megjegyezni, hogy a mem�riak�rtya a kamera akkumul�tor�b�l kapja az �ramot, ez�rt a m�veletet min�l hamarabb fejezz�k be.
Fontos szempontok mem�riak�rtya v�s�rl�s�hoz:
Ez att�l f�gg mire akarjuk haszn�lni. 128MB n�pszer� v�laszt�snak t�nik.
Olvasd az elismert m�rk�k weboldal�n.... Vagy k�rdezz�k meg a forgalmaz�t. Legy�nk �vatosak: lehet, hogy az elad� nem fogja �rteni mir�l besz�l�nk. A haszn�lati �tmutat� szint�n eml�thet valami ilyesmit: m�k�dik Linux-2.4 alatt, vagy lehet benne k�p a Linux pingvinr�l. Ha nem j�runk sikerrel ennek kider�t�s�ben, okosabb ha nem vessz�k meg.
A mem�riak�rty�kat �ltal�ban hosszabb�t� k�bellel (2 ) �s (nyakba akaszthat�) kulcstart�val csomagolj�k. Az ut�bbi biztons�gos m�dj�t ny�jtja az eszk�z sz�ll�t�s�nak. Bizonyosodjunk meg r�la, hogy a fentiek megvannak. A k�r�lm�nyekt�l f�gg�en sz�ks�g lehet m�g egy hosszabb�t� k�belre. Laptop �s notebook sz�m�t�g�pekhez �ltal�ban nem sz�ks�ges.
A gy�ri �j mem�riak�rty�k �ltal�ban vfat (msdos) f�jlrendszerre vannak form�zva, �s m�k�dnek Linuxon is, de �gy nem lehet kihaszn�lni az ext2 (vagy m�s) f�jlrendszer stabilit�s�t �s sokoldal�s�g�t. Ez nem probl�ma, helyettes�thet� m�s f�jlrendszerekkel, mint k�s�bb l�tni fogjuk.
A mem�riak�rty�k �ra egy adott m�reten bel�l is jelent�sen k�l�nb�zhet. J� �tlet ut�nan�zni mekkora a sz�r�s, erre kiv�l�an megfelel az internet. (Az �r nagyban f�gg a ny�jtott szolg�ltat�sokt�l is - a lektor)
Ezen dokumentum olvas�inak aj�nlatos megismerkedni az al�bbiakkal: [1]
Itt olvashat�k a konfigur�ci� f�bb jellemz�i, melyen az al�bb r�szletezend� m�dszerek kifejleszt�sre �s kipr�b�l�sra ker�ltek (Linux-2.6 rendszermagon is). A k�perny�-�br�k pontos m�solatai a monitoron megjelent tartalomnak.
Bizonytalan, hogy a 2.4.xx-n�l kor�bbi rendszermagok (kernel) USB t�mogat�sa megfelel�-e, ez�rt k�l�n beleford�tottuk a rendszermagba ezt a - dokumentum szempontj�b�l fontos - t�mogat�st. A modul�ris megold�s szint�n megfelel�.
Az al�bbi list�ban a nagybet�s r�szek a .config f�jlban lev� v�ltoz�neveket jelentik. Ezt a f�jlt a rendszermag-forr�s gy�k�rk�nyvt�r�ban lehet megtal�lni (/usr/src/linux/). Az xxx.o r�szek a modulra utalnak, melyek a modul�ris megk�zel�t�s sor�n keletkeznek. Ha nincs hivatkoz�s egy modulra, akkor az az opci� kiz�r�lag rendszermagba ford�tva �rhet� el.
K�l�nb�z� rendszermag verzi�k m�s-m�s m�don jel�lhetik az egyes be�ll�t�sokat, p�ld�ul a make menuconfig vagy make xconfig haszn�latakor. Ez�rt a v�ltoz�k, mint p�ld�ul CONFIG_USB, megb�zhat�bb jel�l�sek lehetnek. Ezeket az adott opci� s�g�j�b�l tudhatjuk meg.
A naprak�sz Linux disztrib�ci�k, mint p�ld�ul RedHat �s SuSE, val�sz�n�leg m�r tartalmazz�k a megfelel� be�ll�t�sokat beleford�tva a rendszermagba.
Az USB t�mogat�s alatt sz�mos digit�lis f�nyk�pez�g�p be�ll�t�sait el�rhetj�k.
Aj�nlatos ut�nan�zni a 4 pontban felsorolt �r�sokban, ha fontol�ra vessz�k a rendszermag (�jra)ford�t�s�t.
Ebben a fejezetben n�h�ny linuxos alapfogalmat tekint�nk �t r�viden, melyek seg�thetik a lentebb r�szletezett m�dszerek meg�rt�s�t.
A /proc f�jlrendszer ablakk�nt szolg�l, melyen kereszt�l l�thatjuk egy linuxos rendszer m�k�d�s�t. A dokumentum szempontj�b�l legfontosabb objektumok a k�vetkez� k�nyvt�rak: /proc/bus/usb/ �s /proc/scsi/. Ezek seg�ts�g�vel fogjuk ellen�rizni, hogy a rendszermag c�ljainknak megfelel�en, helyesen van-e be�ll�tva (7.2 ).
A mem�riak�rtya egy USB adatt�rol� eszk�znek tekinthet�, ami a rendszer fel� egy cser�lhet� SCSI lemez (sd). Az SCSI lemezes eszk�z�k a /dev (eszk�z�k) k�nyvt�rban /dev/sda, /dev/sdb, ... n�ven �rhet�k el. Ha t�bb k�l�nb�z� egys�g�nk van, ezek sorban a /dev/sda, /dev/sdb stb. eszk�z�kh�z lesznek rendelve. Ha p�ld�ul egy mem�riak�rtya �s egy digit�lis f�nyk�pez�g�p van csatlakoztatva, akkor az egyik kapja a /dev/sda-t, a m�sik pedig a /dev/sdb-t. A tesztek azt mutatj�k, hogy az els� �szlelt eszk�z lesz sda �s a /proc/scsi/usb-storage-0 k�nyvt�r fogja k�pviselni. Azt viszont nem lehet tudni, hogy mi t�rt�nik, ha bootol�s k�zben mindk�t eszk�z jelen van. A /proc/partitions f�jlban meg lehet n�zni a part�ci�k list�j�t, benne sda, sda1, sdb bejegyz�sekkel. A 2.6-os rendszermag sorozatban ezt a probl�m�t nagyon eleg�nsan oldj�k meg (12 ).
A tov�bbiakban felt�telezz�k, hogy csup�n egyetlen mem�riak�rtya van, �s az a /dev/sda-hoz van rendelve.
A legt�bb disztrib�ci�ban ezek a pontok megvannak. Az al�bbi paranccsal leellen�rizhet�, hogy n�lunk is l�teznek-e: ls /dev/sda*. Ha nincsenek, l�trehozhatjuk �ket az al�bbiakkal (root felhaszn�l�k�nt, ezt jelzi a kett�s kereszt).
# mknod /dev/sda b 8 0 # mknod /dev/sda1 b 8 1 # mknod /dev/sda2 b 8 2 |
stb, eg�szen /dev/sda15-ig, ha sz�ks�ges. Az eszk�z egy eg�szk�nt a /dev/sda-hoz van rendelve, �s a /dev/sdax (x = 1 ... 15) jelentik a k�l�nb�z� part�ci�kat. K�s�bb le�rjuk hogyan lehet k�l�nb�z� f�jlrendszerekhez k�l�nb�z� part�ci�kat k�sz�teni (l�sd. 8 �s 9 ). Ha a mem�riak�rty�t csak egyetlen part�ci�val (f�jlrendszerrel) akarjuk haszn�lni, a /dev/sda1 elegend� lesz.
Ezt a dinamikusan gener�lt f�jlrendszert a /proc/bus/usb/ k�nyvt�rba lehet felcsatolni, ez�rt elengedhetetlen, hogy ez a k�nyvt�r l�tezzen. Mikor fel van csatolva, t�bb mindent lehet l�tni a /proc/bus/usb/ �s a /proc/scsi/ k�nyvt�rakban (7.3 ). A /proc/bus/usb/devices f�jlb�l megtudhatjuk melyik USB eszk�z van felcsatlakoztatva ( less /proc/bus/usb/devices). Kis er�fesz�t�st ig�nyel, hogy meg�rts�k a k�perny�n megjelen� sz�veget, de az�rt nem neh�z. A mem�riak�rtya mint Mass Storage Device van jel�lve.
Az ext2 f�jlrendszer m�g mindig a legelterjedtebb Linux rendszereken. Igen sokoldal� �s kifinomult, felv�rtezve enged�lyekkel (olvas�s-�r�s-v�grehajt�s, kinek van enged�lye, hogy csin�ljon valamit), tulajdonl�ssal (felhaszn�l�, csoport, m�sok), id�b�lyeggel (mikor volt utolj�ra m�dos�tva) stb. Ezenfel�l vannak seg�deszk�zei egy ext2-vel ell�tott eszk�z komplett karbantart�s�hoz (11 ). Ha egy flash mem�ria eszk�zt kiz�r�lag linuxos g�peken haszn�lunk �rdemes azt ext2-re form�zni (l�sd. 8 ).
A vfat enged�lyez�s�vel a rendszermagban, lehet�v� v�lik Dos/Windows alatt k�sz�tett f�jlrendszerek felcsatol�sa. A legt�bb mem�riak�rtya Windowson val� haszn�lathoz van form�zva, ez�rt tekinthetj�k vfat-form�zottnak. A vfat f�jlrendszer kev�sb� kifinomult mint az ext2, ez�rt sokkal gazdas�gosabb a mem�ri�t illet�en. A jogosults�gok m�sk�nt vannak, mint ext2-ben, ami azt eredm�nyezi, ha egy ext2 f�jlt vfat-re ment�nk, az �jra megjelenik m�s enged�lyekkel. Ennek ellen�re, ha a mem�riak�rty�t linuxos �s windowsos g�pek k�z�tti adatcser�re haszn�ljuk, a legjobb amit tehet�nk, hogy meghagyjuk vfat form�ban. A kompromisszumot az jelenti, ha k�tfel� particion�ljuk a mem�riak�rty�t: egy vfat �s egy ext2 f�jlrendszerrel. Legal�bbis a linuxos g�pek k�pesek kezelni mindkett�t. B�vebben: 9 .
A dokumentumban felhaszn�lt parancsok r�vid list�ja:
Miel�tt hozz�kezden�nk, t�vol�tsuk el a hasonl� eszk�z�ket az USB buszr�l, az�rt, hogy biztosan azt az eszk�zt l�ssuk �s �rjuk, amelyiket szeretn�nk. |
Lehets�ges, hogy a rendszer m�r fel van k�sz�tve USB flash mem�ria eszk�z�k kezel�s�re. Ennek el�nt�s�hez egyszer�en adjuk ki a $ mount parancsot egy x-termin�lr�l. Ha valami hasonl� jelenik meg a kimenetben:
none on /proc/bus/usb type usbfs (rw) |
akkor a 7.4 pontn�l lehet folytatni, azonban �rdemes lehet �tn�zni a k�zbens� r�szt is. Akkor sincs baj, ha a teszt sikertelen.
N�h�ny dolgot le lehet ellen�rizni a /proc k�nyvt�rban, hogy meggy�z�dj�nk arr�l, a rendszermag tartalmazza a be�ll�t�sokat, vagy a megfelel� modulok bet�lt�dtek. El�sz�r n�zz�k meg, hogy a /proc/bus/usb k�nyvt�r l�tezik-e. Ha igen, a rendszermagban van USB alrendszer t�mogat�s. Ha nem, akkor a rendszermagot �jra kell ford�tani megfelel� USB t�mogat�ssal (l�sd. 5.2.3 ), vagy a friss�teni kell azt. M�sodszor a /proc/scsi k�nyvt�r megl�t�t kell ellen�rizni. Ha ott van, minden rendben, ellenkez� esetben a SCSI t�mogat�st bele kell ford�tani a rendszermagba (l�sd. 5.2.1 ).
A /proc-nak rendelkeznie kell az USB f�jlrendszer csatol�si pontj�val. Ez a pont a /proc/bus/usb. Ha megvan, a rendszermag helyesen van be�ll�tva.
Ha az el�z� r�sz ellen�rz�sei sikeresek voltak, k�vetkez� l�p�sk�nt csatolni kell az USB f�jlrendszert. Ezt root felhaszn�l�k�nt kell megtenni a k�vetkez�k�ppen:
# mount -t usbfs none /proc/bus/usb |
R�gebbi rendszermag-verzi�kban a fenti mount parancs usbfs param�ter�t ki kell cser�lni usbdevfs-re. 2.4.20-as Linuxokban mindk�t v�ltozat m�k�dik. |
Ha minden rendben, v�gezz�nk tov�bbi teszteket. Els� a gyors ellen�rz�s (7.1 ). Az alapos ellen�rz�shez adjuk ki a # ls -l /proc/bus/usb parancsot, ami valami hasonl� kimenetet fog adni:
dr-xr-xr-x 1 root root 0 Sep 19 14:21 001 dr-xr-xr-x 1 root root 0 Sep 19 14:21 002 -r--r--r-- 1 root root 0 Sep 19 22:30 devices -r--r--r-- 1 root root 0 Sep 19 22:30 drivers |
A /proc/scsi/usb-storage-0/ k�nyvt�rnak most m�r l�teznie kell, �s az egyik benne lev� f�jl az al�bbiakat tartalmazza. Az �n rendszeremben a $ less /proc/scsi/usb-storage-0/1 parancs a k�vetkez�t �rja ki:
Host scsi1: usb-storage Vendor: Generic Product: Mass Storage Device Serial Number: None Protocol: Transparent SCSI Transport: Bulk GUID: 0ed166800000000000000000 Attached: Yes/No |
Ha a flash meghajt� csatlakoztatva van, az utols� sorban a "Yes" bejegyz�s olvashat�, egy�bk�nt pedig a "No".
Most m�r k�szen �llunk arra, hogy kider�ts�k m�k�dik-e a mem�riak�rtya. Felt�telezz�k, hogy az eszk�z gy�ri �j �llapotban van. A haszn�lati �tmutat� val�sz�n�leg tartalmazza, hogyan �ll�tsuk be Windowshoz. Van egy jel, hogy vfat f�jlrendszerre van form�zva. Miel�tt megpr�b�ln�nk felcsatolni, k�sz�ts�nk egy csatol�si pontot neki a k�vetkez� paranccsal: # mkdir -m 777 /mnt/memstick A felcsatol�s parancsa:
# mount -t vfat /dev/sda1 /mnt/memstick |
Ha minden sim�n ment, m�r l�thatjuk az eszk�zt: # ls /mnt/memstick.
Most pr�b�ljunk ki n�h�ny alapvet� dolgot, mint p�ld�ul k�nyvt�r l�trehoz�sa az eszk�z�n, �s egy sz�veges f�jl m�sol�sa:
# mkdir /mnt/memstick/apollo # cp /home/myname/myfavourite_file /mnt/memstick/apollo/. |
List�zzunk �jra (# ls -l /mnt/memstick) �s figyelj�k meg az enged�lyeket.
Csatoljuk le az eszk�zt (# umount /dev/sda1) �s csatoljuk fel �jra ahogy el�z�leg is tett�k. List�zzunk megint �s n�zz�k meg az enged�lyeket. Val�sz�n�leg a sz�veges f�jlnak van x-jogosults�ga, vagyis futtathat�v� v�lt. Ez teljesen szokv�nyos a vfat f�jlrendszerben. Ha el�gedett vagy ezzel, csatold le az eszk�zt, �s menj a 10 pontra.
Az itt le�rt elj�r�sok sor�n az eg�sz flash mem�ria eszk�z�n egyetlen ext2-es part�ci�t alak�tunk ki. Ez alkalmasabb� teszi az eszk�zt linuxos g�pek k�z�tti haszn�latra. Azonban semmik�ppen se tegy�k, ha Windowson is haszn�lni akarjuk.
A /dev/sda k�nyvt�rba felcsatolt eszk�z �jra lesz form�zva �s az �sszes adat t�rl�dik r�la. Miel�tt hozz�kezden�nk, t�vol�tsuk el a hasonl� eszk�z�ket az USB buszr�l, az�rt, hogy biztosan azzal az eszk�zzel dolgozunk, amelyikkel szeretn�nk. |
Felt�telezz�k, hogy a flash mem�ria a /dev/sda k�nyvt�rba van felcsatolva. Ebben a fejezetben azt az esetet n�zz�k, melyben az eg�sz eszk�znek egyetlen ext2 part�ci�t k�sz�t�nk. Az al�bbi p�ld�ban egy 128MB-os flash mem�ri�t form�ztunk ext2 f�jlrendszerre. Emiatt l�that� 131MB �s 888 cilinder az �br�n. Az fdisk seg�dprogramot haszn�ltuk, ami egyszer�en kiolvassa ezeket az adatokat az eszk�zb�l.
Az �sszes m�veletet root felhaszn�l�k�nt v�gezz�k. A part�ci�t a /dev/sda egys�gen alak�tjuk ki. (nem a /dev/sda1-en). Az elj�r�st magyar�zatokkal t�zdelt l�p�sek sorozatak�nt mutatjuk be. Az fdisk alap promptja Command (m for help):, �s b�rmely f�zisn�l �thet�nk m-et az �rv�nyes parancsok megtekint�s�hez. Ha ezt tessz�k, az eredm�ny a k�vetkez� lesz:
Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) |
A mem�riak�rty�t csatlakoztassuk, de ne csatoljuk fel. �gyelj�nk arra, hogy az �r�sv�d� ki legyen kapcsolva.
Az elj�r�s:
# fdisk /dev/sda Command (m for help):d {enter} Selected partition 1 Command (m for help):n {enter} Command action e extended p primary partition (1-4) p {enter} Partition number (1-4):1 {enter} First cylinder (1-888, default 1): {�ss enter-t} Using default value 1 Last cylinder ... (1-888, default 888): {�ss enter-t} Using default value 888 |
Most ellen�rizhetj�k a part�ci�s t�bla ki�rat�s�val, hogy minden rendben ment-e.
Command (m for help): p Disk /dev/sda: 131 MB, 131072000 bytes 9 heads, 32 sectors/track, 888 cylinders Units = cylinders of 288 * 512 = 147456 bytes Device Boot Start End Blocks Id System /dev/sda1 1 888 127856 83 Linux |
Gy�z�dj�nk meg r�la, hogy a part�ci�t nem �ll�tottuk be bootolhat�nak, ekkor nincs csillag a part�ci�s t�bla "Boot" oszlop�ban. Tov�bb� az "Id" �s a "System" megegyeznek a fenti t�bl�zatban lev�kkel. Ez azt mutatja, hogy az eszk�zt ext2-re form�zhatjuk (k�vetkez� r�sz). Ezek az alap�rtelmezett �rt�kek. Ha valami nem stimmel, akkor megv�ltoztathatjuk a k�vetkez� parancsokkal:
Command (m for help): a [toggle a bootable flag] Command (m for help): t [change a partition's system id] |
Ha (vagy amikor) a part�ci�s t�bla helyes, az elj�r�s befejez�s�hez:
Command (m for help): w [write table to disk and exit] |
Meg is van!
A particion�l�s befejez�se ut�n egyenesen az eszk�z form�z�s�hoz �rkezt�nk. Ehhez az mke2fs seg�dprogramot fogjuk haszn�lni:
# mke2fs /dev/sda1 |
A mem�riak�rtya LED-je ezalatt folyamatosan villog. Mikor abbahagyja, a program v�gzett.
A form�z�s siker�nek ellen�rz�s�hez ism�telj�k meg a 7.3 �s a 7.4 fejezetben le�rtakat k�t kis elt�r�ssel. Az els� elt�r�s az, hogy a mount parancs a k�vetkez�:
# mount -t ext2 /dev/sda1 /mnt/memstick |
A m�sodik k�l�nbs�g, hogy a sz�veges f�jl enged�lyei ezent�l nem m�dosulnak.
A bemutat�sra ker�l� elj�r�s sor�n a flash mem�ria eszk�zt k�tfel� particion�ljuk, az egyiket ext2-re, a m�sikat pedig vfat-re form�zzuk. Ez k�nyelmes lehet azokban az esetekben, mikor k�t (vagy t�bb) linuxos (ext2) g�p, valamint linuxos �s windowsos g�pek (vfat) k�z�tt cser�l�nk adatokat.
A /dev/sda k�nyvt�rba felcsatolt eszk�z �jra lesz form�zva �s az �sszes adat t�rl�dik r�la. Miel�tt hozz�kezden�nk, t�vol�tsuk el a hasonl� eszk�z�ket az USB buszr�l, az�rt, hogy biztosan azzal az eszk�zzel dolgozzunk, amelyikkel szeretn�nk. |
Ebben a r�szben bemutatjuk, hogyan hozzunk l�tre k�t part�ci�t a mem�riak�rty�n: az egyik fel�t vfat-nek, a m�sikat pedig az ext2-nek. �gy sokoldal�bb lesz az eszk�z, de kicsit megosztott is. Az elj�r�s nem lesz olyan r�szletes, mint a 8.1 fejezetben. Az ott le�rtak lesznek ism�telve, valamint mindk�t f�jlrendszer hexadecim�lis k�dja k�zvetlen�l lesz be�rva ("t" bejegyz�st k�vet� sorok: Win95 = b; Linux = 83). Ha a part�ci� csak Linuxnak lesz, - sz�ks�gtelen mondani - a Linux az alap�rtelmez�s. Tov�bb� jegyezz�k meg, hogy a vfat part�ci�t hozzuk l�tre els�k�nt - a Windows miatt kell �gy tenn�nk.
# fdisk /dev/sda Command (m for help): d Selected partition 1 Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-888, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-888, default 888):444 Command (m for help): t Selected partition 1 Hex code (type L to list codes): b Changed system type of partition 1 to b (Win95 FAT32) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (445-888, default 445): Using default value 445 Last cylinder or +size or +sizeM or +sizeK (445-888, default 888): Using default value 888 Command (m for help): t Partition number (1-4): 2 Hex code (type L to list codes): 83 Command (m for help): p Disk /dev/sda: 131 MB, 131072000 bytes 9 heads, 32 sectors/track, 888 cylinders Units = cylinders of 288 * 512 = 147456 bytes Device Boot Start End Blocks Id System /dev/sda1 1 444 63920 b Win95 FAT32 /dev/sda2 445 888 63936 83 Linux Command (m for help):w |
Figyelj�k meg, hogy a t�bla �r�sa el�tt a m�sodik part�ci�t is l�trehoztuk. |
A d�nt�s, hogy pontosan a k�zep�n v�lasztottuk kett� az egys�get (128MB-os mem�ria k�rtya 1--444; 445--888) teljesen �nk�nyes volt. B�rmely m�s elgondol�s ugyanolyan j�.
A "delete" r�szt annyiszor kell ism�telni, ah�ny part�ci� van az egys�gen.
Ez a l�p�s a 8.2 fejezet ism�tl�se. Az els� l�p�s l�trehozza a DOS-os vfat, a m�sodik pedig a linuxos ext2 part�ci�t.
# mkdosfs -F 32 /dev/sda1 # mke2fs /dev/sda2 |
Egyszer�en v�gezz�k el a 7.4 �s a 8.3 fejezetben le�rt teszteket k�l�n az egyes part�ci�kra. A csatol�si parancsok:
# mount -t vfat /dev/sda1 /mnt/fatstick # mount -t ext2 /dev/sda2 /mnt/memstick |
Ezzel felcsatoltuk az eszk�z mindk�t part�ci�j�t.
Az a linuxos g�p amin a particion�l�st v�gezt�k, helyesen fogja kezelni a kett�s part�ci�t. Mikor elvissz�k az eszk�zt egy m�sik linuxos g�phez, az csak a /dev/sda1 part�ci�t fogja l�tni. Ez tal�n egy hib�ja a rendszermagnak. A �j g�pen a k�vetkez�t kell tenn�nk:
# fdisk /dev/sda Choose p; check partition table If satisfied, choose w # less /proc/partitions |
Az eszk�znek �gy m�r megvan minden part�ci�ja �s rajtuk az adatok �rintetlen�l. Egyetlen part�ci� eset�n a fentieket nem sz�ks�ges elv�gezni.
Eddig csup�n a rendszer be�ll�t�s�nak �s a mem�riak�rty�k form�z�s�nak menet�t �rtuk le. Az USB eszk�z�k f�jlrendszereinek felcsatol�sa rugalmatlan, a nem root felhaszn�l�k sz�m�ra egyszer�bb� kell tenn�nk az eszk�z felcsatol�s�t. Ehhez csup�n n�h�ny dolgot kell megtenn�nk.
Az al�bbi elj�r�s az �sszetettebb esetre vonatkozik, melyben a mem�riak�rty�t k�tfel� particion�ltuk (9 ). Egyetlen ext2 part�ci� eset�n a dolog m�g egyszer�bb: a vfat-ra vonatkoz� sorokat elhagyjuk �s az sda2-t kicser�lj�k sda1-re.
Felt�telezz�k, hogy a /mnt/memstick �s /mnt/fatstick csatol�si pontok rendelkez�sre �llnak. Nem k�telez� ezeket a neveket haszn�lni, �s nem kell az /mnt k�nyvt�rba rakni �ket.
Az eml�kez�st megk�nny�tend�, k�sz�ts�k el a k�vetkez� szimbolikus hivatkoz�sokat:
# ln -s /dev/sda1 /dev/fatflash # ln -s /dev/sda2 /dev/flash |
A g�rd�l�kenyebb �s k�nnyebb felcsatol�s�rt adjuk a k�vetkez� sorokat az /etc/fstab f�jlhoz: (l�sd. a megjegyz�seket a 7.3 v�g�n)
none /proc/bus/usb usbfs defaults 0 0 /dev/flash /mnt/memstick ext2,vfat rw,user,noauto 0 0 /dev/fatflash /mnt/fatstick vfat rw,user,noauto 0 0 |
A k�z�ps� sor enged�lyezi a felcsatol�st ext2 �s vfat esetben is. Az utols� k�t sor lehet�v� teszi b�rmely felhaszn�l� sz�m�ra az eszk�z felcsatol�s�t a k�vetkez� parancsokkal:
$ mount /dev/flash [ext2-nek vagy vfat-nek] $ mount /dev/fatflash [vfat-nek] |
Lehets�ges mindk�t part�ci� egyidej� felcsatol�sa is. L�sd. 9 fejezet.
Egyetlen ext2 part�ci� eset�n nem t�nik lehets�gesnek, hogy b�rmely (nem root) felhaszn�l� �rhat�-olvashat� m�dban csatolja fel az eszk�zt. A megold�shoz k�sz�ts�nk egy k�nyvt�rat a mem�riak�rty�n, amit a felhaszn�l� birtokol, teljes hozz�f�r�ssel. Root felhaszn�l�k�nt adjuk ki a k�vetkez� parancsokat:
# mount /dev/flash # mkdir -m 777 /mnt/memstick/superdir # chown charles:charles /mnt/memstick/superdir |
Ha az eszk�z vfat form�tum�, ez a l�p�s nem sz�ks�ges.
V�gezet�l, �me egy kis szkript, amit a saj�t (ext2) flash meghajt�m fel- �s lecsatol�s�hoz haszn�lok:
#!/bin/bash EXCODE="keepit" green='\033[0;32m' yellow='\033[0;33m' ## ___________________________ ## Function to echo in colours echo_in_color () { message=$2 message1=$4 color=$1 color1=$3 echo -e -n $color echo -n $message echo -e -n $color1 " " echo -n $message1 " " tput sgr0 return } ## ___________________________ clear mount /dev/flash echo_in_color $green "Flash drive mounted" sleep 2 while [ $EXCODE != "flexit" ] do clear echo_in_color $yellow "Enter [flexit] to unmount and exit:" read EXCODE done umount /dev/flash exit |
Egy FVWM men�b�l h�vom meg az Exec exec xterm -geometry 43x2+1250+0 -e /home/nikos/bin/flashdrive paranccsal, ami valamelyik sarokban megjelen� kis x-term ablakban futtatja. A horizont�lis elhelyez�st (1250) a k�perny� felbont�s�hoz kell be�ll�tani.
Hasznos szok�s a flash mem�ri�n lev� ext2 f�jlrendszer gyakori ellen�rz�se. Ehhez haszn�ljuk a dumpe2fs programot a k�vetkez� m�don: # dumpe2fs -h /dev/sda1 (root felhaszn�l�k�nt kell felcsatolni az eszk�zt). Az eredm�ny az al�bbihoz hasonl� lesz:
Filesystem volume name: <none> Last mounted on: <not available> Filesystem UUID: c42a6963-5e6a-4cd2-b7d7-c8f09dca6c52 Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: dir_index filetype sparse_super Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 32000 Block count: 127856 Reserved block count: 6392 Free blocks: 116456 Free inodes: 31922 First block: 1 Block size: 1024 Fragment size: 1024 Blocks per group: 8192 Fragments per group: 8192 Inodes per group: 2000 Inode blocks per group: 250 Filesystem created: Sat Sep 20 12:43:00 2003 Last mount time: Tue Oct 28 14:13:03 2003 Last write time: Tue Oct 28 14:28:27 2003 Mount count: 13 Maximum mount count: 35 Last checked: Sat Oct 18 11:28:26 2003 Check interval: 15552000 (6 months) Next check after: Thu Apr 15 11:28:26 2004 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 128 Default directory hash: tea Directory Hash Seed: 118bee0a-efa5-4771-967e-41a0badd0355 |
N�h�ny fontos szempontot sz�ks�gesnek tartunk kiemelni:
Az ext2 f�jlrendszer l�trehoz�sakor megadja, hogy h�nyszor lehet felcsatolni miel�tt ellen�rizni kellene. Ezt l�thatjuk a Maximum mount count (35) �s a Check interval (lej�rati id�) sorokban.
Az eddigi haszn�lat: Mount count �s Last checked.
Hib�s f�jlok (s�r�lt blokkok) l�tez�se: Filesystem state.
A rendszer figyelmeztet�seket k�ldhet ezekr�l a dolgokr�l az eszk�zr�l t�rt�n� olvas�skor vagy felcsatol�skor.
Amikor a sz�ml�l� el�ri a k�sz�b�rt�ket, vagy hib�s f�jlok vannak, futtassuk a # fsck.ext2 /dev/sda1 programot a felcsatolt eszk�z�n. Ez friss�ti a sz�ml�l�kat, valamint kijav�tja a hib�s blokkokat.
Vfat f�jlrendszer eset�n a dump program nem t�nik j�nak. A # dumpe2fs -f /dev/sda1 parancs nem haszn�lhat� vfat f�jlrendszeren. L�tezik egy dosfsck nev� program (csup�n alfa verzi�), de kock�zatos nem saj�t magunk �ltal form�zott eszk�z�n futtatni. |
A rendszer be�ll�t�sa a fent le�rt m�don t�k�letes 2.4.x rendszermagok eset�n, azonban 2.6.x (x = 0, 1, 2, 3, a k�sz�t�s id�pontjakor) eset�n sokkal t�bb lehet�s�g�nk van:
Az USB eszk�z�k gyorscser�j�t (hotplugging) nagy m�rt�kben jav�tott�k, �gy lehet�s�g�nk van menet k�zben USB eszk�z�ket fel- �s lecsatolni. Ha felcsatolunk, az eszk�z megjelenik a /proc f�jlrendszerben, az elt�vol�t�s ut�n pedig elt�nik onnan.
Bemutatkozott a sysfs rendszer. Ezt haszn�lva a csatlakoztatott eszk�z�k egy sz�k k�re, azok jellemz�i �s a rajtuk l�v� f�jlrendszerek node-jai tal�n el�rhet�k.
A gyorscser�hez sz�ks�ges r�szeket t�k�letes�tett�k, �gy m�r a felcsatol�s sorrendj�t�l f�ggetlen�l meg tudjuk k�l�nb�ztetni az eszk�z�ket.
A rendszermag konfigur�ci�s be�ll�t�sai nagyr�szt megegyeznek a 5.2 fejezetben le�rtakkal. A be�ll�t� men�t azonban (# make menuconfig) szisztematikusan �tszervezt�k.
A saj�t �rdekedben aj�nlatos elolvasni az Migrating to Linux Kernel 2.6 (�tt�r�s a 2.6-os Linux rendszermagra) le�r�st, de nem sz�ks�ges olyan l�p�seket k�vetni, amelyeket nem tudsz.
A 6.2 fejezetben t�rgyaltuk az egy id�ben felcsatolt USB eszk�z�k eset�t. A neh�zs�get az okozza, hogy a felhaszn�l� sz�m�ra neh�z az eszk�z�k megk�l�nb�ztet�se. El�rehalad�s t�rt�nt ez �gyben a Linux Hotplug Project -ben (Linux Gyorscsere Projekt ) (keress r� a hotplug-ra), �s a 2.6-os rendszermag-csal�dban m�r meg is val�s�tott�k, lehet�v� t�ve a probl�ma hat�kony kezel�s�t. Ehhez sz�ks�g van n�h�ny dologra:
A sysfs f�jlrendszer.
A sysfs f�jlrendszer r�sze a 2.6-os rendszermag sorozatnak. Az udev �s a sysfstools haszn�lja, hogy inform�ci�t szerezzenek rendszermag-objektumokr�l (eszk�z�k stb.): tulajdons�gaikat �s k�z�s kapcsolatukat. Az aktiv�l�s a k�vetkez�k�ppen t�rt�nik:
# cd / # mkdir sys # mount -t sysfs none /sys |
Az ls -F /sys parancs ki�rja az eg�sz k�nyvt�rstrukt�r�t bejegyz�sekkel, mint p�ld�ul block/, bus/, ... Ez is siker�lt. A felcsatol�st tart�ss� tehetj�k, ha az al�bbi sort az /etc/fstab f�jlhoz adjuk:
none /sys sysfs defaults 0 0 |
Sysfsutils.
A szokv�nyos m�don telep�thet�, nem ig�nyel speci�lis be�ll�t�st. A README f�jl �tmutat�sai j�l �rthet�k. Azonban els�k�nt bizonyosodjunk meg arr�l, hogy az /usr/local/lib bejegyz�s szerepel az /etc/ld.so.conf f�jlban. Erre az�rt van sz�ks�g, hogy a libsysfs.so programk�nyvt�rakat felismerje a rendszer. Az telep�t�s ut�n ellen�rizz�k, hogy az /usr/local/bin/lsbus �s az /usr/local/bin/systool seg�dprogramok telep�ltek-e. V�g�l pedig ellen�rizz�k, hogy a fent eml�tett programk�nyvt�rak helyesen be vannak linkelve (ldconfig -p | grep libsysfs).
Gyorscsere.
K�vetkez� l�p�sk�nt telep�ts�k a hotplug szkripteket. Ha megvan, ellen�rizz�k m�k�d�s�ket: less /proc/sys/kernel/hotplug. Az eredm�ny valami hasonl� lesz: /sbin/hotplug. Ha m�gsem, akkor egy megfelel� inicializ�l� szkriptbe (p�ld�ul: /etc/rc.d/rc.local) �rjuk be: echo "/sbin/hotplug" > /proc/sys/kernel/hotplug. Ezt a parancsot (root felhaszn�l�k�nt) kiadhatjuk magunk is az ellen�rz�s el�tt. A telep�t�s k�l�n�sen egyszer�: # make install. Ezut�n n�zz�k meg, hogy a /sbin/hotplug szkript megvan-e.
Udev.
Ez az utols� telep�t�s. Tanulm�nyozzuk a README f�jlt, �s k�vess�k a make USE_KLIBC=true futtat�s�hoz sz�ks�ges l�p�seket. Ha m�r ford�tott�l 2.6.x-es rendszermagot, nem fog gondot okozni. Ellen�rizz�k, hogy az /sbin/udev �s az /sbin/udevinfo l�teznek-e. Vannak m�s f�jlok is, az egyik nagyon fontos az /etc/udev/udev.rules. Ha van egy m�k�d� rendszered, amivel m�k�dik a mem�riak�rty�d (ahogy fent bemutattuk), �s felcsatolod azt, kipr�b�lhatod, hogy a rendszer l�tja-e (sda, sda1, ...): ls /udev. Ha ott van, csatold le �s list�zz �jra. M�r nem lesz ott!
Az udev lehet�s�get biztos�t a mem�riak�rty�k felismer�s�re, n�h�ny be�p�tett tulajdons�g alapj�n. Ez a vendor azonos�t� alapj�n m�k�dik, amit a systool -vb scsi | grep vendor paranccsal tudhatunk meg, ha az eszk�z csatlakoztatva van. Egy list�t kapunk a csatlakoztatott SCSI eszk�z�kr�l (eml�kezz�nk, hogy a mem�riak�rtya a rendszer fel� egy SCSI eszk�z; 6.2 fejezet). Felt�telezz�k, hogy egyidej�leg k�t mem�riak�rtya van felcsatolva. Ekkor k�t vendor azonos�t�t tal�lunk. N�v szerint: "UFD" �s "STORAGE". Adjuk a k�vetkez� sorokat az /etc/udev/udev.rules f�jlhoz (ak�r az elej�re is lehet):
## Flash Memory 1 BUS="scsi", SYSFS_vendor="UFD*", NAME="namib%n" ## Flash Memory 2 BUS="scsi", SYSFS_vendor="STORAGE*", NAME="kalahari%n" |
A vendor azonos�t�ban lehetnek kieg�sz�t� sz�k�z�k, ez�rt kellettek a csillagok. Ne hagyjuk le �ket. V�lasszuk el, majd ism�t csatlakoztassuk a mem�riak�rty�kat, �s adjuk ki a ls /udev parancsot. A szem�lytelen sda, sda1 stb. helyett kalahari, kalahari1, namib �s namib1 van ki�rva. Ezzel elnevezt�k az eszk�zt a "vendor" inform�ci� alapj�n. Mivel most m�r fel tudjuk ismerni az eszk�zt, nem probl�ma t�bb�, hogy mihez van rendelve. M�r csak annyi dolgunk van, l�trehozzuk a sz�ks�ges csatol�si pontokat, p�ld�ul /mnt/namib �s kalahari, valamint bejegyezz�k �ket az /etc/fstab f�jlba:
/udev/namib1 /mnt/namib vfat,ext2 user,noauto,rw 0 0 /udev/kalahari1 /mnt/kalahari vfat,ext2 user,noauto,rw 0 0 |
Ez j� m�ka... �s jusson esz�nkbe, hogy vannak m�g m�s sivatagok is a F�ld�n.
This document is copyrighted (c) 2003 Niko Sauer and is distributed under the terms of the Linux Documentation Project (LDP) license, stated below.
Ha nincs m�sk�nt felt�ntetve, a Linux HOGYAN dokumentumok szerz�i jogait a szerz�j�k jegyzi. A Linux HOGYAN dokumentumok eg�szben vagy r�szben m�solhat�k illetve terjeszthet�k, elektronikus vagy m�s m�don, amennyiben ez a szerz�i jogi megjegyz�s megtal�lhat� minden m�solatban. Az �zleti terjeszt�s is megengedett, azonban a szerz� szeretne �rtes�lni minden ilyen kiadv�nyr�l.
Minden ford�t�snak, �sszefoglal� munk�nak �s olyan m�vek, amely forr�sk�nt haszn�l valamely Linux HOGYAN dokumentumot tartalmaznia kell ezt a szerz�i jogi megjegyz�st: senki sem k�sz�thet HOGYANt felhaszn�l� munk�t �s arra nem szabhat ki tov�bbi megszor�t�sokat. Bizonyos felt�telek mellett enged�lyezhet� kiv�tel ezen szab�lyok al�l; b�vebben a Linux HOGYAN koordin�tort�l az al�bbi c�men.
R�viden, szeretn�nk mindenkit buzd�tani az inform�ci� elterjeszt�s�re min�l t�bb csatorn�n. Azonban szeretn�nk, hogy mindenki megtartsa a copyright megjegyz�st a HOGYAN dokumentumokban, tov�bb� szeretn�nk �rtes�lni minden �jabb tervezett kiad�sr�l.
Ha k�rd�sed van, �rj a <[email protected]> c�mre.
Semmilyen felel�ss�get nem v�llalunk a dokumentum tartalm�val kapcsolatban. Mindenki a saj�t felel�ss�g�re haszn�lja az elgondol�sokat, p�ld�kat. Mivel ez egy �j dokumentum, lehetnek benne hib�k �s pontatlans�gok, amik ak�r a rendszer k�rosod�s�hoz is vezethetnek. Ez�rt mindenki figyelmesen j�rjon el, �s hab�r ez k�l�n�sen val�sz�n�tlen, a szerz� semmilyen felel�ss�get nem v�llal �rte.
Az �sszes szerz�i jog a tulajdonosuk birtokolja, hacsak nincs m�sk�nt jelezve. Egy szakkifejez�s haszn�lat�t nem tekintj�k �gy, hogy hat�ssal lenne b�rmely m�rkan�v vagy szolg�ltat�s v�djegy�nek �rv�nyess�g�re.
Bizonyos term�kek vagy m�rkanevek megnevez�s�t nem tekintj�k hozz�j�rul�snak.
Er�sen aj�nlott biztons�gi ment�seket k�sz�teni a rendszerr�l nagyobb telep�t�sek el�tt �s rendszeres id�k�z�nk�nt.
Szeretn�m kifejezni m�ly h�l�mat fiaimnak Paulnak �s Philipnek, akik 1995-ben r�besz�ltek a Linuxra val� �tt�r�sre. Philip l�tott el alapos tan�csokkal �s ny�jtott bepillant�st, ami egy kellemes tanuls�gos tapasztalatt� tette ezt a projektet.
Emma Jane Hogbin a tanulm�ny�ban felvetett sok fontos k�rd�st, amik nagy m�rt�kben seg�tett�k a dokumentum fejleszt�s�t.
Sz�vesen fogadok minden elektronikus levelet a dokumentum felhaszn�l�it�l, a prezent�ci�t �rint� fejleszt� javaslatokkal �s lehets�ges kieg�sz�t�sekkel.
A magyar ford�t�st Zal�nyi Bal�zs Andor k�sz�tette (2004.06.26). A lektor�l�st Daczi L�szl� v�gezte el (2004.06.26). A dokumentum legfrissebb v�ltozata megtal�lhat� a Magyar Linux Dokument�ci�s Projekt honlapj�n. A dokumentum ford�t�sa a Szegedi Tudom�nyegyetem ny�lt forr�sk�d� szoftverfejleszt�s speci�lkoll�gium�nak seg�ts�g�vel val�sult meg.
[1] | Ezen dokumentum er�sen t�maszkodik a csillaggal jel�lt �r�sokra. |