我有一台访客计算机,仅供互联网使用。一些用户下载了一些文件并将其留在桌面上,但是计算机没有足够的空间供所有来宾使用,因此不允许在其中放置文件。
我要做的是在计算机启动时清理主目录中的每个文件,但保留目录结构,例如音乐,图片,文档和下载。
我该怎么做?
/etc/gdm/PostSession或者/etc/gdm/PreSession,这样我可以收回我的downvote?
我有一台访客计算机,仅供互联网使用。一些用户下载了一些文件并将其留在桌面上,但是计算机没有足够的空间供所有来宾使用,因此不允许在其中放置文件。
我要做的是在计算机启动时清理主目录中的每个文件,但保留目录结构,例如音乐,图片,文档和下载。
我该怎么做?
/etc/gdm/PostSession或者/etc/gdm/PreSession,这样我可以收回我的downvote?
Answers:
您可以安全地删除主目录中的所有文件,因为它们是重新创建的,除了在创建用户时从复制的文件之外/etc/skel,因此
#!/bin/bash
shopt -s dotglob
rm -rf /home/username/*
sudo -u username cp -a /etc/skel/* /home/username/
在哪里username应该用有意义的东西代替。
根据您的请求(“计算机启动时”),可以从执行/etc/rc.local。您更可能希望在每次登录之间执行它,因此请将其放在/etc/gdm/PostSession或下/etc/gdm/PreSession。
*与所有文件和目录匹配,即使是隐藏的也是如此。
user-dirs-update-gtk全球启动脚本。对于另一个用户,您必须username在脚本中进行更改。最后,来宾帐户没有持久性主目录,因此该帐户不需要脚本。
您正在描述访客会话。我不完全确定它是如何工作的,但是在11.10中默认情况下会在欢迎屏幕中显示它。该帐户完全可以满足您的需求,所以问题是您是否想花时间尝试在11.04上重新创建它,还是想等到对升级到11.10满意为止。它将于周四进入Beta 1。在任何情况下,下载并启动实时会话并查看您的喜好都无济于事。如果这正是您想要的方式,那么您将知道如何重新创建它。
你可以做类似的事情
#!/bin/bash
rm -rf /home/Guest/Desktop/*
rm -rf /home/Guest/Documents/*
rm -rf /home/Guest/Downloads/*
rm -rf /home/Guest/Music/*
rm -rf /home/Guest/Pictures/*
rm -rf /home/Guest/Videos/*
将其另存为cleanup.sh,然后使用即可执行chmod +x cleanup.sh。然后,您可以致电./cleanup。请注意,这会删除这些文件夹中的所有内容,请谨慎使用。确保将“来宾”更改为用户名。
您可以通过将其添加到“启动应用程序”首选项中来使其在启动时运行。
您还可以将此脚本添加为系统上的cron作业,以便它每晚运行。有关cron作业的更多信息,请参见此处。
-f防止要求删除只读文件(未设置写位的文件)并删除未确认的文件。通过删除-f,用户可以通过创建/home/Guest/Desktop/000000000文件并将其设置为只读来防止任何文件被删除。这将使脚本以隐藏的确认挂起,从而无法继续删除文件。众所周知,Firefox进行只读下载。
-f标志不会有多大伤害。我可以将它添加回来。
xdg-user-dir和~/.config/user-dirs.dirs作为默认目录。