登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

SeaRiver Blog

实力才是你一生最好的依靠!

 
 
 

日志

 
 

Linux用户管理详细介绍  

2007-12-07 16:32:32|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 
回顾内容
1.区分以下的linux和unix?
AIX (IBM unix);                       HP_UX(HP unix);
SlorkWare(Linux);                FreeBSD(博克利大学- unix);
Solaris(Sun公司的 unix);   ubintoo(非州的linux);
SuSe(Novell公司的Linux);  mandrake(台湾的Linux);

2.sdd8:  第四块SCSI磁盘的第4个逻辑分区;
      hdc9:  从IDE设备的主盘的第5个逻辑分区;
      hda3:  主IDE设备的主盘的第3个主分区;

3.    
:e!   恢复到最后一次保存后的状态;
:r  /etc/passwd   读入文件passwd的内容;

4.基本命令:
①设置IP地址的三种方法:
#setup      #service network  restart            需重启网卡;
#vi /etc/sysconfig/network-scripts/ifcfg-eth0    需重启网卡;
#ifconfig eth0  192.168.1.1  netmask 255.255.255.0
(临时IP,立即生效,无需重启即刻生效);

用户管理
一、帐号文件
1、windows帐号文件:SAM文件;
  SAM = security account management(安全帐号管理);
  路径:/winnt/system32/config/SAM;

2、/etc/passwd  帐号文件
包含7项:
①登录名           (登录名)
②密码             (x是密码占位符,表示有密码,删除可直接登录)
③UID              (用户UID)
④GID              (组ID号,默认与UID相同)
⑤描述             (用户描述,存放用户的真实名)
⑥登录目录         (默认登录目录,指向家目录)
⑦/bin/bash        (登录后执行的首个shell)

以上7列均可修改,备注:
UID是系统中唯一标识用户身份的标记
0:超级用户UID,任何用户UID改为 0 就成了超级用户root
    1~99:     系统帐号
100~499:  系统预留帐号
500以上:   普通帐号
UID默认500开始,可指定,一个UID可对应多个用户名?
默认GID=UID,可指定
第7列为空时,系统默认为/bin/sh,修改为/sbin/nologin则不能登录

3、/etc/shadow  密码文件
包含9列:
①登录名
②md5方式加密的密码
③密码修改的天数  (从1970.1.1计算,最后一次修改口令的天数)
④密码的最短时间  (此段时间内不可修改口令,0表示随时改密码)
⑤密码有效期      (这些天后必须修改口令)
⑥密码警告期      (到期前多少天出现警告)
⑦密码宽限天数    (到期后密码的延长时间)
⑧密码的失效时间  (可用YYYY-MM-DD格式,也可减去1970.1.1的天数,)
⑨备用列
说明:第8项密码的失效日期如果早于系统当前时间,则用户不能登录;
查看shadow文件的帮助
#man shadow



二、帐号命令  (useradd,passwd,userdel,usermod)
1、useradd --à 新增用户
注意:用户名不能是纯数字
新增用户(指定参数):
#useradd [-u UID] [-c 描述] [-d 家目录]
[-e 过期时间yyyy-mm-dd] [-f inactive宽限天数]
[-g 初始组,只有一个;指定时,必须是已存在的组]
[-G 有效组1,有效组2,…可有多个,必须是已存在的组]
[-s shell]
用户名
   查看新增用户的默认参数:
  #useradd  -D  [-g 初始组] [-s shell] [-f inactive] [-e expire]
         用户名
1.1、例如:
默认参数:
#useradd  usera      (添加普通用户,用户名不能是纯数字的)
#adduser  usera      (与useradd等效,少数linux版本支持)
指定参数:
#useradd  -d      /u      hy
↓      ↓      ↓
(家目录)(家目录路径)(用户名)
指定家目录为/tmp/us1
#useradd -d  /tmp/us1  us1
指定UID为1000,家目录为/home
#useradd -u 1000 -d /home  us1
注意:新增用户帐号默认被锁定,需运行passwd后才能被激活
1.2、用户信息配置文件
#vi  /etc/default/useradd       (新增用户的默认参数文件);
   GROUP=100                    (指定组)
   HOME=/home                   (指定家目录)
   INACTIVE=-1                  (宽限天数)
   EXPIRE=                      (账号过期)
   SHELL=/bin/bash              (登录执行的shell程序)
   SKEL=/etc/skel               (环境文件的模板文件)
#vi  /etc/login.defs            (登录用户的缺省配置)
  17: PASS_MAX_DAYS     99999
  18: PASS_MIN_DAYS       0
  19: PASS_MIN_LEN        5     (密码的最小长度)
  20: PASS_WARN_AGE       7     (提前警告天数)
  25: UID_MIN            500    (最小UID)
  25: UID_MAX           60000   (最大UID)
  31: GID_MIN            500    (最小GID)
  32: GID_MAX           60000   (最大GID)
  46: CREATE_ HOME       yes    (是否创建新用户的家目录)
2、passwd --à设置/修改密码
  命令及参数:
  #passwd  用户名
  #passwd  [-d=delete] /清除密码(-d 放在用户名前后均可)
[-l=lock]   /锁定密码
[-uf=unlock force]/强制解锁
2.1、例如:
修改密码
#passwd   us
清空密码
#passwd   us  -d
#passwd   -d  us
锁定密码
#passwd   -l  us
解锁密码
#passwd   -uf  us
查看用户的密码状态
#passwd   -S  us
2.2、密码复杂方法:
  将AMERICAN制成密码:[url=mailto:AM@ri31n]AM@ri31n[/url]
  (大小写、特殊符号、字母、数字)
2.3、passwd命令对于普通用户和超级用户的用法区别:
普通用户修改密码的原则:(密码不少于6位);
  对root用户来说:
#passwd         →修改自己的密码
#passwd   user  →修改user用户的密码
#passwd   user  →加上此类([url=mailto:ב-’‘@’]ב-’‘@’[/url])特殊字符;
对普通用户:
$passwd         →修改自己的密码
$touch  /tmp/abc     (以usera登录,创建文件abc);

3、userdel--à删除用户
#userdel  usera      (删除passwd,shadow,group,gshadow文件中的该帐号信息,但不删其家目录);
#userdel -rf usera   (强制删除用户及其家目录);
说明:/tmp/abc文件,所有者及所属组成了UID及GID;

4、usermod----〉修改账户信息:
#usermod  -g  组名  用户名             (改变初始组)
#usermod  -G  组名1[,组名2…]  用户名 (可添加到多个有效组)
例:#usermod -G  root,bin,deamon  us1
#usermod  -l  新登录名  旧登录名       (改变用户登录名)
#usermod  -L  用户名    (锁定用户,即shadow中的用户密码前加!号)
#usermod  -U  用户名    (激活用户,即取消shadow中的密码前的!号)
#usermod  -c ‘my new uid’ 用户名     (修改第5项描述内容)
#usermod  -e  2007-07-01    用户名     (expire失效日期);
#usermod  -p   112233       用户名     (修改为crypt方式的密码)

三、组帐号命令:(groupadd,gpasswd,groupdel,groupmod,groups);
    组帐号文件:(/etc/group,/etc/gshadow);
#groupadd   组名                (新增组,组名不能大写)
#groupdel   组名                (删除组)
#groupmod   -n  新组名  旧组名  (修改组名字)
#groups     用户名              (查看用户加入了哪些组)
#gpasswd    组名                (设置组密码)
#newgrp     系统已有的组名      (临时改变用户的初始组到新组,相当于bash了,需要多执行一次exit才能退出)

#vi /etc/group      (组文件group包含四项)
root x   : 0 root
(组名)  (密码) (组ID) (组成员)
注意:任何用户都默认为自身初始组的组成员;

5、查看用户uid、初始组、有效组的信息:
#id   用户名
uid=500(usx)   gid=500(usx)    groups=0(root)
(uid:用户的系统id,gid:初始组,groups:有效组);

#finger  用户名  (显示用户信息:);
Login: usx(登录名)             Name: public user (真实名,描述);
Directory: /home/usx(家目录)   Shell: /bin/bash  (登录执行的程序);
Last loing time on tty     (最后登录的时间和控制台号);

6、改变用户的身份(su及sudo):
$su  root     (改变普通用户为root,但环境文件不变);
$su - root    (- 含义:将root用户及环境文件都改变);
#su - user    (切换用户身份,同时用户工作环境也一同改变);
$su - root    (普通用户输入密码才能切换成超级用户);
注意:超级用户切换成普通用户不需密码,反之,则需要密码;

超级用户可把其它虚拟控制台的用户踢出系统;
#ps -aux
#kill -9  PID(进程号)
#wc -l  /etc/passwd  (统计行数,passwd文件中,一行代表一个用户);
快捷键的用法:
Tab键,   用于命令补全功能;
上下键, 用于调出历史命令;(.bash_history)
+u:删除命令行光标前的字符;
+k:删除命令行光标后的字符;

9、用户的环境文件:
(私有: ~/.bashrc,~/.bash_profile,~/.bash_history,~/.bash_logout);
(公有: /etc/bashrc,/etc/profile 对所有用户有效);
私有环境文件:
#ls  -a
    .bashrc;(#bash或登录时调用)  .bash_profile;(登录时才调用)
.bash_history;(历史命令)      .bash_logout; (退出时清屏)
#vi  /root/.bashrc
alias   hhh=”cd  ~”      (~波浪号代表用户的家目录);
#bash                       (hhh即可生效,bash是命令解释程序);
#bash    (一种shell,命令解释程序,执行多次bash,就是打开多次新命令行,需执行多次exit才能退出);

公有环境文件:
#ls  /etc/bashrc   /etc/profile
#vi  /etc/bashrc
alias  yyy=’cd  /etc/sysconfig’
#bash                             (所有用户执行bash后均有效);

8、alias别名;
alias 作用:用简单字符代替长串的字符命令;
#alias         (查看系统中的别名);
以rm的别名为例:
#rm  file      (系统提示(y/n),因为:alias rm=’rm –i’);
#unalias   rm  (取消别名);
#rm  file      (则系统不再提示);
#alias  aa=“ifconfig”          (定义临时命令别名,退出则失效);
#aa                              (执行aa命令等效于ifconfig命令);
#alias  bb=’cd /etc/sysconfig’ (别名bb改变路径);
同名命令的执行顺序:
同名的内部命令--à 同名的别名命令--à同名的外部命令;

系统路径变量:
在windows中:属性 → 高级 → 系统变量 (PATH)
执行cmd命令,可调出命令窗口, 说明↗
#echo  $PATH                (查看系统变量PATH中的路径值);
#which  ifconfig            (查找命令的路径);
/sbin/ifconfig            (/sbin在root的$PATH中);
#cp /sbin/ifconfig   /bin   (拷贝后普通用户也可执行此命令);



#ls  -d   skel        (查找目录skel);
#vi  /etc/skel        (环境文件的系统模板);

#vi  /etc/issue       (登录前的提示信息);
   Today is \d
   Now time is \t

#vi  /etc/motd        (登录后的提示信息,motd=message of today);
   This is new user

总结:
用户管理的配置文件:
~/.bashrc   
~/.bash_profile  
~/.bash_logout   
~/.bash_history
/etc/bashrc    (全局bash环境变量文件)
/etc/profile     (全局环境变量文件)
/etc/passwd  (存储帐户信息)
/etc/shadow  (存储帐户信息(含有密码信息) )
/etc/group      (存储组信息)
/etc/gshadow   (存储组信息(含有密码信息) )
/etc/issue    (显示系统的版本信息)
/etc/motd     (登录后的提示信息)
/etc/skel       (环境文件的模板目录)
/etc/login.defs    (账户预设的信息参数文件)
/etc/default/useradd   (预设帐户环境文件)

 

 


  评论这张
 
阅读(871)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018