Ero sivun ”Unicode” versioiden välillä

Siirry navigaatioon Siirry hakuun
28 merkkiä lisätty ,  1. maaliskuuta 2008
p
(→‎EXT3: +muut unixien tiedostojärjestelmät; NUL ja vinoviiva)
Rivi 16: Rivi 16:
== [[Tiedostojärjestelmä]]t ==
== [[Tiedostojärjestelmä]]t ==


=== EXT3 ja muut Unixien tiedostojärjestelmät ===
=== Ext3 ja muut Unixien tiedostojärjestelmät ===


EXT3 on Linuxissa yleisesti käytetty tiedostojärjestelmä. Se tukee täydellisesti Unicodea ja UTF-8:aa mutta tekee sen tavallaan tietämättään, kuten muutkin unixien tiedostojärjestelmät. Ne eivät välitä, mitä merkkejä tiedostojen nimissä on – paitsi nollatavu (ASCII NUL, 0x00) ja [[vinoviiva]] ("/", 0x2F), jotka ovat kiellettyjä – eikä tallenna mitään tietoa käytetystä merkistöstä tai sen koodaustavasta. Ne vain tallentavat ne raa’asti tavujonoina. UTF-8 on nimenomaan suuniteltu niin, että näitä kiellettyjä tai muita ASCII:ssa määriteltyjä tavuja ei tarvita muiden merkkien esittämiseen.
[[Ext3]] on Linuxissa yleisesti käytetty tiedostojärjestelmä. Se tukee täydellisesti Unicodea ja UTF-8:aa mutta tekee sen tavallaan tietämättään, kuten muutkin unixien tiedostojärjestelmät. Ne eivät välitä, mitä merkkejä tiedostojen nimissä on – paitsi nollatavu (ASCII NUL, 0x00) ja [[vinoviiva]] ("/", 0x2F), jotka ovat kiellettyjä – eikä tallenna mitään tietoa käytetystä merkistöstä tai sen koodaustavasta. Ne vain tallentavat ne raa’asti tavujonoina. UTF-8 on nimenomaan suuniteltu niin, että näitä kiellettyjä tai muita ASCII:ssa määriteltyjä tavuja ei tarvita muiden merkkien esittämiseen.


Tiedostojärjestelmää lukiessaan Linux tulkitsee tiedostojen nimet käytössä olevan lokaalin perusteella. Jos käytössä on UTF-8-lokaali (esimerkiksi fi_FI.UTF-8), niin järjestelmä katsoo, että tiedostojen nimet ovat UTF-8-koodattuja. Tästä seuraa sellainen ikävä asia, että jos tiedostojen nimet on kirjoitettu käyttäen eri lokaalia kuin mikä parhaillaan on käytössä, niin todennäköisesti nimet eivät näy oikein. Tiedostojen nimien muuttaminen merkistökoodauksesta toiseen onnistuu [[convmv]]-ohjelmalla.
Tiedostojärjestelmää lukiessaan Linux tulkitsee tiedostojen nimet käytössä olevan lokaalin perusteella. Jos käytössä on UTF-8-lokaali (esimerkiksi fi_FI.UTF-8), niin järjestelmä katsoo, että tiedostojen nimet ovat UTF-8-koodattuja. Tästä seuraa sellainen ikävä asia, että jos tiedostojen nimet on kirjoitettu käyttäen eri lokaalia kuin mikä parhaillaan on käytössä, niin todennäköisesti nimet eivät näy oikein. Tiedostojen nimien muuttaminen merkistökoodauksesta toiseen onnistuu [[convmv]]- tai [[recode]]-ohjelmalla.


=== NTFS ===
=== NTFS ===


NTFS on Microsoftin kehittämä tiedostojärjestelmä, ja sitä käytetään Windows-koneissa. Monet Linux-käytäjät pitävät koneellaan myös Windowsia ja liittävät Windowsin kiintolevyosiot osaksi Linux-järjestelmää, joten tässä yhteydessä on syytä kertoa, kuinka se tehdään mahdollisimman yhteensopivasti.
[[NTFS]] on Microsoftin kehittämä tiedostojärjestelmä, ja sitä käytetään Windows-koneissa. Monet Linux-käytäjät pitävät koneellaan myös Windowsia ja liittävät Windowsin kiintolevyosiot osaksi Linux-järjestelmää, joten tässä yhteydessä on syytä kertoa, kuinka se tehdään mahdollisimman yhteensopivasti.


NTFS tukee Unicodea, ja se tallentaa tiedostojen nimet aina UTF-16-muodossa. Jotta kaikki tiedostojen nimet näkyisivät oikein Linuxissa, täytyy Linuxissa olla käytössä UTF-8-lokaali. NTFS-tiedostojärjestelmää liitettäessä täytyy [[mount]]-komennolle vielä kertoa, mikä merkistö Linuxissa on käytössä, koska vasta tämän tiedon avulla NTFS:llä olevat tiedostojen nimet osataan muuttaa UTF-16:sta Linuxin ymmärtämään muotoon. UTF-8-lokaalia käytettäessä annetaan [[mount]]-komennolle optioksi ”nls=utf8”. Sen voi tehdä esimerkiksi [[fstab|/etc/fstab]]-tiedostossa seuraavan esimerkin tapaan:
NTFS tukee Unicodea, ja se tallentaa tiedostojen nimet aina UTF-16-muodossa. Jotta kaikki tiedostojen nimet näkyisivät oikein Linuxissa, täytyy Linuxissa olla käytössä UTF-8-lokaali. NTFS-tiedostojärjestelmää liitettäessä täytyy [[mount]]-komennolle vielä kertoa, mikä merkistö Linuxissa on käytössä, koska vasta tämän tiedon avulla NTFS:llä olevat tiedostojen nimet osataan muuttaa UTF-16:sta Linuxin ymmärtämään muotoon. UTF-8-lokaalia käytettäessä annetaan [[mount]]-komennolle optioksi ”nls=utf8”. Sen voi tehdä esimerkiksi [[fstab|/etc/fstab]]-tiedostossa seuraavan esimerkin tapaan:
Rivi 36: Rivi 36:
=== FAT ===
=== FAT ===


Myös FAT on Microsoftin kehittämä tiedostojärjestelmä. Sitä käytetään paitsi Windowsissa mutta hyvin yleisesti myös USB-muistien, digikameroiden ja kannettavien MP3-soittimien tiedostojärjestelmänä. Pitkissä tiedostojen nimissä myös FAT tukee Unicodea, ja se periaatteessa tallentaa nimet UTF-16-muodossa. Ikänsä vuoksi FAT tukee kuitenkin vain Unicoden ensimmäisiä versioita ja merkkejä vain nk. Basic Multilingual Planesta (U+0000..U+FFFF). FATin tukema merkkivalikoima käsittää kuitenkin suurimman osan maailman kirjoitusmerkeistä, joten sen Unicode-tuki on useimpien kielten näkökulmasta varsin hyvä.
Myös [[FAT]] on Microsoftin kehittämä tiedostojärjestelmä. Sitä käytetään paitsi Windowsissa mutta hyvin yleisesti myös USB-muistien, digikameroiden ja kannettavien MP3-soittimien tiedostojärjestelmänä. Pitkissä tiedostojen nimissä myös FAT tukee Unicodea, ja se periaatteessa tallentaa nimet UTF-16-muodossa. Ikänsä vuoksi FAT tukee kuitenkin vain Unicoden ensimmäisiä versioita ja merkkejä vain nk. Basic Multilingual Planesta (U+0000..U+FFFF). FATin tukema merkkivalikoima käsittää kuitenkin suurimman osan maailman kirjoitusmerkeistä, joten sen Unicode-tuki on useimpien kielten näkökulmasta varsin hyvä.


Samoin kuin NTFS:ssä, myös FAT-tiedostojärjestelmää liitettäessä täytyy Linuxille kertoa, mihin muotoon tiedostojen nimet täytyy muuttaa. Käytettäessä Linuxissa UTF-8-lokaalia, täytyy FAT-tiedostojärjestelmä liittää Linuxiin antamalla [[mount]]-komennolle optioksi ”utf8”. Siten [[fstab|/etc/fstab]]-tiedostoon laitettaisiin esimerkiksi rivi:
Samoin kuin NTFS:ssä, myös FAT-tiedostojärjestelmää liitettäessä täytyy Linuxille kertoa, mihin muotoon tiedostojen nimet täytyy muuttaa. Käytettäessä Linuxissa UTF-8-lokaalia, täytyy FAT-tiedostojärjestelmä liittää Linuxiin antamalla [[mount]]-komennolle optioksi ”utf8”. Siten [[fstab|/etc/fstab]]-tiedostoon laitettaisiin esimerkiksi rivi:
4 316

muokkausta

Navigointivalikko