【Linux基础命令2】文件权限

作者: 失语失芯不失梦 | 来源:发表于2016-12-13 20:21 被阅读37次

    Linux一般将文件可存取访问的身份分为3个类别,分别是owner、group、others,且3种身份各有read、write、execute等权限。

    Linux中,默认情况下所有系统上的账号、一般身份用户和root的相关信息都记录在 /etc/passwd 这个文件中。而个人密码则是记录在 /etc/shadow 这个文件中。此外,Linux所有的组名都记录在 /etc/group 中。这三个文件千万不要随意删除哦!

    以root身份登录Linux

    查看文件


    ls 命令1 ls 命令2

    ls -al:列出所有文件的详细权限和属性(包含隐藏文件:文件名第一个字符为“.”的文件)

    ls -lhS:列出所有文件的详细权限和属性(不包含隐藏文件),并且文件显示大小以M为单位(h参数),列表会按文件从大到小排序(S参数)

    ls -d */:只罗列出目录

    ls -l --full-time:列出所有文件的详细权限和属性,且显示的是完整的时间格式

    可以输入man lsinfo lsls --help来查询ls的手册页

    每一列对应不同的含义

    “d”开头表示是目录,“-”开头表示是文件,“l”开头表示为连接文件,“b”开头表示设备文件里面的可供存储的接口设备,“c”开头表示设备文件里面的串行端口设备,如键盘、鼠标(一次性读取设备)

    接下来的字符中,3个为一组,共3组,且均为“rwx”,标识owner(即root用户)、group、others的权限,且位置不会改变,如果没有权限,该位置会出现“-”。【r】表示可读(read),【w】表示可写(write),【x】表示可执行(execute)。

    更改文件权限

    1、chgrp [-R] dirname/filename:改变文件所属用户组(chgrp 是change group缩写)

    -R 表示递归,也就是说连同其子目录下的所有文件、目录都可以更新成为这个用户组,通常用在更改某一目录内所有的文件情况,此参数可加可不加,视情况而定

    注意:要被改变的组名必须要在 /etc/group 文件内存在才行,否则就会显示错误!

    2、chown [-R] 账号名称(:组名) 文件或目录:改变文件所有者(chown 是change owner缩写)

    注意:在 /etc/passwd 文件中有记录的用户名称才能改变!

    3、chmod [-R] xyz 文件或目录:改变文件的权限

    xyz:表示数字类型的权限属性,为rwx属性数值的相加值,r=4、w=2、x=1,xyz=r+w+x

    例子

    权限对文件的重要性

    r:读取文件的实际内容

    w:可编辑、新增、修改该文件的内容(不能删除该文件)

    x:可被系统执行

    三者都是针对文件内容而言,与文件名没有关系

    权限对目录的重要性

    r:读取目录结构列表,可查询该目录下的文件名数据

    w:新建新的文件与目录;删除已存在的文件与目录(不管文件的权限如何);重命名已存在的文件或目录;转移该目录内的文件或目录的位置

    x:表示用户能进入该目录成为工作目录

    目录配置

    /(root,根目录):与开机系统有关

    /user(UNIX software resource):与软件安装有关

    /var(variable):与系统运作过程有关

    目录树架构示意图

    相关文章

      网友评论

        本文标题:【Linux基础命令2】文件权限

        本文链接:https://www.haomeiwen.com/subject/wqpxmttx.html