Безопасно ли «/ usr / local»?

Первая часть заключается в том, что в меню GRUB оно просто скрывается, но клавиша с левым сменой во время загрузки вызывает его (как описано в разделе Как попасть в меню GRUB во время загрузки? (очевидно, нет?)) .

Вторая часть заключается в том, что update-grub должен запускать os-prober и находить загрузку Windows и загружать ее по сети. Результат update-grub был бы полезен при определении того, что не происходит правильно.

1
задан 26 February 2013 в 06:43

3 ответа

Необычно, что /usr/local не принадлежит root. Но вы можете изменить владельца, как хотите.

Но я рекомендую убедиться, что /usr/local/sbin по-прежнему принадлежит root, чтобы избежать проблемы с безопасностью. Команды здесь обычно вызывают только root.

5
ответ дан 25 May 2018 в 01:03
  • 1
    Раньше я устанавливал беседу, и в учебнике предлагалось сделать chown -R $ USER / usr / local, поэтому теперь я запускаю chown -R root / usr / local / sbin - есть ли другие папки в / usr / local, которые быть лучше с правами собственности? Я должен был проверить все разрешения перед запуском команды. Мгновенное «сожаление по возвращении». – OnethingSimple 16 February 2015 в 17:56
  • 2
    Этот ответ неудовлетворителен, и объяснение не совсем корректно. Если по соображениям безопасности необходимо, чтобы команды root зависели от принадлежащих root, как насчет команд в /usr/local/bin, которые могут запускать root (а также другие пользователи)? Разве они не должны были принадлежать root? Кроме того, использование команд root - включая команды в /usr/local/sbin - может зависеть от разделяемых библиотек в /usr/local/lib. Изменение этих библиотек может вносить произвольные изменения в поведение команд, которые их используют. Настаивая на том, что только /usr/local/sbin остается владельцем root, кажется совершенно произвольным. – Eliah Kagan 8 September 2017 в 19:13

для программного обеспечения только вам нужно, используйте свой домашний каталог вместо [ф10].

вместо изменения собственности на [F11] или необходимости запускать команды от имени пользователя root, если Вы не хотите, вы просто должны настроить свой строит так, что они установлены в вашу домашнюю директорию вместо [ф12]. Это решает все возможные проблемы с изменением собственности [от f13], включая [ф14] и [с f15] поддиректории в [ф16]'s путь.

если вам нужно разрешить другим пользователям для запуска программного обеспечения, вы можете дать им доступ. На самом деле, они, вероятно, смогут уже, потому что по умолчанию домашний каталог имеет разрешительный доступ на чтение и выполнение. (Если Вы не хотите этого, вы легко можете изменить его, просто используя [f17 в] на любые файлы или папки, которые вы хотите сделать индивидуальный, а возможно и изменение [ф18].)

с помощью программного обеспечения, установленного в Вашей домашней директории, файлы, которые бы пошли в [зг19] пойдешь в [ф20]. Вы получите в других подкаталогах домашнего каталога, соответствующие поддиректории [клавиши f21], что программное обеспечение вы установите потребностей. Обычно это происходит автоматически при установке программного обеспечения из исходного кода.

Настройка сборки

большинство программного обеспечения вы строите из исходного кода шаг, где вы запустите:

[Ф1]

для большинства программного обеспечения, что поставляется с [ф22] скрипт, который можно выполнить, как, что, по умолчанию настройка сборки для установки внутри [ф23] когда вы в конечном итоге запустить [ф24], чтобы установить его. Причина в том, что он неявно эквивалентны работает:

[Ф2]

, чтобы настроить сборку для установки в вашем домашнем каталоге, использовать это вместо:

[Ф3]

на практике, в Ubuntu, домашние каталоги не содержат пробелы, пробелов или других символов, которые будут рассматриваться специально оболочкой, как [f25 привод датчика], так что если вы настроили учетную запись Пользователя довольно странно, вы можете просто набрать:

[Ф4]

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

, или если вы предпочитаете, вы можете ввести ваш полный путь к домашней директории:

[ф5]

(замените пишу скрипты с вашим действительным именем пользователя, конечно. Если по каким-то причинам ваш домашний каталог не в /home тогда вам придется настроить соответствующим образом.)

Установка сборок

[dиода d17]после выполнения [ф28], вы может быть привыкли бежать sudo make install, но когда вы установите в своем домашнем каталоге, вам не нужно запускать его от имени root, так что вы можете-и должны-опускаю [ф30]. Просто запустите:[!dиода d17] [ф6]

аналогично, для программного обеспечения, которое поддерживает [ф31] цель:

[ф7]

это именно то, что вы просили... просто в вашем домашнем каталоге, а не [f32 из].

запущенные Ваш программы

должны в bin подкаталог домашнего каталога либо:

уже в своем $PATH, или будет в вашей [ф35] если вы просто выйдите из системы и обратно.

причина в том, что [f36 в] файл в свой домашний каталог, который содержит команды, которые выполняются при входе в систему, содержащую по умолчанию для учетных записей пользователей, созданных в большинстве версиях Ubuntu (в том числе первичная учетная запись, созданная при установке ОС):

[ф8]

, что код выполняется, когда вы входите в систему (потому что это в [фунции f37]) и размещает ваш персональный каталог bin в [ф39] большинство версий вот почему вам может потребоваться выйти из системы и обратно.

разрешающие доступ на чтение и выполнение как Ubuntu 14.04, а также новых версиях, таких как Ubuntu 17.10, в связи с этим. Однако, в Ubuntu 16.04, который, наверное, самый популярный релиз на момент написания этой статьи, это вместо:

[F9] и

, что просто добавляет [ф40] подкаталог домашнего каталога---а также [ф41] подкаталог-вашего $PATH, без проверки, если эти каталоги существуют на самом деле. Так что если вы используете 16.04, или если вы обновляли систему, которая была 16.04, когда учетная запись Пользователя была создана, то bin подкаталог домашнего каталога, скорее всего, уже в [пулемет f44].

файл [f45 с] скопировано с [f46 каталог] при создании учетной записи пользователя. Если Ваш аккаунт был создан на более ранней версии Ubuntu, то есть, что версия .profile, и он не был изменен-для Вашей учетной записи пользователя-при обновлении до более новой версии.

раз в bin подкаталог домашнего каталога в ваших $PATH, вы сможете запускать программы, чьи исполняемые файлы устанавливаются там, просто набрав их имена, как вы могли бы сделать с программ, установленных по Ubuntu пакетного менеджера или установлен внутри [ф50].

Опция .local

[и D40]Вы, наверное, заметили, что по умолчанию .profile файл для учетных записей пользователей, созданных в ряде версий Ubuntu, в том числе в 16.04, как описано выше, добавляет не только $HOME/bin на ваш путь, но и $HOME/.local/bin. Если ваш [f55, которая] не добавить, но вы от, тогда вы можете просто изменить его.[!и D40]

хотя новые релизы, Вы также можете установить программное обеспечение внутри .local подкаталог домашнего каталога. Вы должны чувствовать себя раскованно в этом, как с точки зрения usability и безопасности, --prefix="$HOME/.local" похож на --prefix="$HOME".

помните, что файлы и каталоги, которые начинаются с . не отображается по умолчанию в графический файл браузеры (используйте Ctrl+H, чтобы отобразить и rehide них) или [от f60] команда (сдать [ф61] или -a флаг, чтобы показать их). Это не может быть то, что вы хотите, или это может быть именно то, что вы хотите. Это вопрос личных предпочтений.

однако, я заметил, что некоторые автоматизированные источник-менеджеров пакет, сборка и установка программного обеспечения в использовании каталог $HOME/.local. Я не знаю, как часто это ... надеюсь на дальнейшее расследование и обновлять этот ответ, но вы можете просто использовать [64-го фокуса для вещей ручной компиляции. Таким образом, это будет понятно, где вещи пришли. И если происходит столкновение, программное обеспечение еще могут сосуществовать вполне приемлемо.

можно также сознательно установить какую-либо программу в [f65 в] и другое программное обеспечение в $HOME. Это до вас. В зависимости от того, каталог bin впервые появляется в [f68 не] переменная среды является то, что команды будут бежать, в случае, если команды с таким же именем существует в обоих.

заслуга Занна и Videonauth за указание ошибки в предыдущей версии этого ответа, в связи с чем убунту релизы, которые по умолчанию код в .profile, и помог мне их исправить (см. также здесь).

3
ответ дан 25 May 2018 в 01:03

Если sudo является таким неудобством, просто обновите / etc / sudoers, поэтому вам не нужно вводить пароль при запуске sudo. Я считаю, что это лучшее решение, чем изменение владельца / usr / local.

0
ответ дан 25 May 2018 в 01:03
  • 1
    Пароли не являются проблемой - это больше идея, что для установки модулей в программу в /usr/local вы должны использовать sudo, что потенциально опасно. – PR3x 26 February 2013 в 09:19

Другие вопросы по тегам:

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