Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)

Linux系列笔记
Linux(一)Linux入门及相关软件安装配置.
Linux(二)实用指令.
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理).

文章目录

  • 第 9 章组管理和权限管理
    • 9.1Linux组基本介绍
    • 9.2文件/目录的所有者
      • 9.2.1查看文件的所有者
      • 9.2.2修改文件所有者
    • 9.3文件/目录的所在组
      • 9.3.1修改文件所在的组
      • 9.3.2改变用户所在组
    • 9.4权限的基本介绍
    • 9.5rwx权限详解
      • 9.5.1rwx作用到文件(重要)
      • 9.5.2rwx作用到目录(重要)
    • 9.6修改权限-chmod
    • 9.7修改文件所有者-chown
      • 9.7.1基本介绍
    • 9.8修改文件所在组-chgrp
      • 9.8.1基本介绍
      • 9.8.2案例演示:
    • 9.9最佳实践-警察和土匪游戏
  • 第10章 定时任务调度
    • 10.1crond 任务调度
      • 10.1.1 概述
      • 10.1.2 基本语法
      • 10.1.3 常用选项
      • 10.1.4快速入门
      • 10.1.5参数细节说明
      • 10.1.6应用实例
  • 第 11 章Linux磁盘分区、挂载
    • 11.1分区的基本知识
      • 11.1.1分区的方式(知道即可):
      • 11.1.2windows下的磁盘分区
    • 11.2Linux分区
      • 11.2.1原理介绍
      • 11.2.2硬盘说明
      • 11.2.3查看所有设备(光驱 /media,u盘, 硬盘)挂载情况
    • 11.3挂载的经典案例
      • 11.3.1说明:
      • 11.3.2增加一块硬盘的步骤
    • 11.4磁盘情况查询
      • 11.4.1查询系统整体磁盘使用情况
      • 11.4.2查询指定目录的磁盘占用情况
    • 11.5磁盘情况-工作实用指令
  • 第 12 章linux的网络配置
    • 12.1查看网络IP和网关
      • 12.1.1查看虚拟网络编辑器
      • 12.1.2修改ip地址(修改vmnet虚拟网卡的ip)
      • 12.1.3查看网关
    • 12.2linux网络环境配置
      • 12.2.1第一种方法(自动获取)
      • 12.2.2第二种方法配置固定的ip地址
    • 12.2修改主机名
  • 第 13 章进程管理(重点)
    • 13.1基本介绍
      • 13.1.1显示系统执行的进程
      • 13.1.2ps详解
    • 13.2终止进程kill和killall
      • 13.2.1介绍:
      • 13.2.2基本语法:
      • 13.2.3常用选项:
      • 13.2.4最佳实践:
    • 13.3查看进程树pstree
      • 13.3.1基本语法:
      • 13.3.2常用选项:
      • 13.3.3应用实例:
    • 13.4服务(service)管理
    • 13.5动态监控进程
      • 13.5.1介绍:
      • 13.5.2基本语法
      • 13.5.3选项说明:
    • 13.6监控网络状态(重要)
  • 第 14 章rpm 和 yum软件安装
    • 14.1rpm包的管理
      • 14.1.1介绍:
      • 14.1.2rpm包的简单查询指令:
      • 14.1.3rpm包名基本格式:
      • 14.1.4rpm包的其它查询指令:
      • 14.1.5卸载rpm包
      • 14.1.6安装rpm包
    • 14.2yum的使用

第 9 章组管理和权限管理

9.1Linux组基本介绍

  • 在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。
    1. 所有者:指这个文件是谁的
    2. 所在组:指这个文件归属于哪个组
    3. 其它组:除去所在组的所有组
    4. 改变用户所在的组

9.2文件/目录的所有者

  • 一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者

9.2.1查看文件的所有者

  • 指令:ls -ahl
  • 应用实例 :创建一个组police,再创建一个用户tom,将tom放在police组 ,然后使用 tom来创建一个文件 ok.txt,看看情况如何
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第1张图片
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第2张图片

9.2.2修改文件所有者

  • 指令:chown 用户名 文件名
  • 应用案例
    要求:使用root 创建一个文件apple.txt ,然后将其所有者修改成 tom
    在这里插入图片描述

9.3文件/目录的所在组

9.3.1修改文件所在的组

  • 基本指令
    chgrp 组名 文件名
  • 应用实例
    使用root用户创建文件 orange.txt ,看看当前这个文件属于哪个组【root】,然后将这个文件所在组,修改到 police组。
    chgrp police orange.txt
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第3张图片

9.3.2改变用户所在组

  • 在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组。
  • 改变用户所在组
  1. usermod –g 组名 用户名
  2. usermod –d 目录名 用户名 改变该用户登陆的初始目录。
  • 应用实例
    创建一个土匪组(bandit)将 tom 这个用户从原来所在的police组,修改到 bandit(土匪) 组
    Usermod -g bandit tom
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第4张图片

9.4权限的基本介绍

  • 在Tom文件下输入ls -l 中显示的内容如下:

    -rw-r–r--. 1 tom police 0 6月 8 14:29 ok.txt
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第5张图片
    0-9位说明

  • 第0位确定文件类型(说明: -:普通文件, d:目录,l : 连接文件, c: 字符设备文件[键盘,鼠标] b: 块设备文件[硬盘] )

  • 第1-3位确定所有者(该文件的所有者)拥有该文件的权限。r: 读 , w : 写权限 x: 执行权限

  • 第4-6位确定所属组(同用户组的)拥有该文件的权限

  • 第7-9位确定其他用户拥有该文件的权限

  • 1: 如果是文件,表示硬链接的数目, 如果是目录,则表示有多少个子目录

  • 1213: 表示文件大小,如果是目录,则统一为 4096

9.5rwx权限详解

9.5.1rwx作用到文件(重要)

  1. [ r ]代表可读(read): 可以读取,查看
  2. [ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件.
  3. [ x ]代表可执行(execute):可以被执行
    还可以用数字表示:r=4,w=2,x=1 因此rwx=4+2+1=7

9.5.2rwx作用到目录(重要)

  1. [ r ]代表可读(read): 可以读取,ls查看目录内容
  2. [ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
  3. [ x ]代表可执行(execute):可以进入该目录
    还可以用数字表示:r=4,w=2,x=1 因此rwx=4+2+1=7

9.6修改权限-chmod

  • 基本说明:
    通过chmod指令,可以修改文件或者目录的权限
  • 第一种方式:+ 、-、= 变更权限
    u:所有者 g:所在组 o:其他人 a:所有人(u、g、o的总和)
    1. chmod u=rwx,g=rx,o=x 文件、目录 【表示:给所有者rwx, 给所在组的用户 rx, 给其他人 x】
    2. chmod o+w 文件、目录 【表示:给其它用户增加w 的权限】
    3. chmod a-x 文件、目录 【表示:给所有用户 去掉 x权限】
  • 案例演示
  1. 给abc文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限。

Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第6张图片
2) 给abc文件的所有者除去执行的权限,增加组写的权限
在这里插入图片描述
3) 给abc文件的所有用户添加读的权限
在这里插入图片描述

  • 第二种方式:通过数字变更权限
    r=4 w=2 x=1 rwx=4+2+1=7
    chmod u=rwx,g=rx,o=x 文件、目录
    相当于 chmod 751 文件、目录

  • 案例演示
    要求:将 /home/hello.txt文件的权限修改成 rwxr-xr-x, 使用给数字的方式实现:
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第7张图片

9.7修改文件所有者-chown

9.7.1基本介绍

  • chown newowner file 改变文件的所有者

  • chown newowner:newgroup file 改变用户的所有者和所有组

  • -R 如果是目录 则使其下所有子文件或目录递归生效

  • 案例演示:
    1)请将 /home/a.txt 文件的所有者修改成 tom
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第8张图片
    2)请将 /home/kkk 目录下所有的文件和目录的所有者都修改成tom
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第9张图片
    将home下的所有文件和目录的所有者都改成 tom,将所在组改成police
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第10张图片

9.8修改文件所在组-chgrp

9.8.1基本介绍

  • chgrp newgroup file 改变文件的所有组

9.8.2案例演示:

  • 1)请将 /home/abc .txt 文件的所在组修改成 shaolin (少林)
    chgrp shaolin /home/abc.txt
  • 2)请将 /home/kkk 目录下所有的文件和目录的所在组都修改成 shaolin(少林)
    chgrp -R shaolin /home/kkk

9.9最佳实践-警察和土匪游戏

police , bandit
jack, jerry: 警察
xh, xq: 土匪
(1)创建组
groupadd police
groupadd bandit
(2)创建用户
useradd -g police jack
useradd -g police jerry
useradd -g bandit xh
useradd -g bandit xq
设置密码:以jack举例
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第11张图片
(3) jack 创建一个文件,自己可以读写,本组人可以读,其它组没人任何权限
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第12张图片
(4) jack 修改该文件,让其它组人可以读, 本组人可以读写
在这里插入图片描述
5) xh 投靠 警察,看看是否可以读写
我们首先探讨下xh进入jack目录吗?
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第13张图片
如果把xh转到警察组呢?(用root用户改变xh所在组,xh自己无法修改)
发现还是不行
在这里插入图片描述
因为jack对所在组都没有权限,于是我们可以用jack用户设置对所在组可访问
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第14张图片
但发现xh还是没权限
在这里插入图片描述
这里我们其实是有权限的,为什么还是进不去呢?其实我们这个是需要注销重新登录xh用户就可以了
在这里插入图片描述
此时xh用户对jack里的jack01.txt文件可进行读写操作
在这里插入图片描述

第10章 定时任务调度

10.1crond 任务调度

  • crontab 进行 定时任务的设置

10.1.1 概述

  • 任务调度:是指系统在某个时间执行的特定的命令或程序。
  • 任务调度分类:
    • 1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
    • 2.个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。

10.1.2 基本语法

  • crontab [选项]

10.1.3 常用选项

选项 功能
-e 编辑crontab定时任务
-l 查询crontab定时任务
-r 删除当前用户所有的crontab定时任务

10.1.4快速入门

  • 设置任务调度文件:/etc/crontab
  • 设置个人任务调度。执行crontab –e命令。
  • 接着输入任务到调度文件
  • 如:*/1 * * * * ls –l /etc/ > /tmp/to.txt
  • 意思说每小时的每分钟执行 ls –l /etc/ > /tmp/to.txt命令

10.1.5参数细节说明

  • 5个占位符的说明
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第15张图片
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第16张图片
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第17张图片

10.1.6应用实例

案例1:每隔1分钟,就将当前的日期信息,追加到 /tmp/mydate.log 文件中

  • 方法一使用shell脚本文件:
    1)先编写一个文件,/home/mytask1.sh,里面写:
    date >> /tmp/mydate.log
    在这里插入图片描述
    2)给mytask1.sh可执行权限
    在这里插入图片描述
    3)crontab -e
    4)*/1 * * * * /home/mytask1.sh
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第18张图片
  • 方法二:直接使用crontab -e
    1)crontab -e
    2)编写内容:*/1 * * * * date >> /tmp/mydate.log

案例2:每隔1分钟, 将当前日期和日历都追加到 /tmp/mycal.log 文件中
1)先编写一个文件,/home/mytask2.sh,里面写:
date >> /tmp/mycal.log
cal >> /tmp/mycal.log
2)给mytask2.sh可执行权限
3)crontab -e
4)*/1 * * * * /home/mytask2.sh
5)成功,
注意: 一定给 sh 脚本的执行权限.

案例3: 每天凌晨2:00 将mysql数据库 testdb ,备份到文件mydb.bak中。
1)先编写一个文件,/home/mytask3.sh,里面写:
/usr/local/mysql/bin/mysqldump -u root -p123456 testdb > /tmp/mydb.bak
2)给mytask3.sh可执行权限
3)crontab -e
4)0 2 * * * /home/mytask3.sh
5)成功

第 11 章Linux磁盘分区、挂载

11.1分区的基本知识

11.1.1分区的方式(知道即可):

  • mbr分区:
    1.最多支持四个主分区
    2.系统只能安装在主分区
    3.扩展分区要占一个主分区
    4.MBR最大只支持2TB,但拥有最好的兼容性

  • gtp分区:
    1.支持无限多个主分区(但操作系统可能限制,比如 windows下最多128个分区)
    2.最大支持18EB的大容量(1EB=1024 PB,1PB=1024 TB )
    3.windows7 64位以后支持gtp

11.1.2windows下的磁盘分区

Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第19张图片

11.2Linux分区

11.2.1原理介绍

  • 1)Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux中每个分区都是用来组成整个文件系统的一部分。
  • 2)Linux采用了一种叫“载入(mount)”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
  • 3)示意图【分区和文件目录】
    有mount挂载、umount卸载
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第20张图片

11.2.2硬盘说明

  • Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
  • 对于IDE硬盘,驱动器标识符为“hdx~ ”,其中“hd”表明分区所在设备的类型,这里是指IDE硬盘了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),“~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。
  • 对于SCSI硬盘则标识为“sdx~”,SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样。sdb1 [表示第2块scsi 硬盘的第1个分区]

11.2.3查看所有设备(光驱 /media,u盘, 硬盘)挂载情况

使用指令lsblk(不好记,可记老师不离开)来查看系统的分区和挂载情况或用lsblk -f也行
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第21张图片
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第22张图片

11.3挂载的经典案例

11.3.1说明:

  • 下面我们以增加一块硬盘1G 并且挂载到/home/newdisk为例来熟悉下磁盘的相关指令和深入理解磁盘分区、挂载、卸载的概念
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第23张图片

11.3.2增加一块硬盘的步骤

  • 1)虚拟机添加硬盘
    • 增加一块硬盘 1G [到设置中添加一块硬盘即可]
      • 在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。然后重启系统(才能识别)!
    • reboot重启一下服务器
      lsblk指令后发现未分区Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第24张图片
  • 2)分区
    • 分区命令 fdisk /dev/sdb
    • 开始对/sdb分区
      m 显示命令列表
      p 显示磁盘分区 同 fdisk –l
      n 新增分区
      d 删除分区
      w 写入并退出
      说明: 开始分区后输入n,新增分区,然后选择p ,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q
      Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第25张图片
  • 3)格式化
    • 分区命令:mkfs -t ext4 /dev/sdb1
    • 其中ext4是分区类型
  • 4)挂载
    • 先创建一个目录/home/newdisk(用mkdisk指令即可)
    • 挂载: 将一个分区与一个目录联系起来,
      mount 设备名称 挂载目录
      例如: mount /dev/sdb1 /home/newdisk
    • 注意:上面的挂载方式只是临时挂载,一旦重启就会失效,所以设置自动挂载可实现永久挂载(重启之后也自动挂载)
  • 5)设置可以自动挂载
    • 通过修改/etc/fstab实现挂载 (用vim指令)
      • vim /etc/fstab
      • 在里面添加内容:/dev/sdb1 /home/newdisk ext4 defaults 0 0
    • 添加完成后 执行mount –a 即刻生效
  • 我们要向卸载怎么操作
    • umount 设备名称 或者 挂载目录
      例如: umount /dev/sdb1 或者 umount /home/newdisk
      在这里插入图片描述

11.4磁盘情况查询

11.4.1查询系统整体磁盘使用情况

  • 基本语法
    df -h
  • 应用实例
    • 查询系统整体磁盘使用情况
      Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第26张图片

11.4.2查询指定目录的磁盘占用情况

  • 基本语法
    du -h /目录
    查询指定目录的磁盘占用情况,默认为当前目录
    -s 指定目录占用大小汇总
    -h 带计量单位
    -a 含文件
    –max-depth=1 子目录深度
    -c 列出明细的同时,增加汇总值
  • 应用实例
    查询 /usr目录的磁盘占用情况,深度为1
    du -ach --max-depth= 1 /usr
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第27张图片

11.5磁盘情况-工作实用指令

  • 1)统计/home文件夹下文件的个数
    ls –l /home/ | grep “^-” | wc -l
    在这里插入图片描述
  • 2)统计/home文件夹下目录的个数
    ls –l /home/ | grep “^d” | wc -l
    在这里插入图片描述
  • 3)统计/home文件夹下文件的个数,包括子文件夹里的
    ls –lR /home/ | grep “^-” | wc -l
    在这里插入图片描述
  • 4)统计/home文件夹下目录的个数,包括子文件夹里的
    ls –lR /home/ | grep “^d” | wc -l
    在这里插入图片描述
    以树状显示home目录结构 [没有tree指令咋办, 使用yum 来安装]
    先安装
    yum install tree
    在这里插入图片描述
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第28张图片

第 12 章linux的网络配置

12.1查看网络IP和网关

12.1.1查看虚拟网络编辑器

Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第29张图片

12.1.2修改ip地址(修改vmnet虚拟网卡的ip)

Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第30张图片

12.1.3查看网关

Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第31张图片

12.2linux网络环境配置

  • ping 测试主机之间网络连通性
  • 基本语法:ping 目的主机 (功能描述:测试当前服务器是否可以连接目的主机)

12.2.1第一种方法(自动获取)

Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第32张图片

  • 说明
    1)配置比较简单
    2)每次启动linux后,分配的ip地址可能不一样。不适合做服务器

12.2.2第二种方法配置固定的ip地址

  • 说明
    直接修改配置文件来指定IP,并可以连接到外网(程序员推荐),编辑 vim /etc/sysconfig/network-scripts/ifcfg-eth0
    要求:将ip地址配置的静态的,ip地址为192.168.199.129(自己指定)
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第33张图片
  • 如果希望配置生效
    1)reboot
    2)service network restart // 重启网络服务

12.2修改主机名

  • 1)查看当前主机名
    hostname
  • 2)修改linux的主机映射文件
    vim /etc/sysconfig/network
    文件中内容
    NETWORKING=yes
    NETWORKING_IPV6=no
    HOSTNAME= hadoop //写入新的主机名
    注意:主机名称不要有“_”下划线
  • 3)修改 /etc/hosts 增加ip和主机的映射
    192.168.102.130 hadoop
  • 4)并重启设备,生效.
  • 5)如果希望windows也可以通过主机名来连接centos, 进入C:\Windows\System32\drivers\etc\hosts 192.168.199.129 hadoop01

第 13 章进程管理(重点)

13.1基本介绍

  • 1)在LINUX中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号。
  • 2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器
  • 3)每个进程都可能以两种方式存在的。前台 与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行[sshd , crond]。
  • 4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束。

13.1.1显示系统执行的进程

  • ps -aux // 显示所有的进程
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第34张图片
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第35张图片
  • ps -aux | grep sshd //查看sshd进程
  • 查看进程的父进程。
    ps -ef是以全格式显示当前所有的进程
    -e 显示所有进程。-f 全格式

13.1.2ps详解

  • 指令:ps –aux|grep xxx ,比如我看看有没有sshd服务
  • 指令说明
    • System V展示风格
    • USER:用户名称
    • PID:进程号
    • %CPU:进程占用CPU的百分比
    • %MEM:进程占用物理内存的百分比
    • VSZ:进程占用的虚拟内存大小(单位:KB)
    • RSS:进程占用的物理内存大小(单位:KB)
    • TTY:终端名称,缩写 .
    • STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
    • STARTED:进程的启动时间
    • TIME:CPU时间,即进程使用CPU的总时间
    • COMMAND:启动进程所用的命令和参数,如果过长会被截断显示

13.2终止进程kill和killall

13.2.1介绍:

  • 若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用kill命令来完成此项任务。

13.2.2基本语法:

  • kill [选项] 进程号(功能描述:通过进程号杀死进程 -9 强制终止)
  • killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)

13.2.3常用选项:

  • -9 :表示强迫进程立即停止

13.2.4最佳实践:

  • 案例1:踢掉某个非法登录用户【jack】
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第36张图片

  • 案例2: 终止远程登录服务sshd, 在适当时候再次重启sshd服务
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第37张图片

  • 案例3: 终止多个gedit 编辑器
    killall gedit

13.3查看进程树pstree

13.3.1基本语法:

  • pstree [选项] ,可以更加直观的来看进程信息

13.3.2常用选项:

-p :显示进程的PID
-u :显示进程的所属用户

13.3.3应用实例:

案例1:请用树状的形式显示进程的pid
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第38张图片
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第39张图片

案例2:请用树状的形式显示进程的用户id
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第40张图片

13.4服务(service)管理

  • 介绍:
    服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。
  • service管理指令:
    service 服务名 [start | stop | restart | reload | status]
    在CentOS7.0后 不再使用service ,而是 systemctl
  • 使用案例:
  1. 查看当前防火墙的状况,关闭防火墙和重启防火墙。
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第41张图片
  • 细节讨论:
    关闭或者启用防火墙后,立即生效。
    service iptables stop , service iptables start
    这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。
    如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig指令

  • 查看服务名:
    方式1:使用setup -> 系统服务 就可以看到。
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第42张图片
    方式2: /etc/init.d/服务名称 【程序】
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第43张图片

  • chkconfig指令
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第44张图片

    • 应用实例:
    1. 案例1: 请显示当前系统所有服务的各个运行级别的运行状态 chkconfig --list
      Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第45张图片
    2. 案例2 :请查看sshd服务的运行状态
      chkconfig sshd --list 或者 chkconfig --list | grep sshd
      在这里插入图片描述
    3. 案例3: 将sshd 服务在运行级别5下设置为不自动启动,看看有什么效果?
      chkconfig --level 5 sshd off
      在这里插入图片描述
    4. 案例4: 当运行级别为5时,关闭防火墙。
      chkconfig --level 5 iptables off
    5. 案例5: 在所有运行级别下,关闭防火墙
      chkconfig iptables off
    6. 案例6: 在所有运行级别下,开启防火墙
      chkconfig iptables on
    • 使用细节
    1. chkconfig重新设置服务后自启动或关闭,重启机器就会按设置的状态运行.

13.5动态监控进程

13.5.1介绍:

  • top与ps命令很相似。它们都用来显示正在执行的进程。top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的的进程(默认每3秒变化一次)。

13.5.2基本语法

  • top [选项]

13.5.3选项说明:

选项 功能
-d 秒数 指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令:
-i 使top不显示任何闲置或者僵死进程。
-p 通过指定监控进程ID来仅仅监控某个进程的状态
  • top 指令的说明
    • 交互操作指令
选项 功能
P 以CPU使用率排序,默认就是此项
M 以内存的使用率排序。
N 以PID排序
Q 退出top
  • 应用实例:
    • 案例1.如何监视特定用户,top:输入此命令,按回车键,查看执行的进程。u:然后输入“u”回车,再输入用户名,即可
      Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第46张图片

    • 案例2:如何终止指定的进程。top:输入此命令,按回车键,查看执行的进程。k:然后输入“k”回车,再输入要结束的进程ID号

    • 案例3:指定系统状态更新的时间(每隔10秒自动更新,默认是3秒):
      top -d 10

13.6监控网络状态(重要)

  • 查看系统网络情况netstat(重要)

  • 基本语法
    netstat [选项]

  • 选项说明
    -an 按一定顺序排列输出
    -p 显示哪个进程在调用

  • 应用案例

    • 请查看服务名为 sshd 的服务的信息。
      Netstat –anp | grep sshd
      Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第47张图片
    • 如果我们希望查看当前系统有哪些端口在监听
      netstat -tlnp

第 14 章rpm 和 yum软件安装

14.1rpm包的管理

14.1.1介绍:

  • 一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。
  • Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。

14.1.2rpm包的简单查询指令:

  • 查询已安装的rpm列表 rpm –qa|grep xx
  • 请查询一下,当前的Linux有没有安装firefox
    rpm -qa | grep firefox
    在这里插入图片描述

14.1.3rpm包名基本格式:

  • 以上面查询火狐为例:
  • 一个rpm包名:firefox-45.0.1-1.el6.centos.x86_64.rpm
    名称:firefox
    版本号:45.0.1-1
    适用操作系统: el6.centos.x86_64 表示centos6.x的64位系统
    如果是i686、i386表示32位系统,noarch表示通用。。

14.1.4rpm包的其它查询指令:

  • rpm -qa :查询所安装的所有rpm软件包
    rpm -qa | more
    rpm -qa | grep X [rpm -qa | grep firefox ]

  • rpm -q 软件包名 :查询软件包是否安装
    rpm -q firefox

  • rpm -qi 软件包名 :查询软件包信息
    rpm -qi file
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第48张图片

  • rpm -ql 软件包名 :查询软件包中的文件
    rpm -ql firefox

  • rpm -qf 文件全路径名 查询文件所属的软件包
    rpm -qf /etc/passwd
    rpm -qf /root/install.log
    在这里插入图片描述

14.1.5卸载rpm包

  • 基本语法
    rpm -e RPM包的名称

  • 应用案例
    删除firefox 软件包
    rpm -e firefox

  • 细节讨论

  1. 如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息。
    如: rpm -e foo
    removing these packages would break dependencies:foo is needed by bar-1.0-1
  2. 如果我们就是要删除 foo这个rpm 包,可以增加参数 --nodeps ,就可以强制删除,但是一般不推荐这样做,因为依赖于该软件包的程序可能无法运行
    如: rpm -e --nodeps foo [小心使用]

14.1.6安装rpm包

  • 基本语法
    rpm -ivh RPM包全路径名称
  • 参数说明
    i=install 安装
    v=verbose 提示
    h=hash 进度条
  • 应用实例
    演示安装firefox浏览器
    先找到firefox安装包,你需要挂在上我们安装centos的iso(镜像)文件,然后到/media/下去找rpm
    在这里插入图片描述
    提示:很多的rpm包,就在我们的centos安装的镜像文件中
    第一步:拷贝
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第49张图片
    第二步:拷贝完之后就可以安装了
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第50张图片

14.2yum的使用

  • 介绍:
    Yum 是一个Shell 前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。(安装前提是联网)
  • yum的基本指令
    查询yum服务器是否有需要安装的软件
    yum list | grep xx 软件列表
    安装指定的yum包
    yum install xxx 下载安装
  • yum应用实例:
    案例:请使用yum的方式来安装firefox指令
    Yum install firefox //会自动的下载适合你系统的最新版本
    Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理)_第51张图片

你可能感兴趣的:(Linux)