Как назначить пользователю права root?

Как назначить пользователю права root?

У меня на рабочем столе Suse Linux. Так что я root и "обычный" пользователь. Часто, например, чтобы запустить tomcat или установить/удалить программу, мне нужно использовать sudoили переключиться на суперпользователя. Но я определил много псевдонимов в .bashrc, пути в .profileи т. д.

Можно ли назначить обычному пользователю некоторые права суперпользователя? Например, для установки программ?

решение1

Да, но это худшее, что вы можете сделать. В вашей ОС есть разные пользователи с разными разрешениями. И это сделано намеренно. Предоставление прав root вашему пользователю навсегда поставит под угрозу безопасность системы. (Помните Windows 9x и все вирусы?)

Я полагаю , что выполнение команды sudoне потребует никаких настроек, если только вы не запустите /bin/sh(оболочку).

Чтобы добиться желаемого, вы можете сделать следующее:

Вы можете перемещать свои вещи из системы и в нее ~/.bashrc, или даже лучше поместить их в отдельный скрипт в (не забудьте ). Эти файлы будут выполняться для каждого сеанса входа в систему.~/.profile/etc/bash/bashrc/etc/profile/etc/profile.d/mystuff.shchmod +x /etc/profile.d/mystuff.sh

Затем запустите сеанс root с помощью su -,-(минус) знак, переданный в, suвыполнит сеанс входа в систему и, следовательно, выполнит файлы, упомянутые выше. В зависимости от вашего дистрибутива Linux вам может потребоваться вызвать sudo su -вместо этого.

После завершения сеанса root будет разумно logoutоставить права root.

Есть еще один способ, если вам нужны права root только для определенного двоичного файла, он называется Effective UID. Например, вы можете использовать это для mtrдвоичного файла:

chmod a+s `which mtr`

Таким образом, когда вы запустите mtrдвоичный файл, он получит эффективные разрешения пользователя, которому принадлежит двоичный файл - в данном случае root ( chown root /path/to/mtr). Это избавит вас от необходимости вводить sudo, но вам следует тщательно выбирать, какому двоичному файлу вы дадите права root. Это опасно, если вы не знаете о риске. Лучше использовать первый вариант.

решение2

Запуск tomcat должен быть выполнен вinit-скрипт. Если вы хотите предоставить группе пользователей право (пере)запускать tomcat, добавьте строку в/etc/sudoersс использованием visudo. Это может выглядеть так:

%tomcatcontrol localhost = NOPASSWD : /etc/init.d/tomcat *

Замените localhost на имя вашей машины. Затем каждый пользователь группыtomcatcontrolсмогут выдавать:

sudo /etc/init.d/tomcat restart(или статус, или остановка, или запуск).

Вот для чего нужен sudo. Если вы хотите дольше работать с учетной записью root, вы можете сделать su -. Если вы хотите, чтобы другие пользователи фактически управляли содержимым tomcat (файлами, принадлежащими пользователю tomcat), вы можете разрешить su - tomcatпользователю или группе пользователей.

Что касается ваших псевдонимов, я думаю, что в OpenSuSE для этой цели есть файл /etc/profile.local: туда вы можете поместить данные, которые должны быть действительны для каждого пользователя.

Связанный контент