Это - плохая практика для установки оболочки корня на что-то другое, чем значение по умолчанию?

Как @echox отмеченный, Unix является зарегистрированной торговой маркой. Традиционно, Unix вводит ненавидевшие товарные знаки и т.п.. Это расширилось на Linux, который первоначально не регистрировался как торговую марку. По крайней мере, только когда некий William Della Croce зарегистрировал Linux как товарный знак для себя в середине девяностых - когда Linux начал становиться обычно известным и используемым в торговле.

Della Croce затем отправил буквы о прекращении действия любому, кто использовал метку Linux. Только затем сделал митинг сообщества Linux и подают в суд для требования товарного знака. Linus является теперь держателем товарного знака Linux, но это не было его исходное желание.

Именно так много регистрирует как торговую марку, оскорблялись толпой Unix.

См. https://web.archive.org/web/20081015181133/http://www.informationweek.com/blog/main/archives/2007/05/who_owns_linux.html для получения дополнительной информации о товарном знаке Linux.

16
03.04.2011, 23:10
7 ответов

Да. Если система перестала работать во время начальной загрузки, можно войти в корневую оболочку. Если у Вас есть отдельный/usr, некоторые оболочки успешно могут не запуститься.

Я был бы совет создать учетную запись toor (uid 0, ценуроз 0) с нестандартной оболочкой, в то время как левый корень с оболочкой по умолчанию.

12
27.01.2020, 19:48
  • 1
    Это произошло со мной, когда я обновил от FBSD 7.2 до 8,0, и я забыл восстанавливать bash. Я загрузился в однопользовательском режиме для фиксации, но он только работал потому что /bin/sh был все еще связан с FBSDветвление bourne и нет bash. –  gvkv 03.10.2010, 06:32
  • 2
    только для создания вещей более ясными, если я устанавливаю, говорят zsh и так или иначе /usr поврежден у меня будет проблема? но моя система имеет /bin/sh указывая /bin/bash и bash самостоятельно, почему не был бы sh быть затронутыми? –  phunehehe 03.10.2010, 13:52
  • 3
    для корневой "гарантии", что система загрузится - руководство по обновлению, будут заботиться о способности войти в корень, по крайней мере. Однако это не может иметь место ни для чего больше. Решение состоит в том, чтобы копировать корневую учетную запись toor с оболочкой не по умолчанию для повседневного использования и сохранить корень, как. панель –  Maciej Piechotka 03.10.2010, 20:19
  • 4
    zsh не должен быть в /usr/bin/ если это - это, был установлен неправильно. все оболочки должны быть в /bin –  xenoterracide 24.10.2010, 02:18
  • 5
    @xenoterracide: zsh на хинду находится в /bin но удерживает некоторые файлы /usr/share. Также я ясно заявил, что проблема во время входа в систему во время начальной загрузки (когда некоторый сервис перестал работать). –  Maciej Piechotka 25.10.2010, 02:54

Не должна быть проблема.

Файлы сценария оболочки явно кодируют, с какой оболочкой они выполняются. Это кодируется в первой строке или других программах, или сценарии выполняют определенную оболочку и дают сценарий оболочки как аргумент.

Единственная программа, о которой я могу думать, который использует информацию об оболочке учетной записи пользователя (помимо процесса входа в систему) является procmail. Действительно забавный, если Ваш пользователь установил как оболочка/bin/false на mailserver... Но Вы обычно не выполняете procmail как корень.

Другой кандидат был бы строками в crontab корня. Я не знаю то, что политика crond который оболочка использовать.

7
27.01.2020, 19:48
  • 1
    обычно устанавливается на/bin/sh crondaemon на запуске. –  echox 02.10.2010, 20:46

Сценарии, записанные для оболочки Bourne, будут большую часть времени работать против Bash или ZSH или $foo без любых проблем.

На многом Linux системы не исходный установленный sh, вместо этого часто символьная ссылка против/bin/bash.

Если некоторые сценарии просто "предполагают", что оболочка явно sh, они должны быть переписаны. Существует механизм хижины для выбора, в каком интерпретаторе сценарий нужен. Если это - sh, сценарий должен включать #!/bin/sh как первая строка.

Ваша установка оболочки по умолчанию не должна быть релевантной в этом контексте.

3
27.01.2020, 19:48

Я не думаю, изменяя оболочку корня, доставил бы любые неприятности. Я, кажется, помню некоторые нельды (возможно, некоторые варианты BSD?) имеющий tcsh как оболочка по умолчанию для корня.

Корневые логины редки так или иначе. Обычно, Вы вошли бы в свою собственную учетную запись и затем su или sudo для укоренения.

То, что имеет значение, - то, что оболочка корня должна иметь как можно меньше зависимостей, чтобы быть применимой в системном контексте исправления. Например, это - хорошая идея иметь статически связанную корневую оболочку; некоторые дистрибутивы поставляют статически связанную версию удара или zsh или пояса (оболочка со многими стандартными встроенными утилитами). Однако это не настолько важно, если Ваша система может легко быть загружена от спасательного CD-привода или Карты памяти.

2
27.01.2020, 19:48
  • 1
    Поскольку зависимость обосновывает, что я думаю, что имеет смысл оставлять оболочку, как то, так, чтобы большая системная модификация (как обновление) не портила вещи. Я соглашаюсь, что легко зафиксировать с живым CD или USB, но мне не придется зафиксировать его во-первых. –  phunehehe 24.10.2010, 09:48

Оболочка входа в систему пользователя не влияет на процесс начальной загрузки. Можно установить эту оболочку на то, что Вы хотите. Не все системы имеют удар, и они хорошо работают. Также, если это /usr/bin/zsh это было установлено неправильно, все системные оболочки должны быть в /bin. Вы не должны, однако, изменяться /bin/sh для указания на что-то другое, чем значение по умолчанию (если Вы не знаете то, что Вы делаете) как, много сценариев имеют #!/bin/sh который обычно указывает на удар, когда они должны иметь #!/bin/bash потому что они используют bashisms и другое поведение, которое не продолжит работать zsh или dash.

1
27.01.2020, 19:48
  • 1
    ой извините, я сделал ошибку, на самом деле на моем компьютере оба bash и zsh находятся в /bin –  phunehehe 24.10.2010, 09:32

У меня есть удар как оболочка по умолчанию для корня. Я использовал zsh в течение некоторого времени, но затем вернулся к удару. То, что окружает Вас использование, не имеет значения очень.

Это - только проблема, если больше чем у одного человека есть корневой доступ. В этом случае можно выбрать 'общий знаменатель', который обычно является ударом, как это - наиболее широко используемая оболочка.

0
27.01.2020, 19:48

Что касается Solaris/illumos, Solaris Root Shell Mini -FAQ упоминание

Some sysadmins still recommend against changing the root shell on
Solaris systems. Ask why and you may be told that root needs a
statically linked shell which is not dependent on the dynamic
libraries under /usr/lib. This was true in the past but is not
necessarily the case today. Solaris, when properly configured, is like any other version of Unix and can support whatever shell you define, for root or any other account.

Итак, да, если вы используете Solaris или illumos, можно использовать оболочки, отличные от sh.

0
27.01.2020, 19:48

Теги

Похожие вопросы