groupadd

groupadd

用于创建一个新的工作组

补充说明

groupadd命令 用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。

语法

groupadd(选项)(参数)

选项

-g:指定新建工作组的id;
-r:创建系统工作组,系统工作组的组ID小于500;
-K:覆盖配置文件“/etc/login.defs”;
-o:允许添加组ID号不唯一的工作组。

参数

组名:指定新建工作组的组名。

实例

建立一个新组,并设置组ID加入系统:

groupadd -g 344 jsdigname

此时在/etc/passwd文件中产生一个组ID(GID)是344的项目。

2024-08-08    
groupdel

groupdel

用于删除指定的工作组

补充说明

groupdel命令 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。

语法

groupdel(参数)

参数

组:要删除的工作组名。

实例

groupadd damon  //创建damon工作组
groupdel damon  //删除这个工作组
2024-08-08    
groupmems

groupmems

管理用户主要组的成员

补充说明

groupmems 命令允许用户管理他/她自己的组成员列表,而不需要超级用户权限。groupmems 实用程序适用于将其用户配置为以他们自己的名义主组(即来宾/来宾)的系统。

只有作为管理员的超级用户可以使用 groupmems 来更改其他组的成员资格。

语法

groupmems -a user_name | -d 用户名 | [-g 用户组名] | -l | -p

选项

-a, --add user_name # 将用户添加到组成员列表。如果 /etc/gshadow 文件存在,并且该组在 /etc/gshadow 文件中没有条目,则将创建一个新条目。

-d, --delete user_name
# 从组成员列表中删除用户。
# 如果 /etc/gshadow 文件存在,用户将从组的成员和管理员列表中删除。
# 如果 /etc/gshadow 文件存在,并且该组在 /etc/gshadow 文件中没有条目,则将创建一个新条目。

-g, --group group_name # 超级用户可以指定要修改的组成员列表。
-l, --list             # 列出组成员列表。
-p, --purge            # 从组成员列表中清除所有用户。
# 如果 /etc/gshadow 文件存在,并且该组在 /etc/gshadow 文件中没有条目,则将创建一个新条目。

配置

/etc/login.defs 中的以下配置变量会更改此工具的行为:

MAX_MEMBERS_PER_GROUP (number)

每个组条目的最大成员数。 当达到最大值时,在 /etc/group 中启动一个新的组条目(行)(具有相同的名称、相同的密码和相同的 GID)。

2024-08-08    
groupmod

groupmod

更改群组识别码或名称

补充说明

groupmod命令 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。

语法

groupmod(选项)(参数)

选项

-g<群组识别码>:设置欲使用的群组识别码;
-o:重复使用群组识别码;
-n<新群组名称>:设置欲使用的群组名称。

参数

组名:指定要修改的工作的组名。

2024-08-08    
groups

groups

打印指定用户所在组的名称。

概要

groups [OPTION]... [username]...

主要用途

  • 打印指定用户所在组的名称。

选项

--help       显示帮助信息并退出。
--version    显示版本信息并退出。

参数

username(可选):可以是一到多个,不提供时默认为当前用户。

返回值

返回0表示成功,返回非0值表示失败。

例子

显示linux用户所属的组

[root@localhost ~]# groups linux
linux : linux adm dialout cdrom plugdev lpadmin admin sambashare

注意

  1. 该命令等价于 id -Gn
  2. 每个用户属于/etc/passwd中指定的一个组和在/etc/group中指定的其他组。
  3. 该命令是GNU coreutils包中的命令,相关的帮助信息请查看man -s 1 groupsinfo coreutils 'groups invocation'
2024-08-08    
grpck

grpck

用于验证组文件的完整性

补充说明

grpck命令 用于验证组文件的完整性,在验证之前,需要先锁定(lock)组文件/etc/group/etc/shadow

grpck命令检查数据是否正确存放,每条记录是否都包含足够的信息,是否有一个唯一的组名,是否包含正确的用户,是否正确设置了组的管理员等。grpck检查发现错误以后,在命令行提示用户是否删除错误的记录。如果用户没有明确回答删除记录,grpck终止运行。

语法

grpck(选项)

选项

-r:只读模式;
-s:排序组id。

实例

对组账号和影子文件进行验证:

grpck   # 必须以管理员身份运行
grpck /etc/group /etc/gshadow   # 后面两句一样,如果没有输出信息,则表示没有错误。

测试错误的实例:

**echo check_user:x: >> /etc/group    # 添加一行错误的格式数据
cat /etc/group | grep check_user**
check_user:x:  # 这儿GID字段为空,是错误的。

 **grpck /etc/group** 
invalid group file entry
delete line 'check_user:x:'? y      # 提示是否删除
grpck: the files have been updated  # 这时已经删除了错误的行,提示文件已经更新。

 **cat /etc/group  | grep check_user   # 没有查到,已经删除了。** 
2024-08-08    
grpconv

grpconv

用来开启群组的投影密码

补充说明

grpconv命令 用来开启群组的投影密码。Linux系统里的用户和群组密码,分别存放在/etc目录下的passwd和group文件中。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在/etc目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符。投影密码的功能可随时开启或关闭,您只需执行grpconv指令就能开启群组投影密码。

语法

grpconv

实例

设置cdy组密码

groupmod --password 123456 cdy
cat /etc/group | grep cdy
cdy:123456:1000:     # 看出密码是123456

启动影子系统

grpconv
cat /etc/group |  grep cdy
cdy:x:1000:      # 看出密码段已经被x替代

cat /etc/gshadow | grep cdy
cdy:123456::      # 已经移到影子文件了

注:gshadow, shadow只有root权限才可以查看。

2024-08-08    
grpunconv

grpunconv

用来关闭群组的投影密码

补充说明

grpunconv命令 用来关闭群组的投影密码。它会把密码从gshadow文件内,回存到group文件里。

语法

grpunconv

实例

未关闭的情况

cat /etc/gshadow | grep cdy
cdy:123456::

关闭影子密码

cat /etc/gshadow
cat: /etc/gshadow: 没有那个文件或目录

查看密码已经复制到/etc/group中了。

cat /etc/group | grep cdy
cdy:123456:1000:
2024-08-08    
grub

grub

多重引导程序grub的命令行shell工具

补充说明

grub命令 是多重引导程序grub的命令行shell工具。

语法

grub(选项)

选项

--batch:打开批处理模式;
--boot-drive=<驱动器>:指定stage2的引导驱动器;
--config-file<配置文件>:指定stage2的配置文件;
--device-map=<文件>:指定设备的映射文件;
--help:显示帮助信息;
--install-partition=<分区>:指定stage2安装分区;
--no-config-file:不使用配置文件;
--no-pager:不使用内部分页器;
--preset-menu:使用预设菜单;
--probe-second-floppy:检测第二个软盘驱动器;
--read-only:只读模式。

实例

利用grub命令来启动损坏的Linux系统,可能你的电脑因为某些原因损坏不能自动启动了。当然原因很多,可能的现象也很多。

这里说一下这种情况下的处理方法,即:屏幕上提示grub>,但你的硬盘上数据没有丢失,各分区都是好的。这种情况是你的grub信息损坏了,但比较严重的是系统启动不了。

当然,在正常启动情况下,屏幕上出现grub的启动项选择菜单时按c键也是可以进入grub>状态的。这时候我们需要用grub的命令来手工启动系统。

只需要用到四个命令boot、kernel、initrd、boot。

但grub本身命令很多,比如查看文件内容的cat ,你输入help会得到。

首先,输入“ root (hd ” ,然后按两次 TAB 键; /* 这会列出你电脑上可能的磁盘设备,硬盘为 hd0/hd1 或 sd0/sd1 等 */

然后,选择你的安装 Linux 系统的硬盘,比如 hd0 ,输入 “ root (hd0, ” 再按两次 TAB 键; /* 这会列出你的第一块硬盘上的分区情况,你会知道哪个是 swap 交换分区, 0x82 ,哪个是 Linux 分区 0x83 */

选择你认为可能的 /boot 目录所在的分区, 输入root (hd0, 1)回车;

接着,输入cat /boot/vm, 按两次 TAB 键,如果出现一些 vm 开头的文件,比如 vmlinuz-2.6.15-26-386 说明这里是 /boot 所在的分区。

2024-08-08    
grub2-mkconfig

grub2-mkconfig

生成 grub.cfg 配置文件。

语法

Usage: grub2-mkconfig [OPTION]
Generate a grub config file

  -o, --output=FILE       output generated config to FILE [default=stdout]
  -h, --help              print this message and exit
  -v, --version           print the version information and exit

Report bugs to <bug-grub@gnu.org>.

实例

生成新的grub配置文件

grub2-mkconfig -o /boot/grub2/grub.cfg

# 或者

grub2-mkconfig > /boot/grub2/grub.cfg
2024-08-08