每天午夜后几分钟,updatedb.findutils 都会运行来索引一些文件。这是一个Ubuntu 自带的程序。现在我想知道这个程序是做什么的并发现了这个。
root 12500 12491 0 00:10 ? 00:00:00 /bin/sh /usr/bin/updatedb.findutils
root 12533 12500 0 00:10 ? 00:00:00 su nobody -s /bin/sh -c /usr/bin/find / -ignore_readdir_race \( -fstype NFS -o -fstype nfs -o -fstype nfs4 -o -fstype afs -o -fstype binfmt_misc -o -fstype proc -o -fstype smbfs -o -fstype autofs -o -fstype iso9660 -o -fstype ncpfs -o -fstype coda -o -fstype devpts -o -fstype ftpfs -o -fstype devfs -o -fstype mfs -o -fstype shfs -o -fstype sysfs -o -fstype cifs -o -fstype lustre_lite -o -fstype tmpfs -o -fstype usbfs -o -fstype udf -o -fstype ocfs2 -o -type d -regex '\(^/tmp$\)\|\(^/usr/tmp$\)\|\(^/var/tmp$\)\|\(^/afs$\)\|\(^/amd$\)\|\(^/alex$\)\|\(^/var/spool$\)\|\(^/sfs$\)\|\(^/media$\)\|\(^/var/lib/schroot/mount$\)' \) -prune -o -print0
正如您所看到的,它定义了许多它想要(不)搜索的文件系统。那里有很多临时空间、可交换媒体位置、网络位置和文件系统,但还有一个奇怪的挂载点,对我来说没有任何意义:
\(^/alex$\)\
/alex 这个用在哪里?哪里可以搜索这些信息(当然除了 stackoverflow)?
答案1
该条目已添加23 年前 作者:凯文·达利,更详细的解释在这个 19 年前的错误报告:
尽管我多年前添加了 /alex,但我在验证排除 /alex 的原因时遇到了一些麻烦。 /alex 指 Alex 文件系统。对此的一个参考是:
http://satcom.nic.in/internet1.htm
我不确定 Alex 文件系统目前有多常见。在 PRUNEFS 中拥有适当的值可能比在 PRUNEPATHS 中更好。 /afs 可能属于同一类别。
我将在短期内保留 /alex 和 /afs,但在 findutils 中进行更多修复后,我将解决这个问题。
该链接已失效,但来自时光倒流机器:
Alex 文件系统为用户和应用程序提供对 Internet 上匿名 FTP 站点中文件的透明读取访问。如今,有数千个匿名 FTP 站点,总共有数百万个文件和大约 1 TB 的数据。访问这些文件的标准方法包括登录到远程计算机。这意味着应用程序无法像本地文件一样访问远程文件。这也意味着用户没有任何可用的别名或本地工具。想要在远程文件上使用应用程序的用户首先必须手动制作该文件的本地副本。当远程文件更改时,没有自动更新此本地副本的机制。用户必须跟踪他们从哪里获取文件并检查是否有更新,然后获取这些文件。在这种方法中,同一站点的许多不同用户可能已经制作了同一远程文件的副本,每个副本都占用了相同数据的磁盘空间。
Alex 解决了现有方法的问题,同时保留了现有的 FTP 协议,以便可以使用当前可用文件的大量集合。为了获得合理的性能,使用长期文件缓存。因此一致性是一个问题。缓存一致性问题的传统解决方案在 Internet FTP 域中不起作用:回调不是一种选择,因为 FTP 协议对此没有规定,而且 Internet 上的轮询速度很慢。因此,Alex 在每个文件的基础上放宽了文件缓存一致性语义,并使用特殊的缓存算法来考虑文件和网络的属性,以允许简单的无状态文件系统扩展到 Internet 的大小。