GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie führe ich einen Befehl aus, der Umleitung oder Piping mit Sudo beinhaltet?

Ich versuche, das zu befolgen, was meiner Meinung nach die besten Praktiken für die Verwendung von sudo anstelle des Root-Kontos sind.

Ich führe eine einfache Concat-Dateioperation aus, wie zum Beispiel:

sudo echo 'clock_hctosys="YES"' >> /etc/conf.d/hwclock

Dies schlägt fehl, da rechts neben dem „>>“ es als normaler Benutzer ausgeführt wird. Das Hinzufügen zusätzlicher sudos schlägt ebenfalls fehl (erwartetes Verhalten, da an den sudo-Befehl und nicht an die Datei geleitet wird).

Beispiel ist genau das, aber es wurde unter dem Root-Konto verifiziert und getestet.

Akzeptierte Antwort:

Sie können eine neue Shell als root aufrufen:

sudo sh -c 'echo clock_hctosys="YES" >> /etc/conf.d/hwclock'

Sie könnten auch einfach einen Prozess erhöhen, um in die Datei zu schreiben:

sudo tee -a /etc/conf.d/hwclock > /dev/null << EOF
clock_hctosys="YES"
EOF

Linux
  1. Wie führe ich ein bestimmtes Programm als Root ohne Passwortabfrage aus?

  2. Wie führe ich einen Befehl ohne Root-Eigenschaften aus?

  3. Wie führe ich den ursprünglichen Befehl mit dem gleichen Namen aus?

  4. Wie führe ich das Terminal als Root aus?

  5. Wie bestimmen Sie den tatsächlichen Befehl, der in Sie einfließt?

So führen Sie einen Befehl mit Zeitlimit (Timeout) in Linux aus

So führen Sie den Sudo-Befehl ohne Passwort aus

So führen Sie einen Alias ​​mit Sudo in Linux aus

So führen Sie mit Lynis ein Sicherheitsaudit auf AlmaLinux durch

So führen Sie den SUDO-Befehl in WinSCP aus, um Dateien von Windows nach Linux zu übertragen

Wie kann ich einen Befehl verzögert im Hintergrund ausführen?