Страница 1 из 1

Работа в консоли... (запуск приложений)

Добавлено: 22 май 2006, 13:15
Riskkman
Добрый день...
Система: Alt Linux Master 2.4 (Zlhj 2.4.xx)
Оболочка bash, sh
Вопрос №1:
Пытаюсь запустить приложение (например демона pppd)
1. Перехожу в каталог usr/sbin
2. Набираю pppd call <script> - пишет, что команда не найдена
3. Набираю ./pppd call <script> - все нормально запускается
Ка сделать так, чтобы приложение можно было запускать без ./?
Вопрос №2
В каком файле прописываются пути, по которым ищется команда при запуске?

C Уважением,
The best Regards from Riskkman.

Добавлено: 22 май 2006, 13:43
Llama
Riskkman, где PATH прописывать PATH почитайте в man по искпользуемому вами shell - в общем случае там же где и остальные перемнные.

Добавлено: 22 май 2006, 16:22
Quantum
Каталог /usr/sbin/ предназначен для утилит, которые используются с правами root, поэтому для обычного пользователя этот путь и не прописан в PATH. Я решил подобную проблему, создав символическую ссылку в /usr/bin/

Добавлено: 22 май 2006, 18:07
avb
echo 'export PATH=$PATH:/sbin/:/usr/sbin/' >> ~/.bashrc

man bash, как сказал Лама в общем :)

Добавлено: 22 май 2006, 18:27
Riskkman
Quantum писал(а):Каталог /usr/sbin/ предназначен для утилит, которые используются с правами root, поэтому для обычного пользователя этот путь и не прописан в PATH. Я решил подобную проблему, создав символическую ссылку в /usr/bin/
Я заходил с правами рута....
Я не понимаю, почему для того чтобы запустить команду из текущего каталога необходимо писать ./<команда>, а не просто <команда> :(

Добавлено: 22 май 2006, 19:02
Samotnik
Riskkman, просто <команда> достаточно ТОЛЬКО для тех комманд, которые лежат в каталогах, прописанных в переменной PATH. (echo $PATH, чтобы узнать что там прописано)

Полный путь нужно указывать для всех остальных комманд. Поскольку каталог "./" (он же текущий каталог) в переменную PATH не прописан (из соображений безопасности, кто знает кто и в каком каталоге может создать вредоносный скрипт с именем общеупотребляемой комманды) приходится выполнять команды именно таким путём: ./<команда>

Некоторые рекомендуют все системные команды запускать не иначе как /sbin/<name> или /usr/sbin/<name> ибо команда <name> запустицца из того католога, который раньше пропісан в PATH