`
haierboos
  • 浏览: 439847 次
文章分类
社区版块
存档分类
最新评论

Linux入门基础 #6:Linux用户基础

 
阅读更多




本文出自 http://blog.csdn.net/shuangde800

---------------------------------------------------------------------------------


用户,组

当我们使用Linux时,需要以一个用户的身份运行,用户限制使用者或进程可以使用,或不可使用哪些资源。

,用来方便组织管理用户

  • 每个用户拥有一个UserID,操作系统实际使用的是用户ID,而非用户名
  • 每个用户属于一个主组,属于一个或多个附属组
  • 每个组拥有一个GroupID
  • 每个进程以一个用户身份运行,并受该用户可访问的资源限制
  • 每个可登录用户拥有一个指定的shell

用户

用户ID为32位,从0开始,但是为了和老式系统兼容,用户ID限制在60000以下。

用户分为以下三种:
  • root用户 (ID为0的用户为root用户)
  • 系统用户(1~499)
  • 普通用户(500以上)
系统中的文件都有一个所属于用户及所属组
使用id命令可以显示当前用户的信息
使用passwd命令你个可以修改当前用户密码


相关文件
/etc/passwd - 保存用户信息
/etc/shadow - 保存用户密码(加密的)
/etc/group - 保存组信息



查看登录的用户


  • 命令whoami显示当前用户
  • 命令who显示有哪些用户已经登录系统
  • 命令w显示有哪些用户已经登录并且在干什么

pts/0:图形界面
Linux很多时候,命令越长,显示出来的越少,命令越少,显示出来的越多


创建一个用户


命令useradd创建一个新用户
$ useradd zsd 新建一个名为zsd的用户
这个命令会执行以下操作
1. 在/etc/passwd中添加用户信息
2. 如果使用passwd命令为指定用户创建密码,则将密码加密保存在/etc/shadow文件中
3. 为用户创建一个新的家目录 /home/zsd
4. 将/etc/skel 中的文件复制到用户家目录中(这个文件是新建用户的一些初始文件,在这个文件中新建一些文件,例如如用户文档等,以后只要创建新用户,都会自动有这些文件)
5. 建立一个与用户用户名相同的组,新建用户默认属于这个同名组

命令useradd支持以下参数
-d 家目录
-s 登录shell
-u userid
-g 主组
-G 附属组
也可以通过直接修改/etc/passwd的方式实现,但是不建议




修改用户信息

usermod 参数 username

命令usermod支持以下参数
-l 新用户名。$ usermod -l new_name test_user把test_user改名为new_name
(修改新用户名后,/home目录下的用户文件名不会改变,需要手动修改,否则用户登录找不到家目录)
-u 新userid。$ usermod -u 1002 test_user把test_user的id改为1002
-d 用户家目录位置
-g 用户所属主组
-G 用户所属附属组
-L 锁定用户使其不能登录
-U 解除锁定



删除用户

命令userdel用以删除指定用户

$ userdel test_user (删除用户,但保留用户的家目录)
$ userdel -r test_user(删除用户,并且删除该用户家目录)





几乎所有操作系统都有组的概念,通过组,我们可以更加方便地归类和管理用户。一般来讲,我们使用部门,职能或地理区域的分类方式来创建使用组。

  • 每个组有一个组ID
  • 组信息保存在/etc/group
  • 每个用户拥有一个主组,同时还可以拥有最多31个附属组



创建,修改,删除组


命令groupadd用以创建组
$ groupadd lab104


命令groupmod用以修改组信息
$ groupmod -nnewname oldname 修改组名
$groupmod -gnewGid oldGid 修改组ID

命令groupdel用以删除组
$ groupdel lab104




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics