将 xfce4 配置文件从一个用户复制到另一个用户

将 xfce4 配置文件从一个用户复制到另一个用户

嗯,看起来很简单但我做不到。

我创建了一个模板用户,用来创建或更新其他用户的配置。

要将配置从用户模板更新到另一个用户,我运行:

sudo cp -r --preserve /home/template/.config /home/user1/.config      
sudo chown -R user1:users /home/user1/.config    

我没有看到任何错误。但是当我使用 user1 登录时,我意识到 XFCE 桌面配置没有改变,我的意思是,它没有用模板配置更新。我特别注意到,桌面配置上的任何更改都被忽略了。

我究竟做错了什么?

答案1

我收到了错误,它很明显,但我没有看到它。

当我跑步时

sudo cp -r --preserve /home/template/.config /home/user1/.config

效果是创建一个新的目录 .config里面/home/user1/.config。

正确的脚本应该是:

sudo cp -r --preserve /home/template/.config /home/user1/

答案2

在某些情况下(甚至可能总是如此),退出 xfce4 会话后xfconfd守护进程仍在运行。您需要登录user1到普通终端会话并pkill xfconfd。然后,如果您启动 xfce4 会话,您将看到已应用新的 xfce4 设置。

答案3

详细地说,当您以“模板”身份登录时,一切看起来都很好?并且“模板”的主页在/home/template

当我备份我的 XFCE 主页配置文件(我认为它们都在 ~/.config 中,只有 .local 或 .gconf 中的几个特定于应用程序的文件)和一个.gtkrc-xfce似乎只是“XfdesktopIconView”桌面设置的文件时,可能并不重要但是...

除非我退出正在备份的用户,否则它并不总是有效。

我使用普通的tar -cf,但 cp 应该也可以。

您要将所有者更改为新用户,那$1您 chown 中一定是他们吗?我不知道组是否重要,但根据chown您刚才使用的chown -R user: [files]意思:

“如果用户名后面有冒号但没有组名,则该用户将成为文件的所有者,并且文件的组将更改为该用户的登录组。”

新文件和旧文件的权限是否相同?


以下是我之前备份 XFCE 用户设置的操作:

sudo tar --xz --one-file-system -cvf /tmp/userHome-bak.tar.xz -C /home/user/ --files-from=/home/add.txt

在 add.txt 中(每行一个,绝对不需要全部,有些可能是从旧 DE 中保留下来的):.config .gconf .gnome2 .gnome2_private .linuxmint .local .bashrc .gtk-bookmarks .gtkrc-xfce .ICEauthority .xscreensaver

然后恢复到新用户的主目录后,确保:chown -R newuser /home/newuser

相关内容