我正在使用一个名为丢失的文件列出所有不属于我的 Arch Linux 系统上任何包的孤立(丢失)文件。
虽然对于大多数文件,我相当确定我可以安全地删除它们,或者至少知道它们来自哪里,但对于以下文件,我不确定删除它们是否安全。
# It is not maintained by any package but can I safely delete it?
/core
# still used by gtk2?
/etc/gtk-2.0/gdk-pixbuf.loaders
/etc/pango/pango.modules
/etc/pango/pango.modules-32
/etc/.pwd.lock
# Not owned by udev?
/etc/udev/hwdb.bin
/etc/xdg/gtk-2.0
/etc/xml/catalog
# not owned by ruby?
/usr/bin/update_rubygems
# Can I safely delete these cache files?
/usr/lib32/gdk-pixbuf-2.0/2.10.0/loaders.cache
/usr/lib32/gtk-2.0/2.10.0/immodules.cache
/usr/lib32/libffi-3.0.12
/usr/lib32/libffi-3.0.12/include
/usr/lib32/libffi-3.0.12/include/ffi.h
/usr/lib32/libffi-3.0.12/include/ffitarget.h
/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
/usr/lib/gio/modules/giomodule.cache
/usr/lib/gtk-2.0/2.10.0/immodules.cache
/usr/lib/gtk-3.0/3.0.0/immodules.cache
# Generated by locale-gen?
/usr/lib/locale/locale-archive
# I can safely remove the cache file?
/usr/share/applications/mimeinfo.cache
/usr/share/glib-2.0/schemas/gschemas.compiled
/usr/share/gtk-doc/html/gtk2/AbstractObje....html
/usr/share/info/dir
/usr/share/libgphoto2
/usr/share/libgphoto2/asus_oled.ko.gz
# Am I safe to delete the timestamp history?
/var/db/sudo/orschiro
/var/db/sudo/orschiro/0
/var/db/sudo/orschiro/1
/var/db/sudo/orschiro/2
/var/db/sudo/orschiro/3
/var/db/sudo/orschiro/4
/var/db/sudo/orschiro/5
/var/db/sudo/orschiro/6
/var/db/sudo/orschiro/7
/var/db/sudo/orschiro/8
/var/db/sudo/orschiro/pid12778
/var/db/sudo/orschiro/pid14461
/var/db/sudo/orschiro/tty1
/var/db/sudo/orschiro/tty2
/var/db/sudo/orschiro/tty4
/var/db/sudo/test
答案1
我要说不,不要删除最多那些。我相信其中一些是一揽子计划的一部分——你还没有说你是如何确定这一点的。
其中一些可能是拆掉的包裹中留下的;例如,如果配置文件被更改,或者有某种理由相信其他东西可能会使用它,则可能会发生这种情况。其中一些可能属于这一类,并且只是空目录。无论如何,这些都是微不足道的事情,不值得担心。
我认为您正在做的事情有两个可能的原因:
- 您希望保持文件系统整洁并节省空间/索引节点。
除非您正在处理每个字节都很重要的嵌入式系统,否则您所做的事情将无关紧要。如果您正在处理这样的系统,这将是一种非常糟糕且无效的节省空间的方法。
- 您对未知文件感到偏执。
这是一个更好的理由,但仍然是无效的;您不可能以这种方式跟踪内容,并且如果他/她需要存储,半精明的入侵者可以简单地替换属于的文件。如果您想监视文件系统更改方面的入侵,您需要实际监视它或间歇性扫描它的东西 - 而不是眼球列表。对于一个人来说,要有效地做到这一点,需要跟踪的东西太多了。如果您花时间学习使用为此目的设计的自动化系统,效果会更好。
也就是说,我认为有一些东西可以安全删除:
# It is not maintained by any package but can I safely delete it?
/core
如果这是一个最近没有被触及的大而胖的二进制文件(例如,自上次启动以来),那么是的。 core
文件是调试转储,有时是崩溃的应用程序留下的。
# Am I safe to delete the timestamp history?
诸如日志之类的东西显然有一段时间没有被访问过(即,老的日志)可能可以安全删除。为了以防万一,我会将它们移动一段时间——到一个/trash
目录——然后再实际删除它们。如果将整个路径复制到垃圾目录中,则在需要时可以轻松恢复它们。
答案2
/core 是一个故障转储,可以安全删除http://en.wikipedia.org/wiki/Core_dump
其余的,我不知道。 。
答案3
获取core
-文件...这些文件是在程序崩溃时创建的。操作系统基本上获取属于崩溃进程的内存中的内容,并将其写入文件。 core
- 文件对于开发人员来说非常有用,因为可以使用调试器来分析它。但对于使用预打包二进制文件的普通用户来说,这些二进制文件去掉了有效调试所需的额外内容(即对于我们大多数人来说),core
-files 只是占用了很多空间,并且可以安全地删除。事实上,find
定期运行来查找并删除旧core
文件可能是一个好主意(很好地使用了cron
)。 core
- 文件通常在程序“运行”的目录中创建,因此它们通常位于用户的主目录中。
奇怪的核心文件并不是什么大问题,但如果同一个程序总是崩溃和/或创建核心文件,可能会显示更严重的问题(核心文件可能是由子进程创建的,这样也会崩溃,因此即使创建了核心文件,主程序也可能继续运行)。可以限制核心文件的大小或关闭核心文件的创建,这是大多数发行版为普通用户所做的。 (觉得可以用命令来完成ulimit
...)
事实上,这个core
文件直接位于 root 之下,这表明它是 root 用户运行的某种程序崩溃了。最好先查看它,看看您是否能找出它是什么程序(less
应该足够了……它是二进制乱码,但通常您能够在混乱中发现程序的名称),然后检查它是否经常出现故障。