解析:
增加用户帐号后
新建用户的命令十分简单,在命令行下使用 useradd 命令:
useradd david
该命令做了下面几件事:1)在 /etc/passwd 文件中增添了一个入口;2)在 /home 目录下创建新用户的主目录,并将 /etc/skel 目录中的文件拷贝到该目录中去;3)。但是使用了该命令后,新建的用户依然不能登录,因为还没有设置口令,需要再用 passwd 命令为其设置口令后,才能登录。用户的 UID 和 GID 是 useradd 自动选取的,它是将 /etc/passwd 文件中的 UID 加 1,将 etc/group 文件中的 GID 加 1。
useradd 命令中还有许多选项,它们的功能如下表:
选项
说明
-u
手工设置
UID
-g
手工设置
GID
-d
设置新用户的主目录
-G
使用户成为其他组的成员
3.2 理解 /etc/passwd 文件
/etc/passwd 文件是系统的主要文件之一。该文件中包含了所有用户登录名清单;为所有用户指定了主目录;在登录时使用的 shell 程序名称等。该文件还保存了用户口令;给每个用户提供系统识别号。
/etc/passwd 文件是一个纯文本文件,每行采用了相同的格式:
name:password:uid:gid:ment:home:shell
它们的含义如下:
域
说明
name
用户登录名
password
用户口令。此域中的口令是加密的。当用户登录系统时,系统对输入的口令采取相同的算法,与此域中的内容进行比较。如果此域为空,表明该用户登录时不需要口令。
uid
指定用户的
UID。用户登录进系统后,系统通过该值,而不是用户名来识别用户。
gid
GID。如果系统要对相同的一群人赋予相同的权利,则使用该值。
ment
用来保存用户的真实姓名和个人细节。
home
指定用户的主目录的绝对路径。
shell
如果用户登录成功,则要执行的命令的绝对路径放在这一区域中。它可以是任何命令。
3.3 建立新组
与建立新用户帐号十分类似,建立新组的命令是 groupadd:
useradd group-name
可以使用 -g 选项设定新组的 GID。0 到 499 之间的值留给 root、bin、mail 这样的系统帐号,因此最好指定该值大于 499。如果新组名或者 GID 已经存在,则返回错误信息。
3.4 理解 /etc/group 文件
/etc/group 文件文件的格式和 /etc/passwd 文件格式类似,它也是一个纯文本文件,定义了每个组中的用户。每行的格式是:
group_name:passwd:GID:user_list
它们的含义如下:
域
说明
group_name
组名
password
组口令。此域中的口令是加密的。如果此域为空,表明该组不需要口令。
gid
指定
GID。
user_list
该组的所有用户,用户名之间用逗号隔开。
3.5 用户管理
添加新用户后,如果对新用户的种种设置不满意,则可以通过 usermod 命令进行修改。
usermod 命令的一般格式为:
usermod -选项 相关内容 用户名
请参看下表:
命令
说明
usermod –s newshell path username
改变用户登录时使用的
shell。该 shell 应该是列入 /etc/shells 中的 shell。如果指定的 shell 或者程序名没有列入 /etc/shells,该用户将不能登录。注意,普通用户也能使用该命令。
usermod –d new home dic username
改变用户的主目录
usermod –u UID username
修改用户的
UID
usermod –g GID username
修改用户的默认组
usermod –e MM/DD/YY
修改用户帐号的有效期
除了 usermod 命令以外,还有一些修改用户信息的命令,比如修改口令的 passwd,修改个人信息的 chfn 等。
对于组的修改要相对简单一些,类似的使用 groupmod 命令,比如:
groupmod -n new-group current-group:改变组名;
groupmod -g new-GID groupname:改变 GID。
删除一个用户,使用类似的命令:userdel,其格式是:
userdel username
用户可以在终端通过cat命令查看:cat /etc/shadowNIX/Linux的密码文件原来采bai用/etc/passwd,共有7个字段。用户的密码加密后放在每一行的第二个字段里,这个 /etc/passwd文件在一般情况下是所有用户可读,只有root用户可写的,这样不良用户就可能读取加密后的密码字串来取得密码。
因为这个安全原因,设置一个/etc/shadow文件专门用于保存密码且它的权限一般是root可读,没有其他权限。加密后的密码文件就不能被普通用户读取。做法是把/etc/passwd对应的密码字段用*号表示,在/etc/shadow里对应的一行,有用户名和真正的密码加密字串,其他的字段一般留空。
扩展资料:
在Linux中普通文件和目录文件保存在称为块物理设备的磁盘或者磁带上。一套Linux系统支持若干物理盘,每个物理盘可定义一个或者多个文件系统。(类比于微机磁盘分区)。每个文件系统由逻辑块的序列组成,一个逻辑盘空间一般划分为几个用途各不相同的部分,即引导块、超级块、inode区以及数据区等。
用户信息文件存放路径:/etc/passwd
通过 # cat /etc/passwd命令来查看/etc/passwd配置文件的信息如下:
以root用户信息为例: root:x:0:0:root:/root:/bin/bash共7个字段,并以:进行了分割
Linux用户分为三种:
超级用户(root,UID=0)
普通用户(UID 500-60000)
伪用户(UID 1-499)
所以,在linux里面,只要UID为0的用户就是超级用户也就是你想把哪个普通用户升级为超级用户,只需要把他的UID改为0就可以了
在创建用户时,默认生成的UID都是在500-60000之间,如果要指定UID,也同样要遵守这个规则,已经存在的UID,不能重复指定.
伪用户就是用来被系统调用的用户.
--与系统和程序服务相关比如,bin、shutdown等
--任何linux系统默认都有这些伪用户mail、news、games、apache、ftp、mysql等
--与linux系统的进程相关
伪用户通常不需要或无法登录系统,并且伪用户可以没有宿主目录.
关于用户组(GID)
--每个用户都至少属于一个用户组
--每个用户组可以包括多个用户
--同一用户组的用户享有该组共有的权限
注释性描述,主要是创建用户时,对这个用户进行的一个信息备注,以便识别
查看有无此用户信息,可以执行grep 用户名 /etc/passwd
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)