Erinevus lehekülje "Kasutajakeskkond Debianis" redaktsioonide vahel
(→Tekstikonsoolilt sisseloginud kasutaja keskkond) |
|||
94. rida: | 94. rida: | ||
ulimit -n 80 | ulimit -n 80 | ||
+ | |||
+ | ====SSH abil pseudo-terminalilt sisseloginud kasutaja keskkond==== | ||
+ | |||
+ | * TODO | ||
+ | |||
+ | ====Graafiliselt konsoolilt sisseloginud kasutaja keskkond==== | ||
+ | |||
+ | Arvuti graafiliselt konsoolilt sisse logides kasutatakse selliseid seadistusfaile | ||
+ | |||
+ | * TODO | ||
+ | |||
+ | ===Bash completion=== | ||
+ | |||
+ | Keerukama bash completioni kasutamiseks kui niisama käsu lõpunikirjutamine peab süsteemis olema pakett bash-completion, kusjuures vaikimisi on see paigaldatud. Nt võimaldab bash-completion tarkvara lõpetada käsu argumente | ||
+ | |||
+ | * sisestades 'cd tühik-tab' esitatakse nimekirja käesolevas kataloogis olevatest alamkataloogidest | ||
+ | * sisestades 'rpm2cpio-tühik-tab' esitatakse nimekirja .rpm failidest | ||
+ | * sisestades 'gunzip-tühik-tab' esitatakse nimekiri .gz failidest | ||
+ | |||
+ | Completion on laiendatav, tavaliselt paketid lisavad laiendusi kataloogi /etc/bash_completion.d, nt Subversion | ||
+ | |||
+ | # dpkg -S /etc/bash_completion.d/subversion | ||
+ | subversion: /etc/bash_completion.d/subversion | ||
+ | |||
+ | Subversioni puhul esitatakse tulemusena 'svn-tühik' sisestamisel nimekiri võimalikest nö esimestest svn argumentidest. | ||
+ | |||
+ | * http://www.debian-administration.org/articles/31 | ||
===Ressursipiirangute kehtestamine=== | ===Ressursipiirangute kehtestamine=== | ||
121. rida: | 148. rida: | ||
priit hard nproc 20 | priit hard nproc 20 | ||
priit hard nofile 100 | priit hard nofile 100 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===Bash shell kasutamine=== | ===Bash shell kasutamine=== |
Redaktsioon: 31. mai 2009, kell 12:06
Sisukord
Sissejuhatus
Kasutajakeskkonna (ingl. k. user environment) moodustavad need ressursipiirangud ja tingimused, mis rakenduvad operatsioonisüsteemis kasutaja protsessidele. Kasutajakeskkonna määratlevad
- süsteemsed ressursipiirangud (ingl. k. resource limits) - määravad kui palju süsteemi ressurssi on kasutajal võimalik kasutada, nt kui palju saab kasutaja samaaegselt avada faile
- keskkonnamuutujad - keskkonnamuutujate abil saab kasutaja poolt käivitatavaid programme sh shelli protsessi ennast juhtida, nt määrata lokaadi või bash history suuruse
Üldiselt iga arvutis töötav protsess töötab omas keskkonnas, kus tema tööd mõjutavad süsteemsed ressursipiirangud ja keskkonnamuutujad, kusjuures reeglina pärib protsessi poolt käivitatud protsess oma eelkäija keskkonna, st talle rakendatakse samu piiranguid ja keskkonnamuutujatel on samasugused väärtused.
Protsessi keskkonna mõttes ei ole põhimõtteliselt vahet, kas protsess on käivitatud süsteemi alglaadimise käigus või protsessi on käivitanud süsteemi mingil moel sisse loginud kasutaja, kuid kuna sisseloginud kasutaja puhul tuleb arvesse palju täiendavaid olulisi asjaolusid, mis määravad, milliste omadustage kasutajakeskkond kujuneb, käsitletakse neid kahte juhtumit eraldi.
Ülidselt on osa kasutajakeskkonna omadustest kasutajale ette antud ning osalt saab kasutaja keskkonna omadusi muuta, nt
- tavaliselt kasutaja ei saa muuta oma kasutajanime ja UID väärtust
- kasutaja ei suurendada arvu, mis määrab kui palju tema käivitatud protsess saab samaaegselt faile avada, aga ta saab seda arvu vähendada
- kasutaja saab muuta oma lokaadi määranguid
Kasutajate haldus
Vaikimisi on andmed süsteemi kasutajate kohta kirjas failides
- /etc/passwd - kasutajate andmed
- /etc/group - gruppide kirjeldused
- /etc/shadow - paroolide krüptogrammid
Kasutaja moodustamiseks võib redigeerida tavalise tekstieditoriga faile /etc/passwd, /etc/group ja /etc/shadow aga sobivam on kasutada programme groupadd ja useradd, nt nii
# groupadd mart # useradd -g mart -m -d /home/mart mart
Ning omistada kasutajale parool
# passwd mart
Tulemusena lisatakse kasutaja andme mainitud kolme faili
# grep mart /etc/passwd /etc/group /etc/shadow /etc/passwd:mart:x:1000:1000::/home/mart:/bin/sh /etc/group:mart:x:1000: /etc/shadow:mart:$1$PvykLyXa$AxhjUndHit.WIcheFQoEI.:14114:0:99999:7:::
ja moodustatakse kasuta kasutaja kodukataloog /home/mart kuhu kopeeritakse failid kataloogis /etc/skel, vaikimisi
# find /etc/skel -type f /etc/skel/.bash_logout /etc/skel/.profile /etc/skel/.bashrc
Kasutaja süsteemi sisenemise õiguse ajutiseks peatamiseks sobib asendada tema kirjes x hüüumärgiga,
enne
mart:x:1000:1000::/home/mart:/bin/sh
pärast
mart:!:1000:1000::/home/mart:/bin/sh
Kasutajakeskkond
Arvuti konsoolilt või pseudo-terminalilt (nt ssh programmi abil) kasutaja süsteemi sisse logimisel
- rakendatakse vastavalt PAM mooduli login seadistusfailist /etc/pam.d/login või /etc/pam.d/ssh tulenevad piirangud (reeglina /etc/security/limits.conf)
- käivitatakse sellele kasutajale failis /etc/passwd seadistatud shell'i protsess kõnealuse kasutaja õigustes
- algväärtustatakse kasutajakeskkond süsteemse profiili /etc/profile ja nn punktifailide, vaikimisi .profile abil
Seejärel on kasutajal shell nö ees ja ta saab arvutit kasutama hakata, nt kävitada protsesse.
Tekstikonsoolilt sisseloginud kasutaja keskkond
Arvuti tekstikonsoolilt sh serial konsoolilt sisse logides esmalt täidetakse PAM login mooduli seadistusfailis /etc/pam.d/login kirjeldatud tegevused, vaikimisi
- /etc/security/limits.conf - seadistatakse globaalsed ressursipiirangud
ja seejärel bash shelli käivitamisel kasutatakse selliseid seadistusfaile
- /etc/profile - globaalne profiilifail, mis määrab PATH ja PS1 väärtused erinevalt tava ja juurkasutajale
- kasutaja shelli punktifailid - kolmest kasutatakse ainult esimese, mis leidub, faile vaadatakse läbi sellises järjekorras ~/.bash_profile, ~/.bash_login, ~/.profile
Punktifailid on tavalised tekstifailid, ei alga '#!/bin/bash' järgnevusega ja ei ole käivitatavad, tavaliselt on nad ainult kasutajale loetavad ja kirjutatavad.
Failide läbivaatamise ja kehtestamise osas on hea veenduda tekitades kõik failid alustuseks ning kirjutades neile sisse
$ cat .bash_profile PUNKT_BASH_PROFILE_ON_OLEMAS=punkt_bash_profile_on_olemas $ cat .bash_login PUNKT_BASH_LOGIN_ON_OLEMAS=punkt_bash_login_on_olemas $ cat .profile PUNKT_PROFILE_ON_OLEMAS=punkt_profile_on_olemas
Ning seejärel sisse logides on käsuga env näha, millised punktifaile on süsteem tegelikult kasutanud.
Kui kasutaja soovib ise ulimit väärtusi muuta, siis seda sobib teha .bashrc failist lisades nt faili lõppu read
ulimit -n 80
SSH abil pseudo-terminalilt sisseloginud kasutaja keskkond
- TODO
Graafiliselt konsoolilt sisseloginud kasutaja keskkond
Arvuti graafiliselt konsoolilt sisse logides kasutatakse selliseid seadistusfaile
- TODO
Bash completion
Keerukama bash completioni kasutamiseks kui niisama käsu lõpunikirjutamine peab süsteemis olema pakett bash-completion, kusjuures vaikimisi on see paigaldatud. Nt võimaldab bash-completion tarkvara lõpetada käsu argumente
- sisestades 'cd tühik-tab' esitatakse nimekirja käesolevas kataloogis olevatest alamkataloogidest
- sisestades 'rpm2cpio-tühik-tab' esitatakse nimekirja .rpm failidest
- sisestades 'gunzip-tühik-tab' esitatakse nimekiri .gz failidest
Completion on laiendatav, tavaliselt paketid lisavad laiendusi kataloogi /etc/bash_completion.d, nt Subversion
# dpkg -S /etc/bash_completion.d/subversion subversion: /etc/bash_completion.d/subversion
Subversioni puhul esitatakse tulemusena 'svn-tühik' sisestamisel nimekiri võimalikest nö esimestest svn argumentidest.
Ressursipiirangute kehtestamine
Kasutaja ressursipiirangud on määratud /etc/security/limits.conf faili sisuga, kasutaja jaoks nt sellised ühes süsteemis vaikimisi juhtumil
$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 4095 max locked memory (kbytes, -l) 32 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 4095 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Nt konkreetse kasutaja jaoks saab süsteemselt piirangu seada ksutades limits.conf failis ridu
priit hard nproc 20 priit hard nofile 100
Bash shell kasutamine
Tõenäolselt enamasti leiab bash shelli kasutamine aset Xterm programmi aknas. Lisaks ilmsele on abiks shortcut kombinatsioonide kasutamine
- Ctrl-D - ütleb exit, st logib välja kui tegu on nn login-shelliga
- Ctrl-A - viib kursori rea algusse
- Ctrl-E - viib kursori rea lõppu
Prompt
TODO