Kasutajakeskkond Debianis
Sissejuhatus
Kasutajakeskkonna (ingl. k. user environment) moodustavad need ressursipiirangud ja tingimused, mis rakenduvad operatsioonisüsteemis kasutaja protsessidele. Kasutajakeskkonna on 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.
il omadused kasutajakeskkonna omadusi
Osa kasutajakeskkonna omadustest on kasutajale ette antud
Kasutajate haldus, punktifailid ja shell
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
Kasutajakeskkond
Arvtui konsoolilt või pseudo-terminalilt (nt ssh programmi abil) kasutaja süsteemi sisse logimisel käivitatakse selle kasutajale failis /etc/passwd seadistatud shell'i protsess kõnealuse kasutaja õigustes ning kasutaja saab seejärel süsteemi kasustada, nt shellis arvutile käske anda. Seejuures moodustatakse kasutajakeskkond (ingl. k. user environment), mis koosneb muu hulgas
Keskkonnamuutujate väärtustamine sõltub põhiliselt sellest, milline on kasutaja shell, kuidas kasutaja shelli käivitab ja kuidas on PAM seadistatud. Eeldame edaspidi, et kasutaja kasutab bash shelli.
Arvuti tekstikonsoolilt sisselogimine
Arvuti tekstikonsoolilt sisse logides esmalt täidetakse PAM login mooduli seadistusfailis /etc/pam.d/login kirjeldatud tegevused, vaikimisi
- /etc/security/limits.conf
ja seejärel bash shelli käivitamisel kasutatakse selliseid seadistusfaile
- /etc/profile - globaalne profiilifail, mis määrab PATH ja PS1 väärtused tava ja juurkasutajatele
- kasutaja shelli punktifail - kolmest ainult esimese, mis leidub ~/.bash_profile, ~/.bash_login, ~/.profile
SSH abil pseudo-terminalilt sisselogimine
- TODO
Arvuti graafiliselt konsoolilt sisselogimine
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.
Punktifailid
Punktifailid (ingl. k. dotfiles)
Kasutaja ligipääsu ajutine peatamine
Kasutaja süsteemi sisenemise õiguse ajutiseks peatamiseks sobib asendada tema kirjes x hüüumärgiga,
enne
mart:x:56685:6044::/home/mart:/bin/sh
pärast
mart:!:56685:6044::/home/mart:/bin/sh
Bash shell
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