Basis van Linux en de opdrachtregel

Leer met meerkeuzevragen over de directorystructuur en paden van Linux, harde en symbolische links, wildcards, bestandsrechten met chmod en umask, sudo en setuid, omleiding en pipes, grep en reguliere expressies, sort, uniq, cut, sed, awk en find, signalen en jobbeheer, de exitstatus met && en ||, aanhalingstekens, argumenten, voorwaarden en lussen in shellscripts, PATH en omgevingsvariabelen, pakketbeheer, systemd, cron, df en du, authenticatie met een publieke sleutel in SSH, tar, en de basishandelingen van Git.

Oefen 10 vragenWillekeurige vragen uit dit onderwerp · ongeveer 5 minuten Dit onderwerp oefenenAlle vragen over dit onderwerp in willekeurige volgorde Zwakke vragenAlleen de laatst fout beantwoorde vragen opnieuw oefenen

Basis van Linux en de opdrachtregel: kernpunten

De meeste servers en clouds draaien op Linux, en ook EDA-tools voor logische synthese, circuitsimulatie en dergelijke worden normaal op Linux-servers gebruikt. Het dagelijkse werk bestaat daar uit commando's intypen in een shell in plaats van op knoppen klikken: bestanden onderzoeken, logs filteren, en lange taken laten doorlopen nadat de verbinding is verbroken.

U leert de directorystructuur, absolute en relatieve paden, verborgen bestanden, harde en symbolische links, wildcards, de rwx-rechten en hun octale notatie, de umask, het uitvoerrecht op directory's, en sudo en setuid. Daarna komen omleiding en pipes aan bod, grep en reguliere expressies, tellen met sort en uniq, tail -f, cut, sed, awk, find, kill en signalen, Ctrl+Z met bg en fg, nohup, de exitstatus met && en ||, aanhalingstekens en de expansie van variabelen, argumenten, voorwaarden en lussen in scripts, en PATH en export; tot slot worden pakketbeheer, systemctl, cron, df en du, SSH-sleutels, tar, en add, commit en push in Git met .gitignore behandeld. Het gedrag van de commando's volgt bash en de GNU-commando's (coreutils, grep, sed, findutils, tar), en de uitvoer in de vragen is gecontroleerd door de commando's werkelijk op Linux uit te voeren. Hoe processen en virtueel geheugen werken, wordt behandeld in „Besturingssysteem en hardware”, poortnummers en DNS in „Basis van computernetwerken”, de principes van toegangsbeheer in „Basis van informatiebeveiliging”, en merges in Git en de werkwijze bij ontwikkeling in „Softwareontwikkeling en projectmanagement”.

Alle vragen over Basis van Linux en de opdrachtregel (40)

  1. Welke combinatie van standaarddirectory's in Linux en wat erin wordt geplaatst, is juist?
  2. Welke beschrijving van de directory /proc in Linux is juist?
  3. De directory /home/alice/data bestaat, en de huidige directory is /home/alice/work. Welke directory wordt getoond als eerst „cd ../data” en daarna „pwd” wordt uitgevoerd?
  4. In de homedirectory toont „ls” alleen notes.txt, terwijl „ls -a” „.”, „..”, „.bashrc” en „notes.txt” toont. Welke verklaring van dit resultaat is juist?
  5. Wat is het resultaat van de laatste twee cat-commando's als de bovenstaande commando's in volgorde worden uitgevoerd?
  6. Een directory bevat zes bestanden: a1.txt, a2.txt, a10.txt, b1.txt, c1.txt en a1.csv. Hoeveel bestanden worden getoond als in deze directory „ls [ab]?.txt” wordt uitgevoerd?
  7. Nadat „chmod 754 run.sh” is uitgevoerd op het bestand run.sh, welke notatie van de rechten staat dan aan het begin van de regel die „ls -l run.sh” toont?
  8. touch maakt een nieuw bestand vanuit 666 en mkdir een nieuwe directory vanuit 777, met de bits van de umask verwijderd. Welke combinatie van rechten is juist als een nieuw bestand en een nieuwe directory worden gemaakt in een shell met umask 027?
  9. De directory d heeft de rechten rwx--x--x (711), en het bestand f.txt daarin heeft rw-r--r-- (644). Een gebruiker die eigenaar noch superuser is, voert „ls d” en „cat d/f.txt” uit. Wat is het resultaat?
  10. Welke beschrijving van het commando sudo in Linux is juist?
  11. Op veel Linux-systemen toont „ls -l /usr/bin/passwd” „-rwsr-xr-x 1 root root ...”. Wat betekent de „s” op de uitvoerpositie van de eigenaar?
  12. Welke inhoud toont de laatste cat als de bovenstaande commando's in volgorde worden uitgevoerd?
  13. Zoals hierboven te zien is, wordt in een directory waarin a.txt wel en nofile niet bestaat het laatste commando uitgevoerd. Wat is het resultaat?
  14. Welke waarde drukt het laatste commando in de bovenstaande sessie af?
  15. Welke regels drukt de laatste grep in de bovenstaande sessie af?
  16. In de keuzemogelijkheden zijn de spaties aan het begin van de regel weggelaten. Welke regel drukt de laatste pipeline in de bovenstaande sessie af?
  17. Je wilt regels die later aan het logbestand /var/log/app.log van een server worden toegevoegd, telkens op het scherm blijven tonen zodra ze worden toegevoegd. Welk commando is geschikt?
  18. Wat is de uitvoer van het bovenstaande commando, dat kolommen uit een door komma's gescheiden regel haalt?
  19. Wat is de uitvoer van het bovenstaande sed-commando, dat tekens vervangt?
  20. Wat drukt de laatste awk in de bovenstaande sessie af?
  21. Welke beschrijving van de bestanden die worden gevonden als „find /data -name "*.log" -mtime +7 -size +100M” met GNU find wordt uitgevoerd, is juist?
  22. Om een proces te stoppen dat niet meer reageert, wordt aangeraden eerst „kill <proces-ID>” te gebruiken en „kill -9 <proces-ID>” alleen als het proces daarmee niet stopt. Wat is de reden?
  23. Terwijl in een terminal het langdurige ./sim.sh draait, wil je in dezelfde terminal andere commando's gebruiken. Wat gebeurt er als je op Ctrl+Z drukt en daarna bg uitvoert?
  24. Op een server die via SSH is bereikt, werd een langdurige taak gestart met „./run.sh &”, en toen de verbinding werd verbroken, stopte de taak ook. Wat is de meest geschikte manier om de taak te starten zodat die blijft draaien nadat de verbinding is verbroken?
  25. Welke tekens worden getoond als de bovenstaande twee regels in een shell worden uitgevoerd?
  26. Wat is de uitvoer van de twee echo-commando's als de bovenstaande commando's in volgorde worden uitgevoerd?
  27. Zoals hierboven te zien is, wordt het script s.sh met argumenten uitgevoerd. Wat is de uitvoer?
  28. In welk geval is de voorwaarde van de bovenstaande if in een shellscript waar?
  29. Welke bestanden staan na de bovenstaande sessie in de directory?
  30. Een uitvoerbaar script run.sh in de huidige directory geeft „command not found” als het wordt gestart door „run.sh” te typen, maar wordt wel uitgevoerd als „./run.sh” wordt getypt. Wat is de reden?
  31. Wat is de combinatie van de uitvoer van de twee bash -c-commando's als de bovenstaande commando's in volgorde worden uitgevoerd?
  32. Wat is de belangrijkste functie van een pakketbeheersysteem in Linux (apt op Debian-gebaseerde systemen, dnf op Red Hat-gebaseerde systemen enzovoort)?
  33. Wat is op een Linux-systeem met systemd het verschil tussen „systemctl start license.service” en „systemctl enable license.service” voor de service license.service?
  34. De regel „30 2 * * 1 /home/alice/backup.sh” is in cron ingesteld. Wanneer wordt backup.sh uitgevoerd?
  35. Een Linux-server waarschuwt dat de vrije schijfruimte bijna op is. Welke combinatie van een commando om per bestandssysteem het gebruik en de vrije ruimte te controleren, en een commando om de ruimte op te tellen die de bestanden in een directory innemen, is juist?
  36. Je hebt op je eigen pc met ssh-keygen een sleutelpaar voor authenticatie met een publieke sleutel gemaakt en wilt zonder wachtwoord met ssh verbinding maken met de server server1. Hoe moeten de sleutels worden geplaatst?
  37. Wat gebeurt er als „tar -czf proj.tar.gz proj/” wordt uitgevoerd?
  38. Na het bewerken van main.c, een bestand dat met Git wordt beheerd, werd alleen „git commit -m "fix"” uitgevoerd; „no changes added to commit” werd getoond en er werd niets gecommit. Wat is de reden?
  39. Je hebt in Git git commit uitgevoerd, maar de commit verschijnt nog niet in de GitHub-repository die het team deelt. Wat is de reden?
  40. In het .gitignore-bestand van een project dat met Git wordt beheerd, is „build/” geschreven, maar wijzigingen in build/out.log, dat eerder is gecommit, blijven in git status verschijnen. Wat is de reden?

Andere onderwerpen in Computersystemen