zoukankan      html  css  js  c++  java
  • 【搬砖】/etc/passwd 文件结构

    文件的内容:

    每个Linux都会有root账号,以此来说明,从内容上看,每行都使用【:】分隔(注意:每行前面的数字是行号,不是内容),所以一共有七部分内容,分别是:

    1. 账号名称:root,用来对应UID

    2. 口令:x

     早期Unix系统的口令放在这个字段。但因为这个文件对所有用户都是可读取的(ls -l /etc/passwd 即可看出来),这样容易造成口令被窃的风险,因此之后这个口令放到/etc/shadow文件中了。该位置就保留了一个【x】,没啥含义。

    3. 使用者标识符:UID

     Linux对UID的限制如下所示——

    id 范围 该 ID 使用者特性
    0
    (系统管理员)
    当 UID 是 0 时,代表这个账号是『系统管理员』! 所以当你要让其他的账号名称也具有 root 的权限时,将该账号的 UID 改为 0 即可。 这也就是说,一部系统上面的系统管理员不见得只有 root 喔! 不过,很不建议有多个账号的 UID 是 0 啦~
    1~499
    (系统账号)
    保留给系统使用的 ID,其实除了 0 之外,其他的 UID 权限与特性并没有不一样。默认 500 以下的数字让给系统作为保留账号只是一个习惯。

    由于系统上面启动的服务希望使用较小的权限去运行,因此不希望使用 root 的身份去运行这些服务, 所以我们就得要提供这些运行中程序的拥有者账号才行。这些系统账号通常是不可登陆的, 所以才会有我们在第十一章提到的 /sbin/nologin 这个特殊的 shell 存在。

    根据系统账号的由来,通常系统账号又约略被区分为两种:
    1~99:由 distributions 自行创建的系统账号;
    100~499:若用户有系统账号需求时,可以使用的账号 UID。
    500~65535
    (可登陆账号)
    给一般使用者用的。事实上,目前的 linux 核心 (2.6.x 版)已经可以支持到 4294967295 (2^32-1) 这么大的 UID 号码喔!

    所以,UID为0的时候,就是root。

    4. 用户组:GID

     这个与/etc/group有关。

    5. 用户信息说明栏:root

     用来解释账号的意义。

    6. 家目录:/root

     root的家目录就是 /root 喽!可以观察普通用户的家目录就是你登陆后默认进入的目录。

    7. shell

    用户登陆系统后会取得一个shell来与系统核心沟通以进行用户的操作任务。因为在这个地方配置的就是bash,所以默认使用的就是这个bash了。

    参考:http://cn.linux.vbird.org/linux_basic/0410accountmanager_1.php

    (完)

  • 相关阅读:
    MySQL学习之——锁(行锁、表锁、页锁、乐观锁、悲观锁等)
    MySQL 行锁 表锁机制
    数据库中悲观锁和乐观锁
    NYOJ 116 士兵杀敌(二)【线段树 单点更新】
    java模拟而一个电话本操作
    Protostuff具体解释
    Java之enum
    muduo::Connector、TcpClient分析
    Android性能优化之中的一个 布局优化
    linux c 网络编程:用域名获取IP地址或者用IP获取域名 网络地址转换成整型 主机字符顺序与网络字节顺序的转换
  • 原文地址:https://www.cnblogs.com/lishidefengchen/p/11672594.html
Copyright © 2011-2022 走看看