LINUX-BG   Adres : http://www.linux-bg.org
Montirane na iadro 2.6 s optsiia utf
Ot: Nick Angelow
Publikuvana na: 19-05-2024
Adres na statiiata: http://www.linux-bg.org/cgi-bin/y/index.pl?page=article&id=advices&key=365058820
MONTIRANE NA QDRO 2.6 S OPTSIQ “utf” [1]
http://unix.ginras.ru/linux/base004.html

Vladimir Popov



Predi vsichko triabva da kazhem, che predlaganiiat za obsuzhdane vupros suvsem ne e “podtema” na obsuzhdane na iadro 2.6. V ramkite na poslednoto mozhe da se ogranichim s izbroiavane na optsiite za montirane za razlichni failovi sistemi na “nivoto” na 2.6, otbeliazvaiki samo razlikite s iadro 2.4. No interes predstavliava neshto drugo: zashto tova e nuzhno i nuzhno li vuobshte [2]? Pri tova, kakto po otnoshenie na montiraneto na “chuzhdi” failovi sistemi, taka i za izpolzvaneto na utf vuobshte.

Moeto sobstveno otnoshenie kum tozi vupros se formira, predi vsichko, v hoda na diskusiiata mezhdu razrabotchitsite na movix-produkti (Movix, eMovix i MoviX2), ot koeto sledva, che obsuzhdaneto se otnasia za:

  • predi vsichko za video- i mp3-CD;

  • kakto za vuzproizvezhdaneto, taka i za zapisa na multimediini diskove (eMovix);

  • kakto za konzolni, taka i za grafichni prilozheniia (MoviX2).

Vednaga shte kazha, che nikoga ne sum bil privurzhenik na izpolzvaneto na native language [3] (v nashiia sluchai – kirilitsa) v imenata na diskovite dialove, direktoriite i failovete. Smiatam tova za glupost, podobna na iziskvaneto da se narichat lekarstvata izklyuchitelno na ruski – na lelia Petka taka e po-udobno, prodavachite i vuobshte turgovtsite (samo novi nazvaniia na aspirina izmisliat) kum meditsinata i farmatsevtikata niamat nikakvo otnoshenie, a lekaria vse edno e dluzhen da izpolzva standartnoto (latinsko), a ne turgovskoto ime na lekarstvoto [4]. Ako toi e lekar, razbira se, a ne sushtata tazi lelia Petka, no veche s diploma [5].

Obache tova sa emotsii. Realnostta se sustoi v tova, che:

  • multimediinite diskove sa stoka s goliamo tursene i rodniiat ezik (native language) prisustva vurhu tiah s takava neizbezhnost, kakto i v nazvaniiata na lekarstvata;

  • Usiliiata na M$, nasocheni kum potrebitelite na IBM PC, taka sa zasegnali povecheto potrebiteli, che v kraina smetka, za chast ot tiah nikakuv drug ezik, osven rodniiat ne e dostupen. Za da buda chesten triabva da dobavia, che tazi chast ot naselenieto ne e naiasno i s rodniiat si ezik, no tova veche ne e nasha rabota.

Neka da dobavim kum tova i integratsionnite protsesi v Evropa i sveta. Izvodut ot tova e ocheviden za vsichki i to ot dosta vreme. ISO 10646 i Unicode se razrabotvat ot kraia na 80-te godini i, za shtastie na kompyuturnata obshtestvenost, ot 1991 g. sa suglasuvani. Tova oznachava, che i printsipite im, i tablitsite im sa suvmestimi. Neka go kazhem taka: tolkova sa suglasuvani i suvmestimi, che dazhe i M$, traditsionno vurviashta po “svoi” putishta (ne tolkova ot originalnost, kolkoto za tursene na vuzmozhnost za poluchavane na patent za tiah) suhraniava dulgite (po-dulgi ot 8+3) imena na failove i direktorii v Unicode. Pri tova na vsichki suvremenni failovi sistemi fat, ntfs i CD (Joliet)

Kusite (8+3 – MS DOS format) imena vuv failovite sistemi na M$ izpolzvat kakto predi 8-bitovi kodirovki (cp1250, cp1251 etc), no tova ne ni vulnuva, zashtoto vsiako takova ime si ime svoi Unicode-dvoinik.

Po tozi nachin, do sega za gorespomenatite failovi sistemi, optsiiata za montirane iocharset=name oznachavashe, che pri chetene se dekodirat imenata na montiranata failova sistema ot Unicode v kodirovkata name, a pri zapis se izvurshvashe obratniiat protses – kodirane ot name v Unicode. name mozhe da bude vsiaka edna proizvolna kodirovka ot spisuka s vuzmozhnite v kachestvo na argument na iocharset (vizhte man mount i sudurzhanieto na direktoriiata Documentation/filesystems na distributsiiata na iadroto. Na poslednoto, mezhdu drugoto, triabva da se oburne osobeno vnimanie – vuzmozhnostite za montirane se opredeliat ot iadroto, poradi koeto dokumentatsiiata za mount traditsionno “zakusniava”).

Tozi spisuk6 e dosta goliam, no samo edna ot kodirovkite e “mnogoezichna” i tova e utf8. Samo, che UTF-8 e realizatsiia na ISO 10646-1/2000, koito na svoi red, otgovaria na Unicode 4.0, Toest, prekodirane kato che li ne e neobhodimo. I za kakvo ni triabva togava iocharset? Pravilno – ne ni triabva. Koeto za novoto iadro se izrazi v poiavata na nova optsiia za montirane – utf8 (za ntfs: nls=utf8).

Otsega natatuk, razdelite vfat i btfs, a sushto i CD vuv format ISO 9660 (ext. Joliet) i udf mogat da se montirat ednakvo za sistemi s razlichni native language.

Vsichko bi bilo chudesno, ako prilozhenieto, koeto triabva da vizualizira tezi imena na failove i direktorii v kodirovka utf se spravia dobre sus zadachata. V sredata X-Window takiva sa, triabva da kazhem, povecheto ot prilozheniiata, makar, che za suzhalenie, ne vsichki. Failovite menidzhuri na Gnome i KDE, a sushto i moiat lyubim ROX se spraviat lesno, a tolkova lyubimiiat window-manager Oroborus – ne (v sluchaia, kogato se iska ot nego da pokazhe imeto na direktoriiata kato zaglavie na prozorets).

Dostatuchno e da startirame xfontsel i da izberem v nego rgstry=iso 10646, za da se ubedim, che po-goliamata chast ot semeistvata shriftove na po-goliamata chast ot proizvoditelite v momenta mogat da izpolzvat utf8. Da suzdavame samo za proverka, failove i direktorii s Japanese ili Hebrew mozhe bi ne si struva. A da se vuzpolzvame ot faila sus skuchnoto zaglavie quickbrown.txt ot paketa na Markus Kun (Markus Kuhn) ucs-fonts niama da e bezinteresno – failut sudurzha fragmenti ot tekstove vuv vsichki vuzmozhni kodirovki. Vpechatliavashto! Pri tova izpolzvah Edit ot paketa Rox-Desktop i mi se iska da viarvam, che analogichnite sredstva za pregled i redaktsiia ot Gnome i KDE niama da budat po-loshi.

Sushto taka, niamame osnovaniia da predpolagame, che failovite menidzhuri, raboteshti sus sushtite tezi shriftove, shte vuzproizvezhdat imenata na failovete i direktoriite po-losho, otkolkoto redaktorite, vuzproizvezhdashti chasti ot tekst.

Situatsiiata v konzolata, po printsip e analogichna – samo edin shrift za vsichki prilozheniia. Osnovnata trudnost e, che konzolnite shriftove, “po definitsiia” ne mogat da vklyuchvat v sebe si poveche ot 256 (512) simvola. I se poluchava paradoks – izpolzvame kodirovka utf, toest edna kodirovka za mnozhestvo ezitsi, no realno razpolagame s nabor samo ot 256 (512) simvola, koeto iavno ne e dostatuchno za “pokrivane” na tsialoto svetovno raznoobrazie. Grubo kazano – tova, che e neobhodimo da izvadim simvol ot iaponskata kodirovka e ochevidno, no to ne oznachava, che v zaredeniia shrift tozi simvol go ima.

I eto che se poluchava, che napulno ochevidnite predimstva, pri prehod v konzola stavat doniakude uslovni. Do podoben izvod se stigna i pri obsuzhdaneto na izpolzvaneto na utf v konzolniiat klon na movix (MoviX).

Eto i oshte niakolko zabelezhki, otnasiashti se kum obsuzhdanite vuprosi:

  • optsiiata za montirane codepage=name vsushtnost e neobhodima samo za pravilnoto izobraziavane na imenata vuv format 8+3. CHesto e neobhodima, tui kato vse oshte chesto se sreshtat dialove, suzdadeni izklyuchitelno pod MS DOS;

  • dosadno obstoiatelstvo za CD e ogranichavaneto na dulzhinata na imenata na failovete do 64 simvola, izvestno kato Microsoft Joliet Specification. mkisofs naistina ima optsiia -joliet-long, povdigashta letvata do 103 simvola, no tova za suzhalenie si ostava “vutreshna rabota” na mkisofs;

  • Interesno, che otbeliazanoto po-gore ogranichenie se preodoliava lesno pri izpolzvane na ISO 9660 RockRidge razshirenie. ZHalko samo, che preobladavashtite v sveta Windows-kompyutri ne mogat da chetat tablitsata na failovete na RockRidge.

Kato zaklyuchenie ostava da otbelezhim dvoikata optsii za montirane na vfat i ntfs, koiato se poiavi sled iadro 2.4. Tova sa optsiite dmask i fmask. Lesno mozhe da se setim, che s tiahna pomosht mozhe da se zadavat otdelno maski na flagove za direktorii i failove.

Predi mozheshe da maskirame bita executable samo ednovremenno za failove i direktorii. Za failovete, tova beshe umestno – nalichieto na bit za izpulnimost na vseki fail ot vfat ili ntfs dial vidimo drazneshe, a opita na proizvolen failov menidzhur da pusne fail za izpulnenie vmesto da izpulni deistvieto spored razshirenieto mu, kakto tova e prieto v M$, izglezhdashe neprilichno glupav. V sushtoto tova vreme, direktoriite stavaha “nechetimi”. Sega veche, zadavaiki maska dmask=000 i fmask=0111, mozhe da ostavim i direktoriite distupni, i failovete – neizpulnimi.



prevod: Nick Angelow



[1] Mozhe bi e po-dobre zaglavieto na bulgarski da se chete kato “Montirane na failovi sistemi v iadro 2.6 s optsiia “utf””, zashtoto v skromnite mi poznaniia ne figurira montiraneto na iadro.

[2] Qvno avtorut ima predvid izpolzvaneto na optsiiata “utf”

[3] Qvno se ima predvid rodniiat ezik na potrebitelia

[4] Qvno avtorut ima predvid praktikata v Rusiia. V Bulgariia mai e tochno obratnoto – na retseptata lekarstvata se izpisvat s tiahnoto turgovsko naimenovanie.

[5] Perifraziraiki dumite na akademik Krilov, az bih kazal: potrebitel, davasht ruski imena na failovete, zasluzhava razkusvane na chetiri na Dvortsoviia ploshtad – (A.F.).

[6] Na vuzmozhnite kodirovki, koito mogat da budat argument na iocharset (n.a)


<< Instalirane i nastroika na VPN pod SuSE 9,1 (9,0) | Nastroivane na zvuka i grafichnata sreda pri Slackware >>

Avtorite na saita, kakto i tehnite sutrudnitsi zapazvat avtorskite prava vurhu sobstvenite si materiali publikuvani tuk, no te sa copyleft t.e. mogat svobodno da budat kopirani i razprostraniavani s iziskvaneto izrichno da se upomenava imeto na avtora, kakto i da se publikuva na vidno miasto, che te sa vzeti ot originalniia im URL-adres na tozi survur (http://www.linux-bg.org). Avtorskite prava na prevodnite materiali prinadlezhat na tehnite avtori. Ako s publikuvaneto tuk na niakakuv material nevolno sa narusheni nechii prava - sled konstatiraneto na tozi fakt materialut shte bude svalen.

All trademarks, logos and copyrights mentioned on this site are the property of their respective owners.
Linux is copyright by Linus Torvalds.
© Linuks za bulgari EOOD 2007
© Slavei Karadjov 1999 - 2006

All rights reserved.

Čçďúëíĺíčĺňî îňíĺ: 0 wallclock secs ( 0.14 usr + 0.01 sys = 0.15 CPU)