《操作系统》实验指导书/实验八:系统高级管理 实验八:系统高级管理 实验目的 1、掌握 Linux系统中文件和目录权限管理的命令及操作方法; 2、掌握 Linux系统中用户和用户组权限管理的命令及操作方法; 3、掌握Linu系统中进程管理的命令及操作方法 实验学时 2学时 三、实验类型 创新性 四、实验需求 1、硬件 每人配备计算机1台,不低于双核CPU、8G内存、500GB硬盘 2、软件 Windows操作系统,安装 VirtualBox虚拟化软件,安装Puty管理终端软件。 3、网络 计算机使用固定P地址接入局域网,并支持对互联网的访问,虚拟主机可通过NAT方 式访问互联网。 4、工具 无 五、实验任务 1、完成Lnux权限管理命令的应用: chmod、 chown、chg 2、完成 Linux进程管理命令的应用:ps、 kill, killall: 3、完成 Linux任务计划命令的应用:at、 crontab 六、实验内容及步骤 1、权限管理 提示:本实验的操作均以超级用户root权限进行。 (1)文件和目录的权限管理 ①切换至root用户,并査看 umask参数,其操作命令如下,将输出结果写入表8-1 umask 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第1页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 1 页 实验八:系统高级管理 一、实验目的 1、掌握 Linux 系统中文件和目录权限管理的命令及操作方法; 2、掌握 Linux 系统中用户和用户组权限管理的命令及操作方法; 3、掌握 Linux 系统中进程管理的命令及操作方法。 二、实验学时 2 学时 三、实验类型 创新性 四、实验需求 1、硬件 每人配备计算机 1 台,不低于双核 CPU、8G 内存、500GB 硬盘。 2、软件 Windows 操作系统,安装 VirtualBox 虚拟化软件,安装 Putty 管理终端软件。 3、网络 计算机使用固定 IP 地址接入局域网,并支持对互联网的访问,虚拟主机可通过 NAT 方 式访问互联网。 4、工具 无。 五、实验任务 1、完成 Linux 权限管理命令的应用:chmod、chown、chgrp; 2、完成 Linux 进程管理命令的应用:ps、kill、killall; 3、完成 Linux 任务计划命令的应用:at、crontab。 六、实验内容及步骤 1、权限管理 提示:本实验的操作均以超级用户 root 权限进行。 (1)文件和目录的权限管理 ①切换至 root 用户,并查看 umask 参数,其操作命令如下,将输出结果写入表 8-1。 # sudo su # umask
《操作系统》实验指导书/实验八:系统高级管理 ②在/home目录下创建新目录dr1,查看并记录dir1的详细信息,其操作命令如下,并 将输出结果写入表8-1. mkdir dir1 #ls-1 ③改变 umask参数为066,并在/home目录下创建新目录di2,查看并记录d2的详细 信息,比较dr1和dir2目录权限不同,将不同信息填写到表8-1中。 umask 066 mkdir dir 2 表8-1dr1和dir2目录比较 ④结合权限管理基本命令,完成以下要求配置,并将操作流程写入表8-2 ●创建文件flel,查看flel权限信息; ●改变文件flel的权限为755,查看文件flel权限信息。 表8-2文件权限管理 (2)属主和属组管理 ①新建用户组 demogroup groupadd demogroup ②新建用户 demol、demo2、demo3,同属于用户组 demogroup。分别修改用户口令为 demold、demo2pwd、demo3pwd,其操作命令如下所示。 useradd -g demogroup demo #f useradd-g demogroup demo2 #f useradd-g up demo #t passwd demo 1 #f passwd demo 2 #f passwd demo ③创建目录/ ar/ftpshare,查看目录权限,制定目录权限为77,其操作命令如下所示 #f mkdir /var/ftpshare #|s+ #t chmod 777 /var/ftpshare ④使用用户 demol、demo2、demo3登录系统,并访问目录№ yar/ftpshare,进行权限测 试,并将测试结果填写至表8-3 表8-3测试访问权限 用户名称能否登录系统 /var/ ftpshare能否执行1s命令能够执行 touch能否执行mdir 能否访问到 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第2页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 2 页 ②在/home 目录下创建新目录 dir1,查看并记录 dir1 的详细信息,其操作命令如下,并 将输出结果写入表 8-1. # mkdir dir1 # ls -l ③改变 umask 参数为 066,并在/home 目录下创建新目录 dir2,查看并记录 dir2 的详细 信息,比较 dir1 和 dir2 目录权限不同,将不同信息填写到表 8-1 中。 # umask 066 # mkdir dir2 # ls -l 表 8-1 dir1 和 dir2 目录比较 ④结合权限管理基本命令,完成以下要求配置,并将操作流程写入表 8-2。 ●创建文件 file1,查看 file1 权限信息; ●改变文件 file1 的权限为 755,查看文件 file1 权限信息。 表 8-2 文件权限管理 (2)属主和属组管理 ①新建用户组 demogroup。 # groupadd demogroup ②新建用户 demo1、demo2、demo3,同属于用户组 demogroup。分别修改用户口令为 demo1pwd、demo2pwd、demo3pwd,其操作命令如下所示。 # useradd -g demogroup demo1 # useradd -g demogroup demo2 # useradd -g demogroup demo3 # passwd demo1 # passwd demo2 # passwd demo3 ③创建目录/var/ftpshare,查看目录权限,制定目录权限为 777,其操作命令如下所示。 # mkdir /var/ftpshare # ls -l # chmod 777 /var/ftpshare ④使用用户 demo1、demo2、demo3 登录系统,并访问目录/var/ftpshare,进行权限测 试,并将测试结果填写至表 8-3。 表 8-3 测试访问权限 用户名称 能否登录系统 能否访问到 /var/ftpshare 能否执行 ls 命令 能够执行 touch 命令 能否执行 mkdir 命令
《操作系统》实验指导书/实验八:系统高级管理 demol demo2 ⑤修改 ftpshare目录的属主为 demol,属组为 demogroup,其操作命令如下所示。 chown demo1 /var/ftpsha #f chgrp demogroup /var/ftpshare ⑥使用用户 demol、demo2、demo3登录系统,并访问目录lar/ ftpshare,进行权限测 试,并将测试结果填写至表8-4。 表8-4测试访间权限 用户名称能否登录系统能否访问到能否执行16命令假够投行能否技行啦d var demo2 demo (3)系统权限管理 结合权限管理的命令,完成以下要求配置,并将操作流程写入表8-5。 ①在当前系统中创建目录/ar/ www/fileshare ②在当前系统中创建用户 manageuser、 student1、 student2、 student3、 student4 ③用户 manageuser能够对/ ar/www/fileshare进行读写操作; ④用户 studentI、 student2、 student3、 student4能够进行读操作,不能够执行写操作 ⑤用户 manageuser在创建文件和目录时,用户 studentI、 student2、 student3、 student4 能够自动获得新创建目录和文件的读权限 表8-5系统权限管理 2、进程管理 (1)进程信息查看 ①査看当前系统信息或查看指定用户的信息,其操作命令如下。 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第3页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 3 页 demo1 demo2 demo3 ⑤修改 ftpshare 目录的属主为 demo1,属组为 demogroup,其操作命令如下所示。 # chown demo1 /var/ftpshare # chgrp demogroup /var/ftpshare ⑥使用用户 demo1、demo2、demo3 登录系统,并访问目录/var/ftpshare,进行权限测 试,并将测试结果填写至表 8-4。 表 8-4 测试访问权限 用户名称 能否登录系统 能否访问到 /var/ftpshare 能否执行 ls 命令 能够执行 touch 命令 能否执行 mkdir 命令 demo1 demo2 demo3 (3)系统权限管理 结合权限管理的命令,完成以下要求配置,并将操作流程写入表 8-5。 ①在当前系统中创建目录/var/www/fileshare; ②在当前系统中创建用户 manageuser、student1、student2、student3、student4; ③用户 manageuser 能够对/var/www/fileshare 进行读写操作; ④用户 student1、student2、student3、student4 能够进行读操作,不能够执行写操作; ⑤用户 manageuser 在创建文件和目录时,用户 student1、student2、student3、student4 能够自动获得新创建目录和文件的读权限。 表 8-5 系统权限管理 2、进程管理 (1)进程信息查看 ①查看当前系统信息或查看指定用户的信息,其操作命令如下。 # w
《操作系统》实验指导书/实验八:系统高级管理 #f w root ②使用 ps aux命令可査看系统所有程序进程或者也可査看指定程序的进程信息,其操 作命令如下。 ##实现分页查看进程信息 #f ps aux more ##查看SSH进程相关信息 ps aux grep sshd 根据进程信息,选择其中一条进程信息进行分析,并将分析结果填写至表8-6。 表8-6 ps aux命令结果解读 USER PID%CPU ‰MFM RSS TTY STAT START TIME 信息 描述 ②使用 ps lax命令可査看系统中进程的父进程ID和进程优先级信息,其操作命令如 ##实现分页查看进程相关信息 #f ps lax more ##查看SSH进程相关信息 #t ps lax grep sshd 根据进程信息,选择其中一条进程信息进行分析,并将分析结果填写至表8-7。 表8-7ps1ax命令结果解读 F UID PID PPID PRI NI VSZ RSS WCHANSTATTTYTIME COMA 信息 描述 ②使用lsof命令査看占用文件的进程信息,其操作命令如下。 ##查看所有文件的进程信息 Isof ##查看占用指定文件目录的进程和用户 #f Isof /proc/ 根据进程信息,选择其中一条进程信息进行分析,并将分析结果填写至表8-8。 表8-81s0f命令结果解读 COMMADN PID TID USER FD TYPE DEVICE SIZE/OFFWCHANNODE 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第4页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 4 页 # w root ②使用 ps aux 命令可查看系统所有程序进程或者也可查看指定程序的进程信息,其操 作命令如下。 ##实现分页查看进程信息 # ps aux | more ##查看 SSH 进程相关信息 # ps aux | grep sshd 根据进程信息,选择其中一条进程信息进行分析,并将分析结果填写至表 8-6。 表 8-6 ps aux 命令结果解读 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 信息 描述 ②使用 ps lax 命令可查看系统中进程的父进程 ID 和进程优先级信息,其操作命令如 下。 ##实现分页查看进程相关信息 # ps lax | more ##查看 SSH 进程相关信息 # ps lax | grep sshd 根据进程信息,选择其中一条进程信息进行分析,并将分析结果填写至表 8-7。 表 8-7 ps lax 命令结果解读 F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY TIME COMMA ND 信息 描述 ②使用 lsof 命令查看占用文件的进程信息,其操作命令如下。 ##查看所有文件的进程信息 # lsof ##查看占用指定文件目录的进程和用户 # lsof /proc/ 根据进程信息,选择其中一条进程信息进行分析,并将分析结果填写至表 8-8。 表 8-8 lsof 命令结果解读 COMMADN PID TID USER FD TYPE DEVICE SIZE/OFF WCHAN NODE NAME
《操作系统》实验指导书/实验八:系统高级管理 描述 (2)进程管理 ①kll命令 kl命令是通过进程I终止进程,其操作命令如下所示 ##安装ntp服务 yum install -y ntp ##ntp服务启动 systemc start ntp ##查看ntp服务进程D为2424(根据查询结果获得进程ID) #f ps aux g ##根据进程号终止进程(根据查询结果进行终止进程|D) ##查看进程是否存在 #f ps aux grep ntpd ②klll命令 killall f命令是通过匹配进程名称终止进程,但 CentOS7的部分版本中,没有默认安装 killall命令,可通过以下命令进行安装并终止相关进程,其操作命令如下所示。 #ntp服务启动 #t systemctI start ntpd ##查看ntp服务是否启动 #f ps aux grep ntpd ##安装kll!命令工具 yu mIsc ##终止ntp名称进程 ##查看ntp服务是否终止 ps aux grep ntpd (3)进程优先级 ①nice命令 nice命令可以在启动程序时设置其谦让度,高谦让度意味着低优先级,谦让度的值应 该在-20~+19之间浮动。nice命令修改的谦让度值是相对的,通过nice命令设置的谦让度 值,其操作命令如下所示 ##设置优先级命令格式 #nice-n谦让值[指令或选项 ##设置命令优先级为-19 ② )renice命令 renice命令可调整正在运行的进程的优先级信息,其操作命令如下所示 ##设置进程的优先级 # renice[谦让度绝对值]PD ##查看服务进程ID为4798 ##将进程ntp优先级号+1 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第5页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 5 页 信息 描述 (2)进程管理 ①kill 命令 kill 命令是通过进程 ID 终止进程,其操作命令如下所示。 ##安装 ntp 服务 # yum install –y ntp ##ntp 服务启动 # systemctl start ntpd ##查看 ntp 服务进程 ID 为 2424(根据查询结果获得进程 ID) # ps aux | grep ntpd ##根据进程号终止进程(根据查询结果进行终止进程 ID) # kill 2424 ##查看进程是否存在 # ps aux | grep ntpd ②killall 命令 killall 命令是通过匹配进程名称终止进程,但 CentOS 7 的部分版本中,没有默认安装 killall 命令,可通过以下命令进行安装并终止相关进程,其操作命令如下所示。 #ntp 服务启动 # systemctl start ntpd ##查看 ntp 服务是否启动 # ps aux | grep ntpd ##安装 killall 命令工具 # yum install –y psmisc ##终止 ntp 名称进程 # killall ntpd ##查看 ntp 服务是否终止 # ps aux | grep ntpd (3)进程优先级 ①nice 命令 nice 命令可以在启动程序时设置其谦让度,高谦让度意味着低优先级,谦让度的值应 该在-20~+19 之间浮动。nice 命令修改的谦让度值是相对的,通过 nice 命令设置的谦让度 值,其操作命令如下所示。 ##设置优先级命令格式 # nice –n [谦让值] [指令或选项] ##设置命令优先级为-19 # nice –19 systemctl restart ntpd ②renice 命令 renice 命令可调整正在运行的进程的优先级信息,其操作命令如下所示。 ##设置进程的优先级 # renice [谦让度绝对值] PID ##查看服务进程 ID 为 4798 # ps aux | grep ntpd ##将进程 ntp 优先级号+1 # renice +1 4798
《操作系统》实验指导书/实验八:系统高级管理 3、任务计划 (1)定时任务计划 ①安装at命令工具 CentoS7系统部分版本中,没有默认安装at命令,可通过以下命令进行安装 ##安装at命令工具 install -y at ##启动at服务 systemctl start atd ②使用at命令,定时输出内容到文件中,其操作命令如下所示。 ##现在开始1分钟后执行任务计划 f at now +minutes ##输出 hello到文本文件中 at> echo 'hello>/root/temp.txt ##输入crt|+D完成编辑 at> 通过1分钟可查看文件是否存在,文件内容是否为“helo”验证任务计划是否执行 ③使用at命令,定时启动服务,其操作命令如下所示 ##关闭ntp服务 systemctI stop ntpd ##设置1分钟后的任务计划 f at now +1m ##设置重启ntp服务的任务 at> systemctl start ntpd ##输入crt|+D完成编辑 at> ##1分钟后验证服务是否启动 #f ps aux grep ntpd ④删除未执行的定时任务计划,其操作命令如下所示。 ##查看未执行的定时任务计划 ##未执行的任务计划列表 Fri mar 2 10: 12: 00 2018 a root ##根据未执行任务计划D,删除任务计划 atrm 3 ⑤使用at命令,制定“下课后自动关闭系统”定时任务计划,并将配置流程填写至表 表8-9设置定时关机任务 (2)周期性任务计划 ①启动 crond服务,其操作命令如下所示。 systemctl start crond 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第6页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 6 页 3、任务计划 (1)定时任务计划 ①安装 at 命令工具 CentOS 7 系统部分版本中,没有默认安装 at 命令,可通过以下命令进行安装。 ##安装 at 命令工具 # yum install –y at ##启动 at 服务 # systemctl start atd ②使用 at 命令,定时输出内容到文件中,其操作命令如下所示。 ##现在开始 1 分钟后执行任务计划 # at now +1minutes ##输出 hello 到文本文件中 at> echo 'hello' > /root/temp.txt ##输入 crtl+D 完成编辑 at> 通过 1 分钟可查看文件是否存在,文件内容是否为“hello”验证任务计划是否执行。 ③使用 at 命令,定时启动服务,其操作命令如下所示。 ##关闭 ntp 服务 # systemctl stop ntpd ##设置 1 分钟后的任务计划 # at now +1minuts ##设置重启 ntp 服务的任务 at> systemctl start ntpd ##输入 crtl+D 完成编辑 at> ##1 分钟后验证服务是否启动 # ps aux | grep ntpd ④删除未执行的定时任务计划,其操作命令如下所示。 ##查看未执行的定时任务计划 # atq ##未执行的任务计划列表 3 Fri Mar 2 10:12:00 2018 a root ##根据未执行任务计划 ID,删除任务计划 # atrm 3 ⑤使用 at 命令,制定“下课后自动关闭系统”定时任务计划,并将配置流程填写至表 8-9。 表 8-9 设置定时关机任务 (2)周期性任务计划 ①启动 crond 服务,其操作命令如下所示。 # systemctl start crond
《操作系统》实验指导书/实验八:系统高级管理 ②使用 crontab命令,定时输出内容到指定文件中,其操作命令如下所示。 crontab-e ##设置每分钟执行任务计划,输入heo到/ root/temp2txt文件中 */1**** echo 'hello>>/root/temp2.txt 等待3分钟后,查看文件是否存在,且查看文件内容中是否包含3个“hell”,从而 验证周期性任务计划是否执行成功。 ③使用 crontab命令,制定“每10分钟备份 root/temp2tt文件到home目录下”的周 期任务计划,并将配置流程填写至表8-10。 表8-10设置周期任务 (3)任务计划执行日志 查看任务计划执行日志,其配置命令如下所示 #f cat /var/log/cron 阅读日志信息,选择其中一条日志信息进行分析,并将分析结果写入表8-11 表8-11任务计划执行日志解读 七、实验扩展 1、 umask、 chmod、 chown、 chgrp (1) umask命令的作用是什么?在进行文件权限管理时,可以提供哪些方便? (2) umask、 chmod、 chown、chgφp的基本功能和常用参数有哪些?上述四个命令的 应用场景和使用目的分别是什么? 2、权限管理 (1)能否将不同的用户设置相同UID?为什么? (2)在Lnux中,root用户的UD为0,通过直接修改/etc/ passwd文件将某一普通用 户的UID变更为0后,系统会发生什么? 3、进程管理 (1)进程有哪些状态?这些状态所表示的含义是什么? (2)进程和线程有什么关系?如何查看线程的信息? 信息管理与信息系统教研室/阮晓龙/13938213680/共7页,第7页
《操作系统》实验指导书 / 实验八:系统高级管理 信息管理与信息系统教研室 / 阮晓龙 / 13938213680 / 共 7 页,第 7 页 ②使用 crontab 命令,定时输出内容到指定文件中,其操作命令如下所示。 # crontab –e ##设置每分钟执行任务计划,输入 hello 到/root/temp2.txt 文件中 */1 * * * * echo 'hello' >> /root/temp2.txt 等待 3 分钟后,查看文件是否存在,且查看文件内容中是否包含 3 个“hello”,从而 验证周期性任务计划是否执行成功。 ③使用 crontab 命令,制定“每 10 分钟备份/root/temp2.txt 文件到/home 目录下”的周 期任务计划,并将配置流程填写至表 8-10。 表 8-10 设置周期任务 (3)任务计划执行日志 查看任务计划执行日志,其配置命令如下所示。 # cat /var/log/cron 阅读日志信息,选择其中一条日志信息进行分析,并将分析结果写入表 8-11。 表 8-11 任务计划执行日志解读 七、实验扩展 1、umask、chmod、chown、chgrp (1)umask 命令的作用是什么?在进行文件权限管理时,可以提供哪些方便? (2)umask、chmod、chown、chgrp 的基本功能和常用参数有哪些?上述四个命令的 应用场景和使用目的分别是什么? 2、权限管理 (1)能否将不同的用户设置相同 UID?为什么? (2)在 Linux 中,root 用户的 UID 为 0,通过直接修改/etc/passwd 文件将某一普通用 户的 UID 变更为 0 后,系统会发生什么? 3、进程管理 (1)进程有哪些状态?这些状态所表示的含义是什么? (2)进程和线程有什么关系?如何查看线程的信息?