如何使公用文件夹不显示在新帐户的主文件夹中?

当我创建一个新用户时,如何告诉Ubuntu 不要创建一个Public子文件夹?

防止创建内容文件夹

您可能已经注意到,Ubuntu为某些类型的内容提供了一些“特殊”文件夹。

特殊目录

这些将显示在新用户帐户中,并为现有用户自动重新创建(在某些情况下)。 但是,可以配置此行为。

对于新用户

使用管理员权限在首选文本编辑器中打开/etc/xdg/user-dirs.defaults 。 你会看到接近这个的东西:

 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_PUBLICSHARE_DIR="$HOME" 

对于现有用户

使用与上面相同的过程,但编辑用户主文件夹中的.config/user-dirs.dirs 。 此方法不需要管理权限,并且会阻止在删除用户后重新创建内容目录。

技术阅读

  1. XDG用户目录规范
  2. “如何更改主文件夹中内容目录的默认位置?”

如Jacob所述,XDG指定的目录不是使用帐户创建的,它们是在用户登录时创建的(如果丢失则重新创建)。在$ HOME处指向这些用户目录变量是一种解决方法,但它没有实际上禁用了该function; 如果禁用是您想要的, 您可以在/etc/xdg/user-dirs.conf中将“enabled = True”更改为“enabled = False” 。 正如定义上面的那个文件中的评论所说,

 # This controls the behaviour of xdg-user-dirs-update which is run on user login # You can also have per-user config in ~/.config/user-dirs.conf, or specify # the XDG_CONFIG_HOME and/or XDG_CONFIG_DIRS to override this 

请注意,您可能还需要卸载gnome-user-share才能实现此function 。