1

Debian squeeze
Народ подскажите.
Итак работаю я не под рутом.
Мне нужно сделать пользовательскую кнопку перезагрузки apache.
Через консоль так соответственно sudo/etc/init.d/apache2 restart.
Соответственно в настройках кнопки указываю эту команду, но кнопка не отрабатывает т.к нет прав.
Вопрос вот в чем, как дать мне права.
Это нужно права на комманду sudo для обычного пользователя?
Или же права на apache2. Или же есть какой то готовый набор прав который можно выбрать в настройках пользователя?
Собственно не могли бы пояснить логику действий?

2

 Консоль:
gksu /etc/init.d/apache2 restart > /dev/null

так попробуй

Acer 4520 debian sid amd64 KDE 4.4.5
AMD Phenom X6 1100T BE, 8gb, WD Caviar Black 640gb, GTX570 debian sid amd64 Xfce 4.8.1

3

Можно настроить sudo на беспарольный запуск нужного вам скрипта.

Был, был и весь вышел...

4

Спасибо попробую

5 (22.04.2011 20:04:53 отредактировано Eser)

gksu /etc/init.d/apache2 restart > /dev/null не катит
Остаеться 2ой вариант.
Полазил по инету понял что есть файл sudoers, где так сказать лежат настройки sudo.
Нашел в интернете
Чтобы разрешить пользователю user запускать программы pppd и xcdroast, добавим строку в sudoers:
user localhost=NOPASSWD:/usr/sbin/pppd,/usr/bin/xcdroast

Вопрос №1 Добавлять строки можно в любое место файла? Или же нет?
Вопрос №2 Как посмотреть где лежит apache2?
Заранее извиняюсь что вопросы могут быть дурацкие, но на Debian тока пересел с винды так что много мелочей-не поняток про которые в мануалах не пишут.

6 (22.04.2011 20:12:55 отредактировано Lupo Alberto)

Eser пишет:

Вопрос №1 Добавлять строки можно в любое место файла? Или же нет?

Для настройки sudo настойчиво рекомендую пользоваться командой visudo. Несмотря на «страшное» название, она использует ваш редактор по-умолчанию. Использование этой команды гарантирует вам правильную, точнее, синтаксически правильную конфигурацию для sudo.

Eser пишет:

user localhost=NOPASSWD:/usr/sbin/pppd,/usr/bin/xcdroast

Пробелы, IMHO, надо бы. Например, так:

user localhost = NOPASSWD: /usr/sbin/pppd,/usr/bin/xcdroast

P.S. Строку удобнее добавлять в конец файла.

Был, был и весь вышел...

7

А как узнать где лежит сама прога apache2?
В винде правой кнопкой по ярлыку.

8 (22.04.2011 20:25:58 отредактировано iSun)

Eser пишет:

А как узнать где лежит сама прога apache2?

locate apache2
должно быть что то типа /usr/bin

если не найдет, то из под рута updatedb

Toshiba Satellite c660-28k, W7HB, Slackware64-14.0, 3.7.1-pf-kernel
linux-life

9

iSun пишет:

locate apache2
должно быть что то типа /usr/bin

если не найдет, то из под рута updatedb

Я, к сожалению, не знаю команд пакетного менеджера в Debian, должна быть команда, позволяющая посмотреть содержимое установленного пакета.

Был, был и весь вышел...

10

Lupo Alberto пишет:

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

может быть, но я не заморачивался. мне этого хватает
в любом случае должно указывать на подкаталог bin(если нужен исполняемый файл)

Toshiba Satellite c660-28k, W7HB, Slackware64-14.0, 3.7.1-pf-kernel
linux-life

11

В папке bin ив папке user/bin пустота не apache2 не httpd нет.
Зато есть ссылка apache2 в папке user/sbin, ссылаеться он на /usr/lib/apache2/mpm-prefork/apache2
Щас попробую.

12 (23.04.2011 07:55:56 отредактировано moscwich)

OMG!

gksu /etc/init.d/apache2 restart
или
gksudo /etc/init.d/apache2 restart
(надеюсь, о разнице догадываетесь)

И фсе. Только не забудте проверить/установить пакет gksu, а также проверить/добавить юзера к группе www-data; а в случае с gksudo еще и к группе sudo, также, емнип, adm.

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

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

13 (22.04.2011 22:55:30 отредактировано Eser)

gksu установлен.
GKsu - это интерфейс на основе GTK+ к программе su. Он поддерживает начальные командные интерпретаторы (login shells) и сохраняет переменные среды. Он удобен для запуска графических программ от имени другого пользователя. В будущем предполагается поддерживать оболочку и для sudo. Это понятно.
Про gksudo в инете не нашел.
Но при вводе в консоле что gksudo gksu выводит на экран программу(запуск программы от суперпользователя). Или тут обращать внимание на вторую часть слова:
Команда su (изменить пользователя - substitute user) позволяет изменить "владельца" текущего сеанса без необходимости завершать сеанс и открывать новый.
А sudo запуск от имени пользователя root (как run as в винде)

Я правильно понял?
Если да то не понимаю su-позволяет изменить "владельца" текущего сеанса. Т.е sudo сеанс не изменяет просто запускает программу от имени root. Не понимаю что дает изменение сеанса при использовании su?
Про www-data в инете не нашел. Что это за группа? Где найти описание?
Так же "емнип, adm"-как понять.
Я понимаю что может назойлив. Но очень хочется понимания процесса(логики). Если изучать Linux то изучать.

14

gksu спрашивает пароль рута, и может работать у любого юзера.
gksudo работает только у админов и/или (не знаю точно) у юзеров в группе sudo, спрашивет пароль этого юзера (/админа).
Но по сути оба выполняют роль как sudo в консоли.

Разницу sudo и su ты правильно понял.

Eser пишет:

Про www-data в инете не нашел. Что это за группа? Где найти описание?

Это веб-сервер. Админ веб-сервера также должен быть в этой группе. Именно этой группе надо давать права на исполнение, чтение и запись файлов сервера.

Eser пишет:

Так же "емнип, adm"-как понять.

Если Мне Не Изменяет Память, то и к группе adm [добавить юзера] т. е. сделать его админом.

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

15

moscwich пишет:

OMG!

??? минус вам. ибо ТС хочет

Eser пишет:

нужно сделать пользовательскую кнопку перезагрузки apache.
Через консоль так соответственно sudo/etc/init.d/apache2 restart.
Соответственно в настройках кнопки указываю эту команду, но кнопка не отрабатывает т.к нет прав.
Вопрос вот в чем, как дать мне права.

какое нафиг гксу?!

Eser пишет:

А sudo запуск от имени пользователя root (как run as в винде)
Я правильно понял?

не совсем. не обязательно от рута. но в целом верно.

1) редактирование

 Консоль:
# EDITOR=mcedit visudo

2) строчка

юзер_который_запускает имя_компьютера=(юзер_ОТ_ИМЕНИ_которого_запускают) NOPASSWD: /usr/bin/команда
moscwich пишет:

а также проверить/добавить юзера к группе www-data; а в случае с gksudo еще и к группе sudo, также, емнип, adm.

БРЕД. юзер www-data и так уже там.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

16

Eser пишет:

А как узнать где лежит сама прога apache2?
В винде правой кнопкой по ярлыку.

 Консоль:
# which httpd
/usr/sbin/httpd

почему httpd? а так апач называется. во многих дистрах можно посмотреть в /etc/init.d/программа - это скрипт, который контролирует данный сервер.

ЗЫЖ забыл сказать - файл для sudo ДОЛЖЕН КОНЧАТСЯ ПУСТОЙ СТРОКОЙ. как и все конфиги.
(vi & vim сами подставляют. а mc нет)

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

17 (23.04.2011 13:15:54 отредактировано moscwich)

drBatty пишет:

ТС хочет

Eser пишет:

нужно сделать пользовательскую кнопку перезагрузки apache.
Через консоль так соответственно sudo/etc/init.d/apache2 restart.
Соответственно в настройках кнопки указываю эту команду, но кнопка не отрабатывает т.к нет прав.
Вопрос вот в чем, как дать мне права.

какое нафиг гксу?!

Я и отвечаю, что надо добавить юзера к группе sudo (это и даст необходимые права) и использовать gksudo (т. к. с sudo по-хорошему не получится, пароль будет запрашиваться не знаю где) или же просто использовать gksu. Перечитайте.

drBatty пишет:

минус вам.

кармодрочер

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

18

Господа спасибо за ответы сделал так(тока так получилось):
Удалил из sudoers свои записи.
В свойствах кнопки прописал вот такую команду gksu /etc/init.d/apache2 restart и все заработало.
Если gksu то добавлять моего пользователя в другие группы не надо.(пробовал разные но на результат не влияет)
Только при первом запуске при нажатии на эту кнопку требует ввести пароль, но меня это вполне устраивает тем более у меня комп днями не выключается.
Еще раз спасибо.

19 (23.04.2011 14:18:51 отредактировано moscwich)

Eser пишет:

Если gksu то добавлять моего пользователя в другие группы не надо.(пробовал разные но на результат не влияет)

Да, никто вроде не говорил иначе. В другие группы добавлять надо для gksudo.

Eser пишет:

Только при первом запуске при нажатии на эту кнопку требует ввести пароль, но меня это вполне устраивает тем более у меня комп днями не выключается.

Да, это я тоже упомянул.

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

20

moscwich пишет:

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

идиотизм - давать НЕ НУЖНЫЕ права тем, кто в них не нуждается.

moscwich пишет:

и использовать gksudo (т. к. с sudo по-хорошему не получится, пароль будет запрашиваться не знаю где)

вы идиот? как оно может запрашивать пароль, если там ясно написано: NOPASSWD, ещё и БОЛЬШИМИ буквами, чтоб и вы в т.ч. видели!

moscwich пишет:

или же просто использовать gksu. Перечитайте.

на кой хрен ваще нужно GTK на сервере? там и иксов-то в подавляющем числе случаев нет... Эх... что читать ваш бред, оторванный от реальности?

Eser пишет:

Только при первом запуске при нажатии на эту кнопку требует ввести пароль, но меня это вполне устраивает тем более у меня комп днями не выключается.

да... ну пишите дальше.
вы сами-то поняли, ЧТО вы сделали??

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

21

drBatty пишет:

идиотизм - давать НЕ НУЖНЫЕ права тем, кто в них не нуждается.

Админу никакие не помешают.

drBatty пишет:

если там ясно написано: NOPASSWD

Где?

drBatty пишет:

на кой хрен ваще нужно GTK на сервере? там и иксов-то в подавляющем числе случаев нет...

Я то тут при чем? У меня, например, GTK на компе, на котором стоит apache, только открытого сайта там нет и подавно. moscwich.sytes.net (с главной переадресация в тимбухту, не пугайтесь)

drBatty пишет:

вы сами-то поняли, ЧТО вы сделали??

Кажется вы не поняли сабж, совершенно.

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

22

moscwich пишет:

Админу никакие не помешают.

у root'а УЖЕ есть.

moscwich пишет:

Где?

учимся читать
http://linuxforum.ru/viewtopic.php?pid=171384#p171384

moscwich пишет:

Я то тут при чем? У меня, например, GTK на компе, на котором стоит apache, только открытого сайта там нет и подавно.

у ТС как раз есть.

moscwich пишет:

Кажется вы не поняли сабж, совершенно.

кажется? вы сказали фигню. Официально заявляю: у меня всего два варианта, как с вами бороться:
1) жаловаться здешним админам. лень.
2) вас высмеивать.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

23 (23.04.2011 16:26:52 отредактировано moscwich)

drBatty пишет:

у ТС как раз есть.

Вот тут и проблема. Вы воспринимаете сабж, как в случае с суровым сервером, а я, как в случае с обычным, используемом юзером/юзерами непосредственно, компом, на котором стоит apache для локалхоста или для простенького не шипко популярного сайта, что не мешает использовать комп и в обычных юзерских целях. И на таком простом компе есть админ, имеющий все права, но вводящий пароль при всех админских действиях.

Кстати, с чего вы взяли, что открытый сайт таки есть?

Eser, разрешите наш спор...

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

24

moscwich пишет:

Вот тут и проблема. Вы воспринимаете сабж, как в случае с суровым сервером, а я,

ну мой подход работает с ЛЮБЫМ сервером. и с вашем, и с любым иным. а ваш - только с конкретным вашем. Вот и всё.

moscwich пишет:

Кстати, с чего вы взяли, что открытый сайт таки есть?

а с чего вы взяли, что упомянутый мной метод действует только для открытых сайтов?

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

25

drBatty, вы сказали "у ТС как раз есть [открытый сайт]", вот я и спрашиваю "с чего вы это взяли?".

Предложенное мной элементарное решение рациональнее, проще и удобнее в данной ситуации. Фигней такое предложение точно не является. Кроме того, даже в случае со строгим сервером с графикой (а GTK тогда вряд-ли может не быть) ничего катастрофичного нет.

Мой блог: http://moscwich.blogspot.com/

А давай "на ты"? Ну, если "вы", то не с пропиской буквы, ok?

26

moscwich пишет:

Предложенное мной элементарное решение рациональнее, проще и удобнее в данной ситуации.

тупите далее.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)