zoukankan      html  css  js  c++  java
  • 2017.7.18 linux下用户、组和文件的操作

    参考来自:《鸟叔的linux私房菜(基础学习篇)-第14章》

    0 目的

    在linux下搭建ELK环境时,因为elasticsearch不能在root下操作,所以要为其新增一个用户,以及随之的一些操作。

    主要涉及:

    1 创建新用户组和新用户
    2 将新用户添加到新组
    3 创建用户主目录
    4 让新用户获得其主目录有文件的拥有权限
    5 设置新用户的密码

    1 etc/passwd、 etc/shadow、etc/group

    1.1 etc/passwd 文件

    etc/passwd 保存了账号信息,可以查看现在已经建立好了elkuser的账号。

    一行代表一个账号,字段依次为:账号名称,密码(全用x代替,实际存放在etc/shaow中),UID(0为系统管理员,1~499为系统账号,其他为普通账号),GID,用户信息说明,主文件夹(这里为elkuser),shell(默认使用bash)。

    1.2 etc/shadow文件

    etc/shadow里保存了密码和权限等信息。一行代表一个账号,一共9个字段,详细的就略过了。

    1.3 etc/group文件

    (1)文件内容

    etc/passwd 保存了群组信息,可以查看现在已经建立好了elkgroup的群组。

    一行代表一个账号,字段依次为:群组名称,密码(全用x代替,实际存放在etc/shaow中),GID(可以看到和前面passwd中elkuser的GID列数字相同),此用户组支持的账户(可以看到这里为空,后面有解释)

    (2)有效群组和初始群组

    a.存储在etc/passwd中GID列对应的群组,即为该账号的initial group初始群组,不需要写在etc/group文件中的第四列

    实际上,查询一下groups,可以知道elkuser是属于elkgroup的。

    b.如果将elkuser加入到另一个群组anothergroup中,那么必须要将elkuser加入到etc/group中对应的行中第四列,即非initial group,必须要显示写在etc/group文件里。

    c.现在elkuser同时属于:elkgroup、anothergroup。如果现在要新建一个文件或目录,那么这个新文件的组是elkgroup,还是anothergroup?

    输入命令groups,结果中的第一列即为effective group。这个新文件属于这个effective group

    d.切换effective group使用命令:

    1 newgrp anothergroup

    2 账号管理

    2.1 新增用户

    1 -u:指定userid
    2 -g:指定initial group,没有-g则默认创建和user同名的group
    3 -G:指定其他group
    4 -m:强制创建主文件夹,与user同名
    5 其他的-xxx命令略。

    2.2 设置密码

    使用useradd创建用户时,默认情况下,账户是被锁定的。因为密码没有设置。ps:这里提示的密码过短的错误可以无视。修改密码也可以用这个命令。

    不加后面的用户名lyhtest,表示修改当前用户的密码,所以一定要小心!

    2.3 修改用户

    1 -l:修改username
    2 -d:修改主目录
    3 -g:修改initial group
    4 -G:修改普通group

    修改了名字之后,同时要注意的是lyhtestuser的主目录并没有同步更改。

    2.4 删除用户

    1 -r:同时删除主目录

    3 用户组管理

    3.1 新增用户组

    1 -g:指定id
    2 -r:指定groupname

    3.2 修改用户组

    1 -g:修改groupid,最好不要改
    2 -n:修改groupname

    3.3 删除用户组

     

    但是删除elkgroup时报了错,因为elkuser还在,它的初始用户组elkgroup不能被删掉。

    3.4 用户组管理员

    如果系统管理员比较忙碌,那么可以为某一个用户组增加一个用户组管理员,这个用户组管理员就可以管理这个用户组的账号加入/移除。

     可以看到lyhtestuser已经成为了用户组管理员:

    转换到此用户登录,将用户lyhtestuser2加入/移除到用户组里。

    这里要注意的是:系统管理员root为用户组lyhtestgroup增加用户组管理员lyhtestuser时,用的是-A,而用户组管理员lyhtestuser为用户组lyhtestgroup增加用户lyhtestuser2时,用的是-a。另外,从用户组删除用户是-d。

    4 完成目的

  • 相关阅读:
    基于Metaweblog API 接口一键发布到国内外主流博客平台
    uva144 Student Grants
    Uva 10452
    Uva 439 Knight Moves
    Uva 352 The Seasonal War
    switch语句
    java——基础知识
    我的lua学习2
    codeforces 431 D. Random Task 组合数学
    codeforces 285 D. Permutation Sum 状压 dfs打表
  • 原文地址:https://www.cnblogs.com/lyh421/p/7206050.html
Copyright © 2011-2022 走看看