Linux最优秀的地方之一,就在于它的多用户、多任务环境。Linux一般将文件可存取访问的身份分为3个类别,分别是owner(用户)、group(用户组)、others(其他人),且3种身份都各自有自己的read,write,execute等权限。
用户身份与用户组记录的文件
\etc\passwd #所有系统账号的相关信息
\etc\shadow #个人的密码
\etc\group #Linux所有的组名
文件权限概念
当屏幕前面出现“Permission deny”的时候,肯定是权限设置错误。
ls -al #ls:list,列出所有文件的详细信息
ls -l #显示文件,属性的第一个字段是文件的权限,共10位,比如-rwxr-xr--,表示owner具有rwx权限,group具有rx权限,others只具有r权限
改变文件属性与权限
chgrp #改变文件所属用户组,具体句法记得使用 man page 查询
chown -R 用户账号:所在组群 文件名 #改变文件所有者
chmod #改变文件的权限
其中,chmod修改权限的方法有两种,分别是符号法与数字法,数字法中r,w,x的数值分别是4,2,1。
要开放“目录”(注意不是“文件”)给任何人看,应该至少同时给予r和x权限,但w权限不可随便给予。
文件种类与扩展名
使用ls -l
查看到的十个字符中,第一个字符为文件的类型:
- -: 普通文件(regular file)
- d: 目录文件(directory)
- l: 连接文件,类似于windows的快捷方式(link)
- b: 块设备文件(block)
- c: 字符设备文件(character)
- s: 套接字(sockets)
- p: 管道(FIFO, pipe)
Linux目录配置标准:FHS
根据FHS的定义,最好将/var
独立出来,这样至少/var死掉的时候,根目录还活着,还能够进入救援模式。
绝对路径与相对路径
- cd/var/log(absolute)
- cd../var/log(relative)
- .: 代表当前的目录,也可以用./来表示
- ..: 代表上一层目录,也可以用../来表示
例子
将install.log文件复制成为LAYtest.log,并且要给linanya这个人读写权限,可以这样做:
[root@localhost ~]# cp install.log LAYtest.log #若复制文件夹,用cp -r
[root@localhost ~]# ls -al LAYtest.log
-rw-r--r-- 1 root root 62826 9月 17 15:19 LAYtest.log #虽然完成了复制,但仍然是root的文件
[root@localhost ~]# chown linanya LAYtest.log
[root@localhost ~]# ls -al LAYtest.log
-rw-r--r-- 1 linanya root 62826 9月 17 15:19 LAYtest.log #文件变成linanya的
[root@localhost ~]#