环境:Debian 7,gnome-shell。
我不喜欢有桌面文件夹和主文件夹。我喜欢所有应用程序都使用我的主文件夹。具体来说,我关心的是nautilus
和gnome-terminal
。
我将 nautilus 设置为使用 Home 作为 Desktop usingdconf-editor
和 property org.gnome.nautilus.preferences.desktop-is-home-dir==true
。
效果很好。
但是当我启动 a 时,gnome-terminal
它会在 处启动一个 shell /home/username/Desktop
。这非常烦人,因为我不使用该目录。
我确信我的主目录设置正确:
$ grep username /etc/passwd
username:x:1000:1000:username,,,:/home/username:/bin/bash
$ echo $HOME
/home/username
我怎样才能改变这种行为,让外壳从 开始/home/username
?
答案1
您实际上想要禁用该Desktop
目录并阻止 DE 自动重新创建它。
简短回答:
编辑并将值~/.config/user-dirs.dirs
更改为:XDG_DESKTOP_DIR
$HOME
XDG_DESKTOP_DIR="$HOME"
长答案:
如何禁用/重新定位用户目录(桌面、图片、文档等)?
在兼容的 DE 上freedesktop
,这是通过XDG
用户目录配置文件完成的,即$(XDG_CONFIG_HOME)/user-dirs.dirs
:
$(XDG_CONFIG_HOME)/user-dirs.dirs 指定用户当前的目录集。
如果未设置或为空,XDG_CONFIG_HOME
默认为~/.config
因此,对于大多数用户来说,有问题的文件是~/.config/user-dirs.dirs
.
应用程序读取此文件来查找这些目录。该文件由对组成key=value
,每行一个。
默认位置是:
XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_TEMPLATES_DIR="$HOME/.Templates"
XDG_VIDEOS_DIR="$HOME/Videos"
重新定位某个目录编辑配置文件并将当前值替换为您选择的位置,例如
XDG_DOCUMENTS_DIR="/run/media/mybackupdrive/documents"
禁用某个目录将其指向主目录:
XDG_DESKTOP_DIR="$HOME"
对于那些喜欢 CLI 工具的人来说,XDG 提供了xdg-用户目录:
重新定位视频:
xdg-user-dirs-update --set VIDEOS /media/bkdrive/myvideos
查询视频的当前位置:
xdg-user-dir VIDEOS
/media/bkdrive/myvideos
笔记:
后配置中user-dirs.dirs
,如果某些用户目录位于启动时无法访问的驱动器上,您可能需要禁用/etc/xdg/user-dirs.conf
(如果系统上存在),即编辑该enabled
行以读取:
enabled=False
看这讨论以获取更多细节。