本文出自   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  -n  newname  oldname   修改组名
   $ groupmod  -g  newGid  oldGid          修改组ID

命令groupdel用以删除组
   $  groupdel   lab104

    


Linux入门基础 #6:Linux用户基础的更多相关文章

  1. 零基础Linux入门之《Linux就该这么学》

    本书是由全国多名红帽架构师(RHCA)基于最新Linux系统共同编写的高质量Linux技术自学教程,极其适合用于Linux技术入门教程或讲课辅助教材,目前是国内最值得去读的Linux教材,也是最有价值 ...

  2. lilybbs-faq - linux入门以及百合 Linux 版精华区导读

    QUESTIONS 问题与解答 不需要任何命令的简单介绍 历史 (APUE 提到了1990年之前的unix历史,还有各种标准 ANSI ISO IEEE posix xpg3.... 但是linux ...

  3. linux入门教程(七) linux系统用户以及用户组管理

    关于这部分内容,笔者在日常的linux系统管理工作中用到的并不多,但这并不代表该内容不重要.毕竟linux系统是一个多用户的系统,每个账号都干什么用,你必须了如指掌.因为这涉及到一个安全的问题. [认 ...

  4. Linux入门:usermod - 修改用户帐户信息

    一.什么是usermod? usermod 命令通过修改系统帐户文件来修改用户账户信息usermod [options] user_name选项(options)-a|--append ##把用户追加 ...

  5. linux入门教程(八) Linux磁盘管理

    [查看磁盘或者目录的容量 df 和 du] df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 df常用参数有 –i -h -k –m等 -i 使用inode ...

  6. linux入门教程(六) Linux文件与目录管理

    在linux中什么是一个文件的路径呢,说白了就是这个文件存在的地方,例如在上一章提到的/root/.ssh/authorized_keys 这就是一个文件的路径.如果你告诉系统这个文件的路径,那么系统 ...

  7. linux入门教程(三) Linux操作系统的安装

    因为笔者一直都是使用CentOS,所以这次安装系统也是基于CentOS的安装.把光盘插入光驱,设置bios光驱启动.进入光盘的欢迎界面. 其中有两个选项,可以直接按回车,也可以在当前界面下输入 lin ...

  8. Linux入门培训教程 linux网络编程socket介绍

    一.概念介绍 网络程序分为服务端程序和客户端程序.服务端即提供服务的一方,客户端为请求服务的一方.但实际情况是有些程序的客户端.服务器端角色不是这么明显,即互为Linux培训 客户端和服务端. 我们编 ...

  9. Linux入门培训教程 linux下拷贝cp删除rm移动mv命令参数以及说明

    拷贝移动删除在windows中看起来这么简单,但linux经常使用的文字界面,所以对于linux系统 下拷贝cp删除 rm 移动mv命令参数就不得不需要了解和学习了 cp 该命令的功能是将给出的文件或 ...

  10. linux入门教程(五) Linux系统的远程登录

    首先要说一下,该部分内容对于linux初学者来讲并不是特别重要的,可以先跳过该章节,先学下一章,等学完后再回来看这一章. Linux大多应用于服务器,而服务器不可能像PC一样放在办公室,它们是放在ID ...

随机推荐

  1. Swift - 15 - 导入Foundation使用更多字符串功能

    //: Playground - noun: a place where people can play import Foundation var str = "Hello, playgr ...

  2. 关于模板中的动态取值 ---反射与javascript脚本编译

    在项目中经常遇到一个问题,打印word或者打印excel的时候,我们经常使用一对一的赋值或者批量替换的方式来对模板进行修改. 但是现在遇到两种场景: 1.取值是通过自定以方法进行取值的. 如:一个销售 ...

  3. Asp.Net 母版页

    背景:回顾下以前用到过的asp.net控件 介绍: 使用 ASP.NET 母版页可以为应用程序中的页创建一致的布局.单个母版页可以为应用程序中的所有页(或一组页)定义所需的外观和标准行为.然后可以创建 ...

  4. PHP PDO获取结果集

    一.介绍PDO获取结果集,不得不介绍一下PDO是如果执行SQL语句,一般情况下分三种, 1.query()方法 query()方法通常用于返回执行查询后的结果集.语法是这样的:PDOStatement ...

  5. 理解javascript之 对象

    大纲: 1.介绍attribute property的异同,翻译自http://javascript.info/tutorial/attributes-and-custom-properties#pr ...

  6. Android学习----Android Studio 技巧汇总

    关于快捷键 The File Structure Popup ctrl+f12此快捷键可以调出当前文件的大纲,并通过模糊匹配快速跳转至指定的方法.勾选上“show anonymous classes” ...

  7. day06

    一.configparser模块 configparser用于处理特定格式的文件,其本质上是利用open来操作文件 1.获取所有节点 import configparser config = conf ...

  8. ctags使用详解(转载)

    一.        ctags是干什么的 ctags的功能:扫描指定的源文件,找出其中所包含的语法元素,并将找到的相关内容记录下来. 我用的是Exuberant Ctags,在Windows上使用,就 ...

  9. 转:快乐Node码农的十个习惯

    文章来源于:http://www.infoq.com/cn/articles/node.js-habits 从问世到现在将近20年,JavaScript一直缺乏其它有吸引力的编程语言,比如Python ...

  10. rysnc,scp与bashrc冲突问题

    问题是: scp file user@host:dst失败,user用户的bashrc文件中加入了 sudo su -,自动切换到root用户. 症状是输入密码验证失败. rsync, scp是传输文 ...