почему мне нужен “sudo” в этой конкретной команде?

 sudo yum install automake libtool flex bison pkgconfig gcc-c++ 
     boost-devel libevent-devel zlib-devel python-devel ruby-devel

для установки необходимых пакетов для Экономии на CentOS 5..

действительно ли возможно выполнить версию его без sudo?

Править: У меня нет корневого доступа, и я НЕ нахожусь в sudoers файле. Я хочу знать, могу ли я сделать что-то как yum install automake ....... не ожидая/спрашивая, чтобы быть добавленным к sudoers файлу

2
задан 21.05.2011, 12:21

0 ответов

Да это возможно, но не без корневого доступа. Команда sudo не требовалась бы, если бы у Вас были необходимые полномочия к доступу, в чем нуждается Ваша полная команда.

Например, если Вы вошли в систему как корень. Или, сначала станьте 'суперпользователем' путем выдачи команды:

su 

Это на самом деле потребует пароля root. Ни одному не рекомендуют. Лучше использовать систему с наименьшим количеством необходимых полномочий и использовать sudo при необходимости, как Ваша полная команда уже делает.

Установка чего-либо главного (инструменты разработчика) почти всегда собирается потребовать доступа папок вне Вашей домашней папки ~ /

*Это относится ко всем дистрибутивам Linux, не только CentOS, который Вы используете.

2
ответ дан 08.12.2019, 05:51

Никогда не пытался сделать, что-то вроде этого самостоятельно, но afaik RPM-пакеты (по крайней мере правильно пакетов) действительно поддерживает перемещение. Но для установки пакетов без корневого доступа, существуют некоторые требуемые шаги.

Следующее снято с linuxquestions.org:

Установите частную базу данных RPM

mkdir -p /home/username/local/lib/rpm
rpm --initdb --root /home/username/local --dbpath /home/username/local/lib/rpm

Если Вам не нравится ~/local/lib/rpm, можно выбрать другую структуру подкаталога.

Проверьте на зависимости пакета

rpm -ivh package.rpm

Если зависимости найдены, устанавливают иждивенца RPMs прежде, чем установить об/мин пакета.

Наконец установите пакет

rpm --root /home/username/local --dbpath /home/username/local/lib/rpm \
--relocate /usr=/home/username/local --nodeps -ivh package.rpm

Для использования пакета, необходимо будет играть вокруг с LD_LIBRARY_PATH для уведомления загрузчика, где необходимое совместно использовало labraries, и изменяют ПУТЬ для включения любых необходимых сценариев и исполняемых файлов.


2
ответ дан 08.12.2019, 05:51

sudo дает корню команды разрешения, если текущему пользователю разрешают использовать sudo.

Если у Вас уже есть корневой доступ, нет никакой причины помещения его перед командой помимо входа. Просто удалите sudo если Вы не имеете sudo установленный и уже работающий как корень:

yum install automake libtool flex bison pkgconfig gcc-c++ 
     boost-devel libevent-devel zlib-devel python-devel ruby-devel

Если Вы еще не корень и root учетной записи установили пароль, выполненный su и используйте свой пароль root для входа в систему.

1
ответ дан 08.12.2019, 05:51

Команда Sudo используется для предоставления единственной операции в аутентификации суперпользователя. Если Вы хотите пропустить команду sudo, необходимо войти в систему как суперпользователь при помощи команды "su".

0
ответ дан 08.12.2019, 05:51

Это. Предположение, что Вы осуществили эту строку установки некоторого веб-сайта, это обычно для включения sudo строки в конечном счете, пользователь не сделал этого самостоятельно. Однако это обычно - хорошая идея так или иначе, потому что, давая программу Вы полагаете, что корневой доступ позволяет этому вносить необходимые изменения на глобальном уровне.

0
ответ дан 08.12.2019, 05:51

Теги

Похожие вопросы