理解Linux文件权限

Linux系统会为各种各样的功能创建不同的账户,而这些账户并不是真的用户。这些账户被称作系统账户,是系统上运行的各种服务进程访问资源用的特殊账户。

一般,系统账户的UID值都小于500.

Linux的安全性

1. /etc/passwd文件

这里写图片描述
passwd文件里的密码字段值都被设置成了x,这是考虑到了密码的安全性。真正的密码我们会保存在/etc/shadow文件中。

2. /etc/shadow文件

该文件能对Linux系统如何管理密码有更多的控制。只有root用户才能访问该文件,这让它比/etc/passwd文件要安全的多。
这里写图片描述

这里写图片描述

3. 添加新用户

useradd
参数:
           -D: 该参数显示了在创建新用户时如果你不在命令行指定的话,useradd命令将使用的默认值。(注意:可以在-D后面再加参数和对应的值,来修改系统默认的新用户值)
           -m: 创建用户的HOME目录
           -d home_dir: 为主目录指定一个名字(如果不想使用默认主目录名的话)
           -g: 指定用户登录组的GID或组名
           -p: 指定用户账户的密码
           -u: 为账户指定一个唯一的UID

4. 删除用户

userdel
默认情况下,userdel命令只会删除/etc/passwd文件中的用户信息,而不会删除系统中属于该账户的任何文件。
加上**-r**参数:该命令会删除用户的HOME目录以及mail目录;
>useradd -r username

5. 修改用户账户信息

  • usermod:可以用来修改/etc/passwd文件中的大部分字段,该命令后面加上对应字段的参数就行。
    大部分参数和useradd的参数一样。还有一些实用的额外参数:
    -l :修改用户账户的登录名
    -L:用来锁定账户,这样用户就无法登录了
    -U:用来解除锁定,用户就可以登录了
    -p:修改账户的密码
  • passwd:修改自己的密码
  • chpasswd:如果需要为系统中的大量用户来修改密码,可使用该命令。该命令能从标准输入自动读取登录名和密码度对(由冒号分隔)列表,给密码加密,然后为用户账户设置,当然也可以用重定向命令来将含有userid:passwd对的文件重定向给命令:

    chpasswd < users.txt

  • chsh、chfn和chage

    chsh -s /bin/csh test #修改test用户的登录shell,注意-s后面必须跟shell的全路径名
    chfn test #该命令会将Unix finger命令用到的信息存进/etc/passwd的备注字段中
    chage #用来帮助管理用户帐号的有效期

6. 使用Linux组

  • /etc/group文件
    这里写图片描述
    使用usermode -G命令:添加用户到该组:# /usr/sbin/usermod -G groupName userName
    注意如果使用:usermode -g命令:则指定的组名会替换掉该账户的默认组(即: /etc/passwd文件中该用户的GID会更新为指定的组名的GID)
  • 修改组(groupmod)
    修改已有组的GID(-g参数)
    修改已有组的组名(-n参数):groupmod -n newGName oldGName

7. 文件权限

  • 默认的文件权限
    在Linux系统中新建一个文件夹或者文件时,会有一个默认的权限,那这个默认的权限是怎么来的呢?
    是由umask决定的。
    umask命令:可用来设置用户创建文件和目录的默认权限。# umask 026 //将umask的值设置为026
    默认权限 = 全权限的值 - umask的值

      a. 对于文件:全权限值=666, 所以文件默认的权限值为644(666-022)
      b. 对于文件夹:全权限值=777,所以文件夹默认的权限值为755(777-022) 
    

    这里写图片描述

8. 更改文件安全性设置

只有root用户才能改变文件的属主。任何属主都可以改变文件的属组,但前提是属主必须是源和目标属组的成员。

  • 改变文件(夹)权限
    chmod options mode file

    mode参数有两种方式:
    1). 八进制模式

      [root@imss elsie]# ll
      total 0
      -r-xr-xr-x 1 root root 0 Aug 12 20:35 newfile    //555
      [root@imss elsie]# chmod 644 newfile
      [root@imss elsie]# ll
      total 0
      -rw-r--r-- 1 root root 0 Aug 12 20:35 newfile    //644
    ```
    

    2). 符号模式
    格式:[ugoa…] [+-=] [rwxXstugo…]

       [root@imss elsie]# ll
       total 4
       drwxr--r-- 2 root root 4096 Aug 12 21:10 Folder
       -rwxr--r-- 1 root root    0 Aug 12 20:35 newfile      //744
       [root@imss elsie]# chmod g+wx newfile     //为对象的属组添加 [写、执行] 权限
       [root@imss elsie]# ll
       total 4
       drwxr--r-- 2 root root 4096 Aug 12 21:10 Folder
       -rwxrwxr-- 1 root root    0 Aug 12 20:35 newfile      //774
    
     options参数:可为chmod提供另外一些功能。例如:
     -R参数:可以让权限的改变递归地作用到文件和子目录。
    
  • 改变所属关系

    1). chown: 改变文件的属主(也可以用来改变文件的属组)
        格式:chown options owner[.group] file
        options: 
        -R: 递归地改变子目录和文件的所属关系。
        -h: 可以改变该文件的所有符号链接文件的所属关系。
    
        # chown newOwner Filename   //其中, newOwner 可以是 [登录名 或者 UID]
        # chown dan.shared  Filename  //将文件的属主改为 dan, 属组改为 shared
        # chown .shared Filename        //将文件属组改为shared
    
    2). chgrp: 改变文件的默认属主。
        # chgrp shared Filename         //将文件的属组改为shared 

9. 共享文件

可以通过设置组ID位来创建共享目录。

Linux为每个目录和文件存储了3个额外的信息位。
  • 设置用户ID(SUID):当文件被用户使用时,程序会以文件属主的权限运行
  • 设置组ID(SGID):For 文件,程序会以文件属组的权限运行;For 目录,目录中创建的新文件会以目录的默认属组作为默认属组。
  • 粘着位:进程结束后文件还会在内存中

    可以通过chmod命令来设置这些信息位。
    这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Linux中,文件权限可以使用chmod命令进行设置。该命令可以使用不同的参数来设置权限。其中常用的参数有: -R:递归设置权限,对目录设置权限时会影响子目录和文件; u:对属主设置权限; g:对属组设置权限; o:对其他人设置权限。 具体的权限设置有三种类型:读取(r),写入(w),执行(x)。对于文件,一般都有执行权限(x)。而对于目录,如果没有执行权限,则用户无法查看该目录下的文件。 举个例子,如果要将/usr/local/tomcat目录下所有文件的权限都设置为属组可写入(g w),可以使用以下命令: chmod -R g w /usr/local/tomcat 此外,还可以使用数字来设置权限。例如,以下命令将1.txt文件的权限设置为557,即属主有读取和执行权限,属组有读取和执行权限,其他人有读取、写入和执行权限: chmod 557 1.txt 另外,如果需要设置文件的属主,可以使用chown命令。 希望以上信息能够帮助你理解Linux文件权限的设置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux文件权限的设置](https://blog.csdn.net/qq_39330735/article/details/128929823)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值