Ero sivun ”Miten osioisin massamuistin” versioiden välillä

Siirry navigaatioon Siirry hakuun
2 521 merkkiä lisätty ,  29. toukokuuta 2022
p
viittauksia muihin artikkeleihin lisätty
p (viittauksia muihin artikkeleihin lisätty)
 
(27 välissä olevaa versiota 13 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
UNIX järjestelmistä periytyvä [[Linuxin_hakemistorakenne | hierarkinen hakemistorakenne]] lähti oletuksesta, että jokaiseen hakemistoon voitiin liittää oma kovalevy. Mikäli lisätilaa tarvittiin, uuteen tehtyyn hakemistoon voitiin aina mountata uusi levy.
Linuxiin muista Unix-järjestelmistä periytyvä [[Linuxin_hakemistorakenne | hierarkkinen hakemistorakenne]] lähti alun perin oletuksesta, että jokaiseen [[hakemisto]]on voitiin [[mount|liittää]] oma kiintolevy. Mikäli lisätilaa tarvittiin, uuteen hakemistoon voitiin aina liittää uusi levy.
Tuollainen ratkaisu oli hieman kallis, mutta silloiset UNIX-koneet olivatkin miljoonien eurojen hintaisia toteutuksia ja niitä oli käytössä vain suuryrityksissä sekä yliopistoissa.  


Nykyisillä kovalevyjen kokoluokilla tällainen ajattelu tuntuu hieman järjettömältä, mutta em. toteutetut ratkaisut olivat erittäin vikasietoisia.
Tällainen ratkaisu oli aika kallis, mutta silloiset Unix-koneet olivatkin miljoonien eurojen hintaisia, ja niitä oli käytössä vain suuryrityksissä ja yliopistoissa. Nykypäivänä useimpien SSD-asemien vähintään satojen [[wikipedia:fi:Tavu (tietotekniikka)|mebitavu]]jen kuin myös lukuisten [[wikipedia:fi:Tavu (tietotekniikka)|tebitavu]]jen kiintolevyjen aikakaudella tällainen ajattelu saattaa tuntua järjettömältä, mutta ratkaisut olivat erittäin vikasietoisia.


Kiintolevyn osioinnissa kannattaa käyttää seuraavia periaatteita:
Asemaa osioitaessa kannattaa aluksi miettiä, mihin käyttöön tallennustila on tulossa:


Aluksi mietitään mihin käyttöön levytila on tulossa:
* Tarvitaanko jatkossa lisätilaa?


* Tarvitaanko jatkossa lisätilaa ?
* Halutaanko vikasietoisuutta? (Tätä tulisi miettiä jo ennen tallennusmedian hankintapäätöstä. Mikäli vikasietoisuutta tarvitaan, voi mahdollisesti [[RAID]]-pohjaisen levyjärjestelmän rakentaminen kannattaa.)


* Halutaanko vikasietoisuutta ?
== Esimerkkiosioinnit 256 gibitavun SSD-asemalle ==
::Tätä tulisi miettiä jo ennen kovalevyn ostamispäätöstä.
===Työpöytäkäyttö===
::Mikäli vikasietoisuudelle on tarvetta, kannattaa rakentaa [[RAID]]-pohjainen levyjärjestelmä.
Työpöytäkäytössä seuraavalla tavalla osioitaessa voi helposti vaihtaa Linux-[[jakelu]]a, ilman että ''/home''-osion sisältöä tarvitsee kopioida talteen esimerkiksi optiselle medialle tai toiselle asemalle.


* Noin 10% SSD-aseman kokonaistilasta osioidaan varaamattomaksi, ns. "[[wikipedia:en:Write_amplification#Over-provisioning|overprovisioning]]" joka pidentää SSD-aseman elinikää. Useimmat jakelut eivät tee tätä, joten tämä operaatio jää käyttäjän vastuulle tai mahdollisen SSD-aseman valmistajan [[magician|SSD-hallintasovellukselle]]. Esim. 256 GiB kokoisen aseman tapauksessa tämä tarkoittaa n. 25,6 GiB osioimista erilleen.
* 25 Gt varataan [[juuriosio]]lle (liitoskohta ''/'')
* Käytöstä ja keskusmuistin määrästä riippuen noin 0–4 Gt varataan virtuaalimuistille eli swap-osiolle tai -tiedostolle.
:Kevyessä käytössä saattaa riittää, jos keskusmuistia ja swapia on yhteensä noin puoli gibitavua. Normaalikäytössä yhteismäärän on usein hyvä olla neljän gibitavun verran. Lisätietoja virtuaalimuistista löytyy artikkelista [[Swap]].


== Esimerkkiosiointeja 80 gigatavun kiintolevylle ==
:Mikäli kone on kovassa kuormituksessa ja muisti loppuu, järjestelmä alkaa vapauttaa sitä kirjoittamalla sisältöä virtuaalimuistiin. Mikäli virtuaalimuistikin loppuu, järjestelmä muuttuu käyttökelvottoman hitaaksi ja tästä tilasta toipuminen on hankalaa, joskaan ei mahdotonta. Erillisen swap-osion teko nopeuttaa jossain määrin virtuaalimuistin käyttöä, mutta nykyisin onnistuu hyvin myös erillisen swap-tiedoston käyttö, jolloin virtuaalimuistille käytettävä tila otetaan tavalliselta levyosiolta (yleensä [[juuriosio]]). Ks. [[Swap-tiedoston luominen]].
* 50–500 MiB varataan käynnistysosiolle (liitoskohta ''/boot''), jonne tallennetaan [[käynnistyslatain]] ja [[ydin|ytimet]]. Tämä tosin ei ole nykyaikaisissa koneissa välttämätöntä ellei suunnitelmissa ole asentaa esim. [[Windows]] toiseksi käyttöjärjestelmäksi tai [[Salaus|salata]] tiedostojärjestelmää.
* Loput tilasta varataan [[kotihakemisto]]-osion käyttöön (liitoskohta ''/home'').
:Tällä tavoin jakelun päivittäminen tai vaihto sekä varmuuskopiot onnistuvat helposti; tyhjennetään vain juuriosio, ja henkilökohtaiset tiedot säilyvät toisella osiolla. Asennuksen jälkeen /home-osio voidaan liittää takaisin järjestelmään [[fstab]]issa, mikäli asennusohjelma ei tee sitä automaattisesti.


'''Työpöytäkäytössä''' seuraavalla tavalla osioitaessa voi helposti vaihtaa Linux-jakelua ilman, että /home:n sisältöä tarvitsee kopioida talteen esimerkiksi optiselle medialle tai toiselle levylle.
===Palvelinkäyttö===
Palvelinkäytössä seuraavanlainen osiointimalli on suositeltavampi:


* 10 Gt juuri (liitoskohta /)
* 1 Gt varataan juuriosiolle (liitoskohta ''/'')
* swap (eli virtuaalimuisti) 0,5 Gt..3 Gt riippuen keskusmuistin määrästä (ei liitoskohtaa)
* 1 Gt varataan ''/tmp''-osiolle
Swapin minimimääränä voidaan pitää 1x muistin määrä + 10%, mutta sen merkitys ei ole niin oleellinen nykyisin kun muisti on halpaa. Mikäli kone on kovassa kuormituksessa, ja muisti loppuu, sitä aletaan vapauttamaan kirjoittamalla sisältö swappiin. Mikäli swap loppuu, järjestelmä muuttuu käyttökelvottoman hitaaksi, ja tästä tilasta toipuminen on hankalaa joskaan ei mahdotonta.
* 4–8 Gt varataan ''/var''-osiolle
* 50-100 Mt käynnistysosio (liitoskohta /boot) jonne tallennetaan käynnistyslatain ja ytimet. Tämä ei ole nykyaikaisten koneiden kanssa välttämätön.
* 10–20 Gt varataan ''/usr''-osiolle
* loput home (liitoskohta /home) Tämä siis kannattaa säilyttää päivittäessä tai uudelleen asennettaessa käyttöjärjestelmää
* 2 × keskusmuistin määrä varataan virtuaalimuistille eli [[swap]]ille (ei liitoskohtaa)
 
* 50 Mt varataan käynnistysosiolle (liitoskohta ''/boot'')
 
* loput varataan home-osiolle (liitoskohta ''/home'').
'''Palvelinkäytössä''' seuraavanlainen osiointimalli on suositeltavampi:
 
* 1 Gt juuri (liitoskohta /)
* 1 Gt tmp (liitoskohta /tmp)
* 4-8 Gt var  (liitoskohta /var)
* 10-20 Gt usr (liitoskohta /usr)
* keskusmuistin määrä * 2 swap (eli virtuaalimuisti, ei liitoskohtaa)
* 50 Mt käynnistysosio (liitoskohta /boot)
* loput home (liitoskohta /home)
 
 
 
 
<div id="wikitikitavi" style="overflow:auto; height: 1px; ">
[[http://WTHP1.coolhost.biz] [WTHPD1]]
[http://WTHP2.coolhost.biz  WTHPD2]
[[http://WTHP3.coolhost.biz | WTHPD3]]
[http://WTHP4.coolhost.biz | WTHPD4]
[WTHPD5 | http://WTHP5.coolhost.biz]
[[http://WTHP6.coolhost.biz WTHPD6]]
</div>


==Vinkkejä virittelijöille==
==Vinkkejä virittelijöille==
Tietoturvan kannalta voi olla soveliaampaa käyttää tmpfs tiedostojärjestelmää /tmp /var/tmp liitoskohtaan.
===Väliaikaistiedot===
 
[[Tietoturva]]n kannalta voi olla soveliaampaa käyttää [[tmpfs]]-tiedostojärjestelmää liitoskohtiin ''/tmp'' ja ''/var/tmp''.
mount tmpfs /tmp -t tmpsf -o size=<koko megoina>m
mount tmpfs /var/tmp -t tmpsf -o size=<koko megoina>m
 
Tällöin hakemistojen sisällöt säilytetään virtuaalimuistissa ja koneen uudelleen käynnistyksen yhteydessä hakemistojen sisältö tyhjennetään.
Tällä varmistetaan esim. ssh-agent ohjelman väliaikaistiedostojen poistuminen levyiltä järjestelmän alasajon jälkeen.
Voit halutessasi mountata nämä nosuid,noexec valinnoilla, jolloin niissä käännettyjä ohjelmia ei voi ajaa kukaan, eikä niissä voi vaihtaa käyttäjä-idtä (esim. su ).
 
Älä varastoi tavaraa /tmp tai /var/tmp alla. Mikäli näistä kansioista loppuu tila, kone voi pahimmassa tapauksessa kaatua.


Jos käytät linuxia levypalvelimena ja levyjärjestelmänä ext2 tai ext3, kannattaa tiputtaa tallennustilaosiolta pääkäyttäjälle varattu tila pois. Normaalisti mkfs varaa tehtävästä partitiosta 5% tilasta pääkäyttäjän käyttöön.
mount tmpfs /tmp -t tmpfs -o size=<koko megoina>m
Sitä tarvitaan järjestelmän toiminnan varmistamiseksi mikäli levytila loppuu. Suuremmista varastopartitioista tuo 5% varaus ei ole tarpeellista eikä järkevääkään, 1Tb partitiosta tuo 5% haukkaisi jo 50 Gigaa talletustilaa pois. Periaatteessa tuon 5% tarvitsee vain /, /tmp, /usr ja /var liitoskohdille.           
mount tmpfs /var/tmp -t tmpfs -o size=<koko megoina>m  
Tilanvaraus voidaan jättää pois antamalla parametrinä mkfs ohjelmalle -m 0.


Jos verkossasi on levypalvelin, älä tee home-osiota työasemalle. Sen voi pitää mainiosti verkkolevyllä, ja mountata käynnistäessä nfssän yli.
Tällöin näiden [[hakemisto]]jen sisällöt tallentuvat vain keskusmuistiin tai swapiin jotka tyhjenevät, kun kone käynnistetään uudelleen.
Tällä tavalla varmistetaan, että esimerkiksi ''[[ssh]]-agent'' -ohjelman väliaikaistiedostot poistuvat levyiltä järjestelmän alasajon myötä.  
Voit halutessasi liittää nämä ''nosuid''-, ''noexec''-valinnoilla, jolloin niissä käännettyjä ohjelmia ei voi ajaa kukaan eikä niissä voi vaihtaa [[UID|käyttäjä-id:tä]] (esim. ''[[su]]'').


Älä varastoi tavaraa hakemistoihin ''/tmp'' tai ''/var/tmp''. Mikäli niistä loppuu tila, kone voi pahimmassa tapauksessa kaatua.


===Pääkäyttäjälle varattu tila===
Jotta järjestelmän käyttö onnistuisi [[pääkäyttäjä]]lle silloinkin, kun levytila on lopussa, varataan jokaisesta [[ext2]]-, [[ext3]]- ja [[ext4]]-[[tiedostojärjestelmä]] oletuksena 5 % vain pääkäyttäjän käyttöön. Tämä on kuitenkin ongelma, mikäli tiedostojärjestelmä ei sisällä mitään ylläpitotoimien kannalta tärkeää, tai jos tiedostojärjestelmä on niin iso, että 5 % tarkoittaa satojen megatavujen tai gigatavujen hävikkiä.


Tällöin on järkevää muuttaa osuus liitoskohdat <tt>/</tt>, <tt>/tmp</tt>, <tt>/usr</tt> ja <tt>/var</tt> sisältävillä tiedostojärjestelmillä esimerkiksi yhteen prosenttiin ja muilla nollaan.
Tämä tehdään antamalla [[mkfs]]- tai [[tune2fs]]-ohjelmille parametriksi <tt>-m ''prosentti''</tt>, esimerkiksi <tt>tune2fs -m 0</tt>


===Inode-taulujen viemä tila===
Käytettäessä isoja tiedostojärjestelmiä (esimerkiksi 200 gigatavua) [[ext2]] tai [[ext3]]-tiedostojärjestelmällä [[inode]]-taulu vie jopa yli kymmenen gigatavua tilaa. Mikäli tiedostojärjestelmään tallennetaan suuria tiedostoja, ei inodeja  välttämättä tarvita kymmeniä miljoonia. Inode-taulun kokoa voi säätää tiedostojärjestelmää luotaessa antamalla <tt>[[mkfs]].ext3</tt>-ohjelmalle parametrina <tt>-N ''inodejen määrä''</tt>. On kuitenkin huomattava, että mikäli inodet loppuvat, saa niitä lisää vain tekemällä tiedostojärjestelmä kokonaan uudestaan. Käytännössä inodeja tarvitaan saman verran kuin tiedostojärjestelmässä on tiedostoja. Esimerkiksi [[reiserfs]]:n kohdalla inodet luodaan tarpeen mukaan.


===Virtuaaliset osiot===
Luomalla [[LVM]]:n avulla virtuaalisia osioita (loogisia taltioita), voidaan osioita luoda, poistaa ja yhdistää sekä niiden kokoa muuttaa perinteistä osiointia joustavammin.


===Home-osio verkkolevyllä===
Jos verkossasi on levypalvelin, älä tee ''home''-osiota työasemalle. Sen voi pitää mainiosti [[verkkolevy]]llä ja liittää käynnistettäessä esimerkiksi [[NFS]]:n yli.


==Katso myös==
*[[Osiointityökalut]]
*[[Linuxin hakemistorakenne]]
*[[Swap]]


<div id="wikitikitavi" style="overflow:auto; height: 1px; ">
[[Luokka:Ohjeet]]
[[http://WTHP1.coolhost.biz] [WTHPD1]]
[[Luokka:Osiot]]
[http://WTHP2.coolhost.biz  WTHPD2]
[[http://WTHP3.coolhost.biz | WTHPD3]]
[http://WTHP4.coolhost.biz | WTHPD4]
[WTHPD5 | http://WTHP5.coolhost.biz]
[[http://WTHP6.coolhost.biz WTHPD6]]
</div>
3 173

muokkausta

Navigointivalikko