TJ-*_*TJ- -2 permissions chmod
我正在测试服务器上工作。以 root 身份登录并发出
cd /
chmod go-r *
Run Code Online (Sandbox Code Playgroud)
我当然撤销了我创建的用户的写权限。
我是否撤消了为 mysql、httpd、ftp 等进程创建的所有组的权限 (r/w/x) - 或者他们是否拥有它?
我如何检查?
[更新] 我已经重新启动了 mysql 和 apache。mysqld 没有以 root 身份运行。正在写入日志。检查还有什么是个好主意?
首先,chmod go-r
不删除写入权限,它删除读取权限。的内容/
主要是目录;目录读取权限意味着您可以列出它。例如,ls /bin
现在会给出一个权限被拒绝(除了目录所有者和 root,当然在这种情况下所有者是 root)。
如果这是一个错字并且您的意思是chmod go-w
,那么您确实删除了写入权限。可能其中有写权限的唯一目录摹roup或Ø疗法是/tmp
; 你需要解决这个问题。
值得庆幸的是,你没有包括-R
在(递归)chmod
,所以这是很容易解决:只要对比ls -l /
测试服务器上,以ls -l /
一个类似的服务器上。用于chmod
将权限设置回应有的状态。
请注意 chmod 将遵循符号链接,因此如果您的根目录中有任何符号链接,则需要单独确认它们。
最后,您似乎不了解 Unix 权限模型。每个文件和目录都有一个用户(所有者)和一个组。所有者可以对文件/目录具有读、写和/或执行权限。这就是chmod u=...
设置。组的所有成员都可以拥有相同的权限集 ( chmod g=...
)。最后,其他所有人(其他人)得到相同的集合 ( chmod o=...
)。
例子:
$ ls -l /etc/exim4/passwd.client
-rw-r----- 1 root Debian-exim 204 Oct 15 2006 /etc/exim4/passwd.client
|^^^^^^^^^| |||| ^^^^^^^^^^^
| perms | |||| group
t | owner
acl
Run Code Online (Sandbox Code Playgroud)
t
文件类型:对于普通文件、d
目录、l
符号链接、c
字符设备、p
命名管道、b
块设备,可能还有一些我忘记了。
acl
会+
如果没有这个文件的访问控制列表,你可以用getfacl
看看吧。
在1
我没有标签的链接数; 如果您对文件进行了硬链接,则两个名称都会显示 2。添加另一个名称,它们会显示 3,依此类推。
权限字段为所有者(用户)的三个字符;三人为团体;其他三个。所有者(用户)可以[R EAD和w ^仪式的文件,但不执行(因为有一个-
,而不是x
那里)。该Debian-exim
组的成员可以读取该文件,但没有其他权限。既不是 Debian-exim 的所有者也不是成员的人没有这个文件的权限。