【1】/etc/passwd文件 记录用户相关信息
1)cat /etc/passwd 查看passwd文件
2)/etc/passwd文件的字段包含了如下信息:
登录用户名
用户密码;
用户账号的UID
用户账号的GID
用户账号的文本描述(备注字段)
用户HOME目录的位置
用户的默认shell
注:/etc/passwd文件中的密码字段都被设置成了X,这并不是说所有的用户账号都用相同的密码。
linux系统将用户密码保存在另一个单独的文件中(称为shadow文件,位置在etc/shadow)
【2】/etc/shoadow文件
1)/etc/shadow文件能对Linux系统如何管理密码有更多控制,只有root用户才能访问
2)在etc/shadow文件中的每条记录有9个字段:
与/etc/passwd文件中的登录名对应的登录名;
加密后的密码;
自1970年1月1日(上次修改密码的日期)到当天的天数;
多少天后才能更改密码
多少天后必须更改密码
密码过期前提前多少天提醒用户更改密码
密码过期后多少天禁用用户账号
用户账号被禁用的日期
预留字段,给将来使用
【3】useradd 添加新用户
useradd命令使用系统的默认值以及命令行参数来设置用户账户
1)useradd -D 查看你的linux系统的系统默认值
-D参数显示了在创建新用户时如果你不在命令行指定的话useradd命令将使用的默认值
默认值:
GROUP=100 新用户会被添加到GID为100的公共组
HOME=/home 新用户的HOME目录将会位于/home/loginname
INACTIVE=-1 新用户账户密码在过期后不会被禁用
EXPIRE= 新用户账户未被设置为某个日期后就过期
SHELL=/bin/sh 新用户账户将bash shell作为默认shell
SKEL=/etc/skel 系统会将/etc/skel目录下的内容复制到用户的HOME目录下
CREATE_MAIL_SPOOL=no 系统为该用户账户在mail目录下创建一个用于接收邮件的文件
2)要想在创建用户时改变默认值或默认行为,可以使用命令行参数
-c comment 给新用户添加备注
-d home_dir 为主目录指定一个名字
-m 创建用户的HOME目录
-M 不创建用户的HOME目录
。。。。
useradd -m test
3)如果发现你一直需要修改一个值是,最好修改系统的默认值
可以用-D参数后跟一个代表要修改的值的参数,来修改系统默认的新用户值。
-b default_home 更改默认的创建用户HOME目录的位置
-e expiration_date 更改默认的新账号的过期日期
-f inactive 更改默认的新用户从密码过期到账户被禁用的天数
-g group 更改默认的组名称或GID
-s shell 更改默认的登录shell
useradd -D -s /bin/tsch
useradd -D
【4】userdel 删除用户
userdel命令只删除/etc/passwd文件中的用户信息,而不会删除系统中属于该账号的任何文件。
如果加上-r参数,会删除用户的HOME目录以及mail目录。系统上扔可能存有已删除用户所有的其他文件。
userdel -r test
【5】usermod 修改用户
可以修改/etc/passwd文件中的大部分字段
-c 修改备注字段 usermod -c '123' test
-e 修改过期日期
-g 用来修改默认的登录组
-l 修改用户账号的登录名
-L 锁定账户,这样用户就无法登录了
-p 用来修改账户的密码
-U 用来解除锁定,解除后用户就能登录了。
【6】passwd和chpasswd修改用户密码
passwd test
【7】groupadd创建新组
groupadd shared 创建新组
usermod -G shared test 添加用户test到shared组
【8】groupmod修改组
groupmod命令可以修改已有组的GID(加-g参数)或组名(-n参数)
groupmod -n sharing shared
【9】chmod命令 改变权限
chmod options mode file
chmod 760 newfile
【10】chown命令 改变所属关系
chown命令用来改变文件的属主
chgrp命令用来改变文件的默认属组
可以用登陆名或UID来指定文件的新属主
chown siru90 newfile \\ chown 1001 newfile (UID形式)
ls -l newfile
-rw-r--r-- 1 siru90 root 10240 Aug 27 04:03 newfile
chown命令也支持同时改变文件的属主和属组
chown siru90.shared newfile
ls -l newfile
-rw-r--r-- 1 siru90 siru90 10240 Aug 27 04:03 newfile
chgrp命令更改文件或目录的默认属组
chgrp shared newfile