实验五--Linux用户管理
1、用户组与用户相关命令的练习,如创建、删除、修改用户2、请编写一个C语言程序实现相关功能3、请在Centos7下完成安装Apache服务,要求:能够解决安装过程中的问题,学会使用百度查找解决问题的办法。将安装过程的切图写入到实验报告中。
实验五
1、用户组与用户相关命令的练习,如创建、删除、修改用户
2、请编写一个C语言程序实现相关功能
3、请在Centos7下完成安装Apache服务,要求:能够解决安装过程中的问题,学会使用百度查找解决问题的办法。将安装过程的切图写入到实验报告中。
一、用户组与用户相关命令的练习
a、请手动创建以下用户: zhangsan lisi wangwu zhaoliu sunqi,设置他们的登录密码

b、请创建以下工作组: Class01 Class02 ClassO3

c、请用 usermod 将 zhangsan 和 lisi 的默认工作组改为 ClassO1
首先查看三个用户组的组编号 ID
# tail -3 /etc/group

# usermod -g 1006 zhangsan
# usermod -g 1006 lisi
然后查看是否修改成功
# tail -10 /etc/passwd
# id zhangsan
# id lisi

由上图可知,一共拥有7列
第1列:用户名称
第2列:用户的密码,使用一个x占位符,真实密码存储在/etc/shadow(1-用户名,2-加密密码)
第3列:数字,用户的ID编号
第4列:数字,用户的主组ID编号
第5列:代表注释信息,useradd -c "备注信息" 用户名称
第6列:用户的家目录,默认在/home/用户名称
第7列:用户可以使用的Shell类型,useradd -s /bin/bash或/sbin/nologin 用户名称
我们发现修改成功。进一步进行验证发现前后符合
uid:用户编号
gid:用户所属的主组的编号
groups:用户的主组以及附属组信息,第一个是主组,后面的都是附属组或附加组信息
d、请用 usermod 将 wangwu 和 zhaoliu 的默认工作组改为 Class02
步骤同C
我们进行验证

修改成功。
e、请用 su 命令切换到 sunqi 账户,然后用 newgrp 将 sunqi 的所在工作组改为 Class03
# su - sunqi
# newgrp Class03

f、请用 root 用户将 zhangsan 设置为 Class01 组的管理员
# gpasswd Class01
# gpasswd -A zhangsan Class01
先给 Class03 设置密码,之后将 zhangsan 设置为 Class01 组的管理员
(操作失误,应该是Class01,在之后的步骤进行修改)
g、 zhangsan 登录后,管理 Class01 组时,把 sunqi 加入到了 Class01 组,将 lisi 剔除 Class01
$ gpasswd -a sunqi Class01
$ gpasswd -d lisi Class01

h、请查看文件 /etc/group 确认每个工作组的成员都有哪些?

l、请修改 ClassO2 工作组的密码为: haha

J、请删除用户 sunqi,并将与 sunqi 相关的所的内容同时删除
提示 sunqi 正在被使用

# kill 9460
# groupdel sunqi
K、请删除工作组 ClassO3
# groupdel Class03

删除成功
二、请编写一个C语言程序实现相关功能
请编写一个C语言程序实现如下功能:
A)同时创建100个用户,用户的账户名称为: Student01,Student02 … Student100;
B)设置每个用户的初始密码为: stud123456
C)请用gcc编译C的源代码,生成可执行程序。
D)运行可执行程序,为Linux系统添加100个初始用。
E)将源代码、实验执行的验证结果,写入到实验报告中。
请帮我编写一个C语言程序实现如下功能,我将把代码粘贴到Linux的编辑器中:
A)同时创建100个用户,用户的账户名称为: Student01,Student02 … Student100;
B)设置每个用户的初始密码为: stud123456
并且,编译运行后的结果是在linux上创建了上述100个用户
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_USER_NUM 100
#define PASSWORD "stud123456"
int main() {
char usernames[MAX_USER_NUM][11]; // 存储用户名的数组
char passwords[MAX_USER_NUM][11]; // 存储密码的数组
int i;
// 生成用户名和密码
for (i = 0; i < MAX_USER_NUM; i++) {
sprintf(usernames[i], "Student%02d", i + 1);
strcpy(passwords[i], PASSWORD);
}
// 输出用户名和密码
for (i = 0; i < MAX_USER_NUM; i++) {
printf("User: %s, Password: %s\n", usernames[i], passwords[i]);
}
return 0;
}
解释:
- 该程序使用了一个字符串数组来存储用户名和密码,数组大小为 100,即最大用户数为 100。
- 程序通过循环,依次生成用户名和密码,并将其存储在相应的数组中。其中,sprintf 函数用于生成格式化的字符串,strcpy 函数用于复制字符串。
- 最后,程序使用循环输出所有的用户名和密码。


注意这只是在终端中用C语言简单写了一个可以输出100个账户密码的纸壳子,真的想要创建100个用户得用 shell 脚本,可以将其粘贴到编辑器中并保存为 shell 脚本文件,例如 create_users.sh:
#!/bin/bash
PASSWORD="stud123456"
for i in {1..100}
do
USERNAME=$(printf "Student%02d" $i)
useradd -m $USERNAME
echo "$USERNAME:$PASSWORD" | chpasswd
done
这个脚本使用了 useradd 命令来创建用户,并使用 chpasswd 命令来设置用户密码。注意,这个脚本需要在具有 root 权限的账户下运行。
要运行这个脚本,请将其保存为文本文件,并使用 chmod +x create_users.sh 命令添加可执行权限,然后运行 ./create_users.sh 即可。
三、请在 Centos7 下完成安装 Apache 服务
Apache:阿帕奇,Apache基金会
httpd软件 => 前身apache,随着时间的推移以及互联网行业的发展,越来越多的软件加入到了Apache的基金会。
第一步:安装httpd软件
# yum install httpd -y
第二步:配置 /etc/httpd/conf/httpd.conf 文件
# vim /etc/httpd/conf/httpd.conf
/ServerName => 搜索
96 ServerName localhost:80
localhost : 代表本机,对应的IP地址可以使 127.0.0.1 或本机的公网 IP
第三步:启动httpd服务
# systemctl start httpd
第四步:把httpd服务添加到开机启动项中
# systemctl enable httpd
第五步:使用ss或netstat命令查询httpd占用的端口
# netstat -tnlp |grep httpd
或
# ss -naltp |grep httpd
第六步:在浏览器中,使用公网IP访问阿里云服务器

更多推荐

所有评论(0)