/etc/passwd 注:用户(user)的配置文件;

/etc/shadow 注:用户(user)影子口令文件;

¾ 与用户组(group)相关的配置文件

/etc/group   注:用户组(group)配置文件;

/etc/gshadow 注:用户组(group)的影子文件;

4.3.1 Linux系统用户管理的命令

管理用户(user)的工具或命令

useradd  注:添加用户

adduser 注:添加用户

userdel 注:删除用户

passwd 注:为用户设置密码

usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等

pwconv 注:同步用户从/etc/passwd /etc/shadow

pwck 注:pwck是校验用户配置文件/etc/passwd /etc/shadow 文件内容是否

合法或完整;

pwunconv 注:是pwcov 的立逆向操作,是从/etc/shadow /etc/passwd 创建

/etc/passwd ,然后会删除 /etc/shadow 文件;

finger   注:查看用户信息工具

id       注:查看用户的UIDGID及所归属的用户组

chfn 注:更改用户信息工具

su 注:用户切换工具

sudo 注:sudo 是通过另一个用户来执行命令(execute a command as

another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,

sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的

执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;

visudo 注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接

vi 来编辑 /etc/sudoers 的效果是一样的;

sudoedit 注:和sudo 功能差不多

4.3.2 Linux系统用户组管理的命令

管理用户组(group)的工具或命令

groupadd 注:添加用户组;

groupdel 注:删除用户组;

groupmod 注:修改用户组信息;

groups     注:显示用户所属的用户组;

grpck/grpconv 注:通过/etc/group/etc/gshadow 的文件

内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在

则创建;

grpunconv 注:通过/etc/group /etc/gshadow 文件内容

来同步或创建/etc/group,然后删除gshadow文件。

4.3.3 Linux系统用户主目录文件

/etc/skel 目录

/etc/skel目录一般是存放用户启动文件的目录,这个目录是由root权限

控制,当添加用户时,这个目录下的文件自动复制到新添加的用户的家目

录下;/etc/skel 目录下的文件都是隐藏文件,也就是类似.file格式

的;我们可通过修改、添加、删除/etc/skel目录下的文件,来为用户提

供一个统一、标准的、默认的用户环境。

/etc/skel 目录下的文件,一般是用useradd adduser 命令添加用户

user)时,系统自动复制到新添加用户(user)的家目录下;如果我们

通过修改 /etc/passwd 来添加用户时,我们可以自己创建用户的家目

录,然后把/etc/skel 下的文件复制到用户的家目录下,然后要用chown

来改变新用户家目录的属主。

4.3.4 Linux系统用户管理相关文件

/etc/default/useradd 文件

通过useradd 添加用户时的规则文件

内容如下:

# useradd defaults file

GROUP=100

HOME=/home 注:把用户的家目录建在/home中;

INACTIVE=-1 注:是否启用帐号过期停权,-1表示不启用;

EXPIRE= 注:帐号终止日期,不设置表示不启用;

SHELL=/bin/bash 注:所用SHELL的类型;

SKEL=/etc/skel 注: 默认添加用户的目录默认文件存放位置;也就是

说,当我们用adduser添加用户时,用户家目录下的文件,都是从这个目

录中复制过去的;

4.3.5 Linux系统用户管理相关文件

/etc/login.defs 配置文件

/etc/login.defs 文件是当创建用户时的一些规划,比如创建用户时,

是否需要家目录,UIDGID的范围;用户的期限等等,这个文件是可以

通过root来定义的;

比如Fedora /etc/logins.defs 文件内容(注释删除后的内容)

MAIL_DIR /var/spool/mail  注:创建用户时,要在目录

/var/spool/mail中创建一个用户mail文件;

PASS_MAX_DAYS 99999       注:用户的密码不过期最多的天数;

PASS_MIN_DAYS 0           注:密码修改之间最小的天数;

PASS_MIN_LEN 5            注:密码最小长度;

PASS_WARN_AGE 7           注:UID_MIN 500 注:最小UID500 ,也

就是说添加用户时,UID 是从500开始的;

UID_MAX 60000             注:最大UID60000

GID_MIN 500               注:GID 是从500开始;

GID_MAX 60000

CREATE_HOME yes           注:是否创用户家目录,要求创建;

4.3.6 Linux系统用户文件权限定义-umask

默认权限分配的命令 umask

umask 是通过八进制的数值来定义用户创建文件或目录的默认权限,umask

表示的是禁止权限,不过文件和目录有点不同:

新创建的文件默认不具有可执行允可权限:-rw-------新创建的目录默认具有可执行允可权限: drwx--x--x

对于文件来说,umask 的设置是在假定文件拥有八进制666权限上进行,文

件的权限就是是666减去umask的掩码数值;

对于目录来说,umask 的设置是在假定文件拥有八进制777权限上进行,目

录八进制权限777减去umask的掩码数值

umask 文件 目录

067

156

245

334

423

512

601

700

系统用户的家目录的权限是通过在配置文件中指定

的,比如Fedora 中是用的 /etc/login.defs

件;其中有这样一段:

CREATE_HOME yes

UMASK 077

表示的意思是,当我们创建用户时,他的家目录

umask的数值是077 。我们怎么理解这个077呢。当

用户添加时,系统自动在/home中创建用户的家目

录,并且设置它的权限为777-077=700 ,也就是

rwx------

4.3.8 Linux系统用户管理举例

添加test用户,该用户属于workgroup

添加组:

#groupadd –u 1000 workgroup

添加用户:

#useradd –u 1000 –g 1000 –d /home/test –s /bin/bash test

若系统为suse,则要在添加用户时生成用户目录,需要加-m参数

#useradd –u 1000 –g 1000 –m /home/test –s /bin/bash test

删除test用户

#userdel test

#rm –rf /home/test

第五章:Linux操作系统常用命令详解

本章内容

文件目录类命令

系统信息类命令

通信网络类命令

5.1 文件目录类命令

浏览目录命令:cd dir   ls

浏览文件命令:cat   more   less 

目录操作命令:mkdir rmdir

文件操作命令:touch  vi rm cp  mv ln tar gzip

gunzip whereis whatis file

查找用法帮助: command h/--help

man conmand

5.1.1 列出文件列表的ls命令

ls(list)是一个非常有用的命令,用来显示当前

目录下的内容。配合参数的使用,能以不同的方

式显示目录内容。下面是一些常用的范例。

格式:ls[参数] [路径或文件名]

5.1.2 切换目录的cd命令

cd (change directory)命令可以让用户切换当前目录。范例如

下:

[test@linux home]$ cd test 切换到当前目录下的test子目录

[test@linux test]$ cd .. 切换到上一层目录

[test@linux home]$ cd / 切换到系统根目录

[test@linux /]$ cd 切换到用户自家目录(或执行cd~)

[test@linux test]$ cd /usr/bin 切换到/usr/bin目录

5.1.3 mkdirrmdir命令

mkdir(make directory)命令可用来创建子目录。

格式:mkdir [参数] <目录名>

[test@linux test]$ mkdir dir   在当前目录下建立dir目录

[test@linux test]$ mkdir -p dir1/dir2

在当前目录下创建dir1目录,并在dir1目录下创建dir2目录,也就是连

续创建两个目录(dir1/dir1/dir2

格式:rmdir [参数]<目录名>

rmdir(remove directory)命令可用来删除“空”的子目录:

[test@linux test]$ rmdir dir     删除“空”的子目录dir

[test@linux test]$ rmdir p dir1/dir2   删除dir1下的dir2目录,

dir1目录为空也删除它

5.1.4 复制文件的cp命令

cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp

命令时将一个文件复制成另一个文件或复制到某目录时,需要

指定源文件名与目标文件名或目录。

格式:cp[参数]<源文件路径><目标文件路径>

[test@linux test]$ cp test1.txt test2.txt

test1.text复制成test2.txt

[test@linux test]$ cp test3.txt /tmp

test3.txt复制到/tmp目录中

[test@linux test]$ cp r test1(目录) test2(目录)

-r参数,拷贝目录

功能:删除文件或目录

格式:rm[参数] <目标文件路径>

[test@linux test]$ rm myfiles 删除一个文件

[test@linux test]$ rm *

删除当前目录下的所有文件