日期:2014-05-16  浏览次数:20622 次

Linux用户管理和磁盘配额管理

一段时间没有接触Linux了,好多东西也忘得差不多,今天复习了下Linux系统管理中用户管理和磁盘配额管理,这在Linux系统管理中是经常使用的,记录几个简单的命令及说明:

1、用户管理

Linux用户被划分为2类:一类是根用户(root用户),一类是普通用户。根用户是系统的所有者,对系统拥有最高的权利,可以对所有文件、目录进行访问,可以执行系统中有的程序而不管文件、目录和程序的所有者是否同意。普通用户的权限则由系统管理员创建时赋予,普通用户只能管理属于自己的主文件,或者组内共享及完全共享的文件。根用户与Windows中的Administrator相当,但根用户在Linux系统中是唯一的,且不允许重新命名。

1.1、普通用户

A、与用户相关的配置文件:/etc/passwd、/etc/shadow、/etc/login.defs

B、添加用户

命令:useradd/adduser,详细参数的使用参照man useradd

示例:

#useradd student -u 550 -d /home/student -s /bin/bash -e 11/30/07 -g 100

注:用户的UID,在系统中必须唯一,且不可为负数,0~499传统上预留个系统账户使用。

C、修改用户信息

1、命令:usermod,详细参数同上

示例:

#usermod -d /home/student1 -s /bin/ksh -g users student

2、修改用户密码:passwd

示例:快速删除用户密码

#passwd -d student

D、删除用户

命令:userdel,详细参数同上

示例:删除用户student,并且删除student的主目录,邮件及相关属主文档

userdel -r student

E、临时禁用及默认配置的更改

临时禁用需要修改/ect/passwd文件或者/etc/shadow文件,具体为:如果需要禁用student用户,则方法1,在/etc/passwd文件的student行前面加"#",方法2,在/etc/shadow文件对应用户的密码字段前面加"*"或"!"

示例:

#student:x:500:500:student:/home/student:/bin/bash

student:*$1$v4pzr72Z$wBrJyo1SI622P4nI.UJE:13698:0:99999:7:::

需要修改默认的添加用户的配置,则通过vi,编辑/etc/login.defs,视具体情况去修改。

F、批量添加

当某些情况需要批量添加用户的时候,当然采用脚本程序执行固然可以,对于不熟悉程序编写的人员,则可以使用如下两个命令:newusers和chpasswd,具体操作,

1、建立用户信息文件:

#vi new_account
student1:x:501:100:/home/student1:/bin/bash
student2:x:502:100:/home/student2:/bin/bash
student3:x:503:100:/home/student3:/bin/bash
student4:x:504:100:/home/student4:/bin/bash

注:这里new_account文件的字段必须与/etc/passwd文件对应

2、使用如下命令:

#newusers < new_account

3、创建批量用户的密码文件也可以采用上述方法

#vi password_account
student1:ij1335u
student2:4jslfjkl
student3:ijl335u
student4:4jslfjkl

4、如下:

chpasswd < password_account 

1.2、用户组

与用户组相关的配置文件在:/etc/group、/etc/gshadow

这里的操作基本上与用户操作类似,不在累赘,列举下命令:

groupadd-----添加用户组,注没有addgroup,除非自己添加相应的链接命令

groupmod----修改用户组信息

groupdel------删除用户组,如果用户组中仍有用户登录了系统,则无法删除用户组。

?

2、磁盘配额管理

Linux是一个多用户、多任务操作系统,支持多客户端、多用户的使用,经验表明,在多用户系统中,加入的磁盘空间越多,用户使用的也越多,浪费的磁盘空间也越多,同时系统的可靠性也会大幅降低。保证系统有足够磁盘空间的最好方法就是有效地限制用户的使用量,为此可以在Linux系统中使用磁盘配额技术。

磁盘配额可以为每个用户或者用户组,甚至一个文件系统设定磁盘使用额度。通过磁盘配额,当用户使用的磁盘空间过多或分区占用过大时,系统管理员都会得到警告,从而采取有效措施。

1、磁盘配额的系统配置主要包括添加参数,重载分区和生成配额文件三个步骤

1.1、添加"usrquota"和"grpquota"参数

假如需要对/home分区使用磁盘配额,编辑vi /etc/fstab文件,在/home分区记录项中添加usrquota,grpquota参数

?
LABEL=/              /           ext3         defaults                                1       1
LABEL=/home      /home   ext3         defaults,usrquota,grpquota    1        2
LABEL=/boot        /boot     ext3         defaults                                1       3
tmpfs                   /dev/shm    tmpfs  defaults                               0       0
devpts                  /dev/pts     devpts gid=5,mode=620                 0       0
sysfs                     /sys            sysfs  defaults                               0       0
proc                      /proc           proc   defaults                              0      0
LABEL=SWAP-sda4   swap        swap   defaults                             0       0

1.2、重新挂在配额分区

#mount -o remount /home

1.3、生成aquota.group和aquota.user磁盘配额文件

为了使系统能够按照磁盘配额进行工作,必须建立磁盘配额文件aquota.group和aquota.user,使用quotacheck命令可以完成文件的建立,关于quotacheck命令的详细参考,请问男人(man)

#quotacheck -avgu

2、对用户设置磁盘配额

在1中进行了磁盘配额文件的建立,本节将编辑磁盘配额文件,然后启用,由于磁盘配额文件结构比较复杂,因此需要使用edquota命令进行编辑,类似vi