У меня есть этот вопрос, возможно ли изменить местоположение по умолчанию для скрытых личных конфигурационных папок с /home/user
в другое место? Я имею в виду папки .cache ..compiz-1 и т. Д.
Спасибо за ответ.
Нет, к сожалению, пока это невозможно. Есть что-то, называемое спецификацией базового каталога XDG, которая позволяет настраивать определенные типы каталогов, в том числе, где приложения хранят свои данные, где находятся их конфиги и т. Д. В нем говорится, что файлы конфигурации должны быть помещены в каталог, указанный переменной $ XDG_CONFIG_DIRS, что по умолчанию - $ HOME / .config, но многие приложения пока не используют. Это очень раздражает по многим причинам. Когда они это сделают, тогда это будет возможно, просто изменив эту переменную на что-то еще, например $ XDG_CONFIG_DIRS = / somethingelse / .config. Пока что это невозможно для таких вещей, как compiz, но это возможно для многих других вещей.
На самом деле есть команда usermod (8), которая может изменить ваш домашний каталог. Это будет перемещать все ваши файлы, а не только файлы точек, перечисленные выше
NEWDIR=/new/home/dir
USER=yourusername
sudo usermod --move-home --home $NEWDIR $USER
Попробуйте «man usermod» для получения дополнительной информации.
Если вы хотите просто переместить определенные каталоги , вы могли бы создавать (и поддерживать) символические ссылки, что-то вроде этого фрагмента bash:
NEWDIR=/new/home/dir
DIRSTOMOVE=".adobe .cache .compiz ..."
for d in $DIRSTOMOVE; do
mv $HOME/$d $NEWDIR && ln -s $NEWDIR/$d $HOME
done
Короткий ответ - нет. Существует множество программ, которые используют эту область по умолчанию для записи файлов конфигурации. Я только что проверил свою систему, и у меня есть папки, такие как .adobe, .dropbox, .libreoffice и .shotwell. Не говоря уже о огромном количестве конфигураций программ в .config.
В принципе, даже если вам удалось изменить значения по умолчанию для одного приложения, есть еще что-то, что бы там писать. Глобального значения по умолчанию для местоположения конфигурации пользователя нет.