Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2454957
  • 博文数量: 328
  • 博客积分: 4302
  • 博客等级: 上校
  • 技术积分: 5486
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-01 11:14
个人简介

悲剧,绝对的悲剧,悲剧中的悲剧。

文章分类

全部博文(328)

文章存档

2017年(6)

2016年(18)

2015年(28)

2014年(73)

2013年(62)

2012年(58)

2011年(55)

2010年(28)

分类:

2011-03-15 15:58:22



 
Useradd  … -d …      可以自动建home目录

[root@mac-home etc]# /usr/sbin/useradd test -d /home/test
[root@mac-home etc]# ls –F /home
. .. /macg  /test


    /etc/passwd
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
    x -------密码,/etc/passwd文件中不包含口令,真正口令放在/etc/shadow中,这里只显示一个x代替
      14 ------用户的UID字段,可以自己来设定,不要和其它用户的UID;
         50 ------用户组的GID,不要和其它用户组GID相同;
            FTP User------ 是用户说明字段
                     /var/ftp ---------用户的home目录
                               /sbin/nologin --用户登录SHELL , /sbin/nologin 表示不能登录系统

    加密口令是存放在/etc/shadow 文件中,只有超级用户(root)可读/etc/shadow
# ls -l /etc/shadow
-r--------  1 root root 1134 Nov 11 15:47 /etc/shadow


    基本的sys V unix系统账户:
bin, daemon,adm,lp,smtp,sys,uucp,nuucp,nobody,noaccess


   系统帐户,如 uucp, ftp,news ,bin,daemon等,一定不要给它们设置 /bin/sh,/bin/csh 等 Shell 环境
 solaris的无shell的帐户,shell为空  linux的无shell帐户显示/sbin/nologin
daemon:x:1:1::/:
bin:x:2:2::/usr/bin:
sys:x:3:3::/:
adm:x:4:4:Admin:/var/adm:
nobody:x:60001:60001:NFS Anonymous Access User:/:
noaccess:x:60002:60002:No Access User:/:
nobody4:x:65534:65534:SunOS 4.x NFS Anonymous Access User:/:
 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
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
rpm:x:37:37::/var/lib/rpm:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin


  useradd建立的帐户,会自动在/etc/group下建立一个group id,且group name与user name同名
[root@vm mac]# /usr/sbin/useradd -d /home/test  test
[root@vm mac]# cat /etc/group
…:
test:x:501

[root@vm mac]# cat /etc/passwd

test:x:501:test:/home/test

    id ------------看uid和 gid,常用于编程
[root@vm test]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)

# id -un
macg

# id -gn
macg

# id -u
500

#id -g
500

  
    手工建user的全过程
 1。vi /etc/passwd

mac::300:300:mac:/home/mac:/bin/bash   
密码为空
300:300是uid与gid
gid必须与/etc/group下的gid匹配
也可以自己设一个group ip,这就要求修改/etc/group
 2.vi /etc/group
mac:x:300    
手工增加一个group id
 3.mkdir /home/mac    手工建home目录
此时home目录属族为root
 4.Chown mac:mac /home/mac    对home目录设属主为新用户
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Kernel 2.6.9-42.EL on an i686
login: mac
Last login: Thu Jun  7 08:38:40 on tty1
-bash-3.00$ cat /etc/passwd    重新login 测试


 troubleshooting 登陆出permission denied
 现象:登陆出permission denied
login: macg
Password:
Last login: Mon Jun 18 13:59:59 from 10.4.3.119
No directory /home/macg!
Logging in with home = "/".
-bash: /home/macg/.bash_profile: Permission denied
分析:
 原来是home目录属主建错(通常都发生在手工建用户时)
-bash-2.05b$ cd home
-bash-2.05b$ cd macg
-bash: cd: guan: Permission denied
 解决:
-bash-2.05b$ su
Password:
[root@mail home]# ls -l
total 95644
drwx------    3 clamav   clamav       4096 Apr 26 19:25 clamav
drwx------   11 502      502          4096 Jun 18 15:56 macg
[root@mail home]# chown macg:macg macg
[root@mail home]# ls -l
total 95644
drwx------    3 clamav   clamav       4096 Apr 26 19:25 clamav
drwx------   11 macg     macg         4096 Jun 18 15:56 macg
login: macg
Password:
Last login: Mon Jun 18 16:10:49 from 10.4.3.119
[guan@mail macg]$

  Troubleshooting2: linux redhat 9.0,使用macg用户登录,能够正常登陆,但是会提示:-bash:/root/.bash_profile:permission denied , 而使用root用户登录就没有问题
答:是非root用户的/home/macg/.bash_profile里面引用了他不具备权限的/root/.bash_profile.
由于非root用户无法访问/root目录,所以即使把/root/.bash_profile的属性改成777,还是会出现Permission Denied的 (用户权限优先于文件权限)


  userdel macg删除用户


    手工删除用户,容易删不干净,还是建议userdel
$su
口令:
# vi /etc/passwd
删除掉mysql 一行
 重新建用户,发觉出现冲突
# useradd mysql
UX: useradd: ERROR: Inconsistent password files.  See pwconv(1M).
 解决:
# vi /etc/shadow
删掉mysql一行
# useradd mysql
#
 原因:
/etc/passwd 和/etc/shadow不同步,建议以后删除用户一定要用userdel



 /etc/passwd行中,去掉x的后果-----用户直接login,不经历passwd过程(不是密码为空或回车,而是根本不提示输入密码)
vi /etc/passwd
mac::100:100:mac:/home/mac:/bin/bash
macg:x:500:500::/home/macg:/bin/bash
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Kernel 2.6.9-42.EL on an i686
login: mac
Last login: Thu Jun  7 08:38:40 on tty1
-bash-3.00$                 直接就进来了



    通常useradd一个新用户,即使不执行passwd也会有一个密码(不知道是什么)
[root@old145 /]# /usr/sbin/useradd macguan
[root@old145 mac]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
mac:x:500:500::/home/mac:/bin/bash
macguan:x:501:501::/home/macguan:/bin/bash
login: macguan
Password:
Login incorrect

   可以通过passwd -d把一个用户的密码去掉,这样就可以直接进入了
[root@old145 mac]# passwd -d macguan
Removing password for user macguan.
passwd: Success
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Kernel 2.6.9-42.EL on an i686
login: macguan
(不是密码为空或回车,而是根本不提示输入密码)
[macguan@old145 ~]$ 


   发觉password -d无密码的用户,在/etc/passwd下仍是有密码的,只是在/etc/shadow下无密码,所以说明真正起作用的是/etc/shadow
login: macguan
Last login: Thu Jul 24 10:18:37 from 10.4.3.119
[macguan@old145 ~]$ cat /etc/passwd
gdm:x:42:42::/var/gdm:/sbin/nologin
mac:x:500:500::/home/mac:/bin/bash
macguan:x:501:501::/home/macguan:/bin/bash
[root@old145 macguan]# cat /etc/shadow
root:$1$D2eFB/9M$rTQQRIuZP0gQWxWRTVL9K.:13937:0:99999:7:::
mac:$1$g9xW8J3E$Bm7WgQiY7Z9sQ7xivj6qK1:13937:0:99999:7:::
macguan::14082:0:99999:7:::



   不让普通用户自己改自己的密码(禁止普通用户执行passwd),只能su 入 ROOT改
[root@xin_fc etc]# chmod 511 /usr/bin/passwd



转载自:http://blog.sina.com.cn/s/blog_6151984a0100ej3q.html




阅读(2177) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~