Linux系统程序与进程管理(02)(十三) | 您所在的位置:网站首页 › linux怎么看运行的程序 › Linux系统程序与进程管理(02)(十三) |
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、故障处理 1、遗忘root密码 1.1 root密码修复 2、文件系统损坏 3、MBR引导扇区故障 4.grub引导故障 5.磁盘资源耗尽 二、程序与进程的区别 三、程序与进程操作 1、进程概述 2、进程查看命令 3、终止进程 4、前台进程与后台进程 总结 前言今天继续学习Linux系统程序与进程管理,主要是对于上次课的补充,希望我们一起加油,好好学习。 提示:以下是本篇文章正文内容,下面案例可供参考 一、故障处理 1、遗忘root密码 1.1 root密码修复1、修改grub参数 使用修改grub参数方法: (1) 启动系统后,在grup界面按e进入编辑模式 Linux 16 的那一行,将 ro 改为 rw init=/sysroot/bin/sh Ctrl+x chroot /sysroot 修改root用户密码 passwd echo "密码" |passwd --stdin root touch /.autorelabel 自动识别label标签 不创建密码修改不生效 exit reboot (2) a)在系统系统时,按方向键让界面停在grub引导界面上 b)按"e",找到"linux16"所在行,在最后添加 rd.break,然后按"ctrl+x" c)switch_root#mount -o remount,rw /sysroot switch_root#chroot /sysroot switch_root#export LANG=c slswitch_root#passwd root switch_root#touch /.autorelabel d)switch_root#exit sh-4.2#init 6 2、使用centos自带的修复模式 U盘或者光驱导入系统盘,开机->F2->bios->boot->cdrom或者USB为第一启动顺序 选择trubleshooting选项-->rescue a centos system 选择"1"-->sh-4.2#chroot /mnt/sysimage bash-4.2#passwd root-->exit 修改bios,调整正确的启动顺序 2、文件系统损坏模拟故障:dd if=/dev/zero of=/dev/sdd1 bs=512 count=4
3、MBR引导扇区故障 模拟故障 1)先备份MBR数据 dd if=/dev/sdb of=/sdbbackup/sdb.mbr.bak bs=512 count=1 假如sdb时系统文件所在磁盘,需要使用光盘镜像进入修复模式。 2)模拟故障 dd if=/dev/zero of=/dev/sdb bs=512 count=1 3)恢复故障 dd if=/sdbbackup/sdb.mbr.bak of=/dev/sdb bs=512 count=1 修复 导入系统盘,开机->F2->bios->boot->cdrom为第一启动顺序 选择trubleshooting选项-->rescue a centos system 选择"1"-->sh-4.2#chroot /mnt/sysimage bash-4.2#dd if=/sdbbackup/sdb.mbr.bak of=/dev/sdb bs=512 count=1 4.grub引导故障故障模拟 mv /boot/grub2/grub.cfg /grubbackup ; reboot
驱动路径: /usr/lib/modules/3.10.0-1160.el7.x86_64/kernel/drivers/) 修复(手动引导操作系统) 1)grub>ls,查看磁盘分区信息,找到boot分区 2)grub>insmod xfs grub> set root=(hd0,msdos1) (----> 这个为你上一步中找到的boot分区) grub> linux16 /vmlinuz-xxxxx root=/dev/mapper/centos-root grub> initrd16 /initramfs-.xxxxx.img grub> boot 3)将备份好的gurb文件拷贝到/boot/grub2/目录中。或者 在没有备份grub的情况下: grub2-mkconfig --output /boot/grub2/grub.cfg 重新生成grub 1)磁盘空间不足 清理磁盘或者添加新磁盘 2)inode节点耗尽 查看磁盘inode节点数量:df -i 删除无用文件 3)预防磁盘资源耗尽的最好办法 进行磁盘配额 二、程序与进程的区别程序:静态代码,存储在硬盘等介质中 进程:程序运行后在CPU及内存中运行的动态代码;父进程与子进程; 三、程序与进程操作 1、进程概述进程名 运行用户 PID(process 进程) :进程唯一标识符 运行的命令 2、进程查看命令(1)ps aux,静态显示正在内存中运行的进程信息 USER PID %CPU %MEM VSZ RSS TTY STAT STARTTIME COMMAND 用户 进程号 CPU占比 内存占比 虚拟内存 固定内存占用 连接终端 状态 开始时间 进程运行的命令
(2) ps -elf,属于当前登录的所有进程信息 F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD 标识 状态 用户ID 进程ID 父进程ID CPU 优先权 优先权修正 内存位置 内存占比 -运行 开始时间 终端 占用CPU时间 命令 (3)pgrep ,进程筛选 选项 -o:显示找到的最小进程号 -n:显示找到的最大进程号 -l:显示进程名 -p:指定父进程 -g:指定进程组 -t:指定开启的终端 -u:指定进程有效用户 案例 pgrep -l httpd -u apache (4)pstree 显示进程树 -a:显示完整信息 -u:显示UID -p:显示PID号
(5)top,动态显示进程信息 选项 P:根据CPU占用情况显示 M:根据内存占用显示 N:根据启动时间 q:退出 t:切换进程和cpu状态 i:忽略显示僵尸进程 k:终止一个进程 空格:强制更新 说明 top - 19:40:26 up 2:34, 5 users, load average: 0.42, 0.22, 0.16 Tasks: 209 total, 2 running, 207 sleeping, 0 stopped, 0 zombie %Cpu(s): 14.0 us, 3.8 sy, 0.0 ni, 82.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 997956 total, 73544 free, 732792 used, 191620 buff/cache KiB Swap: 2097148 total, 1904892 free, 192256 used. 71360 avail Mem 第一行:系统当前时间;已经运行了16天21小时,1个用户登录;系统1/5/15分钟之内的平均负载 第二行:Tasks(总进程数是145);2个正运行的进程;143个睡眠的进程;0个停止;0个僵尸进程 第三行:CPU(用户控件占用CPU的百分比是99.8%),内核占用CPU0.1%;0.0%ni[用户进程空间内改变过优先级的进程占用CPU百分比];0.2%id[空闲CPU百分比], 0.0%wa[等待输入输出的CPU时间百分比]; 第四行:Mem(内存)总大小是4G;2.4G被使用;1.6G空闲;158M作为内核缓存(buffer:写入缓冲区); 第五行:Swap(交换分区)总大小5G;用了56k;其余闲置;2G作为读取缓存(cached:CPU刚使用的数据); Ctrl+C #终止前台进程 kill 进程号 #终止后台进程;-u指定用户 kill `pgrep firefox` 不关心进程号直接杀死firefox kill -9 进程号 #强制杀死 pkill 名字 #按照进程名杀死进程 killall httpd #使用进程名杀死一组进程;-l不区分大小写;-u指定杀死用户的进程 4、前台进程与后台进程前台进程:在终端中直接运行的程序,影响当前终端的使用 后台进程:在后端运行的程序,不影响当前终端使用 前台进程切换成后台进程:firefox & [1]+ 运行中 firefox & jobNumber 状态 进程名 查看切换到后台的进程信息:jobs [-l 显示PID] 后台进程调到前台进程:fg jobNumber 暂停前台进程:Ctrl+z 将暂停进程直接调到后台执行:bg jobNumber 总结以上就是今天要讲的内容,今天是在上次课的基础上进行了补充和添加,今天主要是一些概念和操作,内容较多,希望我们能够熟练操作。 |
CopyRight 2018-2019 实验室设备网 版权所有 |