Vraag leuke sudo of sudo leuk?


is er een verschil tussen het uitvoeren van een intensieve taak over sudo met de volgende opdrachten ?:

  1. mooie sudo [intensieve opdracht hier]
  2. sudo nice [intensieve opdracht hier]

Tussen haakjes dit is voor Linux 3.x.


50
2017-09-05 16:31


oorsprong


Om u te helpen zien te zien nice bash -c 'ps -p $$ -o pid,ni,comm', en sudo nice bash -c 'ps -p $$ -o pid,ni,comm', en nice sudo bash -c 'ps -p $$ -o pid,ni,comm'. Alle drie zouden je de mooie waarde moeten laten zien voor de proces-id ($$) van de voortgebrachte schaal. - Zoredache
@Zoredache, terwijl ik vind dat je commentaar ZEER constructief is, moeten we zeggen dat ze allemaal dezelfde mooie waarde hebben omdat het wordt geërfd bij het zoeken, wat het feitelijke antwoord op de vraag zou moeten zijn. - Florin Asăvoaie
@FlorinAsavoaie als je denkt dat dit het antwoord moet zijn, voeg je het dan toe om het toe te voegen. Ik voegde mijn bovenstaande opmerking toe als een manier om dingen te testen, omdat ik persoonlijk niet 100% zeker was wat er zou gebeuren en ik besloot een opdracht te vinden die de mooie waarde kon laten zien met verschillende aanroepingen. Ik ben in het kamp dat de neiging heeft om eigenlijk een test te hebben die laat zien dat dingen werken zoals ze zouden moeten. - Zoredache
@FlorinAsavoaie Dat had ik ook gedacht, maar kijk eens naar serverfault.com/a/626576/117546. - emory


antwoorden:


Er is een verschil, een cruciale.

Als je wilt verminderen de prioriteit van het proces, de volgorde doet er niet toe. Aan de andere kant, als je wilt toenemen het moet je zetten sudo voor nice.

Omdat je de opdracht als een normale gebruiker uitvoert (anders zou je helemaal geen last hebben van sudo), kun je alleen de prioriteit van je opdracht verlagen. Maar als je gebruikt sudo Ten eerste kun je het verhogen als je wilt.


101
2017-09-05 17:04



Gefeliciteerd, je wint. - Michael Hampton♦
Dit is een heel belangrijk punt, maar als een antwoord is het pas compleet als je het uitlegt waarom de volgorde doet er niet toe in het basisscenario (zoals Michael in zijn antwoord doet). - Lightness Races in Orbit


Als je rent nice sudo dan wordt de prompt voor je wachtwoord ook genuanceerd, maar omdat je veel meer tijd zult besteden aan het typen, maakt het echt niet zoveel uit.

Zoals ThoriumBR opmerkte, als je de prioriteit verlaagt, dan is de volgorde niet relevant, maar als je de prioriteit wilt verhogen, moet je (omdat dit als root moet worden gedaan) sudo nice.

Anders kan ik me geen echt verschil voorstellen.


15
2017-09-05 16:35





De ... gebruiken 'principe van het minste privilege' je zou alleen een programma met rootprivileges moeten uitvoeren als het ze nodig heeft, en ze dan weer laten vallen zodra je ze niet meer nodig hebt.

Dus ja, er is een verschil, als er een exploit is voor nice, kan een aanvaller code uitvoeren met dezelfde privileges als het leuke programma.

Ook stelt sudo je omgeving opnieuw in, dus het kan neveneffecten hebben, proberen

$ echo 'echo $PATH' | sh
/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/jens/.local/bin:/home/jens/bin:/home/jens/.local/bin
$ echo 'echo $PATH' | sudo sh
[sudo] password for jens: 
/sbin:/bin:/usr/sbin:/usr/bin

Dus de 'mooie' opdracht die je via sudo uitvoert, kan uiteindelijk een ander binair getal worden.

$ which ash
~/.local/bin/ash
$ sudo which ash
[sudo] password for jens: 
which: no ash in (/sbin:/bin:/usr/sbin:/usr/bin)

1
2017-09-12 13:04





Laat antwoord:

Als uw sudo-toegang beperkt is tot bepaalde programma's (foo en bar, bijvoorbeeld), dan heb je geen autoriteit om te rennen sudo nice foo, maar mag worden uitgevoerd nice sudo foo.


1
2018-01-22 13:59