zoukankan      html  css  js  c++  java
  • Linux基础(二)

    一、用户

    在Linux系统中,一切皆文件。当我们用useradd命令添加一个用户user1时,会在文件系统中产生以下文件

    1. /etc/passwd

    用vi编辑器打开这个文件,可以看到第一行如下

    root:x:0:0:root:/root:/bin/bash

    可以发现这段代码被6个冒号分成7段,我们来说一下这7段分别代表什么

    1)root 是用户名

    2)x 是密码占位符,如果用在vim编辑器中把x改成无,那root密码就被清除了

    3)0 是uid,就是用户id

    4) 0 是组id,是群组id

    5) 第五部分是用户描述信息,可有可无

    6)是用户的家目录,普通用户的家目录是/home,root用户的家目录是/root

    7)第七部分有两种情况,一种是bin/bash,代表该用户可以登录,另一种是sbin/nologin,表示用户不可以登录

    2./etc/shadow

    这个文件用来存放用户密码,用vi编辑器打开

    zhangcan:$6$e4sqB6e.$p6XAimGr/T0oo/qeRM88kKUVFUKl.1qBozzFniq2nnGDSlqTL8q1QyuCBdT8qgwaYYuV28Ew9LgBzCREyjVV81:17769:0:99999:7:::

    第二段就是加密后的密码

    3./etc/group

    这个文件用来存放组文件,用vi编辑器打开

    zhangcan:x:1000:zhangcan

    被冒号分开的第一部分是组名,第二部分是组密码占位符,第三部分是组ID,第四部分是组内成员

    4./etc/gshadow

    这个文件存放组密码,但很少会设置组密码

    5./home/user1

    这个是新建用户的家目录

    6./var/spool/mail/user1

    这个文件用来存放用户的邮箱

    vim的使用

    vim 路径进入vi编辑器

    a 插入模式,方向键控制光标

    esc 退出编辑模式

    :wq 保存退出vi编辑器

    yy 复制一行

    p 粘贴

    G 移动到最后一行

    删除用户

    userdel -r 用户  就可以删除一个普通用户,必须加 -r,才能把创建的全部文件删除

    手动创建一个新用户user2

    我们已经知道创建一个新用户会产生上述7个新文件,那我们自己添加这7个文件就可以手动创建一个新用户了

    1.vim /etc/passwd

    在最后一行添加

    user2:x:1005:1005::/home/user2:/bin/bash

    2.vim /etc/shadow

    最后一行添加

    user2:!!:17310:0:99999:7:::

    3.vim /etc/group

    最后一行添加

    user2:x:1005:

    4.vim /etc/gshadow

    最后一行添加

    user2:!::

    5.要新建一个用户家目录,mkdir /home/user2

    但是家目录下并不是空的,有一些隐藏文件,我们可以从模板里面去拷贝,模板在/etc/skel/ 中,代码如下

    [root@localhost /]# cp -r /etc/skel/.[!.]* /home/user2

    6.新创建一个邮箱文件

    [root@localhost /]# touch /var/spool/mail/user2

    这样,我们就手动创建了一个用户user2

    二、群组

    我们用useradd创建新用户user1时,用户所属的群组就是默认创建的user1 

    当我们用手动方式创建新用户user2时,默认用户所属的群组是root

    当然我们也可以以指定信息的方式创建用户,如

    [root@localhost /]# useradd user1 -u 1003 -g 0 -c'script' -d /home/aaa -s /bin/sbash

    其中 -u 表示uid, -g 表示主组,0代表的是root组,-c 表示描述信息, -d 表示家目录, -s 表示 shell信息

    也可以在创建好用户后手动修改用户的组,用命令usermod ,如usermod user1 -g 1,1 代表bin组

    这种方式是用覆盖的方式,把user1的主组改成bin,如果是追加的方式,要用 usermod user1 -a -G group2

    可以用chown 命令修改文件的属主,如chown root:user1 /home/user1,这样就将user1 的属主改成了root

    删除组 groupdel 组

    三、权限

    1.用ls -l 查看一个文件时,可以看到前边有一段权限信息,类似-rw-r--r--.这样,其中

    第一个 - 表示是普通文件,另外还有

         d 表示是目录文件

       b 表示是块设备文件

         l 表示是软链接文件,类似Windows中的快捷方式

       p 表示是管道文件

    然后剩下的9个,三个一组,第一组是对应文件的属主对该文件的权限

                第二组是对应文件的属组对该文件的权限

                第三组是对应文件的其他用户(非属主和属组的用户)对该文件的权限

      最后那个.表示是该文件是在SELinux模块下写的

      r:read 读权限      对应数字4

       w:write 写权限       对应数字2

       x:execute 执行权限    对应数字1

    1)修改属主属组 chown 属主:属组 文件名

    2)修改权限 chmod u=rwx,g=r,o=- 文件名

      u代表属主,g代表属组,o代表其他用户

      -代表无任何权限

    3)修改目录权限,同时修改目录下所有子文件的权限,用chmod -R

    4)实际操作中最常用数字代表权限,如chmod 764 a.txt

    2.文件的权限

       读:可以读文件内容

       写:可以修改文件内容

       执行:可以把文件当做程序去执行

    3.目录的权限

       读:可以浏览到该目录下的子目录和子文件名

       写:可以新建文件、重命名文件,删除文件

       执行:可以cd进目录

  • 相关阅读:
    python操作Excel表格
    Spring的AntPathMatcher(路径匹配)
    【纪中受难记】——Day17:本来能AK
    PAT (Basic Level) Practice (中文)1009 说反话 (20 分)
    PAT (Basic Level) Practice (中文)1008 数组元素循环右移问题 (20 分)
    PAT (Basic Level) Practice (中文)C++ & python 语言实现 —— 题解目录
    PAT (Basic Level) Practice (中文)C++ & python 语言实现 —— 题解目录
    PAT (Basic Level) Practice (中文)1007 素数对猜想 (20 分)
    PAT (Basic Level) Practice (中文)1007 素数对猜想 (20 分)
    PAT (Basic Level) Practice (中文)1006 换个格式输出整数 (15 分)
  • 原文地址:https://www.cnblogs.com/zhang-can/p/6900004.html
Copyright © 2011-2022 走看看