2、Linux档案权限与目录配置

时间:2021-09-28 12:53:48

本文要点:

一、用户与用户组

二、Linux文件权限

三、Linux目录配置

四、Linux支持的文件系统

 

一、用户和用户组

   在Linux系统当中,默认情况下,所有的系统上的账号、一般用户以及root 的相关信息, 都是记录在/etc/passwd 这个档案内;它们的密码则是记录在/etc/shadow档案内; 此外,Linux所有的组名都记录在/etc/group档案内。

 

二、Linux文件权限

1、Linux文件属性

 2、Linux档案权限与目录配置

1:文件属性示意图


2、Linux档案权限与目录配置 

2:档案的类型与权限

 

   1、第一个属性代表这个档案是“目录、档案或者连结文件等等”:

   2、第二栏表示连结占用的节点(i-node):这个跟连结档(link file)比较有关系。如果是目录的话,第二栏的这个数字与该目录下有多少目录有关(这个数字包括当前目录,上一级目录和当前目录所包含的目录所占的节点数总和);

   3、第三栏表示这个档案(或目录)的拥有者;

   4、第四栏表示拥有者的群组;

   5、第五栏表示这个档案的容量大小,默认单位为bytes

   6、第六栏表示这个档案的建档日期或者是最近的修改日期,分别是月份、日期及时间;

   7、第七栏表示这个档案的档名,如果档名之前多一个[.],则代表这个档案为隐藏文件;

 

2、档案权限的改变:

chgrp:改变档案所属群组;

chown:改变档案所属人;

chmod:改变档案的属性(改变文件的权限,数字类型:r:4w:2x:1;符号类型:ugo代表三种身份,a代表all,运算符+-=);

如果要连目录下的所有次目录或者档案同时更改档案属性的话,直接加上-R的参数。

 

 

3、目录与档案权限

档案属性的意义:

r:可读取文档实际内容,如读取文本文件的文字内容等;

W:可以编辑、新增或者是修改该档案的内容(但不含删除该档案);

X:该档案具有被系统执行的权限。

 

目录属性的意义:

r:表示具有读取目录结构清单的权限,当用户具有读取一个目录的权限时,使用ls这个指令就能够将目录的内容列表显示出来。

w:建立新的档案与目录;

删除已存在的档案或目录(不论该档案或目录属于谁);

将已存在的档案或目录重命名;

改变该目录内的档案、目录位置;

x:与能否进入该目录有关。

说明:如果你在某个目录不具备x权限,那么你就无法切换到该目录下,也就无法执行该目录的任何指令,即使你具有该目录的r权限。

要开放目录给任何人浏览时,应该至少也要给予rx的权限,但w权限是不可随便给。

 

4、档案种类及扩展名

档案种类:

d:则表示目录;

-:则表示普通文件;

l:则表示为连结档(link file);

b:则表示为装置文件里面的可供储存的接口设备(块设备文件);

c:则表示为装置文件里面的串行端口设备(字符设备文件),例如键盘、鼠标;

S:则表示套接字(sockets)(var/run);

P:则表示管道(FIFOpipe)(var/run);

注意:linux档案能不能被执行,与他的第一栏的十个属性和文件内容有关,与文件名无关。Windows下,exebatcom都是可执行的文件。

 

Linux档案扩展名:

*.sh:批文件处理文档(scripts),因为它使用shell编写,所以后缀就编成.sh

*Z*.tar*.tar.gz*.zip*.tgz:经过打包的压缩档,这是因为压缩软件分别为gunziptar等,由不同的压缩软件,而取其相关的后缀名;

*.html*.php:网页相关档案,分别代表HTML语法与PHP语法的网页档案,.html的档案可使用网页浏览器来直接开启,至于.php的档案,则可以透过client端的浏览器来浏览server端,以得到运算后的网页结果;

—程序语言perl的档案,其后缀名也可能取成.pl这种档名;

 

Linux文件名长度限制:

单一档案或目录的最大允许文件名为255个字符;

包含完整路径名称及目录(/)的完整路径名为4096个字符;

 

Linux文件名限制:

一般来说,设置linux文件名时,最好避免一些特殊字符,如:* ? > < ; & ! [ ] | \ ' " ` ( ) { }等,这些符号在命令行界面下有特殊的含义。

 

三、Linux目录配置

/etc:开机与系统数据文件均在这个目录下;

/bin/sbin/usr/bin/usr/sbin:这是系统预设的执行文件的放置目录;

/usr/local:这是系统预设的让你安装你后来升级的套件的目录;

/home:这是系统将有账号的人的家目录设置的地方;

/var存储在系统运行中可能会更改的数据。如wwwftpdbmaillogmessages...

/usr/share/man/usr/local/man:这两个目录为放置各类套件说明文档的地方。

 

:根目录,一般建议在根目录下只有目录,不要直接有文件。根目录是启动时系统第一个载入的分区,所以,所有启动过程会用到的文件都应该放在这个分区。如:/etc、/bin、/dev、/lib、/sbin 5个子目录都应该与根目录连在一起,不可独立成为某个分区

/bin:存储常用用户指令

/boot:这个目录主要目的是存放Linux系统启动时用到的文件。启动会用到的Linux的核心文件。这个目录下面的文件vmlinuz就是linux的核心。如果引导程序选择grub,这个目录内还有/boot/grub子目录

/dev:在Linux系统上,任何设备都以文件类型存放在这个目录中。访问这个目录下面的某个文件,就等于访问某台设备。设备又分为字符设备,例如键盘、鼠标等,块设备,例如硬盘、光盘等。在此目录下的文件会多出两个属性,分别是主设备号和辅助设备号

/etc:存储系统、服务的配置目录与文件,一般这个目录下的文件是可以让一般用户看的,但只有root用户可以修改

/home:存放个人主目录

/ib:存放库文件,诸如核心模块、驱动

/lost+found:存储fsck用的孤儿文件,系统出现异常,产生错误时,会将一些遗失的片段放于此目录下,通常这个目录会自动出现在某个分区最顶层的目录下

/mnt:系统加载文件系统时用的常用挂载点

/opt:第三方工具使用的安装目录

/proc:虚拟文件系统,包含系统讯息等资料

/rootroot用户的主目录

/sbin:存储系统管理用指令,这个目录是给root用户管理用的

/tmp:临时文件的暂存点

/usr:存放与用户直接相关的文件与目录

 

四、Linux支持的文件系统

/lib/modules/uname-r/kernel/fs

Linux使用的文件系统有ext2ext3,最新版本还支持reiserfs(基于平衡树结构的文件系统)。