Linux的文件权限与目录配置

写在前面:这是我跟着《Linux私房菜》这本书做的学习笔记,本人也是新手一个,所以可能会存在一定的错误,如果您发现了,敬请指正。


Linux命令基础:

  • Linux命令模式下的命令的执行:

    command    [-options]    parameter1,  parameter2  ...
    

    说明:
    1.一行命令中第一个输入的部分绝对是命令或者可执行文件;
    2.[]表示可选项,通常选项前会带-号;
    3.按下enter键命令会立即执行;命令太长可以使用反斜杠\转义回车键,使命令连续到下一行,注意,反斜杠后必须立刻接着特殊字符才能转义;
    4.Linux区分大小写;
    命令模式里执行命令,会有两种结果:一种是直接显示结果,回到命令模式等待下一个命令;一种是进入到该命令的环境,直到该命令结束才回到命令行界面。

  • 实用快捷键:

    tab   自动补全 在一行命令的第一个字段后:补全命令 ; 在一行命令的第二个字段后:补全文件名;
    
    Ctrl + c 中断目前程序;
    
    shift + pagedown pageup 前后翻页;
    
  • 帮助键:

    1.命令1 --help
    
    2.man(manual 操作说明) 命令 ,查找关于这个命令的详细介绍,输入 /关键字1 会查找出关键字1所在的位置。
    

Linux的文件权限与目录配置

  • 用户和用户组:
    因为Linux是一个人多人多任务的系统,每个账号可以有多个用户组的支持。多个用户可以在同一用户组,但是我们可以设置权限,好让某些用户个人信息不被用户组的拥有者查询以保有 个人私人信息,而设置用户组共享,则可让大家共同分享。(好比一个家庭的不同成员)

  • Linux文件权限概念:
    查看文件信息的命令:

    ls -al     ls是list的意思   -al是列出所有文件的权限和属性,包括隐藏文件;
    

    在这里插入图片描述
    文件权限一共是10个字符:第一个:d表示目录; - 表示文件;l表示连接文件; 还有一些其他的字符,不再列举。剩余9个字符每三个为一组:第一组:文件拥有者的权限;第二组:加入此用户组的账号的权限;第三组:非本人且没加入该用户组的其他账号的权限;

  • 修改文件权限的几种命令:

    1.chgrp: 修改文件所属用户组

    用法: chgrp   [-R]   dirname/filename...   (-R进行递归修改,连同子目录下的文件,目录都要修改。)
    示例: chgrp   users  init.config  (将init.config所属组修改为users)
    注意:要修改的组名(users)必须在/etc/group里存在;
    

    2.chown: 修改文件拥有者

    用法: chown	[-R]   账号名   文件名或目录
    或者: chown	[-R]   账号名:用户组名   文件或目录  
    示例: chown	bin   init.config
    注意:该用户名bin必须是已经存在的,即在/etc/passwd这个文件中有记录
    

    3.chmod: 修改文件的权限
    文件的权限可以使用数字和符号两种方式来修改; 文件权限的字符一共9个,三个字符一组,分别是:拥有者,所属组,其他人;三种身份有各自的读,写,执行权限;
    a.使用数字: 每种身份的权限都用三个字符来表示,rwx,其中:r数值为4,w数值为2,x数值为1。然后将每种身份的权限值相加。

    例如: 某text.config文件的权限是 -rw-r--r--
    
    用数值表示就是644   要将该文件的权限修改为-rwxrwxrwx,
    
    使用如下命令: chmod    777   text.config
    

    b.使用符号: 9个权限分别是:拥有者user,所属组group,其他人other,分别用u,g,o来表示。

    命令示例:
    chmod   u=rw,g=rx,o=rx    text.config     (注意:u=rw,g=rx,o=rx是连在一起的,不能有空格)
    
    chmod    a+w    text.config
    
    chmod    a-x     text.config
    

    +,-,= 分别代表加入,移除,设置; u拥有者,g所属组,o其他人,a所有身份; 所以第一个命令就是给拥有者rw权限,所属组rx权限,其他人rx权限; 第二个命令就是所有身份添加写权限而不修改其他权限。 第三个命令就是给所有身份去掉可执行权限而不修改其他权限。

  • 权限对文件的重要性:
    文件是实际含有数据的地方,权限对文件的意义:
    r: read 可以去取此文件的实际内容;
    w: write 可以编辑,新增,修改该文件的内容,但不含删除;
    e:execute 该文件具有被系统执行的权限;

  • 权限对目录的重要性:
    目录的主要内容在记录文件名列表,文件名与目录有强烈的关联:
    r: read contents in directory 可以读取目录结构列表的权限,你可以读取该目录下的文件名列表。
    w: modify contents of directory 它表示你具有改动该目录结构列表的权限:新建文件和目录;删除已存在的文件和目录(无论该文件的权限是什么);将已存在的文件和目录改名;移动该目录内的文件和目录位置;
    x: access directory 用户能否进入该目录成为工作目录;
    有一个目录的权限如下所示:drwxr--r-- root root 4096 Jun 25 08:35 .ssh
    对于系统中不在root组的账号,只有r权限,因此只能查询该目录的文件名列表,而不能切换到该目录内。如果你在某目录下没有x权限, 那你就无法切换到该目录内,无法执行该目录下的任何命令,即使你有该目录的rw权限。因此要开放目录给任何人浏览时,至少要给rx权限,但w权限不可随便给。


Linux 目录配置

  • Linux目录配置的依据——FHS(FileSystem Hierarchy Standard)
    很多社区和公司都在利用Linux进行开发,如果每个人都按照自己的想法配置文件放置的位置, 势必会造成困扰,所以就有了FHS。FHS的重点在于规范每个特定的目录应该放什么样的数据而已。FHS依据文件系统使用的频繁与否,是否允许用户随意修改,将目录定义成四种交互作用的形态。
    在这里插入图片描述
    可分享:可以分享给其他系统挂载的使用的目录,包括执行文件与用户的邮件信息等数据。
    不可分享:自己机器上的设备文件或者与程序有关的socket文件等。
    不可变的:有些数据是不会经常变动的,跟随发行版本而变动,如库函数, 文件说明,系统管理员所管理的主机服务配置文件等。
    可变的:经常修改的数据,如日志文件,一般用户可自行接收的新闻组。
    关于FHS的详细说明:http://www.pathname.com/fhs/pub/fhs-2.3.html#GENERALGUIDELINES
    Linux所有文件与目录都是从根目录开始的,然后再一个一个分支下来,我们称这种目录配置方式为:目录树。根据文件明写法的不同,也将所谓的路径(path)分为绝对路径(absolute)和相对路径(relative)。
    两种文件名/路径的写法依据是:
    绝对路径:由根目录(/)开始写起的文件名或目录名称,如/home/uses/.bashrc
    相对路径:相对于当前路径的文件名写法,如 ./home/users 或者 ../home/users
    .代表当前目录,也可以./表示。
    ..代表上级目录,也可用../表示。
    Linux目录树
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值