Для чего нужна папка .local в моем домашнем каталоге

Ответы:

121

Это недавнее нововведение, за которым следуют Gnome и, следовательно, Ubuntu, для хранения пользовательских данных в фиксированных каталогах. Согласно этому документу , существует

  • один каталог, в котором хранятся пользовательские данные, по умолчанию ~/.local/share;
  • один каталог, в котором хранится конфигурация, по умолчанию ~/.config;
  • один каталог, содержащий файлы неосновных данных, по умолчанию ~/.cache.

Исторически Unix-программы могли свободно распространять свои данные по всему каталогу $ HOME, помещая свои данные в точечные файлы (файлы, начинающиеся с ".") Или подкаталоги, такие как ~/.vimrcи ~/.vim. Новая спецификация предназначена для того, чтобы сделать это поведение более предсказуемым. Я подозреваю, что это облегчает резервное копирование данных приложения, а также делает ваш домашний каталог более аккуратным. Не все приложения придерживаются этого стандарта.

В .localиерархии программы помещают пользовательскую информацию, такую ​​как электронные письма и события календаря. Вы можете вручную удалить эти данные, но тогда программа потеряет свое состояние; если это не то, что вы намерены (например, когда есть проблема с вашей конфигурацией), вы не должны удалять или изменять файлы в этом каталоге. С .cacheвами можно быть более небрежным, так как программа должна быть в состоянии восстановить - заново загрузить или пересчитать - все файлы, если вы удалите их.

loevborg
источник
3
.local предназначен для хранения данных пользовательских программ (например, локально установленных программ), а не пользовательских данных (например, фотографий, календарей и т. д.)
Мартин Оуэнс -doctormo-
Я не думаю, что ты прав. Возможны две интерпретации спецификации: (1) .local/shareпредполагается использовать способом, аналогичным /usr/share, например, для переопределения значков; и (2) приложениям разрешено записывать состояние в подкаталоги .local/share. Существование ~/.local/share/trash/подразумевает, что по крайней мере некоторые приложения поддерживают второе толкование. Конечно, .localэто используется для установки локальных версий программного обеспечения из исходного кода. Но, по-видимому, он также используется для хранения данных, аналогичных ~/.firefox.
loevborg
7
Похоже, .configи .cacheдолжно быть внутри .localдля согласованности, не так ли?
Петр Доброгост
3
Мне интересно, будет ли хорошей идеей сделать резервную копию моего ~ / .local или его частей с целью более простого восстановления, когда мой компьютер сломан. Или это будет в основном не применимо на другом / новом компьютере? Любое предложение?
lumeng.dev
1
Какие еще вещи могут появиться, ~/.localкроме ~/.local/shareи ~/.local/bin(которые, я знаю, pip использует для пользовательских установок)?
CMCDragonkai
8

Позвольте мне поделиться одним из моих впечатлений о каталоге .local. Я также обнаружил, что мой раздел диска (корневой раздел), в котором хранится домашний каталог, не хватает места, и после того, как я проверил содержимое этих каталогов, я обнаружил, что каталог .local хранит пространство более 70 ГБ, затем я хочу удалить его, но боюсь, что удаление может вызвать сбой моей системы Ubuntu. Поэтому я искал этот вопрос в Google, и он направляет меня сюда. Но предыдущие ответы не могли решить мои проблемы, я хочу только два результата в моей системе:

  1. Удалите часть содержимого в каталоге .local, тогда у меня будет достаточно места на диске для хранения моих новых файлов;

  2. Я не хочу, чтобы мой системный сбой, это означает, что я не хочу напрямую удалять контент из моего домашнего каталога .local, это слишком опасно!

Наконец, я обнаружил, что самый большой контент в каталоге .local находится здесь: /home/myAccount/.local/share/Trash Он занимает 69 Гбайт. Я чувствую, что это относится к корзине, поэтому я иду в корзину: trash: /// и очищаю корзину, затем я обнаружил, что дисковое пространство размером 69 ГБ было освобождено !!

Итак, мои выводы:

  1. Удалить каталог .local напрямую очень рискованно;

  2. Мы могли бы безопасно удалить содержимое в /home/myAccount/.local/share/Trash с помощью «Пустого» мусора.

Часы ZHONG
источник
2
Спасибо за этот ответ. Первый ответ может быть лучшим для вопроса, который был задан, но в некотором смысле это нечестно. Он .localсодержит «информацию о пользователях, такую ​​как электронные письма и события календаря», но подавляющее большинство того, что находится в нем, .localвообще не является информацией о пользователях: это файлы из мусорной корзины. Ваш ответ объяснил, что на самом деле занимает подавляющее большинство .local, что делает его лучшим ответом ИМХО.
machineghost
2

.Local / каталог используются некоторым программное обеспечением , чтобы сохранить ваши предпочтения (как указано на @loevborg). Этот каталог является частью усилий по стандартизации беспорядка, который является $HOMEпользователем. Но, к сожалению, многие программы еще не присоединились к этим усилиям, даже некоторые программы GNOME по-прежнему распространяют ваши предпочтения в каталоге других (см. .Gnome2, .gconf, .evolution и т. Д.).

Удалить каталог небезопасно. Некоторые приложения хранят важную информацию / файлы конфигурации внутри этого каталога.

crncosta
источник
13
"Это сохранить, чтобы удалить каталог!" - Нет, это не так !!!! Tomboy хранит свои записи там, как я обнаружил, к моей стоимости. Плохой совет
Тим Абелл
5
Извините, но я вынужден понизить голосование за ваше предположение, что этот каталог можно безопасно удалить, если это не так.
Тимо Клак