Basis van Linux en de opdrachtregel

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?

  1. Asetuid is ingesteld, dus wie het programma ook uitvoert, het draait met de rechten van de eigenaar van het bestand (hier root)
  2. BDe sticky bit is ingesteld, dus andere gebruikers dan de eigenaar en root kunnen dit bestand niet verwijderen of hernoemen
  3. CHet geeft aan dat dit bestand een gedeelde bibliotheek is, die alleen vanuit andere programma's wordt aangeroepen en niet rechtstreeks als commando kan worden uitgevoerd
Antwoord en toelichting tonen

Antwoord: A. setuid is ingesteld, dus wie het programma ook uitvoert, het draait met de rechten van de eigenaar van het bestand (hier root)

s betekent dat zowel de setuid-bit (set user ID) als het uitvoerrecht is gezet, en dat het programma draait met de rechten van de eigenaar van het bestand in plaats van die van de gebruiker die het uitvoert. passwd moet /etc/shadow bijwerken, waarin alleen root kan schrijven, wanneer een gewone gebruiker zijn eigen wachtwoord wijzigt; daarom is het een setuid-root-programma. Een fout in een setuid-programma kan voor een gewone gebruiker een opstap worden om rootrechten te krijgen, dus de bit mag niet zomaar worden gezet. Octaal is het de positie van 4000, en chmod 4755 geeft -rwsr-xr-x.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van Linux en de opdrachtregel

  1. Welke inhoud toont de laatste cat als de bovenstaande commando's in volgorde worden uitgevoerd?
  2. 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?
  3. Welke waarde drukt het laatste commando in de bovenstaande sessie af?
  4. Welke regels drukt de laatste grep in de bovenstaande sessie af?
  5. In de keuzemogelijkheden zijn de spaties aan het begin van de regel weggelaten. Welke regel drukt de laatste pipeline in de bovenstaande sessie af?