`
wtj6891
  • 浏览: 29796 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

每天一个命令:groupadd

 
阅读更多
主要概念:
1、基本上,一个组就是一个整数组ID(gid)
      lzgonline:x:500:
2、每个在系统上运行的进程都是属于一个组的集合(gids)
3、/etc/group 文件把组ID映射到组名称和组成员身上    
      /etc/group文件存储格式(组名称:组密码:组ID:组成员
      root:x:0:root
      lzgonline:x:500:
      字段解释:
      组名称:每个组都有一个组名称
      组密码:可以给组提供一个密码,一般很少这么做
      组ID:像用户ID一样,linux内核使用ID来识别
      组成员:定义组成员用户名列表,用半角逗号隔开
4、文件系统中的每个文件有唯一的组ID,就像拥有唯一的所有者ID一样
     drwxrwxr-x. 2 lzgonline lzgonline 4096  6月 23 23:47 coding
     drwxr-xr-x. 2 lzgonline lzgonline 4096  6月 23 22:03 公共的
5、用户有一个在/etc/passwd 文件中定义的主要组(第4个字段定义)
     root:x:0:0:root:/root:/bin/bash
6、用户可以在/etc/group 文件中定义多个次要组(例从下面可以看到root用户属于多个组)
     root:x:0:root
     bin:x:1:root,bin,daemon
     daemon:x:2:root,bin,daemon
     sys:x:3:root,bin,adm
     adm:x:4:root,adm,daemon
     disk:x:6:root
     wheel:x:10:root
 
7、在redhat企业版中,用户的主要组几乎总是与用户名相同     
     /etc/passwd 文件:lzgonline:x:500:500:liuzhigong:/home/lzgonline:/bin/bash
     /etc/group文件:    lzgonline:x:500:
8、文件系统上的每个文件有一个用户所有者和一个组所有者
 
 
如何在linux中查询一个组有哪些用户?
执行cat /etc/group | less 命令,寻找相应的组名称,查看其最后一个字段即可
 
如何在linux中查询一个用户属于哪些组?
执行cat /etc/group | grep username 即可(将username替换为查找的用户名)
 
相关命令讲解
1、linux id 命令详解
作       用:用于输入username和当前用户的信息
语  法:id [-gGnru][--help][--version][用户名称]
参  数:
  -g 或 --group  显示用户所属群组的ID。
  -G 或 --groups  显示用户所属附加群组的ID。
  -n 或 --name  显示用户,所属群组或附加群组的名称。
  -r 或 --real  显示实际ID。
  -u 或 --user  显示用户ID。
  --help  显示帮助。
  --version  显示版本信息。
 
不加任何参数时,该命令报告用户的用户ID、主要组和主要组ID、用户所属的所有组的组名称和组ID
[root@lzgonline ~]# id
uid=0(root) gid=0(root) 组=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
whoami 命令
作    用:显示当前用户的用户名,与 id -un 等效
[root@lzgonline ~]# whoami
root
[root@lzgonline ~]# id -un
root
users、w和who命令
作    用:查看当前都有谁登录了系统
 
users //简单地打印当前已登录用户列表
[root@lzgonline ~]# users
lzgonline lzgonline lzgonline lzgonline
who //列出当前登录用户的详细信息
[root@lzgonline ~]# who
lzgonline tty1         2011-06-23 22:35 (:0)
lzgonline pts/1        2011-06-23 22:48 (:0.0)
lzgonline pts/2        2011-06-24 01:13 (192.168.229.1)
lzgonline pts/3        2011-06-24 02:31 (192.168.229.1)
w  //列出当前已登录用户,提供最详细的信息
[root@lzgonline ~]# w
 03:29:07 up  5:01,  4 users,  load average: 1.04, 0.94, 0.51
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
lzgonlin tty1     :0               22:35    5:01m  9.08s  0.17s pam: gdm-passwo
lzgonlin pts/1    :0.0             22:48    4:40m  0.00s  0.00s /bin/bash -l
lzgonlin pts/2    192.168.229.1    01:13    1:09m  0.23s  0.22s sshd: lzgonline
lzgonlin pts/3    192.168.229.1    02:31    1.00s  1.11s  0.70s sshd: lzgonline
 
linux下用户切换命令
1、su 命令可以让用户切换到其他用户ID(su 代表 switch user 而不是 superuser
2、su 命令通常用连字符调用,如 su - ,指明用户应该作为新用户有效登录
3、newgrp 命令(sg),让用户切换主要组ID(switch primary group
需要注意的问题
1、为了使新用户完全登录,su 命令需使用连字符 - 调用,这指定了新用户的Shell应该是登录Shell,登录Shell非登录Shell之间的区别以及环境变量的使用这里不讨论,只需记住一点:要完全成为新用户,su命令应该使用连字符 - 和用户名
2、切换为root用户使用 su - 

 

分享到:
评论

相关推荐

    每天一个linux命令PDF

    - **su** `- username`:切换到另一个用户,并加载其环境。 - **su** `- root`:直接切换到root用户。 - **sudo -i**:以root用户身份执行命令。 #### 开发环境 - **gcc**:C/C++语言的编译器。 - **g++**:C++语言...

    Linux必学的60个命令.txt

    - **功能**:`install` 命令用于将文件或目录从一个位置复制到另一个位置,并可以同时设置权限和所有权等属性。 - **语法**: - `install [选项] 源文件 目标文件` - `install [选项] 源目录 目标目录` - `...

    入门学习Linux常用必会60个命令实例详解doc/txt

    -F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。在系统需要挂上大量NFS文件系统时可以加快加载的速度。 -f:通常用于除错。它会使mount不执行实际挂上的动作,而是模拟整个挂上的...

    北邮2017研究生linux期末作业源代码

    - **解释:** 定义了一个 `random_value` 函数来生成随机索引,并根据索引从牌堆中抽取一张牌;`deal_cards` 函数实现了发牌逻辑,通过循环不断产生随机数,直到牌堆为空为止。 以上就是针对北邮2017研究生Linux...

    linux简答题.docx

    - `vi`:是一个文本编辑器,可以用来创建和编辑文件,如`vi /mnt/myfiles/soft`用于创建并编辑`soft`文件。 - `cp`:用于复制文件,`cp /mnt/myfiles.soft /root`将文件复制到指定位置。 - `umount`:用于卸载...

    linux操作题及答案shell练习题.pdf

    下面是一个 shell 程序,每天下午 3:20 删除 /ti 目录下的全部子目录和全部文件,每逢星期三下午 4:30 将 /kk 目录下的所有目录和文件归档并压缩为文件 backup.tar.gz,在下午 5:55 将 IDE 接口的 CD-ROM 卸载: ...

    Shell编程答案.pdf

    `-c`是测试命令`test`的一个选项,用于检测文件是否为字符特殊文件。如果文件是字符设备,`-c`会返回真,否则返回假。如果满足条件,脚本将文件复制到`/dev`目录下。 2. Apache服务器管理脚本: 第二题中的脚本...

    Shell编程答案.docx

    - 使用 `crontab` 命令编辑定时任务列表,创建一个名为 `prgx` 的文件。 - 在文件 `prgx` 中添加具体的定时任务指令,如: - `50 16 * * * rm -r /abc/*` 每天下午4:50删除 `/abc` 目录下的所有子目录和文件。 -...

    RHCT综合考题(一)

    4. 创建一个500M的物理分区,格式化为ext3文件系统,并挂载到/mnt/backup。考生需要掌握fdisk、mkfs.ext3以及mount命令来完成分区和挂载操作。 **第二部分:安装及服务配置** 这部分要求考生安装服务器并进行特定...

    linux常用shell脚本

    **方法2:** 创建一个包含命令的文件,并使用`crontab`命令执行。 **脚本内容:** ```bash 0 * * * sun cp /Cr /user/backup/tmp ``` **知识点解析:** - `00 0 * * sun`: 表示每周日00:00执行。 - `0 * * * sun`:...

    ClamAV杀毒软件安装

    - `groupadd clamav`:创建名为`clamav`的用户组。 - `useradd -g clamav clamav`:创建用户`clamav`,并将其加入到`clamav`用户组中。 - **创建日志和病毒库目录**: - `mkdir -p /usr/local/clamav/logs`:...

    SVN 冷备方式

    groupadd -g 786 svn ``` - 后续的所有操作需在备用服务器的`svn`用户下进行。 ##### 3.2 SVN安装配置 **安装准备**: - **用户配置**: - 切换至`svn`用户: ``` su – svn ``` - 创建SVN版本库,主备...

    新东方Linux培训教程4

    例如,`# groupadd mygroup`创建了一个名为`mygroup`的新组。 #### 为用户和组设置磁盘限额 为了合理利用磁盘空间并防止个别用户过度占用存储资源,Linux提供了磁盘限额功能。磁盘限额可以通过两种方式实现: - ...

    presto-admin:安装,配置和管理Presto安装的工具

    要启用sudoless docker访问,请运行以下命令: $ sudo groupadd docker $ sudo gpasswd -a ${USER} docker $ sudo service docker restart 如果您添加到docker组的用户与您登录的用户相同,则您需要注销并重新

    一周内学会linux系统管理

    通过理论学习和实际操作,每天专注于一个或几个主题,你将在一周内建立起扎实的Linux系统管理基础。记住,实践是检验知识的最好方式,尝试在虚拟机或自己的Linux系统上操作,遇到问题时查阅文档或在线搜索答案,这样...

    shell面试题

    )**: 脚本的第一行通常会包含一个shebang,它指定了执行该脚本所用的解释器路径。例如`#!/bin/sh`表示该脚本应使用`/bin/sh`来执行。 - 示例:`#!/bin/sh` 2. **变量赋值与使用**: - 变量无需显式声明类型即可...

    linux-ConfigLinux配置Linux服务器的自动化脚本

    2. **脚本结构**:一个基本的shell脚本通常包括shebang(#!/bin/bash)用于指定解释器,变量声明,函数定义,以及一系列命令。 3. **控制结构**:如条件语句(if-else,case),循环(for,while,until),以及...

    Linux定时执行脚本学习笔记

    `cron`是一个后台守护进程,用于周期性地执行任务,而`anacron`则为那些不常启动或长时间运行的系统提供了定时任务支持。通过编辑`crontab`文件,我们可以定义任务的具体执行时间,例如每天的特定时刻进行数据库备份...

    安装samba服务器和ftp服务器.pdf

    Samba允许Linux系统与Windows系统进行文件共享,而FTP则提供了一种标准的文件传输协议,使得用户可以通过网络上传和下载文件。 Samba服务器的安装步骤如下: 1. 使用`yum install samba samba-client samba-swat`...

Global site tag (gtag.js) - Google Analytics