zoukankan      html  css  js  c++  java
  • Linux背背背(6)

    目录

    1.用户

    2.用户组

    3.权限设置

    用户管理

    添加用户

    命令:useradd

    语法:#useradd 用户名

    所有的用户添加之后都会存储在一个文件中,会存储在passwd文件中,位置位于/etc/passwd

    tcpdump:x:72:72::/:/sbin/nologin
    pl:x:1000:1000:centos:/home/pl:/bin/bash
    
    
    天蓝色:表示用户名;
    紫色:x表示密码部分。此段的x并非表示密码是x,而是一个占位符;因为passwd文件是每个用户都有读权限,所以如果将紫色部分直接显示密码肯定是不安全的,所以Linux中密码是单独的存储在另外一个文件中,使用了shadow的技术,将密码等重要信息存储在shadow文件中,文件的位置在/etc/shadow。
    前面的红色数字:表示是用户的id;
    后面的红色数字:表示用户的用户组id;
    蓝色:注释或者说是备注;
    绿色:用户对应的家目录位置;
    黄色:表示用户所对用的解释器的位置,如果后面是bash则表示该用户可以登录系统,如果是nologin,则表示该用户无法登录操作系统;

    设置密码

    命令:passwd

    语法:#passwd 需要设置密码的用户名

    用户编辑

    命令:usermod       (user modify)

    语法:#usermod 参数 需要修改的用户名

    参数说明:

                      在Linux中,经常会用到的用户修改的参数有2个。

                       -l:表示给后面传递的用户修改用户名,语法格式:usermod -l 新的用户名 需要修改的用户名

                       -g:表示给后面传递的用户名修改用户组,语法格式:usermod –g 用户组id 需要修改的用户名

    删除用户

    命令:userdel         (user delete)

    语法:#userdel 用户名

    删除时报错userdel: user superstar is currently used by process 1
    
    使用强制删除vipw
    
    root@ www.linuxidc.com :/home# vipw
    
    找到你之前创建的用户,用dd删除那行(记得保存:wq or :x)。。之后。
    
    root@ www.linuxidc.com :/home# vipw -s
    
    找到那个用户所属组,也dd干掉即可(记得保存:wq or :x)
    
    为什么要vipw -s呢?原因只有一个,必须保证数据的一致性,不然可能会造成系统崩溃或者一些莫名其妙的问题 
    
    命令小解:
    
    root@ www.linuxidc.com :/home# vipw --help 
    
    用法:vipw [选项]
    
    选项: 
    
      -g, --group                  编辑 group 数据库  
      -h, --help                    显示此帮助信息并推出  
      -p, --passwd                  编辑 passwd 数据库  
      -q, --quiet                  安静模式  
      -R, --root CHROOT_DIR        chroot 到的目录  
      -s, --shadow                  编辑 shadow 或 gshadow 数据库 

    用户组管理

    添加用户组

    命令:groupadd

    语法:#groupadd 用户组名

    china:x:1002:

    扩展:group文件中每个颜色所表达的含义

    天蓝色:表示用户组的名字;

    紫色:x表示密码的占位符,但是这个占位符没有意义,真的不存在密码;

    红色:用户组的id;

    最后的天蓝色:表示当前用户组内的成员名称;

    蓝色:表示备注说明;

     

    用户组编辑

    命令:groupmod    (group modify)

    语法:#groupmod 参数 用户组名

    参数说明:

                       常规的用户组编辑操作就需要了解用户组的重命名

                       语法格式:#groupmod -n 新的用户组名 旧的用户组名

    用户组删除

    命令:groupdel

    语法:#groupdel 需要删除的用户组名

    注意:如果这个用户组中存在用户的话,则该用户组是无法直接删除的,如果需要删除的话,则可以先将组内的成员删除掉或者移动到别的组,然后才可以删除当前的用户组

    特别说明

    在Linux中只有超级管理员权限才能对用户和用户组进行设置,其他的用户一律没有权限设置

    权限设置

    权限设置主要是针对用户和用户组对于文件/文件夹的一个操作限制,只有有权限才能进行相应的设置,没有权限则设置不了。

    在Linux中如何去查看一个文件/文件夹的权限呢?

    答:可以通过ls的第2种、第3种用法来查看权限的信息。(通过ls的-l参数来查看)。

    -rw-r--r--.  1 root root 1145 Jun 26 16:39 !
    dr-xr-x---.  4 root root 4096 Jun 26 19:14 .
    
    第1个字符:表示文档的类型,d表示是目录,-表示是文件;
    第2~4个字符:表示文件所有者的权限情况(u表示,user);
    第5~7个字符:表示所有者同组的组内成员的权限情况(g表示,group);
    第8~10个字符:表示除上述两类人员的其他用户的权限情况(o表示,other);

    通过字符形式设置权限

    命令:chmod

    语法:#chmod 权限组成信息 需要操作的对象(文件夹/文件)

    需要注意,如果操作的对象是文件夹,则需要加上-r参数,表示递归赋予权限

    权限的组成信息,将语法进行拆分:

    第一个情况:针对单个对象(ugo)的拆分

             给某个组成部分添加读权限:#chmod u+r,g+r,o+r 需要操作的文件/文件夹

    给某个组成部分删减读权限:#chmod u-r,g-r,o-r 需要操作的文件/文件夹

    给某个组成部分的权限设置成一个目标值:例如将50.txt文件的权限全部的组成部分设置成rwx,则命令可以写成:#chmod u=rwx,g=rwx,o=rwx 文件名/文件夹名

    第二个情况:设置全部的组成部分:

             可以使用下面的这个语法:

                                #chmod a+r 文件             (表示给全部的组成部分添加读权限)

                                #chmod a-r 文件              (表示给全部的组成部分删减读权限)

                                #chmod a=rwx 文件       (表示给全部的组成部分权限设置成刻度可行可执行)

    其中a表示全部(ugo组合)

    通过数字的形式来设置权限

    在Linux权限体系中支持使用数字的形式来表示权限的信息,比如说777表示全部的权限。

    4表示读权限

    2表示写权限

    1表示执行权限

    例如:如果说我想把50.txt这个文件的权限设置成所有者拥有全部权限,同组用户拥有读写权限,其他用户拥有读权限,则数字形式该写成?

    全部权限=读+写+执行=4+2+1=7

    读写权限=读+写=4+2=6

    读权限=4

    所以最终的权限数字应该是764

    友情提示

    在以后实际工作不要出现一个奇葩的权限:-wx。不要出现类似这样的权限,原因是读权限是最基本的,而你如果想写入,则必须先打开文件

  • 相关阅读:
    Tomcat-servlet基础
    JAVA中的配置文件XML
    js中关于new Object时传参的一些细节分析
    Javascript模块化编程(二):AMD规范
    javascript模块化编程(一)(http://www.ruanyifeng.com/blog/2012/10/javascript_module.html)
    node.js(API解读)
    Cesium学习笔记(五):3D 模型 (http://blog.csdn.net/umgsoil/article/details/74572877)
    图解WebGL&Three.js工作原理
    批量obj格式直接转gltf
    Cesium学习笔记(九):导入3D模型(obj转gltf)
  • 原文地址:https://www.cnblogs.com/iampengl/p/9230485.html
Copyright © 2011-2022 走看看