2011-11-06 54 views
0

我们拥有一个包含数千个用户主目录的NFS服务器。我做了大量的搜索和手册阅读,我似乎无法弄清楚这一点。从Linux服务器中删除旧用户的主目录

我想删除不再与我们在一起的用户的主目录。基本上,任何人在一年内都没有登录并对其主文件夹进行更改。

我一直打的障碍是我看到的每一个工具(ls,find等)都会给我上次修改目录时的列表,但不会修改其中的内容。

以用户Joe为例。

/data/Users/joe/Windows# ls -lt drwxrwx---+ 2 1079 nhsstaff 4096 2008-07-31 15:13 Cookies

所以从这个输出,你会认为这个文件夹判断自7月7日一直没进入2008年

但是当你看目录内:

`[email protected]:/data/Users/joe/Windows/Cookies# ls -ltr 
-rwx------+ 1 1079 nhsstaff 92 2009-02-17 03:16 [email protected][1].txt 
-rwx------+ 1 1079 nhsstaff 86 2009-02-17 03:16 [email protected][1].txt 
-rwx------+ 1 1079 nhsstaff 136 2009-02-17 03:16 [email protected][1].txt 
-rwx------+ 1 1079 nhsstaff 104 2009-02-17 03:16 [email protected][1].txt 
-rwxrwx---+ 1 1079 nhsstaff 32768 2010-04-26 07:53 index.dat` 

你可以看到文件已自2010年4月26日以来已更改。

所以总结,我需要一种方法来搜索和排序时,最后一次的家庭目录ectory被使用。

+0

如果您搜索了[正确的网站'; - )'](http://serverfault.com),它可能会有所帮助。 –

+2

您是否可以检查您的日志,并确定上次登录时是否扫描整个文件系统,并希望最近修改某些内容? – sarnold

+0

我希望在接下来的一周或两周内,我不会在NHS承包商那里看到有关NHS承包商丢失大量数据的新闻... – Flexo

回答

1

运行以下命令:

find /data/Users -mtime +365 | awk '{print $1}' | cut -f2 -d"/" | sort\ 
    | uniq -c | awk '{print $2}' 

这组命令会给你所有这些用户,谁没有修改自己的主文件夹了一年多的列表。 如果您希望脚本通过脚本自动删除这些文件夹,我也可以提供它。

相关问题