2.14 文件或目录权限 chmod
2.15 更改所有者或所有组 chown
2.16 umask
2.17 隐藏权限 lsattr_ chattr
chmod命令
ls -l 查看文件详细信息
文件为10位:第一位表示文件类型,后9位表示权限(3个权限位),采用“3+3+3”模式,前三位为所有者的权限,第二个三位为所有组权限,最后三位为其他用户对该文件的权限, 最后的“.”表示文件受制于selinux
r可读 w 可写 x可执行 -不可读不可写不可执行,二进制 r=4, w=2, x=1 rw-r--r-- =644
chmod =change mode 更改权限
chmod 700 2.txt ls -l 2.txt -rwx------
限制防火墙: getenforce →setenforce 0→getenforce (permissive)
彻底关闭防火墙:vi /etc/selinux/config
chmod -R操作更改所有目录,子目录,文件批量修改权限
chmod操作仅仅更改当前目录/文件本身的权限
e.g. chmod 777 liut2/ ls -l liut2/ 成功把liut2文件夹权限改成777
更改文件权限① chmod u=rwx, group=r, o=r, liut2 (不可以加减号)
② a+x, u+x, g-x等等(更改该目录下所有文件的某个权限位)
chown命令
cat /etc/passwd 查看用户
chown命令更改文件所有者 : ls /tmp/ ls -l /tmp/yum.log chown liut /tmp/yum.log
chgrp命令更改所属组:chgrp user1 /tmp/yum.log
chown user1:liut 命令同时更改所有者和所属组,只更改其中一个使用空白
chown -R username:group filename
umask(限制新文件/目录的权限)
root用户umask (0)022 →创建文件默认权限664 目录755
更改umask为002默认权限也会随之改变
规律:
目录一定要有执行权限才能进入查看(即x权限)①777-umask(002)=775 (目录权限)
②666-umask(002)=664(文件权限)
root用户umask 022 普通用户 umask 002
e.g. 如果 umask 改成003 ,666-003=663 (实际为664)
文件权限:666-003=(rw-rw-rw- )-(-------wx)=rw-rw-r-- = 664
目录权限:777-003=(rwxrwxrwx)-(-------wx)= rwxrwxr--=774
隐藏权限lsattr & chattr
chattr(加隐藏权限): change file attributes on a Linux system
①chattri +i filename 加隐藏权限(i权限增删改都不行) chattri -i(减权限) chattri +a( 只能追加不可写)
②vi filename
写入数据无法保存
lsattr:查看权限(多了一个i)
ls -l 多了一个~txt 文件,在执行vi命令时会自动创建~.txt文件,一般而言会覆盖原来的文件,如果设置的为隐藏文件不可更改则保留该~txt文件
只能使用q!推出vi编辑模式,同时touch命令会更改创建时间,+a时可执行该操作
lsattr默认的是显示目录下所有文件的隐藏权限,加-d只显示目录的隐藏权限
+i模式和+a模式对比,区别为后者可以追加和touch (更改创建时间)
对文件夹加隐藏权限a或者i都不影响对其目录下的子文件进行追加或者写入
lsattr -R filename(把目录和子目录,子文件的权限都列出来)
lsattr -a directory 把隐藏文件的隐藏权限也列出来