* この例の場合、消すと不具合を起こすファイルを含みます。
* この例のqfileはgentooのコマンドです。
sudo find / \ -path "/lib/modules" \ -prune -o -path "/usr/src" \ -prune -o -path "/usr/portage" \ -prune -o -path "/var/lib/layman" \ -prune -o -path "/proc" \ -prune -o -path "/sys" \ -prune -o -path "/dev" \ -prune -o -path "/tmp" \ -prune -o -path "/var/tmp" \ -prune -o -path "/var/cache" \ -prune -o -path "/etc/config-archive" \ -prune -o -path "/usr/local" \ -prune -o -path "/home" \ -prune -o -path "/var/www" \ -prune -o -path "/mnt/share" \ -prune -o ! -type l -mtime +365 | qfile -o -f - > /tmp/qfile.txt
特定のディレクトリ以外の、シンボリックリンクで、リンク切れかループしている、ファイルパスを探す。
sudo find / \ -path "/usr/portage" \ -prune -o -path "/var/lib/layman" \ -prune -o -path "/proc" \ -prune -o -path "/sys" \ -prune -o -path "/dev" \ -prune -o -path "/tmp" \ -prune -o -path "/mnt/share" \ -prune -o -type l -printf "%p:%Y\n" | grep ":[LN]$" > /tmp/link.txt
redhat系。
$ cat /etc/redhat-release Fedora release 15 (Lovelock) $ rpm -qa | while read PKGNAME; do rpm -ql $PKGNAME; done | sort > /tmp/pkgfiles.txt $ sudo find / \ -path "/proc" \ -prune -o -path "/sys" \ -prune -o -path "/dev" \ -prune -o -path "/run" \ -prune -o -path "/selinux" \ -prune -o -path "/var/run" \ -prune -o -path "/media" \ -prune -o -path "/var/lock" \ \ -prune -o -path "/tmp" \ -prune -o -path "/var/tmp" \ -prune -o -path "/var/cache" \ -prune -o -path "/usr/local" \ -prune -o -path "/home" \ -prune -o -path "/var/www" \ -prune -o ! -type l \ -mtime +365 \ | while read FILE; do if [ "$(grep -P "^\Q${FILE}\E($|((?<=/).*[^/]$))" /tmp/pkgfiles.txt)" = "" ]; then echo $FILE; fi; done \ > /tmp/rpm.txt
redhat系。
sudo find / \ -path "/proc" \ -prune -o -path "/sys" \ -prune -o -path "/dev" \ -prune -o -path "/run" \ -prune -o -path "/selinux" \ -prune -o -path "/var/run" \ -prune -o -path "/media" \ -prune -o -path "/var/lock" \ \ -prune -o -path "/tmp" \ -prune -o -path "/var/tmp" \ -prune -o -path "/var/cache" \ -prune -o -path "/usr/local" \ -prune -o -path "/home" \ -prune -o -path "/var/www" \ -prune -o ! -type l \ -mtime +365 \ | while read FILE; do rpm -qf ${FILE} >/dev/null 2>&1; if [ $? -ne 0 ]; then echo $FILE; fi; done \ > /tmp/rpm.txt
debian系。
sudo find / \ -path "/dev" \ -prune -o -path "/lib/init/rw" \ -prune -o -path "/proc" \ -prune -o -path "/sys" \ -prune -o -path "/tmp" \ \ -prune -o -path "/var/tmp" \ -prune -o -path "/var/cache" \ -prune -o -path "/usr/local" \ -prune -o -path "/home" \ -prune -o ! -type l \ -mtime +365 \ | while read FILE; do dpkg -S "$(echo "${FILE}" | perl -pe "s/([^\\w\\s])/\\\\\$1/g")" >/dev/null 2>&1; if [ $? -ne 0 ]; then echo $FILE; fi; done \ > /tmp/dpkg.txt
0 件のコメント:
コメントを投稿