Можете ли вы изменить расположение пользовательских файлов (рабочий стол, документы и т.д.) в CentOS?

Нет, указать это для каждого приложения невозможно.

Однако вы можете использовать то, что называется сетевыми пространствами имен:Вы можете думать о них как о «виртуальных компьютерах», которые совместно используют файловую систему и все остальное, кроме настройки сети.

Таким образом, вы можете создать, скажем, сетевое пространство имен, содержащее сетевой интерфейс, привязанный к телефону, сохранить интерфейс Wi-Fi в основном сетевом пространстве имен, а затем запустить firefox в основном сетевом пространстве имен и еще один firefox во вновь созданном пространство имен.

Каждый firefox будет использовать только соответствующий сетевой интерфейс для подключения к Интернету.

Эта настройка также удобна, если вы хотите отслеживать действия приложений :Вы подключаете только что созданное сетевое пространство имен к основному сетевому пространству имен через виртуальную пару Ethernet(veth ), настройте основное сетевое пространство имен для пересылки и преобразования сетевых адресов (NAT ), а затем вы можете прослушивать с помощью wiresharkи т. д. весь сетевой трафик от приложений в пространстве имен.

Если вы хотите поиграть с сетевыми пространствами имен, взгляните на скрипт в этом ответе . Этот скрипт создает новое пространство имен и подключает его через veth.

Для вашей установки вы должны изменить ее, чтобы переместить один сетевой интерфейс в новое пространство имен, и вам не нужен veth.

0
30.05.2020, 12:52
2 ответа

Если вы хотите изменить эти подкаталоги по отдельности, правильное место — ~/.config/user-dirs.dirs. Это объясняется здесь .

Файл выглядит так:

# This file is written by xdg-user-dirs-update
# If you want to change or add directories, just edit the line you're
# interested in. All local changes will be retained on the next run.
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
# absolute path. No other format is supported.
# 
XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Videos"

Таким образом, вы просто редактируете его с помощью текстового редактора, например, если вы хотите изменить свое видео на абсолютное местоположение, замените строку XDG_VIDEOS_DIRна:

XDG_VIDEOS_DIR="/mnt/hdd2/Videos"

Или вам нужен какой-то каталог в другом месте или под другим именем в вашем домашнем дереве:

XDG_DOWNLOAD_DIR="$HOME/Téléchargements"

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

2
18.03.2021, 23:32

Конечно, можно! Если вы хотите полностью изменить свой домашний каталог, это поле в базе данных паролей. Если вы просто хотите указать отдельные папки в другом месте, вы можете использовать символические ссылки

Если вы хотите полностью изменить домашний каталог, убедитесь, что предполагаемое местоположение будет доступно при загрузке, и вызовите (как root)

# usermod -md "path" user

, где path— расположение предполагаемого домашнего каталога, а user— имя пользователя для входа в систему.

Если вы просто хотите изменить отдельные подкаталоги, скажем, вы хотите, чтобы Desktopуказывал на /mnt/Desktop, вы можете сделать:

$ mv ~/Desktop ~/Desktop.bak
$ ln -s /mnt/Desktop ~/Desktop
$ mv ~/Desktop.bak/* ~/Desktop/
1
18.03.2021, 23:32

Теги

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