Osa II: Süsteemi pilt ja haldus — täisspikker
Selle osa spikrid on siin koos ühel lehel. Neid saab kasutada kordamiseks, kiireks viitamiseks ja eraldi PDF-ina printimiseks.
Linux, Unix, GNU, macOS, Windows ja shellid
Baas ja süsteemipilt
Eesmärk
erista süsteemi, shelli ja käsureatööriistu; sama terminaliaken ei tähenda veel, et Linux, macOS ja Windows käituksid ühtemoodi
Kontrollkäsud
uname -asüsteemi ja kerneli ridaecho "$SHELL"seadistatud sisselogimisshellps -p $$praegu töötav shelliprotsesscommand -v lskust käsk leitaksesw_versmacOS-i versioonwsl -l -vWSL-i jaotused
Olulised mõisted
Linuxkernel ehk tuumGNUpaljud põhikäsudshelltõlgendab käskeWSLLinux WindowsisBSDmacOS-i tööriistaperePowerShellWindowsi käsukeskkond
Failisüsteemi kaart
Baas ja süsteemipilt
Eesmärk
õpi eristama süsteemi juurt, oma kodukataloogi ning ajutisi ja süsteemseid katalooge; siis on lihtsam aru saada, kus tohid rahulikult katsetada
Põhikujud
pwdkontrolli asukohtaecho "$HOME"vaata oma koducd /mine juurkataloogicd ~mine kodukataloogils /etc | headpiilu seadistusils -ld /tmpvaata ajutist kataloogi
Olulised teed
/kogu failipuu juur~sinu kodukataloog/etcsüsteemi seadistused/varlogid ja muutuv sisu/tmpajutiste failide koht/Users//homekasutajate kodud
Kettaruum ja süsteemi maht
Baas ja süsteemipilt
Eesmärk
df näitab failisüsteemi vaba ruumi, du loendab valitud failide ja kataloogide kettakasutust.
Käsud ja näited
df -h .selle failisüsteemi kasutatud ja vaba mahtdu -sh .praeguse kataloogipuu kogumahtdu -h -d 1 .esimese taseme mahud, ka peidetud kataloogiddu -h -d 1 . | sort -hsordi ühikusufiksiga mahud kasvavaltdu -ak . | sort -nr | lesskõik kirjed 1024-baidistes ühikutes, suurimad ees
Märgid ja valikud
du -sainult kogusummadu -aka üksikfailide mahuddu -kühtlane 1024-baidine ühiksort -harvestab ühikusufiksi järku, siis arvväärtustsort -nrarvuliselt kahanev järjestus
Õigused, omanikud ja täitmisbitid
Baas ja süsteemipilt
Eesmärk
loe õiguste rida, mõista rwx tähendust ja erista faili käivitatavust kataloogi läbikäigust
Põhikujud
ls -l fail.txtloe õiguste ridachmod u+x skript.shanna omanikule täitminechmod 644 naide.txtsea tekstifaili õigusedchmod 755 skript.shsea käivitatava õigusedsudo chown kasutaja:grupp fail.txtmuuda omanikku
Olulised õigusekujud
rloe sisuwmuuda sisuxkäivita või sisenedtegu on kataloogiga644omanik rw, teised r755omanik rwx, teised rx
Kasutajad, grupid ja sudo
Baas ja süsteemipilt
Eesmärk
õpi nägema, millise kasutajana sa töötad, millistes gruppides oled ja millal on sudo päriselt vajalik
Põhikujud
whoamikontrolli kasutajatidloe grupid väljagroupsvaata grupinimesidsudo -lvaata sudo õigusisudo apt updateüks kõrgem käsksu - kasutajavaheta kasutajat
Olulised märgid ja rollid
$tavaline kasutaja%teine levinud tavaviip#root või kõrgemad õigusedrootadministraatori kasutajasudo -iava kõrgem shellsudo käskeelista ühte käsku
Muutujad, keskkond, PATH ja aliased
Baas ja süsteemipilt
Eesmärk
erista shellimuutujat, keskkonnamuutujat, käsuotsingu teed ja aliast; PATH-i järjekord otsustab, milline väline käsk esimesena leitakse.
Põhikujud
nimi='Mari'; echo "$nimi"shellimuutuja kehtib selles shellisexport DEMO=1anna muutuja edasi käivitatavatele programmideleenv | grep DEMOkontrolli, kas muutuja on keskkonnasecho "$PATH"vaata käskude otsinguteedcommand -v python3näita käsu lahendust, ka alias või sisekäsktype cdvaata käsu liikitype -a grepnäita kõik vastedexport PATH="$HOME/bin:$PATH"pane oma käskude kataloog otsingutee ettealias ll='ls -lah'loo lühinimi sagedasele käsulesource ~/.zshrcloe zsh seadistus uuesti
Olulised mõisted
nimi='Mari'shellimuutujaexport NIMI='Mari'keskkonnamuutujaPATHotsinguteede järjekord$HOME/binoma käskude kohttypealias, sisekäsk või programm~/.zshrczsh seadistusfail~/.bashrcbash seadistusfail
Paketihaldus: apt, dnf, pacman, brew
Baas ja süsteemipilt
Eesmärk
vali õige tase: süsteemi paketihaldur tööriistadele, keele paketihaldur teekidele ja projekti sõltuvused võimalusel projekti sisse
Põhikujud
apt search ripgrepotsi Debianis või Ubuntussudo apt install ripgreppaigalda Debianis või Ubuntussudo dnf install ripgreppaigalda Fedorassudo pacman -S ripgreppaigalda Archisbrew install ripgreppaigalda Homebrew'gapython3 -m pip install requestspaigalda Pythoni pakett aktiivsesse keskkondanpm installpaigalda projekti Node.js sõltuvusedcommand -v rgkontrolli, kas käsk leitakse
Tööriistad ja tasemed
apt,dnf,pacmanLinuxi süsteemipaketidbrewmacOS-i kasutajataseme tööriistadupdatevärskenda nimekirja või retsepteupgradeuuenda paigaldatud paketid--caskHomebrew graafiline rakendusvenvPythoni projekti eraldi keskkondpackage.jsonNode.js projekti sõltuvused
Lihtne veaotsing käsureal
Baas ja süsteemipilt
Eesmärk
kitsenda viga enne parandamist: täpne veateade, asukoht, olemasolu, käsu leitavus, õigused ja shelli/süntaksi kontroll
Kontrollrada
pwdkontrolli, kus oledls -lahvaata faile, õigusi ja peidetud kirjeidcommand -v rgkas käsk leitaksetype -a rgnäita kõik sama nimega vastedls -l skript.shvaata skripti õigusihead -n 1 skript.shvaata skripti shebang-ridabash -n skript.shkontrolli süntaksit ilma käivitamatagrep --helpkinnita käsu süntaks
Levinud veateated
command not foundkäsk puudub, nimi vale või pole PATH-isNo such file or directorytee, failinimi või asukoht on valePermission deniedõigus ei luba lugeda, kirjutada või käivitadasyntax errorvale shell või vale käsukujupackage not foundpaketinimi või nimekiri on valedatabase is lockedandmebaasi hoiab teine toiming; põhjus sõltub programmist
Võrgu põhitööriistad
Baas ja süsteemipilt
Eesmärk
erista nelja küsimust: kas host vastab, kas veeb vastab, millised liidesed on ja kas kohalik teenus kuulab porti
Kontrollrada
curl -I https://example.com/kontrolli veebiteenustping -c 4 example.comkontrolli hosti ICMP vastustip avaata Linuxi liideseidifconfigvaata macOS-i liideseidss -ltnvaata Linuxi kuulavaid TCP-portelsof -iTCP -sTCP:LISTEN -n -Pvaata macOS-i kuulavaid portenc -vz example.com 443kontrolli TCP ühendust porti
Olulised võtmed ja vaated
curl -Iküsi HTTP-päised HEAD-päringugacurl -Ljärgi HTTP ümbersuunamisiLISTENport kuulab127.0.0.1ainult oma masin0.0.0.0kõik IPv4-liidesedip/ssLinuxi tööriistadifconfig/lsofmacOS-i põhivariandid