Автор Тема: bash: [ ]: команда не найдена  (Прочитано 42665 раз)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 367
  • Учиться .... Телепатами не рождаются, ими ....
Re: bash: [ ]: команда не найдена
« Ответ #15 : 23.01.2009 15:26:06 »
Важность программ  (/bin и /usr/bin и /sbin и /usr/sbin) определяется только тем, что /usr может находиться в отдельном разделе и поэтому все исполняемые файлы, которые нужны до монтирования /usr должны лежать в корне, т.е. в /bin и /sbin, (также как и библиотеки, используемые в них должны лежать в /lib_Foo, а не в /usr/lib_foo.

Оффлайн Axe79

  • Участник
  • *
  • Сообщений: 175
Re: bash: [ ]: команда не найдена
« Ответ #16 : 24.01.2009 01:42:28 »
Значит основной целью данной градации было создание политик безопасности...?

bin - для обычного юзверя
sbin- для суперпользователя он же админ? он же root

а в чём же тогда смысл создания и градации /usr/bin и /usr/sbin

.
Важность программ  (/bin и /usr/bin и /sbin и /usr/sbin) определяется только тем, что /usr может находиться в отдельном разделе и поэтому все исполняемые файлы, которые нужны до монтирования /usr должны лежать в корне, т.е. в /bin и /sbin, (также как и библиотеки, используемые в них должны лежать в /lib_Foo, а не в /usr/lib_foo.

Извиняейте если опять чего-то не понял.
Но из выше сказанного разница размещения папок в / и /usr определяется только по временной шкале где точкой отчёта есть монтирование (наверное особо важно при установке системы) и bin , sbin в папке /usr создаются после... Вот как раз и вопрос. ???
« Последнее редактирование: 24.01.2009 02:05:08 от Axe79 »
Ничто так не стимулирует тягу к труду интеллектуальному, как обилие труда физического!
Gutta cavat lapidem non vi, sed saepe cadendo Капля долбит камень не силой, а частым падени

Оффлайн Axe79

  • Участник
  • *
  • Сообщений: 175
Re: bash: [ ]: команда не найдена
« Ответ #17 : 24.01.2009 02:05:14 »
Все исполняемые файлы (программы, скрипты и т.п.) лежат где-то на диске. Стандартное место для этого -- /usr/bin. Там лежат "обычные программы". Очень важные, основополагающие программы лежат в /bin. "Системные" программы, которые не нужны пользователю, а нужны администратору системы, лежат в /sbin (более важные) и /usr/sbin (чуть менее важные).

тоесть при желании я спокойно и без последствий могу скопировать команду shutdown из sbin в bin чтоб лишний раз не париться с su?
Ничто так не стимулирует тягу к труду интеллектуальному, как обилие труда физического!
Gutta cavat lapidem non vi, sed saepe cadendo Капля долбит камень не силой, а частым падени

Alexei_VM

  • Гость
Re: bash: [ ]: команда не найдена
« Ответ #18 : 24.01.2009 02:07:32 »
тоесть при желании я спокойно могу скопировать команду shutdown из sbin в bin чтоб лишний раз не париться с su

Нет, конечно. Вы попробуйте от пользователя набрать /sbin/shutdown, и сразу убедитесь, что ничего не выйдет, ибо у пользователя по умолчанию просто нет прав на выключение компьютера этой командой. Основная цель программы su -- изменение полномочий текущего пользователя (т.е. переключение в некоторого другого пользователя, по умолчанию в рута). А вовсе не исправление пользовательской переменной окружения PATH.

Кстати, каждый пользователь может сам вписать в свой PATH любой путь. Смотри те файл ~/.bash_profile

Оффлайн Axe79

  • Участник
  • *
  • Сообщений: 175
Re: bash: [ ]: команда не найдена
« Ответ #19 : 24.01.2009 02:35:08 »
Во во тока шо попробовал :D

[axe@localhost ~]$ su- -c'cp /sbin/shutdown /bin'
Password:
[axe@localhost ~]$ shutdown now
bash: /bin/shutdown: Отказано в доступе
[axe@localhost ~]$
только что заметил что команды в bin и sbin  не повторяються... тоесть в sbin как раз комплект root-овых )))
Ничто так не стимулирует тягу к труду интеллектуальному, как обилие труда физического!
Gutta cavat lapidem non vi, sed saepe cadendo Капля долбит камень не силой, а частым падени

Оффлайн Axe79

  • Участник
  • *
  • Сообщений: 175
Re: bash: [ ]: команда не найдена
« Ответ #20 : 24.01.2009 02:41:56 »
только что перечитывал весь топ возник вопрос


Соответственно, есть переменная окружения под названием PATH, в которую занесен список каталогов, в которых оболочка (прогамма, интерактивно взаимодействующая с пользователем, по умолчанию bash) ищет программы. И когда вы что-то набираете в строке, то оболочка (shell) сначала сравнивает набранное со списком внутренних команд, потом с тем, что находится в PATH, причем в той последовательности, которая в PATH записана. Если найдено -- исполняет, если не найдено -- выдает соответствующее предупреждение.

по ходу роботы ответы об ошибках приодят от bash
но оболочка называется вроде как shell

из вышесказанного: одно есть программа другое оболочка а подробнее можно?
Ничто так не стимулирует тягу к труду интеллектуальному, как обилие труда физического!
Gutta cavat lapidem non vi, sed saepe cadendo Капля долбит камень не силой, а частым падени

Alexei_VM

  • Гость
Re: bash: [ ]: команда не найдена
« Ответ #21 : 24.01.2009 02:52:52 »
по ходу роботы ответы об ошибках приодят от bash
но оболочка называется вроде как shell

Есть программа типа Text Editor. Например, Emacs, vi, mcedit, pico, nano, gedit, kate и т.п.
Есть программа типа shell: sh, bash, zsh, tcsh, cmd.exe

Оффлайн Axe79

  • Участник
  • *
  • Сообщений: 175
Re: bash: [ ]: команда не найдена
« Ответ #22 : 24.01.2009 03:40:26 »
 :D Просто и  со вкусом)))
      Спасибо дошло))
знач в shell об ошибках просто ругается Shell:

« Последнее редактирование: 24.01.2009 03:43:03 от Axe79 »
Ничто так не стимулирует тягу к труду интеллектуальному, как обилие труда физического!
Gutta cavat lapidem non vi, sed saepe cadendo Капля долбит камень не силой, а частым падени

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 173
    • Домашняя страница
Re: bash: [ ]: команда не найдена
« Ответ #23 : 22.01.2010 18:03:54 »
А подскажите пожалуйста, что в этой команде lsusb |grep -i '\(Samsung\|Jet\)'
означают обратные слэши? Зачем они нужны?
Для передачи скобок как управляющих команд регулярного выражения, а не обработки в bash.
Андрей Черепанов (cas@)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 173
    • Домашняя страница
Re: bash: [ ]: команда не найдена
« Ответ #24 : 22.01.2010 18:43:05 »
А закрывающего слэша тогда нет, после последней скобки?...
Слеш нужен до управляющего символа, а не после. ;)
Андрей Черепанов (cas@)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 367
  • Учиться .... Телепатами не рождаются, ими ....

Оффлайн black_13

  • Участник
  • *
  • Сообщений: 657
  • Gentoo + Debian + ALT
    • diff.org.ua
Re: bash: [ ]: команда не найдена
« Ответ #26 : 22.01.2010 21:00:27 »
Цитировать
[root@localhost ~]# lsusb |grep -i '\(Samsung\|Jet\)'
Ну так добавьте еще одну выборку:
[root@localhost ~]# lsusb |grep -i '\(Samsung\|Jet\)' |grep -i power