我正在使用带有 KDE Plasma 的 openSUSE Linux。
我想在同一台机器上设置两个用户帐户,并让这两个帐户共享同一个主文件夹的一部分。
具体来说,我想设置两个仅供我使用的用户帐户,一个是个人帐户,另一个是工作相关帐户;我关心的不是保护文件从一个帐户转移到另一个帐户,而是将这两个范围分开。
我希望这两个帐户共享基本的系统和桌面环境文件和设置,以便拥有统一的工作环境,这样如果我更改 IE 的一些键盘快捷键或自定义系统的行为方式,我就不必重复操作。我希望共享的设置包括与 DE 相关的应用程序(Dolphin 文件管理器、终端仿真器)。
我想将所有“用户”文件和应用程序分开,这些文件和应用程序通常不属于“系统”类别。例如,文档、图片等。此外,还有 Digikam 等程序的设置,这些程序本身不支持多个用户配置文件。
我希望所有这些都清楚了。我也可以只分离个人文件并共享所有设置(基本上只有主文件夹中的隐藏文件)。
这样做是否可行且合理?还是只会造成极度混乱?
答案1
简单的解决方案是使用符号链接,该链接是在创建具有相同组和主目录以及 0002 的用户后在登录期间设置的umask
。
然后创建子目录$HOME/home
并$HOME/work
创建或移动您想要独立的目录(例如mv $HOME/Documents $HOME/home
,mkdir $HOME/work/Documents
等)。
现在,在您的一个登录脚本中(例如$HOME/.bashrc
)检查您正在使用的登录名并建立链接:-
if "$(whoami)" == "WorkName"
then ln -sf "$HOME/work/Documents" "$HOME/Documents"
......
else ln -sf "$HOME/home/Documents" "$HOME/Documents"
......
fi
正如我所说,这是一个简单的解决方案,但它的主要缺点是,如果您同时以其他用户的身份登录(使用Ctrl-Alt-Fn
、、sudo -s
)ssh
,那么如果是交互式登录,它将扰乱现有会话,如果不是,它将访问错误的目录。
我看到的唯一解决方法是为每个登录设置单独的主目录,并为要共享的每个文件和目录设置链接,但这将涉及更多的链接,并且在添加每个新的共享文件或目录时需要不断保持警惕,例如在安装新的软件包时。