Ich habe Suse Linux auf meinem Desktop. Ich bin also Root und "normaler" Benutzer. Häufig muss ich z. B. zum Starten von Tomcat oder zum Installieren/Entfernen eines Programms sudo
auf Superuser umsteigen. Ich habe jedoch viele Aliase in .bashrc
, Pfade in .profile
usw. definiert.
Ist es möglich, einem normalen Benutzer Superuser-Rechte zuzuweisen, beispielsweise zum Installieren von Programmen?
Antwort1
Ja, aber das ist das Schlimmste, was Sie tun können. In Ihrem Betriebssystem gibt es verschiedene Benutzer mit unterschiedlichen Berechtigungen. Und das ist Absicht. Wenn Sie Ihrem Benutzer dauerhaft Root-Berechtigungen erteilen, wird die Sicherheit des Systems gefährdet. (Erinnern Sie sich an Windows 9x und all die Viren?)
Ich schätze , zum Ausführen eines Befehls sudo
sind keine Anpassungen von Ihnen erforderlich, es sei denn, Sie führen /bin/sh
(eine Shell) aus.
Um Ihr Ziel zu erreichen, können Sie Folgendes tun:
~/.bashrc
Sie können Ihre Daten vom und ~/.profile
zum System verschieben /etc/bash/bashrc
und /etc/profile
oder noch besser in separate Skripte in /etc/profile.d/mystuff.sh
(nicht vergessen chmod +x /etc/profile.d/mystuff.sh
) einfügen. Diese Dateien werden bei jeder Login-Sitzung ausgeführt.
Starten Sie dann eine Root-Sitzung mit su -
, dem-Das an übergebene (Minus-)Zeichen su
führt eine Anmeldesitzung aus und führt daher die oben genannten Dateien aus. Abhängig von Ihrer Linux-Distribution müssen Sie möglicherweise sudo su -
stattdessen aufrufen.
Wenn Sie mit der Root-Sitzung fertig sind, empfiehlt es sich, logout
die Root-Berechtigungen beizubehalten.
Wenn Sie Root-Berechtigungen nur für bestimmte Binärdateien benötigen, gibt es noch eine andere Möglichkeit: Sie heißt Effective UID. Sie können beispielsweise Folgendes für mtr
Binärdateien verwenden:
chmod a+s `which mtr`
mtr
Auf diese Weise erhält die Binärdatei beim Ausführen die effektiven Berechtigungen des Benutzers, dem die Binärdatei gehört – in diesem Fall root ( chown root /path/to/mtr
). Dadurch sparen Sie sich die Eingabe von sudo, aber Sie sollten sorgfältig auswählen, welcher Binärdatei Sie Root-Berechtigungen erteilen. Es ist gefährlich, wenn Sie das Risiko nicht kennen. Verwenden Sie besser die erste Option.
Antwort2
Der Start von Tomcat sollte in einemInit-SkriptWenn Sie einer Gruppe von Benutzern das Recht geben möchten, Tomcat (neu) zu starten, fügen Sie eine Zeile hinzu/etc/sudoersmit visudo
. Das könnte so aussehen:
%tomcatcontrol localhost = NOPASSWD : /etc/init.d/tomcat *
Ersetzen Sie localhost durch den Namen Ihres Rechners. Dann jeder Benutzer der GruppeTomcat-Steuerungkann Folgendes ausstellen:
sudo /etc/init.d/tomcat restart
(oder Status, oder Stopp, oder Start).
Dafür ist sudo da. Wenn Sie länger mit dem Root-Konto arbeiten möchten, können Sie Folgendes tun su -
. Wenn Sie möchten, dass andere Benutzer Tomcat-Inhalte (Dateien im Besitz des Benutzers Tomcat) tatsächlich verwalten, können Sie su - tomcat
einem Benutzer oder einer Benutzergruppe einen Zugriff erlauben.
Was Ihre Aliasse betrifft – ich glaube, OpenSuSE hat zu diesem Zweck /etc/profile.local: Dort können Sie Dinge eingeben, die für jeden Benutzer gültig sein sollten.