Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Запуск sh с правми рута  (Прочитано 1281 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн toper.sib

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Запуск sh с правми рута
« : 26 Февраля 2009, 16:33:01 »
Добрый день!
Ubnutu desktop 8.10


имеется sh файл:
Цитировать
#!/bin/bash

DBHOST=localhost
USER=
PASS=
DBNAME=

while :;
do
        #mysqlcheck -h $DBHOST -u $USER --password=$PASS -s -r $DBNAME>>"log/`date +%Y-%m-%d_%H:%M:%S`-sql_check.log"
        #mysqldump -h $DBHOST -u $USER --password=$PASS $DBNAME|zip "backup/`date +%Y-%m-%d_%H:%M:%S`-l2fdb_gameserver.zip" -
        mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"
        mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"
       nice -n -2 java -Dfile.encoding=UTF-8 -Xincgc -Xms512m -Xmx512m -cp bsf.jar:javolution.jar:scripts.jar:bsh-2.0.jar:c3p0-0.9.1.2.jar:mysql-connector-java-5.1.6-bin.jar:rrd4j-2.0.1.jar:l2fserver.jar ru.l2f.gameserver.GameServer
        [ $? -ne 2 ] && break
        sleep 10;
done


При запуске рагуется на nice: permision denided
Если зайти терминалкой и запустить через sudo - всё в порядке.
Подскажите, что надо прописать в этом sh, чтобы он выдались нужные права.

Оффлайн serwiz

  • Участник
  • *
  • Сообщений: 172
    • Просмотр профиля
    • DvinaWeb
Re: Запуск sh с правми рута
« Ответ #1 : 26 Февраля 2009, 16:40:01 »
Ничего не надо писать. Запускайте так. Вообще использовать sudo внутри скрипта не рекомендуется.
Пессимист видит трудности при каждой возможности; оптимист в каждой трудности видит возможности. У. Черчилль

Оффлайн toper.sib

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #2 : 26 Февраля 2009, 16:44:36 »
так мне надо сделать автостарт этого при запуске компа :(

Оффлайн DnSL48

  • Активист
  • *
  • Сообщений: 286
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #3 : 26 Февраля 2009, 16:44:52 »
chmod +s ./myScript
« Последнее редактирование: 26 Февраля 2009, 16:47:19 от DnSL48 »
ArchLinux x86_64

Оффлайн serwiz

  • Участник
  • *
  • Сообщений: 172
    • Просмотр профиля
    • DvinaWeb
Re: Запуск sh с правми рута
« Ответ #4 : 26 Февраля 2009, 17:09:33 »
chmod +s ./myScript

Можно и так, только почитайте сперва про бит SUID (так, на всякий случай, для общего развития :coolsmiley:). Например здесь
Пессимист видит трудности при каждой возможности; оптимист в каждой трудности видит возможности. У. Черчилль

Оффлайн axe

  • Старожил
  • *
  • Сообщений: 1203
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #5 : 26 Февраля 2009, 17:50:27 »
пропиши вызов скрипта в rc.local - он от рута вызывается при старте.

Оффлайн toper.sib

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #6 : 26 Февраля 2009, 18:30:04 »
Хмм, а почему все молчат про третий вариант? :) Я так понимаю, что команда nice позволяет задать "приоритет" процесса. Как же в у Ubuntu дать право самому себе устанавливать приоритет? :)

Оффлайн toper.sib

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #7 : 26 Февраля 2009, 18:47:23 »
chmod +s ./myScript

Пробовал даже sudo chmod +s ./myScript
Всё равно - в доступе отказано :(

Оффлайн Sir Ruf

  • Активист
  • *
  • Сообщений: 326
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #8 : 26 Февраля 2009, 19:04:10 »
пропиши вызов скрипта в rc.local - он от рута вызывается при старте.
это верное решение.

Оффлайн DnSL48

  • Активист
  • *
  • Сообщений: 286
    • Просмотр профиля
Re: Запуск sh с правми рута
« Ответ #9 : 26 Февраля 2009, 20:11:43 »
2toper.sib, если скрипт должен запускаться только при загрузке, тогда правильный вариант - rc.local, если необходим suid, то надо было про него почитать(выше есть ссылка) - владельцем скрипта должен быть root, т.к. с этим флагом скрипт запускается с правами владельца.
ArchLinux x86_64

 

Страница сгенерирована за 0.017 секунд. Запросов: 20.