Linux系统程序与进程管理

本节内容主要包括:故障处理,程序与进程的区别、程序与进程的操作

一、故障处理

1、文件系统损坏

模拟故障:dd if=/dev/zero of=/dev/sdd1 bs=512 count=4

  英文告警

centos7下的XFS文件系统修复

xfs_repair /dev/sdb1

可挂载:先格式化后挂载

mkfs -t xfs -f /dev/sdb1

mount /dev/sdb1 /mnt/111(使用命令df -Th查看)

 centos7下的ext文件系统修复:

fsck -y -t ext4 /dev/sdb1

2.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

3.grub引导故障

故障模拟

mv /boot/grub2/grub.cfg /grubbackup ; reboot

驱动操作

查看模块:lsmod

卸载模块:rmmod  模块名称

加载模块:insmod  模块的绝对路径

       (find  /  -name  "*模块名称*"

   驱动路径:/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

4.磁盘资源耗尽

1)磁盘空间不足

    清理磁盘或者添加新磁盘

2)inode节点耗尽

    查看磁盘inode节点数量:df -i

 

    删除无用文件

二、程序与进程的区别

程序:静态代码,存储在硬盘等介质中

进程:程序运行后在CPU及内存中运行的动态代码;父进程与子进程;

三、程序与进程操作

1.进程概述

进程名               运行用户

PID(process:进程)          进程唯一标识符

运行的命令

2.进程查看命令

ps aux,静态显示正在内存中运行的进程信息
    USER    PID   %CPU      %MEM    VSZ        RSS                TTY      STAT  STARTTIME    COMMAND
用户  进程号 CPU占比  内存占比  虚拟内存  固定内存占用          连接终端  状态  开始时间   进程运行的命令
    状态:
        S:sleep休眠进程
        s:表示有很多子进程,表示父进程
        R:正在工作的进程
        T:已经停止的进程
        Z:僵尸进程,zombie,会占用系统资源,主要占用内存资源
        <    high-priority (not nice to other users)
        N    low-priority (nice to other users)
        L    has pages locked into memory (for real-time and custom IO)
        s    is a session leader
        l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
        +    is in the foreground process group


 ps -elf,属于当前登录的所有进程信息
    F    S     UID     PID    PPID     C                     PRI     NI        ADDR        SZ     WCHAN  STIME TTY          TIME CMD
    标识 状态 用户ID  进程ID  父进程ID CPU    优先权 优先权修正 内存位置 内存占比  -运行  开始时间 终端   占用CPU时间 命令


pgrep ,进程筛选
    选项
        -o:显示找到的最小进程号
        -n:显示找到的最大进程号
        -l:显示进程名
        -p:指定父进程
        -g:指定进程组
        -t:指定开启的终端
        -u:指定进程有效用户
    案例
        pgrep -l httpd -u apache
pstree 显示进程树
    -a:显示完整信息
    -u:显示UID
    -p:显示PID号


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刚使用的数据);

3.终止进程

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


  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值