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

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

文章目录

第 9 章组管理和权限管理

9.1Linux组基本介绍

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

9.2文件/目录的所有者

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

9.2.1查看文件的所有者

  • 指令:ls -ahl
  • 应用实例 :创建一个组police,再创建一个用户tom,将tom放在police组 ,然后使用 tom来创建一个文件 ok.txt,看看情况如何
    在这里插入图片描述
    在这里插入图片描述

9.2.2修改文件所有者

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

9.3文件/目录的所在组

9.3.1修改文件所在的组

  • 基本指令
    chgrp 组名 文件名
  • 应用实例
    使用root用户创建文件 orange.txt ,看看当前这个文件属于哪个组【root】,然后将这个文件所在组,修改到 police组。
    chgrp police orange.txt
    在这里插入图片描述

9.3.2改变用户所在组

  • 在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组。
  • 改变用户所在组
  1. usermod –g 组名 用户名
  2. usermod –d 目录名 用户名 改变该用户登陆的初始目录。
  • 应用实例
    创建一个土匪组(bandit)将 tom 这个用户从原来所在的police组,修改到 bandit(土匪) 组
    Usermod -g bandit tom
    在这里插入图片描述

9.4权限的基本介绍

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

    -rw-r–r--. 1 tom police 0 6月 8 14:29 ok.txt
    在这里插入图片描述
    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文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限。

在这里插入图片描述
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, 使用给数字的方式实现:
    在这里插入图片描述

9.7修改文件所有者-chown

9.7.1基本介绍

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

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

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

  • 案例演示:
    1)请将 /home/a.txt 文件的所有者修改成 tom
    在这里插入图片描述
    2)请将 /home/kkk 目录下所有的文件和目录的所有者都修改成tom
    在这里插入图片描述
    将home下的所有文件和目录的所有者都改成 tom,将所在组改成police
    在这里插入图片描述

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举例
在这里插入图片描述
(3) jack 创建一个文件,自己可以读写,本组人可以读,其它组没人任何权限
在这里插入图片描述
(4) jack 修改该文件,让其它组人可以读, 本组人可以读写
在这里插入图片描述
5) xh 投靠 警察,看看是否可以读写
我们首先探讨下xh进入jack目录吗?
在这里插入图片描述
如果把xh转到警察组呢?(用root用户改变xh所在组,xh自己无法修改)
发现还是不行
在这里插入图片描述
因为jack对所在组都没有权限,于是我们可以用jack用户设置对所在组可访问
在这里插入图片描述
但发现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个占位符的说明
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

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
    在这里插入图片描述
  • 方法二:直接使用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下的磁盘分区

在这里插入图片描述

11.2Linux分区

11.2.1原理介绍

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

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也行
在这里插入图片描述
在这里插入图片描述

11.3挂载的经典案例

11.3.1说明:

  • 下面我们以增加一块硬盘1G 并且挂载到/home/newdisk为例来熟悉下磁盘的相关指令和深入理解磁盘分区、挂载、卸载的概念
    在这里插入图片描述

11.3.2增加一块硬盘的步骤

  • 1)虚拟机添加硬盘
    • 增加一块硬盘 1G [到设置中添加一块硬盘即可]
      • 在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。然后重启系统(才能识别)!
    • reboot重启一下服务器
      lsblk指令后发现未分区在这里插入图片描述
  • 2)分区
    • 分区命令 fdisk /dev/sdb
    • 开始对/sdb分区
      m 显示命令列表
      p 显示磁盘分区 同 fdisk –l
      n 新增分区
      d 删除分区
      w 写入并退出
      说明: 开始分区后输入n,新增分区,然后选择p ,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q
      在这里插入图片描述
  • 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
  • 应用实例
    • 查询系统整体磁盘使用情况
      在这里插入图片描述

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

  • 基本语法
    du -h /目录
    查询指定目录的磁盘占用情况,默认为当前目录
    -s 指定目录占用大小汇总
    -h 带计量单位
    -a 含文件
    –max-depth=1 子目录深度
    -c 列出明细的同时,增加汇总值
  • 应用实例
    查询 /usr目录的磁盘占用情况,深度为1
    du -ach --max-depth= 1 /usr
    在这里插入图片描述

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
    在这里插入图片描述
    在这里插入图片描述

第 12 章linux的网络配置

12.1查看网络IP和网关

12.1.1查看虚拟网络编辑器

在这里插入图片描述

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

在这里插入图片描述

12.1.3查看网关

在这里插入图片描述

12.2linux网络环境配置

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

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

在这里插入图片描述

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

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

  • 说明
    直接修改配置文件来指定IP,并可以连接到外网(程序员推荐),编辑 vim /etc/sysconfig/network-scripts/ifcfg-eth0
    要求:将ip地址配置的静态的,ip地址为192.168.199.129(自己指定)
    在这里插入图片描述
  • 如果希望配置生效
    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 // 显示所有的进程
    在这里插入图片描述
    在这里插入图片描述
  • 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】
    在这里插入图片描述

  • 案例2: 终止远程登录服务sshd, 在适当时候再次重启sshd服务
    在这里插入图片描述

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

13.3查看进程树pstree

13.3.1基本语法:

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

13.3.2常用选项:

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

13.3.3应用实例:

案例1:请用树状的形式显示进程的pid
在这里插入图片描述
在这里插入图片描述

案例2:请用树状的形式显示进程的用户id
在这里插入图片描述

13.4服务(service)管理

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

  • 查看服务名:
    方式1:使用setup -> 系统服务 就可以看到。
    在这里插入图片描述
    方式2: /etc/init.d/服务名称 【程序】
    在这里插入图片描述

  • chkconfig指令
    在这里插入图片描述

    • 应用实例:
    1. 案例1: 请显示当前系统所有服务的各个运行级别的运行状态 chkconfig --list
      在这里插入图片描述
    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”回车,再输入用户名,即可
      在这里插入图片描述

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

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

13.6监控网络状态(重要)

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

  • 基本语法
    netstat [选项]

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

  • 应用案例

    • 请查看服务名为 sshd 的服务的信息。
      Netstat –anp | grep sshd
      在这里插入图片描述
    • 如果我们希望查看当前系统有哪些端口在监听
      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
    在这里插入图片描述

  • 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安装的镜像文件中
    第一步:拷贝
    在这里插入图片描述
    第二步:拷贝完之后就可以安装了
    在这里插入图片描述

14.2yum的使用

  • 介绍:
    Yum 是一个Shell 前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。(安装前提是联网)
  • yum的基本指令
    查询yum服务器是否有需要安装的软件
    yum list | grep xx 软件列表
    安装指定的yum包
    yum install xxx 下载安装
  • yum应用实例:
    案例:请使用yum的方式来安装firefox指令
    Yum install firefox //会自动的下载适合你系统的最新版本
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值