Linux权限及部分重要目录介绍介绍

时间:2021-11-22 05:23:52

一.Linux的基本权限

1.首先说一下文件的类型

    — 普通文件 *

    d 目录文件*

    p 管道文件

    l 链接(相当于Windows下的快捷方式)*

    b 块存储设备

    c 字符设备文件

    s socket文件

“ * ”表示文件的放在磁盘中

2.文件访问者主要包括:

 拥有者 u(user)

本组用户 g(group)

其他组 o(other)

[jiangzhaoman@localhost ~]$ touch jxb
[jiangzhaoman@localhost ~]$ ls -l jxb
-rw-rw-r--. 1 jiangzhaoman jiangzhaoman 0 Jun 10 04:22 jxb
[jiangzhaoman@localhost ~]$ 

例如上面的代码:

 先创建一个文件

然后查看这个文件的权限

r: Read对文件而言,具有读取文件内容的权限:对目录来说,具有浏览该目录信息的权限(例:能否ls)

w:Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限(例:能否touch,mkdir,rm,mv)

x:execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限(例:能否cd)

—:表示不具有该权限

例如上面创建的文件的权限

-rw-rw-r--

第一个“-”表示文件的类型

后边的3个为一组分别表示拥有者,本组用户,其他组的权限。

设置文件的访问权限可以用“chmod”指令

而修改文件的权限必须是文件的拥有者或者root(修改文件拥有者可以用chown指令 chown[参数] 用户名 文件名)

chmod命令权限值的格式

用户表示字符+/-=权限字符

用户符号:

u:拥有者

g:本组用户

O:其他用户

a:所有用户

例如:

[jiangzhaoman@localhost ~]$ ls -l jxb
-rw-rw-r--. 1 jiangzhaoman jiangzhaoman 0 Jun 10 04:22 jxb
[jiangzhaoman@localhost ~]$ chmod a+w jxb
[jiangzhaoman@localhost ~]$ ls -l jxb
-rw-rw-rw-. 1 jiangzhaoman jiangzhaoman 0 Jun 10 04:22 jxb
[jiangzhaoman@localhost ~]$ 

这样我们就给其他用户添加了W权限

二.部分重要目录介绍

/proc是linux内核中提供的文件系统,在运行访问内核数据结构,改变内核设置的机制。proc是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。

/proc下有三个很重要的目录:net,scsi和sys

/sys目录是可写的,可以通过它来访问或修改内核的参数。一个proc虚拟文件可能有内部格式,如/proc/scsi/scsi,它是可读科可写的,并且读写的格式不一样,代表不同的操作,应用程序中读到这个文件的内容一般还需要进行字符串解析,而在写入时需要先用字符串格式化按指定的格式写入字符串进行操作;相比而言,/sys的设计原则是一个属性文件只做一件事情,/sys属性文件一般只有一个值,直接读取或写入。整个/proc/scsi目录在内核中已被标记为过时,它的功能已经被相应的/sys属性文件所完全取代。新设计的内核机制应该尽量使用/sys机制,而将proc保留给纯净的“进程文件系统”。

/SElinux(Security-Enhanced Linux)由Kernel SElinux模块和用户态工具两部分组成。带给linux的主要价值时:提供了一个灵活的,可配置的MAC机制。SElinux是一个安全体系结构,它通过LSM框架被集成到Linux Kernel2.6.x中。它是NSA和SELinux社区的联合项目。提供了一种灵活的强制访问控制系统,且内嵌于Linux Kernel中。SElinux定义了系统中每个用户、进程、应用和文件的访问和转变的权限,然后它使用一个安全策略来控制这些实体之间的交互,安全策略指定如何严格或宽松的进行检查。

/bin基本指令,单用户模式下可用,任何用户可用。

/usr/lib含有更多用于用户程序的库文件。(/lib是内核级的  , /usr/lib是系统级的)

/usr/local  系统管理员在本地自己安装的软件,有bin,sbin,lib等。(/usr/local是用户级的)

/var用于储存variable(或不断改变的)文件,例如日志文件和打印机假脱机文件。

/tmp 用户和程序的临时目录。/tmp给予所有系统用户读写权。