The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"sudo скрипт запускается только из mc"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 19-Июн-09, 09:25 
Всем привет!

Существует скрипт рестора базы, который можно запускать только через sudo.
Не так давно команда sudo /ibrestore.sh стала выдавать ошибку "доступ запрещен" с указанием номера строки где произошла ошибка и выполнение скрипта на этом заканчивалось. Начал разбираться. Оказывается через mc все прекрасно работает если имя скрипта и имя базы вставлять через "Esc - Enter".

Собственно сам скрипт:

#!/bin/sh
#

. ibsettings
ErrorCode=0

gbak -r -user "$IBUSER" -pass "$2" -p 8192 -v  "/base/$1.gbk" "$1.gdbnew" 2>&1 | tee /gb/restore.log
#echo | mail -s "Restore End " 79184632889@smsmail.ru
if [ $? -ne 0 ]; then
    echo -e  "...... .............. ..... ..."
    ErrorCode=1
else
    echo -e "*** .... ...... $1 .............!"
fi

if [ ! -z "$3" ]; then
    Pause
fi

exit $ErrorCode


А вот часть файла ibsettings с параметрами, который подключается к первому скрипту и в котором обнаруживается ошибка:

#!/bin/sh
#

# .... . ........ Firebird . ......... ......
PATH=$PATH:/opt/firebird/bin:/gb
export PATH

# .... . .......
ARCPATH=/home/gbuser
export ARCPATH

# .... . .....
BASEPATH=/gb
export BASEPATH

Интерпретатор указывает на строку "ARCPATH=/home/gbuser". Кстати этой директории не существует. Но я так понимаю она и ни где не используется в первом скрипте (главном) да и в mc все работает.

Что это может быть?


Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "sudo скрипт запускается только из mc"  +/
Сообщение от nadirx2 (ok) on 19-Июн-09, 10:07 
>[оверквотинг удален]
>BASEPATH=/gb
>export BASEPATH
>
>Интерпретатор указывает на строку "ARCPATH=/home/gbuser". Кстати этой директории не существует. Но я
>так понимаю она и ни где не используется в первом скрипте
>(главном) да и в mc все работает.
>
>Что это может быть?
>
>

Скрипт в кроне не запускается или ручной?

выполняйте этого и покажите нам аутпут =)

./ibrestore.sh >> output

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 19-Июн-09, 12:00 
>
>выполняйте этого и покажите нам аутпут =)
>
>./ibrestore.sh >> output

Выполняется скрипт вручную не из под рута.
Попробовал выполнить из подрута через судо, но выдает ту же ошибку:

ibrestore: line 15: ibsettings: Нет такого файла или каталога

В output ничего не пишет.
Что интересно раза с 3 та же команда сработала...

Доступ к файлу "ibsettings" у НЕ рута есть, причем полный, видеть он его видит и файл существует.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "sudo скрипт запускается только из mc"  +/
Сообщение от anonymous (??) on 19-Июн-09, 13:02 
>ibrestore: line 15: ibsettings: Нет такого файла или каталога

. /full_path_to_ibsettings

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 19-Июн-09, 14:21 
>>ibrestore: line 15: ibsettings: Нет такого файла или каталога
>
>. /full_path_to_ibsettings

Прописать полный путь к скрипту? А попроще ничего нет, ведь такой скрипт не один.
И опять же, в mc почему работает тот же самый скрипт, в чем отличие?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "sudo скрипт запускается только из mc"  +/
Сообщение от nadirx2 (ok) on 19-Июн-09, 14:42 
>>>ibrestore: line 15: ibsettings: Нет такого файла или каталога
>>
>>. /full_path_to_ibsettings
>
>Прописать полный путь к скрипту? А попроще ничего нет, ведь такой скрипт
>не один.
>И опять же, в mc почему работает тот же самый скрипт, в
>чем отличие?

или попробуй выполнить скрипт с помошю csh или bash

#!/bin/csh
#!/usr/local/bin/bash

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 19-Июн-09, 14:53 
>
>#!/bin/csh
>#!/usr/local/bin/bash

Не срабатывает.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "sudo скрипт запускается только из mc"  +/
Сообщение от nadirx2 (ok) on 19-Июн-09, 14:38 
>[оверквотинг удален]
>Выполняется скрипт вручную не из под рута.
>Попробовал выполнить из подрута через судо, но выдает ту же ошибку:
>
>ibrestore: line 15: ibsettings: Нет такого файла или каталога
>
>В output ничего не пишет.
>Что интересно раза с 3 та же команда сработала...
>
>Доступ к файлу "ibsettings" у НЕ рута есть, причем полный, видеть он
>его видит и файл существует.

эсли файл существуется и в скрипте показано верный пут для файла конфигурации явно тут видно это из за привилегии.

сделай chown ЮЗЕР:ГРУПП ibsettings  или chmod 664 ibsettings
потом sudo ./ibrestore.sh >> output

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 19-Июн-09, 14:47 

>сделай chown ЮЗЕР:ГРУПП ibsettings  или chmod 664 ibsettings
>потом sudo ./ibrestore.sh >> output

Не срабатывает, в output ничего не пишет.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 19-Июн-09, 15:09 
Вообще мне тут подсказывают, что якобы с помощью sudo вообще нельзя запускать шелл скрипты, можно только бинарники.. Поэтому через mc все запускается. Якобы это имеет отношение к безопасности системы.
По крайней мере факт остается фактом - через mc все работает.
Кто может подтвердить опровергнуть?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "sudo скрипт запускается только из mc"  +/
Сообщение от angra (ok) on 20-Июн-09, 06:07 
debian lenny можно и работает. Проверяется аж за одну минуту, что мешало это вам сделать самому непонятно. Также непонятно, что мешает сделать sudo bash(или что вы там предпочитаете) и уже из полученного рутового шелла исполнить скрипт.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "sudo скрипт запускается только из mc"  +/
Сообщение от rfcr (ok) on 20-Июн-09, 11:52 
То, что в убунту работает, совсем не означает того, что работает вообще. И для этого даже не надо проверять в течение одной минуты. Если мне нужно запустить скрипт из под рута я запущу его из под рута, сейчас мне нужно запустить скрипт через sudo, а не запустить через sudo bash.

Может кто попробует у себя запустить похожий скрипт на баше и посмотреть как он через sudo отработает? Проверит в mc.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "sudo скрипт запускается только из mc"  +/
Сообщение от nadirx2 (ok) on 27-Июн-09, 20:34 
>То, что в убунту работает, совсем не означает того, что работает вообще.
>И для этого даже не надо проверять в течение одной минуты.
>Если мне нужно запустить скрипт из под рута я запущу его
>из под рута, сейчас мне нужно запустить скрипт через sudo, а
>не запустить через sudo bash.
>
>Может кто попробует у себя запустить похожий скрипт на баше и посмотреть
>как он через sudo отработает? Проверит в mc.

полный скрипт в студию)))

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2023 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру