Ulimit: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Lsaareme (talk | contribs)
No edit summary
Lsaareme (talk | contribs)
No edit summary
 
(25 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Autor==
Lisann Saaremets A22
esitatud 03.01.2014
parandatud 05.01.2014
==Sissejuhatus==
Ulimit on bash kesta käsklus, millega määrata või kuvada kasutajaga seotud ressursipiiranguid. See võimaldab kontrolli ''shell''ile ja selle poolt alustatud  
Ulimit on bash kesta käsklus, millega määrata või kuvada kasutajaga seotud ressursipiiranguid. See võimaldab kontrolli ''shell''ile ja selle poolt alustatud  
protsessidele saada olevate ressurside üle.
protsessidele saadaolevate ressurside üle. Ulimit tuleb eeskätt kasuks paljude kasutajatega süsteemides, kus jõudlusprobleemid võivad tugevasti vähendada kättesaadavust. [http://en.wikipedia.org/wiki/Fork_bomb ''Fork Bomb''] on üks äärmuslikemaid näiteid, mille võimalike tagajärgede piiramisel ulimit kasulikuks võib osutuda.[http://ss64.com/bash/ulimit.html 1]
 
Siinsed näited on toodud kasutades operatsioonisüsteemi Ubuntu 13.04 ning juurkasutaja õigustes (kuid mingil määral saab muudatusi teha ka iga kasutaja teda puudutavates piirangutes).


==Süntaks==
==Süntaks==


{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit [-cdfHlmnpsStuv] ''piirang''
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit [-SHacdefilmnpqrstuv] ''piirang''
|}
|}


Line 14: Line 26:
|-
|-
! Suvand !! Tähendus
! Suvand !! Tähendus
|-
|-
| -S || Kuva ja muuda ressursiga seotud pehmet piirangut
| -S || Kuva ja muuda ressursiga seotud pehmet piirangut
Line 19: Line 32:
| -H || Kuva ja muuda ressursiga seotud jäika piirangut
| -H || Kuva ja muuda ressursiga seotud jäika piirangut
|-
|-
| -d || Protsessi andmesegmendi maksimaalne suurus
| -c || Loodavate mälutõmmiste maksimaalne suurus (1024-baidistes blokkides)
|-
|-
| -f || ''Shell''i loodud failide maksimaalne suurus (valikuline)
| -d || Protsessi andmesegmendi maksimaalne suurus (kilobaitides)
|-
|-
| -l || Protsessile eraldatav maksimaalne mälu
| -e || Ajaplaanimise prioriteedi suurim väärtus
|-
|-
| -m ||  
| -f || ''Shell''i loodud failide maksimaalne suurus (valikuline, 1024-baidistes blokkides)
|-
| -i || Ootel signaalide maksimaalne hulk
|-
| -l || Protsessile eraldatav maksimaalne mälu (kilobaitides)
|-
| -m || Maksimaalne protsessile eraldatud füüsiline mälu (kilobaitides)
|-
|-
| -n || Maksimaalne avatud failideskriptorite arv
| -n || Maksimaalne avatud failideskriptorite arv
|-
|-
| -p || Torupuhvri suurus
| -p || Torupuhvri suurus (512-baidistes blokkides)
|-
|-
| -s ||
| -q || Maksimaalne baitide hulk POSIX-i teatejärjekorras (baitides)
|-
|-
| -t || Maksimaalne CPU aeg
| -r || Reaalaja ajaplaanimise prioriteedi suurim väärtus
|-
|-
| -u ||
| -s || Pinu maksimaalne suurus (kilobaitides)
|-
| -t || Maksimaalne CPU aeg (sekundites)
|-
| -u || Maksimaalne ühele kasutajale lubatud protsesside hulk
|-
|-
| -v || Maksimaalne ühele protsessile võimaldatud virtuaalmälu suurus
| -v || Maksimaalne ühele protsessile võimaldatud virtuaalmälu suurus
|}
|}
[http://www.itworld.com/operating-systems/317369/setting-limits-ulimit 2]


Pehme piirang on kerneli kehtiv piirang vastavale ressursile. Jäik piirang on nö lagiväärtus, mida saab määrata pehmeks piiranguks. Õigusteta protsess võib määrata pehme piirangu vahemikus 0 kuni jäik piirang ning (pöördumatult) alandada jäika piirangut. Õigustega protsess võib teha omavolilisi muudatusi mõlemas piirangus.
Pehme piirang on kerneli kehtiv piirang vastavale ressursile. Jäik piirang on nö lagiväärtus, mida saab määrata pehmeks piiranguks. Õigusteta protsess võib määrata pehme piirangu vahemikus 0 kuni jäik piirang ning (pöördumatult) alandada jäika piirangut. Õigustega protsess võib teha omavolilisi muudatusi mõlemas piirangus.


Kui käskluses on määratud limiit, saab see vastava ressursi uueks piiranguväärtuseks. Vastasel juhul kuvatakse pehme piirang, kui just ei ole määratletud '-H' suvand.
Kui käskluses on määratud limiit, saab see vastava ressursi uueks piiranguväärtuseks. Vastasel juhul kuvatakse pehme piirang, kui just ei ole määratletud '-H' suvand.
Kui uusi piiranguid määrates puudub nii '-H' kui ka '-S' suvand, muudetakse korraga mõlemad piirangud.
Kui uusi piiranguid määrates puudub nii '-H' kui ka '-S' suvand, muudetakse korraga mõlemad piirangud.
Kasutajad saavad muuta endaga seotud piiranguid neile juurkasutajas määratud limiitide piires.[http://ss64.com/bash/ulimit.html 1]


==Näited==
==Näited==
Line 52: Line 81:
|}
|}


Määrab uue pinu suuruse pehme piirangu.
{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit -s 8192
|}
Muudab ühele protsessile lubatud virtuaalmälu jäiga piirangu "piiramatuks".
{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit -v -H unlimited
|}


Keelab mälutõmmiste loomise.
{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit -v
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit -c 0
|}
 
Määrab loodavate mälutõmmiste suurusepiiranguks 4096 baiti.
{|style="background:lightyellow;width:500px;margin:3px;border:1px solid lightgrey" align=centre
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ulimit -c 4
|}
|}


Line 61: Line 105:
Määratud piirangud salvestatakse faili /etc/security/limits.conf
Määratud piirangud salvestatakse faili /etc/security/limits.conf


==Kasutatud materjal==
==Kokkuvõte==


1. http://ss64.com/bash/ulimit.html
Ulimit on kasulik abivahend eelkõige paljude kasutajatega süsteemide puhul, kus on oluline ressursside mõistlik kasutamine. Väiksema koormusega süsteemides tasub aga enne piirangute seadmist mõelda, kas need on reaalselt vajalikud, et vältida iseenesele nö vastutöö tegemist.


2. http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.cmds/doc/aixcmds5/ulimit.htm


3. http://www.itworld.com/operating-systems/317369/setting-limits-ulimit


==Kasutatud materjal==


1. http://ss64.com/bash/ulimit.html


Lisann Saaremets A22
2. http://www.itworld.com/operating-systems/317369/setting-limits-ulimit

Latest revision as of 02:59, 6 January 2014

Autor

Lisann Saaremets A22

esitatud 03.01.2014

parandatud 05.01.2014

Sissejuhatus

Ulimit on bash kesta käsklus, millega määrata või kuvada kasutajaga seotud ressursipiiranguid. See võimaldab kontrolli shellile ja selle poolt alustatud protsessidele saadaolevate ressurside üle. Ulimit tuleb eeskätt kasuks paljude kasutajatega süsteemides, kus jõudlusprobleemid võivad tugevasti vähendada kättesaadavust. Fork Bomb on üks äärmuslikemaid näiteid, mille võimalike tagajärgede piiramisel ulimit kasulikuks võib osutuda.1

Siinsed näited on toodud kasutades operatsioonisüsteemi Ubuntu 13.04 ning juurkasutaja õigustes (kuid mingil määral saab muudatusi teha ka iga kasutaja teda puudutavates piirangutes).

Süntaks

ulimit [-SHacdefilmnpqrstuv] piirang

Suvandid

Suvand Tähendus
-S Kuva ja muuda ressursiga seotud pehmet piirangut
-H Kuva ja muuda ressursiga seotud jäika piirangut
-c Loodavate mälutõmmiste maksimaalne suurus (1024-baidistes blokkides)
-d Protsessi andmesegmendi maksimaalne suurus (kilobaitides)
-e Ajaplaanimise prioriteedi suurim väärtus
-f Shelli loodud failide maksimaalne suurus (valikuline, 1024-baidistes blokkides)
-i Ootel signaalide maksimaalne hulk
-l Protsessile eraldatav maksimaalne mälu (kilobaitides)
-m Maksimaalne protsessile eraldatud füüsiline mälu (kilobaitides)
-n Maksimaalne avatud failideskriptorite arv
-p Torupuhvri suurus (512-baidistes blokkides)
-q Maksimaalne baitide hulk POSIX-i teatejärjekorras (baitides)
-r Reaalaja ajaplaanimise prioriteedi suurim väärtus
-s Pinu maksimaalne suurus (kilobaitides)
-t Maksimaalne CPU aeg (sekundites)
-u Maksimaalne ühele kasutajale lubatud protsesside hulk
-v Maksimaalne ühele protsessile võimaldatud virtuaalmälu suurus

2


Pehme piirang on kerneli kehtiv piirang vastavale ressursile. Jäik piirang on nö lagiväärtus, mida saab määrata pehmeks piiranguks. Õigusteta protsess võib määrata pehme piirangu vahemikus 0 kuni jäik piirang ning (pöördumatult) alandada jäika piirangut. Õigustega protsess võib teha omavolilisi muudatusi mõlemas piirangus.


Kui käskluses on määratud limiit, saab see vastava ressursi uueks piiranguväärtuseks. Vastasel juhul kuvatakse pehme piirang, kui just ei ole määratletud '-H' suvand. Kui uusi piiranguid määrates puudub nii '-H' kui ka '-S' suvand, muudetakse korraga mõlemad piirangud.


Kasutajad saavad muuta endaga seotud piiranguid neile juurkasutajas määratud limiitide piires.1

Näited

Kuvab kasutajale lubatud protsesside hulga pehme piirangu.

ulimit -u

Määrab uue pinu suuruse pehme piirangu.

ulimit -s 8192

Muudab ühele protsessile lubatud virtuaalmälu jäiga piirangu "piiramatuks".

ulimit -v -H unlimited

Keelab mälutõmmiste loomise.

ulimit -c 0

Määrab loodavate mälutõmmiste suurusepiiranguks 4096 baiti.

ulimit -c 4

Ulimitiga seotud failid

Määratud piirangud salvestatakse faili /etc/security/limits.conf

Kokkuvõte

Ulimit on kasulik abivahend eelkõige paljude kasutajatega süsteemide puhul, kus on oluline ressursside mõistlik kasutamine. Väiksema koormusega süsteemides tasub aga enne piirangute seadmist mõelda, kas need on reaalselt vajalikud, et vältida iseenesele nö vastutöö tegemist.


Kasutatud materjal

1. http://ss64.com/bash/ulimit.html

2. http://www.itworld.com/operating-systems/317369/setting-limits-ulimit