Beetaversioon: sisu on enamasti terviklik ja avalikuks katsetamiseks valmis, kuid vajab veel tehnilist, keelelist ja kasutatavuse kontrolli.

Spikrid

Linux/Unix/macOS käsurea kiirõpik

Siin on koos osa Osa III: Failid, võrk ja süsteemitöö spikrid.

Osa III: Failid, võrk ja süsteemitöö — täisspikker

Selle osa spikrid on siin koos ühel lehel. Neid saab kasutada kordamiseks, kiireks viitamiseks ja eraldi PDF-ina printimiseks.

Failide kopeerimine ja sünkroonimine

Praktiline kasutus

Eesmärk

vali tööriist allika järgi: cp samas masinas, scp üle SSH, rsync korduvaks sünkroonimiseks ja curl/wget veebist toomiseks

Põhikujud

  • cp fail.txt koopia.txttee koopia
  • cp -R kaust kaust-koopiakopeeri kataloog
  • scp fail.txt kasutaja@server:/tmp/saada serverisse
  • rsync -avn kaust/ kasutaja@server:/tmp/kaust/kontrolli enne
  • rsync -av kaust/ kasutaja@server:/tmp/kaust/sünkrooni sisu
  • wget https://artifical.eu/linux/data/generated-words.txtlaadi fail
  • curl -fLO https://artifical.eu/linux/data/generated-words.txtjärgi suunamisi, HTTP-vea korral ebaõnnestu

Olulisemad lipud, märgid ja kiirnupud

  • cp -Rkopeeri kataloog
  • scp -rsaada kataloog
  • rsync -arekursiivselt, säilitades tavalised Unixi metaandmed
  • rsync -nproovi enne
  • curl -Ljärgi suunamist
  • curl -Osalvesta URL-i lõpuosa nimega

Kauglogimine ja SSH

Praktiline kasutus

Eesmärk

tee SSH korduvkasutatavaks: kontrolli olemasolevaid võtmeid, lisa avalik võti serverisse, kasuta failis ~/.ssh/config määratud aliast ja macOS-is Apple'i võtmehoidjat

Põhirada

  • ssh kasutaja@server.example.orgproovi tavalist sisselogimist
  • ls -la ~/.sshvaata olemasolevaid võtmefaile
  • ssh-add -lvaata agendis olevaid võtmeid
  • ssh-keygen -t ed25519 -C 'kasutaja@arvuti'loo võti ainult vajadusel
  • /usr/bin/ssh-add --apple-use-keychain ~/.ssh/id_ed25519macOS: salvesta võtmefraas võtmehoidjasse
  • ssh-copy-id -i ~/.ssh/id_ed25519.pub kasutaja@server.example.orglisa avalik võti serverisse
  • ssh opik-serverkasuta seadistusfaili aliast
  • ssh -v opik-serverdiagnostika

Olulised failid ja mõisted

  • id_ed25519privaatvõti; ära jaga
  • id_ed25519.pubavalik võti serverisse
  • ~/.ssh/configühenduse alias
  • ~/.ssh/authorized_keyslubatud võtmed
  • known_hostsserverite sõrmejäljed
  • AddKeysToAgentlisa võtmed agenti
  • UseKeychainvõtmefraas macOS-i võtmehoidjas
  • IdentitiesOnly yeskasuta nimetatud võtit

Veebist sisu toomine ja tekstivaade: curl, wget, lynx

Praktiline kasutus

Eesmärk

vali curl ühe vastuse või päiste jaoks, wget allalaadimise jaoks ja lynx HTML-i rahulikuks tekstivaateks

Põhikujud

  • curl -I https://example.com/kontrolli URL-i
  • curl -L -o leht.html https://example.com/salvesta HTML
  • wget -O leht.html https://example.com/laadi faili
  • curl -fsSL https://example.com/ | lynx -stdin -dumploe tekstina
  • lynx -dump -listonly https://example.com/kogu lingid

Olulisemad lipud, märgid ja kiirnupud

  • curl -Ivaata päiseid
  • curl -Ljärgi suunamist
  • curl -Osalvesta URL-i lõpuosa nimega
  • wget -cjätka tõmmet
  • lynx -dumptekstvaade
  • lynx -listonlyainult lingid

Arhiivid ja pakkimine

Praktiline kasutus

Eesmärk

arhiiv koondab failid; tihendamine võib mahtu vähendada, kuid juba pakitud sisu puhul mitte tingimata

Põhikujud

  • tar -cf proov.tar kaust/loo arhiiv
  • tar -tf proov.tarvaata sisu
  • tar -czf proov.tar.gz kaust/loo gzip-arhiiv
  • tar -xzf proov.tar.gz -C siht/paki lahti sihtkohta
  • zip -r proov.zip kaust/loo zip
  • unzip -l proov.zipvaata zip sisu

Olulisemad lipud, märgid ja kiirnupud

  • tar -cfloo arhiiv
  • tar -tfvaata sisu
  • tar -czfgzip-iga kokku
  • tar -xzfpaki gzip lahti
  • zip -rpaki kataloog ZIP-arhiivi
  • unzip -lvaata zip sisu

Tervete kataloogipuude haldus ja jagamine

Praktiline kasutus

Eesmärk

terve projekti või kataloogipuu puhul vali tööriist selle järgi, kas tahad koopiat, korduvat sünkroonimist, arhiivi või versiooniajalugu

Põhikujud

  • cp -R projekt projekt-koopiatee kohalik koopia
  • rsync -avn projekt/ projekt-varu/kontrolli enne
  • rsync -av projekt/ kasutaja@server:/srv/projekt/sünkrooni serverisse
  • scp -r projekt kasutaja@server:/tmp/saada kiirelt
  • tar -czf projekt.tgz projekt/tee hetkearhiiv
  • gitjälgi ajalugu

Olulisemad lipud, märgid ja kiirnupud

  • projekt/rsync-allikas: kataloogi sisu
  • projektrsync-allikas: kataloog ise
  • rsync -nproovi enne
  • cp -asäilita metaandmed

Protsessid, tööd ja signaalid

Praktiline kasutus

Eesmärk

erista protsessi, shelli tööd ja signaali: vaata, millised protsessid töötavad, peata vajadusel ning jätka pikka tööd taustal

Põhikujud

  • ps aux | grep pythonotsi protsess
  • ps aux | sort -nrk 3 | headsuur CPU kasutus selles hetkepildis
  • ps aux | sort -nrk 4 | headsuur mälukasutus
  • sleep 300 &käivita taustal
  • jobsvaata töid
  • fg %1too töö ette
  • topjälgi reaalajas
  • killsaada signaal
  • bgjätka taustal

Olulisemad lipud, märgid ja kiirnupud

  • Ctrl-ckatkesta programmi töö
  • Ctrl-zpeata ajutiselt; fg ette, bg taustale
  • &käivita taustal
  • %1töö number
  • kill -15viisakas lõpp
  • kill -9jõuga lõpp

Logid ja teenused

Praktiline kasutus

Eesmärk

Kontrolli teenuse olekut ja seejärel sama teenuse logi. systemctl/journalctl vajavad systemd-ga Linuxit.

Käsud ja näited

  • systemctl status sshteenuse seis ja hiljutised teated; nimi võib olla sshd
  • journalctl -u ssh -n 50selle teenuse viimased 50 kirjet
  • journalctl -u ssh --since todaytänased teenusekirjed
  • journalctl -u ssh -fjälgi juurde tulevaid kirjeid
  • tail -n 20 app.logtavalise logifaili lõpp, ka ilma systemd-ta
  • tail -f app.logjälgi faili; Ctrl-c lõpetab jälgimise

Püsivad terminalisessioonid: tmux ja screen

Praktiline kasutus

Eesmärk

Säilita interaktiivne serverisessioon ka SSH-ühenduse katkemisel.

Käsud ja näited

  • tmux new -s katseloo nimega sessioon
  • tmux lsloetle sessioonid välisest shellist
  • tmux attach -t katseühendu olemasoleva sessiooniga
  • screen -S katsealternatiiv: loo screeni sessioon
  • screen -r katsetaasühendu eraldatud screeniga

Märgid ja valikud

  • Ctrl-b, siis dtmux: eraldu, töö jätkub
  • Ctrl-a, siis dscreen: eraldu, töö jätkub
  • exitlõpeta praeguse akna shell

Graafilised rakendused kaugmasinast

Praktiline kasutus

Eesmärk

kaugelt graafika kasutamisel eelista lihtsaimat toimivat teed: veebiliides enne X11-edastust, port forwarding enne toorest kaugtöölauda.

Põhikujud

  • ssh -N -L 127.0.0.1:8888:localhost:8888 kasutaja@servertunnel juba töötava serveriteenuseni
  • http://localhost:8888ava edasi suunatud teenus
  • ssh -X kasutaja@serverproovi lihtsat X11
  • code --remote ssh-remote+server /tee/projektiniIDE üle SSH

Valiku rusikareeglid

  • veebiliidestavaliselt mugavaim
  • ssh -Lport edasi
  • ssh -XX11 erijuht
  • Remote SSHarenduseks parem