1.文件属性查看
ls -l filename
- rw-rw-r-- 1 kiosk kiosk 0 Oct 2 17:05 file
文件类型 文件权限 文件副本个数 文件所有人 文件所有组 大小 最后一次被修改的时间 名字
2.查看目录属性
ls -ld directoy
d rwxr-xr-x 3 kiosk kiosk 33 Aug 27 09:47 directory
类型 权限 子目录个数 目录所有人 目录所有组 子文件属性大小 目录中内容变化 目录名字
3.文件用户组的更改
chown 用户名称 文件 ##更改文件所有人
chgrp 组名称 文件 ##更改文件所有组
chown -R 用户 目录 ##更改目录本身以及目录中的子文件的所有人
chgrp -R 组名 目录 ##更改目录本身以及目录中的子文件的所有组
4.权限种类
chmod ugo+-=rwx ##改权限
u=rwx=7 |g=rwx=7|o=rwx=7
421
u=rw-=6 g=r--=4 o=r--=4 644
r=4
w=2
x=1
-=0
7=rwx,6=rw-,5=r-x,4=r--,3=-wx,2=-w-,1=--x,0=---
r
r权限针对文件,表示可以查看文件内容
r权限针对目录,表示可以ls 查看目录中存在的文件名称
w
w权限针对文件,表示可以更改文件的内容
w权限针对目录,表示是否可以删除目录中的子文件或者子目录
x
x权限对于文件,表示是否可以开启文件当中记录的程序
x权限对于目录,表示是否可以进入目录中
当有a/b/c递归三个目录,a有读写,ls a可以看到b,但ls a/b看不到c,因为a没有可执行,而 ls a/b 相当于 cd a;ls b;而a没有可执行权限,所以看不到c
5、 stat file查看文件的状态属性
Access: 2016-07-15 16:30:57.769375150+0800
Modify: 2016-07-14 17:27:04.116248622+0800
Change: 2016-07-15 16:30:51.681489283+0800
access 查看 modify 更改文件内容 change更改文件属性
6、touch -t 199507020911.11 file 设定文件的时间戳
7、相同磁盘分区的移动是重命名
复制是新建
mkdir -p westos/linux/lee 递归创建目录
cp -r test/ /westos 复制目录及目录里面的内容
cp -a :相当于-pdr,保持文件的连接(d),保持文件的属性(p),并作递归处理(r)
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用)
-i:若目标文件存在会先询问操作是否进行
-r:递归复制,常用于目录的复制
-u:若目标比源文件旧才更新
-l:进行硬连接文件的创建而非复制文件本身
cp是一个很重要的参数,不同身份执行这个命令有不同的结果产生,尤其是-a,-p参数,对于不同参数来数说,区别很大,如密码文件以及
一些配置文件,就不能直接以cp来复制,而必须加上-a,-p来完整复制文件的参数执行才行
8、 mv test/ /westos (不用加r)
‘’强引用,如果文件名有特殊符号,把整个文件用引号括起来,或者用绝对路径
但是, touch‘-file’ 是错的。touch ./-file是对的
9、cat、tac、nl(显示的时候顺便输出行号)、more、less、od(以二进制方式读取文件)
10、文件的默认权限
查看文件默认权限:umask或 umask-S
在默认文件的属性上,目录与文件是不一样的,因为文件一般是用于数据的记录,所以没有执行权限
若用户创建文件则默认权限:-rw-rw-rw-
若用户新建目录则默认权限:drwxrwxrwx
要注意的是umask的分数指的是需要减掉的权限
在默认的情况中,root的umask会拿掉比较多的属性,root的umask默认是022,一般用户umask为002,这是基于安全的考虑:
则root新建文件时:(-rw-rw-rw-)减去(-----w--w-)等于-rw-r--r--
root新建目录时:(drwxrwxrwx)减去(d----w--w-)等于drwxr-xr-x
在命令行 umask 066可以修改默认权限,但当关掉shell之后,又恢复原来的,如果想长期有效
必须更改配置文件
vim /etc/bashrc 71行是普通用户的更改,73是超级用户的更改
vim /etc/profile 60行是普通用户的更改,62是超级用户的更改
source /etc/bashrc ##刷新bash配置
source /etc/profile ##刷新系统配置
7、文件的隐藏属性
chattr
参数:
+:增加某一个特殊参数,其他原本存在参数则不动。
-:删除某一个特殊参数,其他原本存在参数则不动。
=:仅有后面接的参数。
a:当设置a之后,这个文件只能增加数据,而不能删除也不能修改数据,只有root才能设置这个属性。
i:当设置i之后,它可以让一个文件“不能被删除,改名,设置连接也无法写入或删除数据”,只有root能设置此方法。
chattr +i file
lsattr [-adR] 文件或目录
-a:将隐藏文件的属性显示出来
-d:如果接的时目录,仅列出文件本身的属性
-R:连同子目录的数据也一并列出来
8、文件的特殊属性:SUID,SGID,SBIT
stickyBid ###强制位
o+t ###之针对目录,当一个目录上有t权限时,这个目录中的文件只能被文件拥有者与root删除
t=1
chmod o+t directroy
chmod 1777 directory
sgid ###粘制位
g+s ##针对目录,在目录中创建的文件都自动归属到目录所在组,针对二进制文件,文件内记录的程序在执行时和执行者的组身份没有关系,而是以二进制文件的所有组的身份执行的
当一个二进制的可执行文件拥有sgid属性:
SGID对二进制程序有用
程序执行者对于该程序来说,需要具备x权限
执行者在执行过程中将会获得该程序用户组的支持,是以文件用户所属组的身份执行的,和谁发起的没关系
当一个目录拥有sgid属性:
用户对于该目录具有r与x权限时,该用户能够进入此目录
用户在此目录下的有效用户,将会变成该目录的用户组
若用户在此目录下具有w权限,则用户所创建的新文件的用户组与此目录的用户组相同,
touch 有了suid和sgid之后,在一个有sgid的目录下建一个文件a,a的所属用户是root,所属组是student
chmod g+s file|directory
chmod 2777 file|directory
suid ###冒险位
u+s ###针对文件,文件记录动作在执行时是一文件所有人身份执行的,与是谁发起的无关
SUID权限功能:
SUID权限仅对于二进制程序有效
执行者对于该程序具有x权限
本权限仅在执行该程序的过程中(run-time)有效
执行者将具有该程序所有者的权限
chmod u+s file
chmod 4777 fileg+s
9、which寻找“执行文件”
whereis寻找特定的文件
locate,直接在后面输入“文件的部分名称”后就能得到结果,但是他使用是有限制的,locate在寻找数据的时候特别快,因为
locate时有已创建的数据库/var/updatedb.conf这个配置文件里买年的数据查找到的,所以不用直接去硬盘中访问,有时数据
库没有更新可能找不到,更新数据库updatedb就可以了。