zoukankan      html  css  js  c++  java
  • Linux_用户和权限管理

    目录

    用户管理基础知识

    vim /etc/passwd 保存用户账号信息
    vim /etc/shadow 保存用户密码信息
    vim /etc/group 保存组账号文件信息
    vim /etc/gshadow 保存组密码信息

    用户分为:root用户、虚拟用户、真实用户。
    1、root用户
    2、虚拟用户:不具有登陆系统功能,是系统运行的必须用户。
    3、真实用户:具有登陆系统功能,由root用户创建

    用户组分为:基本组,附加组。
    基本组:是用户创建文件或者目录,默认属于基本组。
    附加组:可以通过系统命令来附加到现有的组中。

    用户管理指令

    useradd

    useradd 添加用户
    useradd -u 888 Jmilk 创建UID为888的用户Jmilk
    useradd -d /fgj Jmilk 创建用户Jmilk并将其宿主目录指定为fgj,即在根目录下创建fgj目录
    useradd -e 2080-01-17 Jmilk 指定账户失效时间
    useradd -g caiwubu chuna 创建并指定用户组gid,主文件夹的属组为caiwubu,gid、groups均为caiwubu
    useradd -G caiwubu kuaiji 创建并附加用户组 在/etc/group中显示kuaiji属于caiwubu的用户组(增加到caiwubu的用户列表中),groups增加caiwubu(同时属于自身的组,也附加到caiwubu的组中)
    useradd test -s /sbin/nologin 指定用户的默认登录时,加载的Shell,常常用于限制特殊用户无法登录(nologin)。

    userdel

    userdel 删除用户
    userdel qin
    userdel -r qin 删除用户和用户的home目录

    passwd

    passwd 修改用户密码
    passwd jmilk 修改jmilk的密码
    passwd -l jmilk 锁定用户账号,会将/etc/shadow文件中的用户密码项目替换成!!号(禁用用户不能登录)
    passwd -uf qin 解锁用户(解开用户锁,是用户可以登录)
    passwd -S 查看用户账号状态
    passwd -d 清空用户密码,使之不需要密码即可登录

    usermod

    usermod 修改用户属性
    usermod -l 更改用户账号的登录名称
    usermod -L jmilk 锁定用户账号,和passwd -l的作用一样
    usermod -U jmilk 解锁用户账号
    usermod -p 123456 jmilk

    chage

    chage -d 0 qin 指定自从1970年1月1日起,密码被改变的天数

    su

    su 切换身份
    su qin
    su - qin

    id

    id //查询用户uid、gid、groups
    id jmilk 查询jmik用户的UID、GID、Groups

    who

    w who 查询已登录到主机的用户信息

    chmod

    chmod 设置用户对文件额目录的访问权限
    chmod o+r /root/Desktop/qin 给普通用户增加r权限
    chmod -R a+x /root/Desktop/qin qin目录下的所有文件的所有用户增加x权限
    chmod g=rw /root/Desktop/qin/1 1文件的组权限为rw
    chmod 750 /root/Desktop/qin 用数字表示权限设置
    chmod 640 /root/Desktop/qin/1

    chown

    chown 修改文件或目录的属组和属主
    chown jmilk:root /root/Desktop/jmilk/testFile 修改属主和属组
    chown :jmilk /root/Desktop/jmilk/testFile 修改属组
    chown -R root:root /root/Desktop/jmilk/
    Example:
    mkdir /jmilk
    touch /jmilk/ok
    su - jmilk
    rm /jmilk/ok 会提示权限不够,需要把上级文件的权限都修改够来才行。

    s权限、t权限

    s权限:其他用户执行该文件时,将拥有属主或属组的权限;
    SUID:表示对属主用户增加SET位权限;
    SGID:表示对属组内的用户增加SET位权限(只能对设置u用户的s权限)
    S表示文件或目录还没有x权限 s表示文件或目录已经拥有x权限
    chmod u+s /root/Desktop/jmilk/testFile
    u+s只对文件有效,可以用于对命令文件进行访问限制
    g+s对文件或目录有效

    t权限:也叫粘滞位,主要用于为目录设置特殊的附加权限,当目录被设置粘滞位权限后,即便用户对该目录有写入权限,也不能删除该目录中其他用户的文件数据。设置了粘滞位权限的目录,使用ls命令查看其属性时,其他用户权限处的“x”将变为“t”。
    一般用于实现在公共目录下,用户不能删除该目录中其他用户创建的文件(例如,权限为1777的)设置,权限字符为“t”
    注意:要对一个文件使用T权限,必须让文件的路径目录全加上T权限

    Example
    chmod g+s /root/Desktop/jmilk/

    ll /usr/bin/passwd
    chmod u-s /usr/bin/passwd 令普通用户不能修改密码

    chmod o+t /root/Desktop/jmilk/
    chmod 4644 /root/Desktop/jmilk/testFile

    acl

    setfacl -m u:jmilk:rwx -R /root/Desktop/jmilk
    setfacl -m g:jmilk:rw /root/Desktop/testFile
    getfacl /root/Desktop/jmilk/testFile

    Jmilk

  • 相关阅读:
    Android Studio 配置快速生成模板代码
    Android开发 AndroidViewModel详解
    adb命令 logcat日志抓取
    Android开发 自定义View_白色圆型涟漪动画View
    Java Queue队列
    Java 几种队列区别的简单说明
    Android开发 retrofit下载与上传
    Android开发 retrofit入门讲解 (RxJava模式)
    Java学习 时间类 Period类与Duration类 / LocalDate类与Instant类 用法详解
    Java 学习 时间格式化(SimpleDateFormat)与历法类(Calendar)用法详解
  • 原文地址:https://www.cnblogs.com/jmilkfan-fanguiju/p/7533800.html
Copyright © 2011-2022 走看看