分类: LINUX
2006-11-22 09:15:09
Reference:
A. 鸟哥的 Linux 私房菜-基础学习篇 $13账号管理
B. Red Hat Linux 9.0 基础教程 $13管理用户
C. Linux 基础教程(1)操作系统基础 $11 账号管理
1,账号管理
登录过程
如果一切都 OK 的话,就进入
Shell 控管的阶段啰!
·
UID:这个就是使用者识别码(ID)啰!通常 Linux 对于 UID 有几个限制需要说给您了解一下:
o
0 系统管理员,所以当你要作另一个系统管理员账号时,你可以将该账号的 UID 改成 0 即可;
o
1~500
保留给系统使用的ID,其实
1~65534 之间的账号并没有不同,也就是除了 0 之外,其它的 UID 并没有不一样,预设 500 以下给系统作为保留账号只是一个习惯。这样的好处是,以 named 为例,这个程序的预设所有人 named 的账号 UID 是 25 ,当有其它的账号同样是 25 时,很可能会造成系统的一些小问题!为了杜绝这样的问题,建议保留 500 以前的 UID 给系统吧!
500~65535 给一般使用者用的!
/etc/passwd 的格式如下:
其中第5列是说明,一般对finger有用, /sbin/nologin表示不能登录
root@Meil sda1]# vi /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
/etc/shadow的格式如下:
如果是在密码栏的第一个字符为『 * 』或者是『 ! 』,表示这个账号并不会被用来登入的意思。
[root@Meil sda1]# vi /etc/shadow
root:$1$RwncvPop$qfQLAUu68mlq6SZGW1fyl/:13237:0:99999:7:::
bin:*:12594:0:99999:7:::
daemon:*:12594:0:99999:7:::
adm:*:12594:0:99999:7:::
lp:*:12594:0:99999:7:::
sync:*:12594:0:99999:7:::
shutdown:*:12594:0:99999:7:::
halt:*:12594:0:99999:7:::
mail:$1$VyKWowZJ$zCw3z1I.uJTWT3lau9ofd.:13473:0:99999:7:::
news:*:12594:0:99999:7:::
uucp:*:12594:0:99999:7:::
operator:*:12594:0:99999:7:::
games:*:12594:0:99999:7:::
gopher:*:12594:0:99999:7:::
ftp:*:12594:0:99999:7:::
保留:最后一个字段是保留的,看以后有没有新功能加入。
认识 /etc/group 与 /etc/gshadow 档案
· /etc/group
这个档案就是在记录 GID 与群组名称的对应了~我的 /etc/group 内容有点像这样:
root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon sys:x:3:root,bin,adm |
也是以冒号『:』作为字段的分隔符,共分为四栏,每一字段的意义是:
· 有效群组(effective group)与初始群组(initial group)
/etc/passwd 里面的第四栏GID是初始群组(initial
group)
用groups查看到的第一个组是有效群组(effective group)
可以使用newgrp 来改变有效群组(effective group):
[mail1@Meil mail1]$
groups
mail wheel
[mail1@Meil mail1]$
newgrp wheel
[mail1@Meil mail1]$
groups
wheel mail
同时切换到了新的shell
·
useradd
[root@linux ~]# useradd [-u UID] [-g
initial_group] [-G other_group] \ >
-[Mm] [-c 说明栏] [-d home] [-s shell] username 参数: -u :后面接的是 UID ,是一组数字。直接指定一个特定的 UID 给这个账号; -g :后面接的那个群组名称就是我们上面提到的 initial group 啦~
该 group ID (GID) 会被放置到 /etc/passwd 的第四个字段内。 -G :后面接的群组名称则是这个账号还可以支持的群组。
这个参数会修改 /etc/group 内的相关资料喔! -M :强制!不要建立使用者家目录 -m :强制!要建立使用者家目录! -c :这个就是 /etc/passwd 的第五栏的说明内容啦~可以随便我们设定的啦~ -d :指定某个目录成为家目录,而不要使用默认值; -r :建立一个系统的账号,这个账号的 UID 会有限制 (/etc/login.defs) -s :后面接一个 shell ,预设是 /bin/bash 的啦~ 范例: 范例一:完全参考默认值建立一个使用者,名称为 vbird1 [root@linux ~]# useradd vbird1 [root@linux ~]# ls -l /home drwxr-xr-x
3 vbird1 vbird1 4096 Aug 30 17:33 vbird1 [root@linux ~]# grep vbird1 /etc/passwd
/etc/shadow /etc/group /etc/passwd:vbird1:x:502:502::/home/vbird1:/bin/bash /etc/shadow:vbird1:!!:13025:0:99999:7::: /etc/group:vbird1:x:502: # 同时也要注意到,使用 useradd 新增使用者时,这个使用者的 /etc/shadow # 密码栏会是不可登入的 (以 !! 为开头),因此还需要使用 passwd # 来给予 vbird1 密码后,才算新增完毕! |
这个指令至少可能会更动到的地方有:
groupadd -g 902 -f nms
useradd -g nms -G wheel -u 902 nmsuser 2>/dev/null
groupadd -g 901 -f bbca
useradd -g bbca -G wheel -u 901 bbca 2>/dev/null
建立预设的账号:
基本设定就在 /etc/login.defs 与 /etc/default/useradd 这两个档案
当你建立一个名为 testing 的账号时,预设的家目录会是『 /home/testing 』这个目录,而这个目录的内容就是由 /etc/skel 所 copy 过去的!所以『当你想要让使用者的预设家目录内容更动时,可以直接将要更动的数据写在 /etc/skel 当中