Гость
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / скрипт на bash / 9 сообщений из 9, страница 1 из 1
11.12.2003, 10:15
    #32350175
oson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
Господа! Мне надо запускать листенер от юзера oracle (база на Oracle ессно)
Пишу
!/bin/sh
if su - oracle; then
echo "I'm oracle now";
fi
if lsnrctl start; then
echo "started"
else
echo "problems";
fi
Как oracle подключается - а листенер не стартует
Если закоментировать 2,3 и 4 строчку - то запускает листенер - точнее пытается, но ессно не хватает прав
Чего он в первом случае не доходит до второго блока if?
...
Рейтинг: 0 / 0
11.12.2003, 12:41
    #32350514
Yet another cat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
Потому что после успешного выполнения su для пользователя oracle запускается шелл и пока в ней exit не сделать, все что дальше не будет выполнено. Правильно будет вот так:

Код: plaintext
su - root  "lsnrctl start" 


=====
Не дождетесь!
...
Рейтинг: 0 / 0
11.12.2003, 12:43
    #32350520
Yet another cat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
Тьфу, конечно же

Код: plaintext
su - oracle  "lsnrctl start" 


=====
Не дождетесь!
...
Рейтинг: 0 / 0
11.12.2003, 12:59
    #32350547
Yet another cat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
Блин, неудачный день у меня Опять прогнал!

Код: plaintext
su - oracle -с  "lsnrctl start" 

=====
Не дождетесь!
...
Рейтинг: 0 / 0
11.12.2003, 13:12
    #32350578
oson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
Работает - спасибо
А что такое -c "тра-та-та" - выполнить команду?(нет приличного справочника под рукой)
...
Рейтинг: 0 / 0
11.12.2003, 14:24
    #32350758
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
man su

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
# man su


SU( 1 )                          FSF                          SU( 1 )

NAME
       su - run a shell with substitute user and group IDs

SYNOPSIS
       su [OPTION]... [-] [USER [ARG]...]

DESCRIPTION
       Change the effective user id and group id to that of USER.

       -, -l,  --login
 
              make the shell a login shell

       -c,  --commmand=COMMAND
 
              pass a single COMMAND to the shell with -c

       -f,  --fast
 
              pass -f to the shell (for csh or tcsh)

       -m,  --preserve-environment
 
              do not reset environment variables

       -p     same as -m

       -s,  --shell=SHELL
 
              run SHELL if /etc/shells allows it

        --help display this help and exit
 

        --version
 
              output version information and exit

       A mere - implies -l.   If USER not given, assume root.

AUTHOR
       Written by David MacKenzie.

REPORTING BUGS
       Report bugs to <bug-sh-utils@gnu.org>;.

COPYRIGHT
       Copyright (C)  2000  Free Software Foundation, Inc.
       This is free software; see the source for  copying  condi-
       tions.  There is NO warranty; not even for MERCHANTABILITY
       or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO
       The full documentation for su is maintained as  a  Texinfo
       manual.    If  the  info  and  su  programs  are  properly
       installed at your site, the command

              info su

       should give you access to the complete manual.

GNU sh-utils  2 . 0 . 11          April  2002                       SU( 1 )
(END) 
...
Рейтинг: 0 / 0
11.12.2003, 15:52
    #32350908
oson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
поняль
...
Рейтинг: 0 / 0
11.12.2003, 16:06
    #32350928
oson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
А дальше после запуска shell не надо уже указывать -c ?
Вот так работает например

#!/bin/sh

su - oracle -c "lsnrctl start";

/u01/app/oracle/product/9.0.2/bin/oemapp dbastudio;
...
Рейтинг: 0 / 0
11.12.2003, 16:11
    #32350933
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
скрипт на bash
Посмотри здесь: \r
/topic/46865&hl=su+oracle\r
\r
И поиском по форуму Oracle еще можно в целом:\r
http://www.sql.ru/forum/actualtopics.aspx?search=su+-+oracle&bid=3
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / скрипт на bash / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]