潘多

潘多的博客

他的个人主页  他的博客

用户管理

潘多  2010年03月16日 星期二 20:51 | 1617次浏览 | 5条评论

阶段总结

1 用户的创建

    创建一个用户marry,指定价目录为/home/dirtest,最大不活跃天数为30天
        @ useradd -d /home/dirtest -m -f 30 marry
   
    创建一个用户marry2,主组为marry,附加组为root,uid为888
        @ useradd -g marry -G root -u 888 marry2

    创建一个用户marry3,属于系统用户并注释,过期时间为2007/12/31
        @ useradd -r -c "system user and test it " -e 12/31/07 marry3
…………………………………………………………………………………………………………………………
2 用户修改
    使用usermod命令修改用户的属性。
        修改用户marry的用户名子为ma,shell环境改为c shell
            @usermod -l ma -d /bin/csh marry
    usermod -u 0 -o marry    修改marry的uid为0,即root的。当uid存在的时候要加上-o参数。
…………………………………………………………………………………………………………………………
3 删除用户
        userel -r 可以删除该用户的价目录。注意,价目录的名字不一定就是用户的名字,具体用户的名字要看/etc/passw
…………………………………………………………………………………………………………………………
4 用户激活
    刚刚新建立的用户是不能立即登入的,必须进行激活,即设置后令后才会生效。使用passwd命令激活。

…………………………………………………………………………………………………………………………

5 /etc/passwd
     显示内容以冒号为界分别是
        用户名:密码:uid:gid:注释:默认的主目录:默认shell
       
            密码:如果这一项是x,表示密码存放在/etc/shadow中,如果这一项是空的表示该用户没有密码,即是空密码。
            uid:?
怎么修改uid,在配置文件么,怎么用ls查看一个文件的uid

…………………………………………………………………………………………………………………………
6 /etc/shadow
    h:$6$VHbvf/a.tiZ$JPtg/pq5K7GOiDKJBsLDL6fJY04XQZ1D/Pmi0TFnXIKgoWv.JQ94d/BlfGH4blTNxjm4SQBM7EJP8ZEpFT6Br1:14639:0:99999:7:::
    以:为分界
    用户名
    密码            经过md5加密的密码,好像是用户名和密码的加密运算。
    最后一次修改密码的时间    这个是相对与1970年1月1日的一个绝对天数。
    最短修改密码的间隔        这里是0,表示任何时候。单位是天。
    密码,的最长有效期        99999表示没有期限。
    警告时间            密码过期前几天通知用户。
    不活动时间       
    失效时间            从1970年1月1日算起的一个绝对天数,多少天后帐号失效。           

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

        通过修改配置文件手动添加用户
@1 编辑/etc/passwd文件,添加相应的用户条目。其中密码一项为空。
@2 建立主目录,即用户的家目录。
@3 将一些用户配置文件复制到用户主目录下。
    配置文件在/etc/skel/下面   可以这样 cp /etc/skel/.* /home/x
        使用useradd时,建立用户主目录中,用户默认的配置文件都是从/etc/skel/中复制过去的。
@此时建立用户没有密码,可以由 root给他建立,也可以自己建立。

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
        手工删除用户
@1 编辑/etc/passwd文件,删除该用户条目
@2 手工删除该用户的主目录。


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

暂时停用一个帐号,可以在/etc/passwd文件中在行首添加#把该账户注释起来。



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
        组管理
@1 groupadd增加组
    groupadd -g 888 marry    添加一个gid为888的组
        如果gid号已经存在,需用-o参数
@2 groupmod 修改组名


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
         设定用户信息
@1 chfn 设定用户的信息,包括全名,办公室名,电话等之后可以用finger看
  chfn  username
  finger username     可以查看chfn的修改内容。



@2 chsh 可以用chsh -l 查看当前系统所有可以使用的shell
    如果需要给变用户的shell环境,可以这样
        chsh -s shell的路径名 用户名

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 修改用户多的登入名
usermod -l newname oldname
groupmod -n newgroupname  oldgroupname        同步gid


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

    查询用户信息

@查看当前用户的行为,可以用
w
结果如下:
root@h-laptop:~# w
 16:28:17 up  3:39,  3 users,  load average: 0.47, 0.22, 0.16
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
h        tty7     :0               12:46    3:42m 13:41   0.68s gnome-session
h        pts/0    :0.0             12:49   30:37   0.40s 21.83s gnome-terminal
h        pts/1    :0.0             15:40    0.00s  0.36s 21.83s gnome-terminal
第一行
16:28:17    表示执行w命令的时间
up 3:39     表示该系统已经运行了3小时19分
3 users        表示当前有3个用户登入,同一个帐号可以重复登入,如上,都是h用户
load average: 0.47,0.22,0.16
        系统平均负载指示,表示该系统在过去的1,5,10分钟的平均负载程度,越接近0.00表示系统性能越好
第二行
用来显示正在进行的操作以及用户占用的系统资源
FROM        显示用户从何处登入,-表示本地登入,如果是远程登入会显示远程主机的ip或者主机名, :0.0表示用户在图形界面下以文本形式登入。
IDLE        表示用户闲置的时间。这是一个计时器,一旦用户执行任何任务,该计时器便会呗重置
JCPU
PCPU        表示cpu执行程序消耗的时间。
………………………………
@查看当前有那些用户
who

@查看曾经有那些用户登入过系统
last
@查看用户信息     chfn后可以用finger查询
finger
finger user
………………………………
@显示用户的用户和组信息
id
id user
@users  
@groups

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !
徐继哲

回复 徐继哲  2010年03月19日 星期五 18:44

出个题目,假设你管理1000台以上的服务器,有很多系统管理员,如何做管理这些账户?一个有实际价值的问题,一个不错的学习起点。

4条回复

  • 谭思哲

    回复 谭思哲  2010年03月20日 星期六 22:01

    :-)
    果目标是:
    任何系统管理员可以在任何机器上管理属于自己的机器.

    以下是想到的石器时代纯手工处理方法:

    1. 先自己写一个特殊的登录程序, 用来替换系统的登录程序.

    2. 然后使1000台机器满足以下三个条件:
    a. 每台机器可以远程开关机
    b. 每台机器一开机会运行此登录应用程序
    c. 有一台中心服务器, 保存了哪台机器可由哪几个系统管理员来管理

    3. 剩登录程序的处理逻辑了:
    a. 程序一运行, 就到中心服务器上下载可在本地进行登录的管理员名单
    b. 如果有管理员登录, 首先到中心服务器上下载该用户可以管理的机器列表, 并显示.
    c. 当管理员选择了指定的机器, 则登录程序再次联系中心服务器把没有开的机器打开.
    d. 登录程序用指定的用户名和密码进行远程登录.
    e. 操作, 操作完毕后, 退出
    f. 用户退出后再次运行登录程序. 于是又回到了b

    计第二步很艰难, 要在1000台机器上安装指定软件, 没想到好办法.

    0条回复

  • 潘多

    回复 潘多  2010年03月20日 星期六 10:20

    这个可以搭建一个NIS吧,主机多可以用SNMP远程管理。这样可以不?

    2条回复

      • 徐继哲

        回复 徐继哲  2010年03月20日 星期六 10:28

        自己搭一个试试看,看看效果好不好。:)

        1条回复

          • 潘多

            回复 潘多  2010年03月20日 星期六 10:32

            呵呵, 等把web搞定后就该学习它了,lamp很难搞啊,还在MySQL这挣扎呢

            0条回复

暂时没有评论

Zeuux © 2024

京ICP备05028076号