linux用户权限

用户权限管理

关于linux用户

现代操作系统一般属于多用户的操作系统,也就是说,同一台机器可以为多个用户建立账户,一般这些用户都是为普通用户,这些普通用户能同时登录这台计算机,计算机对这些用户分配一定的资源。
普通用户在所分配到的资源内进行各自的操作,相互之间不受影响。但是这些普通用户的权限是有限制的,且用户太多的话,管理就不便,从而引入root用户。
此用户是唯一的,且拥有系统的所有权限。root用户所在的组称为root组。“组”是具有相似权限的多个用户的集合。

用户种类

  1. root用户:超级管理员 #符命令行 (id 为 0)
  2. 具有权限的管理员用户:可以通过sudo提升命令权限 $符命令行
  3. 普通用户 $符命令行(id 大于 999)
  • whoami 查看我目前的用户名。

用户命令

新建用户

useradd + 用户名 新建某用户名用户

修改用户密码

passwd + 用户名 修改某用户名的密码(不加用户名就可以修改自己的密码)

关于用户

用户的相关信息储存于 /etc/password 当中,并且每个用户都有各自的文件目录。(称为用户目录,也叫~)

  • 注意:root用户的目录为/root 在(根目录)/下面。而普通用户的目录全部在/home/的子目录下面。(/root与/home为同级目录)。

命令 id + 用户名:

查看用户ID:uid 用户ID、gid 用户组id、groups 用户组号码

用户切换

su + '-' + 用户名

进行用户的切换。(root可以切普通,其他切换需要密码)

临时提权的命令(sudo)

通过sudo提高自身的权限,以操作其他的文件。

  • 只有加入配置文件有权限的用户才能进行临时提权(配置文件为/etc/sudoers,只有root才能进行操作)
  • 定位于配置文件当中,在其中加入可以提权的用户信息
    img

img

  • 最后就可以提高自己的权限来操作其他内容

文件权限

文件的权限分三类:(文件权限总共10个字符,第一个表示文件种类(-表示文本文件、d表示文件夹、l表示软链接),剩下的每三个一组,表示权限)

  1. 属主(所属用户)users(u)
  2. 属组(所属用户组别)group(g)
  3. 其他人(对其他人的权限)other(o)

权限

每三个一组的权限分别是,r、w、x,r为可读,w为可写、x为可执行。

注:文件权限可以通过ll(ls -l)查看。
img

权限更改

权限的管理:

chmod + 权限标志 +文件名

  • 修改权限的两种方法:

    1. 直接通过u、g、o三种用户的身份,加减r、w、x三种权限来使用
    # 为属主用户添加读、写和执行权限
    chmod u+r u+w u+x nh.txt
    # 为属组用户减去读、写和执行权限
    chmod g-r g-w g-x nh.txt
    chmod o+r o+w o+x nh.txt
    
    1. 将权限r、w、x转化为数字,以数字之和来表示权限,并根据一个三位数字的位数赋予权限。
      r 4 / w 2 / x 1
    # 为所有用户添加读写和执行权限
    chmod 777 nh.txt
    # 为属主用户留下执行权限,属组可读,其他人可以执行和写。
    chmod 143 nh.txt
    

    img
    img

更改文件所属

chown 更改文件属主

chown + 主名 将文件分配给某人
img
img
chgrp 更改文件属组

chgrp + 组名 将文件分配给某组
img

所以,此时admin用户就没法读写了,因为admin属于其他人。
img

软链接

可以理解为快捷方式

语法:
ln -s 目标文件 快捷方式名称
img

命令提示符(PS1)

它和PATH一样,是一个环境变量,改动一些提示。也就是输命令的地方:
img

用法如下:
img

img
img

linux语言切换

此项优化为可选项,根据个人情况选择是否调整Linux系统的字符集,字符集就是一套文字符号以及编码。

Linux下常用字符集有:

GBK  实际企业应用较少
UTF-8  广泛支持,MYSQL也使用UTF-8,企业广泛使用

    # 中文
        # vim /etc/profile.d/locale.sh
        export LC_CTYPE=zh_CN.UTF-8
        export LC_ALL=zh_CN.UTF-8

        # vim /etc/locale.conf
        LANG=zh_CN.UTF-8

        # vim /etc/sysconfig/i18n
        LANG=zh_CN.UTF-8

        # vim /etc/environment
        LANG=zh_CN.UTF-8
        LC_ALL=zh_CN.UTF-8
    # 英文
        # vim /etc/profile.d/locale.sh
        export LC_CTYPE=en_US.UTF-8
        export LC_ALL=en_US.UTF-8

        # vim /etc/locale.conf
        LANG=en_US.UTF-8

        # vim /etc/sysconfig/i18n
        LANG=en_US.UTF-8

        # vim /etc/environment
        LANG=en_US.UTF-8
        LC_ALL=en_US.UTF-8
    # 最后运行
    locale
posted on 2024-09-09 11:07  longsihua2003  阅读(15)  评论(0编辑  收藏  举报