Permissions
/var 中的哪些文件需要有特定的所有者?
我不小心通過執行在我的網路伺服器上造成了未知數量的破壞
sudo chown -R myuser:mygroup * .*
in
/var/www
,不記得.*
會包括父目錄(as..
)。大約一秒鐘後,我意識到發生了什麼,但為時已晚,其中一半的目錄/var
已被“重新擁有”。我知道我可以用sudo chown -R root:root /var
但是有哪些文件需要由我必須手動更改的特定非 root 使用者(或組)擁有?
這是在 Gentoo 上的,這是一個目錄列表:
$ ls -l /var drwxr-xr-x 9 root root 4096 May 12 2009 cache drwxr-xr-x 4 root root 4096 Aug 20 22:49 db drwxr-xr-x 3 root root 4096 Aug 20 22:42 dist drwxr-xr-x 4 root root 4096 Nov 1 2009 edata drwxr-xr-x 2 root root 4096 Jun 17 2008 empty drwxr-xr-x 5 git git 4096 Feb 13 2010 git drwxr-xr-x 23 root root 4096 Jul 19 03:22 lib drwxrwxr-x 3 root uucp 4096 Aug 12 00:14 lock drwxr-xr-x 10 root root 4096 Aug 20 03:10 log lrwxrwxrwx 1 root root 15 Nov 7 2008 mail -> /var/spool/mail drwxr-xr-x 10 root root 4096 Aug 21 00:22 run drwxr-xr-x 8 root root 4096 Feb 13 2010 spool drwxr-xr-x 2 root root 4096 Jun 17 2008 state drwxr-xr-x 13 root root 4096 Dec 23 2009 svn drwxrwxrwt 5 root root 4096 Aug 14 01:53 tmp drwxr-xr-x 13 root root 4096 Aug 11 20:21 www drwxr-xr-x 2 root root 4096 Dec 14 2008 www-cache
我可以提供子目錄的列表,但這很快就會變得很長。(
dist
,edata
,git
,svn
, 和www
是我自己管理的東西,所以這些東西的所有權不會成為問題)
好吧,“/var”通常用於程序生成的數據,因此如果不複製您的系統,可能無法準確地告訴您誰應該擁有什麼。我可以想到兩種方法可以解決它:
- 在備用機或虛擬機上設置另一個版本的 Web 伺服器,然後檢查
/var
.- 只需更改為 root/root,然後查看出現了什麼錯誤(大多數目錄將具有這種所有權結構)。
1 的缺點是需要花費的時間;好的一面是它將是準確的。第 2 項要快得多,但準確度較低,即使它大部分是正確的。這裡最大的問題是,在重要的生產箱 2 上可能不可行。
我會幫助你,但我不再執行 gentoo,所以這裡有一個比安裝 VM 更快的查找方法。將最新的 tarball 下載到目錄並解壓縮。像安裝一樣安裝 proc 和 dev。chroot 並安裝您已安裝的任何伺服器守護程序,您可能也需要啟動它們。現在執行。
find /var ! -user root -ls
這應該列出所有不屬於 root 使用者的文件。
如果其他人有 gentoo 系統,他們可以通過執行這個命令來幫助他
這是我係統中的一個簡短列表(這是Arch Linux,因此距離會有所不同),這可能會有所幫助。
find /var -maxdepth 2 ! -user root -ls | sed -e 's/^/ &/' slave-iv 262147 4 drwx------ 2 named named 4096 Jul 22 15:49 /var/named 262151 4 -rw------- 1 named named 234 Jul 22 15:49 /var/named/127.0.0.zone 262148 4 -rw------- 1 named named 2938 Jul 22 15:49 /var/named/root.hint 262385 4 -rw------- 1 named named 190 Jul 22 15:49 /var/named/localhost.zone 526002 4 drwx------ 6 griff users 4096 Aug 1 18:16 /var/tmp/kdecache-griff 529617 4 drwx------ 3 kdm kdm 4096 Aug 11 18:30 /var/tmp/kdecache-kdm 526893 4 drwx------ 8 xenoterracide users 4096 Aug 20 10:37 /var/tmp/kdecache-xenoterracide 524523 4 drwxrwx--T 2 daemon daemon 4096 Feb 4 2010 /var/spool/atd 529085 0 -rw-r--r-- 1 named named 0 Aug 15 03:21 /var/log/named.log 529330 16 -rw-r--r-- 1 postgres root 14907 Aug 20 08:51 /var/log/postgresql.log 525625 0 -rw-r--r-- 1 named named 0 Aug 8 03:19 /var/log/named.log.1 524820 0 -rw-r--r-- 1 named named 0 Jul 18 03:19 /var/log/named.log.4 529165 0 -rw-r--r-- 1 named named 0 Jul 25 03:19 /var/log/named.log.3 525956 0 -rw-r--r-- 1 named named 0 Aug 1 03:19 /var/log/named.log.2 524864 4 drwx------ 4 mysql mysql 4096 Jun 1 01:10 /var/lib/mysql 524319 4 drwxr-xr-x 2 named named 4096 Aug 19 01:04 /var/run/named 524309 4 drwxr-xr-x 2 dbus dbus 4096 Aug 19 01:04 /var/run/dbus 524436 4 drwxr-xr-x 4 hal hal 4096 Jun 10 17:47 /var/run/hald