Käsurida, failisüsteemi mõiste ja haldamine
Tänases praktikumis
- Õpime tundma Unixi käsurida
- Uurime Linuxi süsteemi katalooge
- Loome jagatud kausta VirtualBoxi guest'ide ja hosti vahel.
Ettevalmistus
Kõigepealt tehke jälle oma virtuaalmasinast Snapshot. See tagab, et esimese kahe praktikumi tulemused on taastatavad, kui midagi peaks virtuaalmasinaga tulevikus juhtuma. Töökindluse huvides on olekutõmmiseid kasulik teha viisakalt seisma pandud masinast.
Unixi käsurida
Läbi brauseripõhine käsurea baastreening.
Muuda käsurealt klaviatuuripaigutus omale sobivaks käsuga sudo dpkg-reconfigure keyboard-configuration
.
Tutvu ka spikriga "Enamkasutatud Unixi käsud" ning seejärel kirjuta oma praktikumiülesande viki lehele kõigi järgnevate tegevuste läbiviimiseks vajalikud käsurea käsud, nende käskude tulemusena välja prinditud väljundid ning vastused käskudega seotud küsimustele:
- Liigu käsureal oma kodukataloogi.
- Loo uus kataloog "tabulaatori_kasutamine_vähendab_oluliselt_trükkimise_vaeva".
- Tekita sinna kataloogi failid f1, f2, f3, f4.
- Milline üks ls käsk kuvab ainult failid f2 ja f3 sellest kataloogist?
- Tee loodud kataloogi sisse veel üks kataloog "Kaust2".
- Liiguta f4 kataloogi Kaust2 sisse
- Kirjuta f4 faili oma nimi. Selleks võid kasutada näiteks tekstiredaktori programmi
nano
(väljumiseks (ning faili salvestamiseks) vajutaCTRL+X
). - Otsi oma kodukataloogist faile, mille nimeks on f4.
- Otsi oma kodukataloogist faile, mille sisuks on sinu nimi.
- Lae alla andmefail aadressilt
https://courses.cs.ut.ee/LTAT.06.001/2018_fall/uploads/Main/comma-survey.csv
omaDownloads
kausta. [Andmete allikas: veebileht FiveThirtyEight] - Kuva allalaetud faili sisu
- Leia allalaetud failist kõik read, kus vastaja eelistab vormi "It's important for a person to be honest, kind, and loyal.".
NB! sudo pole oma failidega tegelemisel vajalik! Kui teile öeldakse mõne käsu peale Permission denied, siis ilmselt olete eksinud kataloogiga, kuhu asju loote või liigutate. Näiteks / failitee alguses tähendab juurkataloogi, mis asub väljaspool kasutaja kodukataloogi, ning sinna ei ole selle praktikumi ülesannete puhul vaja midagi panna. Veelkord - oma kodukataloogis tuleb hakkama saada ilma sudota.
Linuxi manuaalileheküljed
Linuxisse on sisseehitatud manuaal, sellega saab üsna detailset infot enamuse käskude kohta. Nt. man ls
annab infot selle kohta, mida teeb ls
käsk ja mis on selle võtmed. Manuaalilehekülgede tõhusamaks kasutamiseks võib lugeda lisamaterjalina seda artiklit.
Vali mõni omale tuttav käsk ning kirjelda manuaalilehekülje abil mõnd selle võtit, millega me siiamaani pole veel tutvunud — mida seda teeb ja milleks seda vaja võib minna.
Linuxi kataloogipuu
Kui varasemalt ei ole Linuxi operatsioonisüsteeme kasutanud, siis võib alguses olla suhteliselt raske üles leida, kus salvestatakse Linuxis erinevat tüüpi faile, nagu näiteks ajutisi faile, programmide faile, kasutaja dokumente, süsteemi logifaile jne.
Järgnev joonis annab ülevaate Linuxi kataloogipuu stuktuurist ja peamiste kaustade eesmärkidest:
Nüüd, kui tunned juba elementaarseid käske, saad uudistada Linuxi kataloogipuu struktuuri. Uuri kataloogide /bin
, /var/log/
, /dev
, /etc
, /proc
, /usr
sisu.
Lisa oma viki leheküljele vastused järgnevatele küsimustele:
- Kas Linuxis on Windowsi "Program Files" kataloogiga sarnane kataloog? Selgita oma vastust.
- Leia
/etc
kataloogist kõik failid, milles sisaldub sinu kasutajanimi. - Kus asub käsu
ls
käivitusfail (binary)? - Mis vahe on käskudel
cp ajutine.txt tmp/
jacp ajutine.txt /tmp
?
Jagatud kaust hosti ja guesti (Ubuntu) vahel
Seame üles jagatud kausta host ja guest masinate vahel.
host - peremeesoperatsioonisüsteem (Masin, mis jooksutab virtuaalmasinaid)
guest - külalisoperatsioonisüsteem (Virtuaalmasinad)
Et me saaksime seda teha, peavad Ubuntus olema installitud Virtualboxi külalislaiendused.
- Looge hostis kataloog. Näiteks jagatudkaust teie kodukataloogis. (C:\Users\Kasutaja\jagatudkaust)
- Seejärel valige virtuaalmasina menüüs
Devices -> Shared Folders
.
Avanevas aknas vajutage Insert klahvi või klikkige rohelist plussmärgiga ikooni "Add shared folder".
Valige oma esimese sammuna tehtud kataloog ning lisage linnuke kastidesse Auto-mount ning Make Permanent. - Nüüd avage terminaliaken ja minge
/media
kataloogi
$ cd /media
- Tekitage sinna jagatav kataloog. Näiteks nii:
$ sudo mkdir JagatudKaust
- Haakige õige kataloog selle külge (jälle vajab juurõigusi)
$ sudo mount -t vboxsf jagatudkaust /media/JagatudKaust/
- Katsetage. Minge oma kodukataloogi ning kirjutage käsu
pwd
väljund jagatud kaustas olevasse faili.
Kui tekib probleem jagatud kaustale ligi saamisega, lisage oma kasutaja (muutke kasutajanimi) gruppi vboxsf: sudo usermod -G vboxsf -a kasutajanimi
$ cd ~ $ pwd > /media/JagatudKaust/pwd.txt
Seejärel minge hostis jagatud kausta ning avage fail pwd.txt
Lisage sellest ekraanipilt oma viki lehele.
Iseseisvad ülesanded
- Ühendage virtuaalmasina jagatud kataloog ka Windows 10-ga. Vikilehele lisada tulemust illustreeriv kuvatõmmis.
- Uurige, kuidas märgitakse faile peidetuks Windowsis ja kuidas Linuxis. Tehke jagatud kausta uus fail ning märkige ta mõlema operatsioonisüsteemi jaoks peidetuks. Kirjeldage, kuidas oleks võimalik siiski seda faili guest masinate sees näha, ilma faili ennast puutumata (host masina jaoks võiks fail endiselt peidetuks jääda.)
Tulemus
Vikilehel peavad olema järgmised tulemused.
- Unix'i käsud ja nende väljundid ülesandes Unixi käsurida. Kas vormistatud teksti kujul või ekraanivaadetena.
- Vastused küsimustele failipuu kohta ülesandes Linuxi kataloogipuu.
- Mõne käsu siiamaani kirjeldamata võtme kirjeldus, ülesanne sektsioonis Linuxi manuaalilehed.
- Pilt jagatud kaustast ja failist "pwd.txt".
- Iseseisvate ülesannete lahendus.
- Tühja faili asemel genereerige fail Linuxi käsuga
history >> käsudFaili
- ja lisage see fail "käsudFaili" alljärgnevasse vormi.
Kui teil viki lehekülg valmis on, siis lisage meile kommentaar (koos äsjamainitud failiga).
3. Praktikum 3 - Käsurida(Tähtaeg 2 nädalat)
Lisamaterjal
- Linux kataloogipuu ülevaade eestikeelsest "Operatsioonisüsteem Linux" raamatust.
- Alo Peets cheat sheet about Linux command line Linux.docx
- How to efficiently use Man Pages under Linux inglise keeles manuaalilehekülgede kasutuse ülevaade.