1

Вся загвоздка в том, что MobileTerminal на айфоне изначально запускается под пользователем - mobile$

Скрипт должен выполняться от рут пользователя.
Для этого в нем стоит проверка:

if [ `id -u` != 0 ]; then echo "Пожалуйста, войдите под рутом!
Введите команду su и пароль alpine."; echo; ''exit 0; fi

Запускаю MobileTerminal на айфоне:
mobile$
запускаю скрипт, просит войти под рутом!
приходится каждый раз вводить su и пароль!
как автоматизировать?
можно что бы при запуске скрипта, он сам вводил su и пароль?

2 (10.02.2013 08:35:32 отредактировано stalker_tk)

Изменить владельца файла на root

chown root:root /ваш/скрипт

Сделает файл исполняемым для всех и включит бит setuid

sudo chmod 4755 /ваш/скрипт

После пользователь может запускать скрипт, и он будет выполнятся от root
Сдается мне после этого su и пароль будут не нужны

Hunter, who is on the trail ...

3

IMHO, использование setuid, особенно без веской на то причины — плохой совет.
Правильнее — настроить sudo на беспарольный запуск определённых команд (скрипта в данном случае).

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

4

Lupo Alberto пишет:

Правильнее — настроить sudo на беспарольный запуск определённых команд (скрипта в данном случае).

где это настраивается?

5

inux пишет:

где это настраивается?

В файле /etc/sudoers, но сначала, хотя бы бегло, просмотрите:

man visudo
man sudo
man sudoers
Был, был и весь вышел...

6 (10.02.2013 17:41:09 отредактировано stalker_tk)

Lupo Alberto пишет:

IMHO, использование setuid, особенно без веской на то причины — плохой совет.

Ну я поэтому и выделил красным

Lupo Alberto пишет:

Правильнее — настроить sudo на беспарольный запуск определённых команд (скрипта в данном случае).

Вы как всегда правы, ab  писал утром,ночью не спал вот и .... ah
Привожу пример своего sudoers, выделил что по теме

+ открыть спойлер

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults    env_reset
Defaults    mail_badpass
Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification
User_Alias    STANDART_USERS = user
# Cmnd alias specification
Cmnd_Alias    MUSTBE = /usr/sbin/pm-suspend, /usr/bin/apt-get update, /usr/sbin/rtcwake, /usr/bin/wvdial, /sbin/shutdown
# User privilege specification
# Разрешить выполнение команд без ввода пароля
root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
# (Note that later entries override this, so you might need to move
# it further down)
#%sudo    ALL=(ALL:ALL) ALL

#includedir /etc/sudoers.d

# Разрешить пользователям принадлежащим к группе sudo выполнять команды с вводом своего пароля
%sudo ALL=PASSWD: ALL
STANDART_USERS  ALL = NOPASSWD: MUSTBE

Hunter, who is on the trail ...

7

Установил один файлик - rootify
запускаю так: rootify мой скрипт
Работает от рута, хотя запускаю с Рабочего стола айфона, где все работает от пользователя "mobile"
Спасибо за ответы и помощь, Ваши советы тоже опробую!