Panen kokku spikri, mis aitaks UNIX/Linux-põhiste süsteemide haldamisel abiks olla. Neid käskusid on üsna palju ja aeg-ajalt kipuvad meelest ära minema. Ehk tuleb kunagi hiljem kasuks.
##Bash Selleks, et käsureaga paremini toime tulla, on kasulik teada mõningaid shelli kasutamise nippe. Näitena Bash:
TAB lõpetab käsu/faili nime
CTRL + C katkestab käimasoleva protsessi
CTRL + D logib välja
CTRL + A liigub rea algusesse
CTRL + E liigub rea lõppu
CTRL + R otsing käskude ajaloos
CTRL + Shift + C kopeerimine
CTRL + Shift + V kleepimine
##Käsud terminalis
- pwd
- Print Working Directory - väljastab käesoleva absoluutse asukoha
- clear
- Tühjendab terminali akna
- exit
- Logib välja
- shutdown
- Arvuti seiskamine või taaskäivitamine
shutdown -r taaskäivitab, aliasena on olemas ka `reboot` shutdown -r 1 "Teen restardi!" annab kasutajatele teada ja teeb restardi 1 minut hiljem shotdown -h now alustab koheselt süsteemi seiskamisega
- cd
- Change Directory - kataloogide vahel ringi liikumiseks
cd .. liigub üles cd ../test liigub naaberkataloogi "test" cd ~ liigub kasutaja kodukataloogi cd / liigub failisüsteemi juurkataloogi
- ls
- List - väljastab kataloogis sisalduvate failide nimekirja
ls /home väljastab kõikide kasutajate kodukataloogid jadamisi ls -l väljastab käesoleva kataloogi failid nimekirjana ls -la ~ väljastab kodukataloogi sisu (sh peidetud failid)
- cp
- Copy - failide kopeerimiseks
cp ~/.bashrc ~/.bashrc_old teeb Bashi konfiguratsioonist koopia cp -r Dokumendid Dokumendid_vana teeb mittetühjast kaustast koopia (rekursiivselt)
- mv
- Move - failide liigutamiseks
mv tekst.txt Dokumendid/ liigutab faili Dokumentide kausta mv testskript.sh Skriptid/sync.sh nimetab skripti ümber ja liigutab teise kausta
- pidof
- Process ID of - väljastab nimetatud protsessi id või kui samanimelisi protsesse on palju, siis kõikide selliste ID-d
pid chromium-browser
- ps
- Process Status - info käimasolevate protsesside kohta
ps -aux väljastab kõik käimasolevad protsessid kõikidelt kasutajatelt ps -auwww-data väljastab kõik kasutaja "www-data" protsessid
- kill
- Kill - lõpetab protsessi, mida muul viisil millegipärast lõpetada ei saa(PID põhjal, vt `pidof`)
kill -15 [PID] rahumeelne lõpetamine, laseb protsessil enda järgi "koristada" kill -9 [PID] kui -15 ei mõju, siis natukene kangem relv on -9
- killall
- Killall - lõpetab kõikide antud nimega protsesside töö
killall chromium-browser
- grep
- Otsib failidest etteantud sümboleid/mustreid ja väljastab read, kus need leidusid
grep "ERROR" log.txt otsib logifailist ridu, mis sisaldavad stringi "ERROR" grep -B5 -A2 "ERROR" log.txt otsib logifailist vasteid ja väljastab neile eelnenud 5 rida ning järgnevad 2 rida
- find
- Otsib faile kataloogistruktuuridest.
find . -name "*.jpg" otsib käesolevast ja sisalduvatest kataloogidest faile laiendiga ".jpg"
- useradd
- Uue kasutaja loomiseks.
useradd -m /home/tom tom loob ilma paroolita kasutaja nimega "tom" ja teeb talle ka kodukataloogi /home/tom useradd --system --user-group deemon loob süsteemse kasutaja "deemon" ja samanimelise grupi, mõeldud taustaprotsesside jooksutamiseks
- usermod
- Kasutaja muutmiseks.
usermod -a -G dialout tom lisab kasutaja "tom" gruppi "dialout", et ta pääseks ligi jadapordile
- passwd
- Password - salasõna muutmiseks
passwd käesoleva kasutaja parooli muutmiseks passwd tom kasutaja "tom" parooli muutmine (ilmselgelt vajab kõrgendatud õiguseid)
- chmod
- Change Mode - failide ja kataloogide ligipääsuõiguste muutmiseks.
Numbriline esitus: 1-käivitusõigus, 2 kirjutamisõigus, 4 lugemisõigus.
Tekstiline esitus: x-käivitusõigus, w-kirjutamisõigus, r-lugemisõigus.chmod -R www-data:www-data /var/www määrab kausta /var/www ja sisalduvate failide omanikuks ja grupiks "www-data" chmod -R 754 /var/www annab kausta /var/www ja sisalduvatele failide omanikule kõik õigused, grupile lugemise ja käivitamise õiguse ja teistele ainult lugemisõiguse chmod ugo+x ~/skript.sh annab kasutaja kodukataloogis failile "skript.sh" kõigi jaoks käivitusõiguse
- ifconfig
- Interface config - võrguliideste konfigureerimiseks ja sirvimiseks
ifconfig näitab ülevaadet kõikidest võrguliidestest(IP-, MAC-aadress jne)
- ssh
- Secure Shell - krüpteeritud konsooliühendus üle võrgu
ssh pi@raspberrypi logib serverisse "raspberrypi" sisse kasutajana "pi"
Kõikide käskude puhul on võimalik abi leida [KÄSK] --help
viisil või täpsemat juhendit näha man [KÄSK]
.
##Sisendi/Väljundi suunamine
ls -l > failid.txt kirjutab `ls -l` väljundi otse faili
ls -l | less kui `ls -l` väljund korraga ekraanile ära ei mahu, saab seda `less` abil puhverdada
ls -l | tee failid.txt kirjutab `ls -l väljundi faili, kuid kuvab tulemust ka terminalis
ls -l 2>&1 | tee failid.txt kui `ls -l` peaks andma mingit viga, väljastatakse see ning kirjutatakse faili ka
ls -l > failid.txt 2>&1 kui teha otse faili suunamist, tuleb vigade suunamine käsureal hiljem
cat > note.txt hoiab konsooli kinni, kuni kasutaja sinna midagi kirjutab, lõppu tühja rea lisab ning CTRL+D vajutab
cat >> note.txt kui fail on olemas, kirjutab juurde
sort < nimed.txt > nimed_s.txt annab programmile `sort` sisendiks "nimed.txt" ja kirjutab väljundi faili "nimed_s.txt"
##Kataloogide struktuur
kataloogide struktuur:
/ juurkataloog, kõige alus
/boot alglaaduri failid
/bin kasutajate binaarfailid, enamus ülalnimetatutest asuvad siin (ls, cp, mv, ps, grep jne)
/sbin süsteemi binaarfailid (ifconfig, reboot)
/etc konfiguratsioonifailid
/dev seadmete failid
/proc protsesside informatsioon
/var muutuvad failid (nt logid)
/tmp ajutised failid
/usr kasutajate programmid
/home kasutajate kodukataloogid
/lib süsteemi teegid
/opt lisatarkvara
/mnt haakepunktid (nt võrgukettad)
/media eemaldatavad seadmed (mälupulgad, välised kõvakettad tekivad siia)