Wie führe ich ein Programm mit Sudo-Rechten, aber ohne Root-Kontext aus?

Wie führe ich ein Programm mit Sudo-Rechten, aber ohne Root-Kontext aus?

Ich möchte meine IntelliJ IDEA mit privilegierten Rechten starten. Das liegt daran, dass beim Starten meiner Anwendung innerhalb der IDE ein SFTP-Server gestartet wird. Dies funktioniert nur, wenn ich die Berechtigung dazu habe.

Der bisherige Ansatz bestand darin, das IntelliJ-Programm mit zu starten sudo. Der Nachteil dabei war, dass IntelliJ einen ganz neuen Konfigurationskontext startete, der nun im rootVerzeichnis liegt. Daher muss ich mit einer leeren/neuen Benutzerkonfiguration der IDE beginnen (kann leicht geändert werden, aber das ist nicht der Sinn der Sache) und außerdem muss ich meinen Lizenzcode erneut eingeben.

Gibt es eine Möglichkeit, ein Programm einfach auszuführen, ohne tatsächlich als Root zu agieren, aber dennoch als der angemeldete Benutzer, der ich bin?

Antwort1

Ich würde eine IDE nicht als Root ausführen. Das würde eine Menge Ärger nach sich ziehen, wenn etwas schief geht.

Gewähren Sie sich stattdessen den richtigen Sudo-Zugriff und binden Sie das Element, das Root-Zugriff benötigt, in ein Skript ein.

Um beispielsweise acme_sftp_server als Root auszuführen, erstellen Sie ein Skript

#!/bin/bash
sudo acme_sftp_server

Geben Sie sich dann das Sudo-Privileg, um acme_sftp_server ohne Kennwort über Sudo auszuführen.

Rufen Sie dann Ihr Skript auf, nicht den Server über IntelliJ

verwandte Informationen