第一讲 权限管理命令chmod
这一部分主要说明一下如何修改文件或者目录的权限。
chmod [{u,g,o,a}{+,-,=}{r,w,x}] [文件或者目录]
u :所有者
g :所属组
o :其他人
a :所有用户
例如:chomd g+x,o+r /tmp/testfile
就是把testfile文件的所有组增加执行权限,其他人增加读权限
chomd a=rwx /tmp/testfile
就是testfile文件的所有用户增加读写执行权限
权限位的数字表示:
chmod [rwx的和,rwx的和,rwx的和]] [文件或者目录]
首先需要知道 r=4 w=2 x=1
例如:rwxrw-r- - 它的权限位数字表示就是 764
具体算法:
r+w+x=4+2+1=7
r+w=4+2+0=6
r=4+0+0=4
chmod -R [rwx的和,rwx的和,rwx的和][文件或目录]
这条命令与mkdir -p递归创建目录一样 这个命令把一个目录下的所有子目录的操作权限全部修改为同样的
创建用户命令
useradd [用户名] 创建普通用户
passwd [用户名] 用户密码
su - [用户名] 切换普通用户**
我们仍需注意在文件与目录中的不同权限,他们具体可以实施的操作是什么!这一点非常重要,有许多人到现在也不太清楚,认为对文件有写权限就可以删除文件。这一点是非常错误的。
附下表以供参考:
第二讲 其他权限管理命令
改变文件或者目录所有者
chown [所有者] [文件或者目录]
改变所有组
Groupadd [所有组组名] 添加组
chgrp [所有组][文件或者目录]
默认组为创建文件的所有者的缺省组
umask -S 以rwx形式显示新建文件缺省权限
改变文件或者目录所有者和所属组
chown [所有者]:[所属组] [文件或者目录]
但是在mkdir 一个目录之后
进行ls -ld 发现他的权限为 drwxr-xr-x
但是在touch 一个文件之后
进行ls -l 发现他的权限为-rw-r- -r- -
这是因为在Linux系统里面把任何新建的文件都会把可执行权限去掉,其实umask值还没变,只不过是因为他是文件,木马病毒入侵之后没有可执行权限,就没有作用了。
umask
umask 指令直接输入之后会显示 0022
其中 0代表特殊权限
022代表 777与022之间的一种逻辑与的关系
他会进行逻辑比对,两者重复的不能保留,把没有的写下来
777 rwx rwx rwx
022 — -w- -w-
—————————
755 rwx r-x r-x 目录
rw- r— r— 二进制文件
如果想把默认创建的文件改为700
700 rwx — — 目录
rw- — — 二进制文件
这样运算 进行逻辑与比对
777 rwx rwx rwx
X
—————————
700 rwx — —
这就像一个解方程 求X
X=— rwx rwx 077
可以使用umask 077 修改缺省创建文件权限,但是不推荐修改。