二、档案权限与目录配置
2.1 记录用户身份与群组的档案
name -- 用户登录名
password -- 用户口令,该口令是加密过的。如果此域为空,则表明该用户登录无需口令。
uid -- 用户UID。用户登录后,系统通过该值,而非用户名来标识用户。
gid -- 用户组ID。
comment -- 用户相关信息,比如真实姓名、用户描述等。
home -- 用户的家目录的绝对路径。
shell -- 用户环境,也就是用户使用到的SHELL路径。
字段之间用“:”隔开,分别为:
(1)用户登录名
(2)加密后的用户口令 -- 长度为13个字符。如果此域为空,则表明该用户登录无需口令。
(3)最后一次修改时间 -- 存放的是时间戳。
(4)最小时间间隔 -- 两次修改口令之间所需的最小天数,可用于避免频繁修改口令。
(5)最大时间间隔 -- 口令保持有效的最大天数,可用于强制定期修改口令。99999表示永远有效。
(6)警告时间 -- 密码过期提前警告用户的天数,默认值是7天。
(7)不活动时间 -- 用户没有登录的情况下,密码保持的有效天数。
(8)失效时间 -- 账号的生存天数,到期后该账号不能再用来登录。
(9)保留字段
(3)/etc/group 群组信息。
--存放用户组信息。每行一个组。字节之间以“:”隔开,分别是:
(1)组名
(2)组口令 -- 一般不使用
(3)GID、组ID
(4)组成员
2.2 文件属性
ls命令
结果如: drwx------ 3 root root 4096 Sep 5 10:37 .gconf
(1)各列意义如下:权限 连结 拥有者 群组 档案容量 修改日期 档案名称
(2)
第一列“权限”:
第一个字段代表档案类型:d为目录,-为文件,l为连结档,b为存储接口设备,c串行端口设备(键盘/鼠标等),s为数据接口文件,f为数据输送文件。
接下来的字符:以3个为一组,且均为rwx三个参数的组合,其中r为可读,w为可写,x为可执行。如没有权限,则该位置以减号-代替。第一组为拥有者权限,第二组为同群组用户权限,第三组为其他用户权限。
第二个字段“连结”:
代表由多少档案名称连结到此节点。
第三个字段“拥有者”:
代表档案的拥有者。--废话
第四个字段“群组”:
代表档案的所属群组。
第五个字段“档案容量”:
代表档案的容量大小,默认单位为字节(bytes)。
第六个字段“修改日期”:
代表档案最近的修改日期。
第七个字段“档案名称”:
代表档案名称。--又是废话。如果档案名称前带有“.”符号,则该档案为隐藏档。
2.3 改变文件属性与权限
(1)chgrp -- change group,改变文件或目录的所属群组。
语法: chgrp [-R] 群组名 档案或目录。
示例: chgrp -R user /etc/vfile
选项:
-R进行递归更新,即更新子孙目录及子孙目录下的文件属性。
(2)chown -- change own,改变文件或目录的所有者。
语法: chown [-R] 账号名称 档案或目录 或 chown [-R] 账号名称:组名 档案或目录
示例: chown -R user /etc/vfile
选项:
-R进行递归更新,即更新子孙目录及子孙目录下的文件属性。
(3)chmod -- change mode,改变文件或目录的权限。
语法: [1] chmod [-R] xyz 档案或目录 [2] chmod u|g|o|a +|-|= rwx 档案或目录
[1]:xyz的值为各权限属性数值相加,r为4,w为2,x为1。
如:owner = rwx = 4+2+1 = 7,group = rwx = 4+0+1 =5,other = 0+0+0 =0,则档案权限数字为750。则命令为chmod 750 /etc/vfile。
[2]:u代表用户,g代表群组,o代表其他用户,a代表所有用户。
+代表加入,-代表除去,=代表设定。
如:设置用户权限为rwx,群组及其他用户未rx,则命令为 档案名。
如:给所有用户增加写入权限,则命令为chmod a+w 档案名;除去执行权限,则命令为 chmod a-x 档案名。
选项:
-R进行递归更新,即更新子孙目录及子孙目录下的文件属性。
2.4 目录的权限
r权限:可以查询该目录下的文件名。
w权限:可以建立新档案与目录;可以删除已存在的档案与目录;文件与文件夹重命名;搬移档案、目录位置。
x权限:表示可以切换到该目录下,否则只允许查看该目录下的文件名列表,但不能进入该目录。
2.5 档案扩展名
*.sh 脚本或批处理文件,使用shell写成的。
*.Z,*.tar,*.tar.gz,*.zip,*.tgz 压缩文件。
2.6 各主要目录的作用
(1)/bin 放置单人维护模式下还能够被操作的指令,在/bin底下的指令可以被root与一般账号使用,包括cat/chmod/chown/date/mv/mkdir等等常用指令。
(2)/boot放置开机时会使用到的档案,包括LINUX核心档案以及开机选项与开机所需的配置文件。
(3)/dev 任何设备都以档案的形态存在于该目录下。
(4)/etc 放置系统主要的配置文件。
(5)/home 系统默认的用户家目录,新增一个使用者账号时,默认的用户家目录都会规范到这里。
(6)/lib 放置系统函数库,主要为开机时会用到的函数库,以及在/bin或/sbin底下指令会使用到的函数库。其中的/lib/modules目录会放置核心相关的驱动程序。
(7)/media 放置可移除的设备,如软盘、光驱等等。
(8)/mnt 放置暂时挂载的设备,用途与/media相同,只是有了/media,这个目录就用来暂时挂载,如U盘、移动硬盘等。
(9)/opt 放置第三方软件。
(10)/root 系统管理员(root)的家目录。
(11)/srv 网络服务使用的数据目录,如WWW、FTP等。
(12)/tmp 一般用户或正在执行的程序临时放置档案的地方。任何人都能够存取。
(13)/usr 放置可分享的和不可动的数据。usr为Unix Software Resource的缩写。所有系统默认的软件都会放置该目录下,有点类似WINDOWS的C:\Windows\或C:\Program files\
/usr/include 放置c/c++等程序语言的文件头(header)与包含文件(include)
/usr/lib 放置各应用软件的函数库、目标文件以及不被一般使用者惯用的执行文件或脚本。
/usr/local 系统管理员在本机自行安装自己下载的软件,建议安装到此目录。
/usr/sbin 非系统正常运行所需要的系统指令。
/usr/share 放置共享文件。
/usr/src 放置源码。
(14)/var 放置常态性变动的文件,包括缓冲、日志文件异机某些软件运行时所产生的文件。
2.7 相对路径与绝对路径
. 代表当前目录,可以使用./来表示;
..代表上一级目录,可以用../来表示。
其它知识点:
(1)在Linux下,除了/之外的所有字符都可以用来文件命名,但建议避免使用特殊字符,比如*?><&!……,因为在文字接口下,这些字符又有特殊意义的。比如以.开头的文档表示是隐藏文档。
2.1 记录用户身份与群组的档案
(1)/etc/passwd 记录所有账号与一般身份使用者的相关信息。
每一行定义一个用户,格式为 name:password:uid:gid:comment:home:shell。分别为:name -- 用户登录名
password -- 用户口令,该口令是加密过的。如果此域为空,则表明该用户登录无需口令。
uid -- 用户UID。用户登录后,系统通过该值,而非用户名来标识用户。
gid -- 用户组ID。
comment -- 用户相关信息,比如真实姓名、用户描述等。
home -- 用户的家目录的绝对路径。
shell -- 用户环境,也就是用户使用到的SHELL路径。
(2)/etc/shadow 记录个人密码信息。
-- 用于存放用户口令信息,仅有root用户才有查看和修改权限。字段之间用“:”隔开,分别为:
(1)用户登录名
(2)加密后的用户口令 -- 长度为13个字符。如果此域为空,则表明该用户登录无需口令。
(3)最后一次修改时间 -- 存放的是时间戳。
(4)最小时间间隔 -- 两次修改口令之间所需的最小天数,可用于避免频繁修改口令。
(5)最大时间间隔 -- 口令保持有效的最大天数,可用于强制定期修改口令。99999表示永远有效。
(6)警告时间 -- 密码过期提前警告用户的天数,默认值是7天。
(7)不活动时间 -- 用户没有登录的情况下,密码保持的有效天数。
(8)失效时间 -- 账号的生存天数,到期后该账号不能再用来登录。
(9)保留字段
(3)/etc/group 群组信息。
--存放用户组信息。每行一个组。字节之间以“:”隔开,分别是:
(1)组名
(2)组口令 -- 一般不使用
(3)GID、组ID
(4)组成员
2.2 文件属性
ls命令
结果如: drwx------ 3 root root 4096 Sep 5 10:37 .gconf
(1)各列意义如下:权限 连结 拥有者 群组 档案容量 修改日期 档案名称
(2)
第一列“权限”:
第一个字段代表档案类型:d为目录,-为文件,l为连结档,b为存储接口设备,c串行端口设备(键盘/鼠标等),s为数据接口文件,f为数据输送文件。
接下来的字符:以3个为一组,且均为rwx三个参数的组合,其中r为可读,w为可写,x为可执行。如没有权限,则该位置以减号-代替。第一组为拥有者权限,第二组为同群组用户权限,第三组为其他用户权限。
第二个字段“连结”:
代表由多少档案名称连结到此节点。
第三个字段“拥有者”:
代表档案的拥有者。--废话
第四个字段“群组”:
代表档案的所属群组。
第五个字段“档案容量”:
代表档案的容量大小,默认单位为字节(bytes)。
第六个字段“修改日期”:
代表档案最近的修改日期。
第七个字段“档案名称”:
代表档案名称。--又是废话。如果档案名称前带有“.”符号,则该档案为隐藏档。
2.3 改变文件属性与权限
(1)chgrp -- change group,改变文件或目录的所属群组。
语法: chgrp [-R] 群组名 档案或目录。
示例: chgrp -R user /etc/vfile
选项:
-R进行递归更新,即更新子孙目录及子孙目录下的文件属性。
(2)chown -- change own,改变文件或目录的所有者。
语法: chown [-R] 账号名称 档案或目录 或 chown [-R] 账号名称:组名 档案或目录
示例: chown -R user /etc/vfile
选项:
-R进行递归更新,即更新子孙目录及子孙目录下的文件属性。
(3)chmod -- change mode,改变文件或目录的权限。
语法: [1] chmod [-R] xyz 档案或目录 [2] chmod u|g|o|a +|-|= rwx 档案或目录
[1]:xyz的值为各权限属性数值相加,r为4,w为2,x为1。
如:owner = rwx = 4+2+1 = 7,group = rwx = 4+0+1 =5,other = 0+0+0 =0,则档案权限数字为750。则命令为chmod 750 /etc/vfile。
[2]:u代表用户,g代表群组,o代表其他用户,a代表所有用户。
+代表加入,-代表除去,=代表设定。
如:设置用户权限为rwx,群组及其他用户未rx,则命令为 档案名。
如:给所有用户增加写入权限,则命令为chmod a+w 档案名;除去执行权限,则命令为 chmod a-x 档案名。
选项:
-R进行递归更新,即更新子孙目录及子孙目录下的文件属性。
2.4 目录的权限
r权限:可以查询该目录下的文件名。
w权限:可以建立新档案与目录;可以删除已存在的档案与目录;文件与文件夹重命名;搬移档案、目录位置。
x权限:表示可以切换到该目录下,否则只允许查看该目录下的文件名列表,但不能进入该目录。
2.5 档案扩展名
*.sh 脚本或批处理文件,使用shell写成的。
*.Z,*.tar,*.tar.gz,*.zip,*.tgz 压缩文件。
2.6 各主要目录的作用
(1)/bin 放置单人维护模式下还能够被操作的指令,在/bin底下的指令可以被root与一般账号使用,包括cat/chmod/chown/date/mv/mkdir等等常用指令。
(2)/boot放置开机时会使用到的档案,包括LINUX核心档案以及开机选项与开机所需的配置文件。
(3)/dev 任何设备都以档案的形态存在于该目录下。
(4)/etc 放置系统主要的配置文件。
(5)/home 系统默认的用户家目录,新增一个使用者账号时,默认的用户家目录都会规范到这里。
(6)/lib 放置系统函数库,主要为开机时会用到的函数库,以及在/bin或/sbin底下指令会使用到的函数库。其中的/lib/modules目录会放置核心相关的驱动程序。
(7)/media 放置可移除的设备,如软盘、光驱等等。
(8)/mnt 放置暂时挂载的设备,用途与/media相同,只是有了/media,这个目录就用来暂时挂载,如U盘、移动硬盘等。
(9)/opt 放置第三方软件。
(10)/root 系统管理员(root)的家目录。
(11)/srv 网络服务使用的数据目录,如WWW、FTP等。
(12)/tmp 一般用户或正在执行的程序临时放置档案的地方。任何人都能够存取。
(13)/usr 放置可分享的和不可动的数据。usr为Unix Software Resource的缩写。所有系统默认的软件都会放置该目录下,有点类似WINDOWS的C:\Windows\或C:\Program files\
/usr/include 放置c/c++等程序语言的文件头(header)与包含文件(include)
/usr/lib 放置各应用软件的函数库、目标文件以及不被一般使用者惯用的执行文件或脚本。
/usr/local 系统管理员在本机自行安装自己下载的软件,建议安装到此目录。
/usr/sbin 非系统正常运行所需要的系统指令。
/usr/share 放置共享文件。
/usr/src 放置源码。
(14)/var 放置常态性变动的文件,包括缓冲、日志文件异机某些软件运行时所产生的文件。
2.7 相对路径与绝对路径
. 代表当前目录,可以使用./来表示;
..代表上一级目录,可以用../来表示。
其它知识点:
(1)在Linux下,除了/之外的所有字符都可以用来文件命名,但建议避免使用特殊字符,比如*?><&!……,因为在文字接口下,这些字符又有特殊意义的。比如以.开头的文档表示是隐藏文档。