неиспользуемое место в дисковом пространстве моей файловой системы на ubuntu [закрыто]

TL, DR: ни одно из ваших предложений не является хорошим. Вместо этого, при запуске от имени пользователя root, сохраните файлы состояния в папке / var (что-то вроде / var / lib / suman ).

У root уже есть разрешение

Root имеет разрешение на доступ ко всем файлам в системе. Так что не меняйте права доступа к каталогу: это не повлияет на root, но позволит всем остальным читать и писать в этом каталоге. Несмотря на распространенное мнение, chmod 777 крайне редко делают что-нибудь полезное.

У root есть разрешение на доступ ко всем файлам в системе, и обычно этого достаточно. Есть несколько исключений, связанных с определенными типами файловых систем, которые обрабатывают пользователей иначе, чем «обычные» файловые системы. Двумя основными случаями являются:

  • NFS: root на клиенте обычно отображается на другого пользователя на сервере, обычно никто . Это означает, что когда root открывает файл, это делается с разрешениями никто .
  • FUSE (который включает ecryptfs, который обычно используется для шифрования домашних каталогов): если не настроено иное (с параметром allow_other , который может использовать только root), файловые системы FUSE доступны только для пользователей, которые установил их.

В таких случаях есть файлы, к которым root не может получить прямой доступ, несмотря на очевидные права доступа. Root по-прежнему может эффективно получать доступ к файлам, переключившись на учетную запись, которая владеет файлами - это ограничения реализации, а не ограничения безопасности, - но это немного неудобно.

Но root должен использовать это разрешение осторожно

Если у вас есть программа, которая обычно вызывается как root, но с HOME , установленным в домашний каталог другого пользователя, вам следует избегать создания файлов в домашнем каталоге пользователя. каталог, к которому у пользователя нет доступа.

Если /home/oleg/.suman уже существует и принадлежит oleg, не имеет значения, записываете ли вы файлы туда, потому что владелец каталога всегда может удалить файлы в этом каталоге ( требуется разрешение на запись, и владелец всегда может предоставить это разрешение). Когда oleg запускает ту же программу, она заменяет файлы, принадлежащие root, если эти файлы нужно перезаписать. Однако не создавайте подкаталоги: Олег не сможет получить к ним доступ или удалить их, даже если они пусты.

Проблема заключается в том, что вы впервые запускаете программу от имени пользователя root, и она создает /home/oleg/.suman . Короче говоря, не делайте этого - вопрос в том, как этого избежать.

Решения

Если вы запустите sudo -H , тогда для переменной среды HOME будет установлен домашний каталог root, и программа не будет обращаться к / домой / олег .

Но иногда имеет смысл запускать программу от имени пользователя root (поскольку для этого требуются права root), но с вашим собственным домашним каталогом (для чтения файлов конфигурации). Это, конечно, применимо только в тех случаях, когда программа, работающая от имени пользователя root, может читать этот файл конфигурации - настройки пользовательского интерфейса допустимы, но файл конфигурации не должен содержать таких вещей, как исполняемый код (например,оболочка не ускользнет через предварительную обработку). В этом случае программа должна читать файлы из $ HOME , но не записывать.

Если программе необходимо сохранить некоторые файлы состояния, то, когда она работает от имени пользователя root, она должна хранить их в системном каталоге (в / var ), а не в домашнем каталоге пользователя.

1
23.01.2017, 02:22
1 ответ

Отсутствующее (серое) пространство на вашей диаграмме - это 5%, зарезервированных вашей файловой системой.

  • 5% от 61,5 ГБ = 3,1 ГБ
  • 56,7 ГБ + 1,7 ГБ + 3,1 ГБ = 61,5 ГБ

Есть очень хороший ответ на аналогичный вопрос: Зарезервированное пространство для root в файловой системе - почему ? , что объясняет причину этой оговорки. Он также дает команду, которая уменьшит процент резервирования, но я настоятельно рекомендую вам не изменять ее, если вы не поймете и не примете проблемы, которые могут возникнуть в дальнейшем.

2
27.01.2020, 23:34

Теги

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