Linux 学习笔记

 

 

Linux

 

1 linux的入门    1

1.1 Linux的介绍    1

2 VMLinux的安装    3

2.1 安装vmCentos    3

2.1.1 基本说明:    3

2.1.2 CentOS安装的步骤    3

2.1.3 CentOS安装技术难点-网络配置三种方式理解    4

2.2 Centos终端的使用和联网    4

2.2.1 centos终端的使用    4

2.2.2 centosff可以联网,可以和外部的ip联通    5

3 linux 的目录结构    7

3.1 Linux目录结构    7

3.1.1 基本的介绍    7

3.2 linux目录机构的一览图    7

3.2.1 具体的目录说明    8

3.3 linux目录结构的小结    10

4 远程登录到Linux服务器    12

4.1 为什么需要远程登录linux    12

4.2 远程登录Linux-Xshell5    12

4.2.1 介绍:    12

4.2.2 安装配置和使用:    13

4.3 远程上传下载文件Xftp5    15

4.3.1 基本的介绍    15

4.3.2 安装和使用    15

4.3.3 xftp的使用说明    16

4.4 SecureCRT的安装和使用    17

4.4.1 基本的介绍:    17

4.4.2 安装:    17

4.4.3 使用    17

4.4.4 在安装的过程中可能遇到的问题和解决方法    19

5 ViVim编辑器    20

5.1 vivim的基本介绍    20

5.2 vi vim的快速入门小案例    20

5.3 vi vim 三种模式的切换    20

5.4 vimvi的快捷键的使用    21

5.5 vivim课堂练习    22

6 开机、重启和用户登录注销    23

6.1 关机&重启命令    23

6.1.1 常见的指令如下    23

6.1.2 注意细节:    23

6.2 用户的登录和注销    23

6.2.1 基本介绍:    23

6.2.2 使用细节:    23

7 用户管理    24

7.1 linux用户的示意图    24

7.2 基本介绍    24

7.3 添加用户    24

7.4 指定/修改密码    25

7.4.1 基本语法    25

7.4.2 应用案例    25

7.5 删除用户    26

7.5.1 基本语法    26

7.5.2 应用案例    26

7.5.3 细节说明    26

7.6 查询用户信息指令    26

7.6.1 基本语法    26

7.6.2 应用实例    26

7.6.3 细节说明    27

7.7 切换用户    27

7.7.1 介绍    27

7.7.2 基本语法    27

7.7.3 应用实例    27

7.7.4 细节说明    28

7.8 用户组    28

7.8.1 介绍    28

7.8.2 新增组    28

7.8.3 案例演示 [增加 wudang ] 武当    28

7.8.4 增加用户时直接加上组    28

7.8.5 删除组    29

7.8.6 修改用户的组    29

7.9 用户和组的相关文件    30

7.9.1 /etc/passwd 文件    30

7.9.2 /etc/shadow 文件    30

7.9.3 /etc/group 文件    30

7.10 课堂练习    31

8 实用指令    32

8.1 指定运行级别    32

8.1.1 基本介绍:    32

8.2 指定运行级别    33

8.2.1 面试题:    33

8.2.2 课堂练习:    33

8.3 帮助指令    33

8.3.1 man 获得帮助信息    33

8.3.2 help指令    33

8.3.3 百度帮助更直接    34

8.4 文件和目录相关的指令    34

8.4.1 pwd 指令    34

8.4.2 ls指令    34

8.4.3 cd 指令    35

8.4.4 mkdir指令 [make directory]    36

8.4.5 rmdir指令 [remove directory]    36

8.4.6 touch指令     37

8.4.7 cp 指令拷贝文件到指定目录    38

8.4.8 rm指令    39

8.4.9 mv指令    40

8.4.10 cat指令    40

8.4.11 more指令    41

8.4.12 less指令    42

8.4.13 echo指令    43

8.4.14 head指令    44

8.4.15 tail指令    44

8.4.16 > 指令 >> 指令    45

8.4.17 ln 指令 (link)    46

8.4.18 history指令    46

8.5 时间日期类    47

8.5.1 date指令-显示当前日期    47

8.5.2 使用date指令设置最新时间    48

8.5.3 cal指令    48

8.6 搜索查找类    48

8.6.1 find指令    48

8.6.2 locate指令    49

8.6.3 grep指令和 管道符号 |    50

8.7 压缩和解压类    51

8.7.1 gzip/gunzip 指令    51

8.7.2 zip/unzip 指令    52

8.7.3 tar 指令    52

9 组管理和权限管理    54

9.1 Linux组基本介绍    54

9.2 文件/目录的所有者    55

9.2.1 查看文件的所有者    55

9.2.2 修改文件所有者    56

9.3 文件/目录的所在组    56

9.3.1 修改文件所在的组    56

9.3.2 改变用户所在组    56

9.4 权限的基本介绍    57

9.5 rwx权限详解    57

9.6 修改权限-chmod    58

9.7 修改文件所有者-chown    59

9.7.1 基本介绍    59

9.8 修改文件所在组-chgrp    59

9.8.1 基本介绍    60

9.8.2 案例演示:    60

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

9.10 课后练习    61

10 定时任务调度    63

10.1 crond 任务调度    63

10.1.1 概述    63

10.1.2 基本语法    63

10.1.3 常用选项    63

10.1.4 快速入门    63

10.1.5 参数细节说明    63

10.1.6 应用实例    64

11 Linux磁盘分区、挂载    68

11.1 分区的基本知识    68

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

11.1.2 windows下的磁盘分区    68

11.2 Linux分区    69

11.2.1 原理介绍    69

11.2.2 硬盘说明    70

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

11.3 挂载的经典案例    71

11.3.1 说明:    71

11.3.2 增加一块硬盘的步骤    72

11.4 磁盘情况查询    74

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

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

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

12 linux的网络配置    78

12.1 linux网络环境配置    78

12.1.1 自动获取    78

12.1.2 配置固定的ip地址    78

12.2 修改主机名    79

13 进程管理(重点)    81

13.1 基本介绍    81

13.1.1 显示系统执行的进程    81

13.1.2 ps详解    81

13.2 终止进程killkillall    82

13.2.1 介绍:    82

13.2.2 基本语法:    82

13.2.3 常用选项:    82

13.2.4 最佳实践:    83

13.3 查看进程树pstree    84

13.3.1 基本语法:    84

13.3.2 常用选项:    84

13.3.3 应用实例:    84

13.4 服务(service)管理    84

13.5 动态监控进程    87

13.5.1 介绍:    87

13.5.2 top [选项]    87

13.5.3 选项说明:    87

13.6 监控网络状态    89

13.7 百度面试题:    89

13.8 瓜子二手车题:    89

14 rpm yum软件安装    91

14.1 rpm包的管理    91

14.2 rpm 常用的指令    91

14.3 卸载rpm包:    91

14.4 安装rpm包:    92

14.5 yum的使用    93

 

  1. linux的入门
    1. Linux的介绍

     

     

     

     

  2. VM和Linux的安装
    1. 安装vm和Centos
      1. 基本说明:

     

    学习Linux需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个Centos系统来学习

  3. 先安装virtual machine ,vm12
  4. 再安装Linux (CentOS )
  5. 原理示意图

    1. CentOS安装的步骤

     

  6. 创建虚拟机
  7. 开始安装系统(CentOS6.8)
  8. 具体的步骤看文档和视频

     

     

     

     

    1. CentOS安装技术难点-网络配置三种方式理解

     

     

    这里,在面试的时,有可能面试官问关于 桥连,nat模式和主机模式的含义和区别

     

  • 虚拟机的三种网络配置方式的说明

 

 

  1. Centos终端的使用和联网
    1. centos终端的使用

  1. centosff可以联网,可以和外部的ip联通

这里,我们是简单的动态的分配的ip(后面我们要学习固定分配ip)

 

 

 

 

  1. linux 的目录结构
    1. Linux目录结构
      1. 基本的介绍

    linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录"/",然后在此目录下再创建其他的目录。

    深刻理解linux树状文件目录是非常重要的,这里我给大家说明一下。

     

    记住一句经典的话:。在Linux世界里,一切皆文件(即使是一个硬件设备,也是使用文本来标志)

     

    1. linux目录机构的一览图

     

    1. 具体的目录说明

     

     

    1. 对linux目录结构的小结
  2. 在linux中,目录结构 有一个 根目录 / ,其他的目录都是在 / 目录分支。
  3. 在linux中,有很多目录,是安装后,有自动有目录,每个目录都会存放相应的内容,不要去修改.
  4. 在linux中,所有的设备都可以通过文件来体现(字符设备文件[比如键盘,鼠标],块设备文件[硬盘])
  5. 在学习linux时,要尽快的在脑海中,形成一个 目录树
  6. 远程登录到Linux服务器

     

    1. 为什么需要远程登录linux

    1. 远程登录Linux-Xshell5
      1. 介绍:

     

    说明: Xshell 是目前最好的远程登录到Linux操作的软件,流畅的速度并且完美解决了中文乱码的问题, 是目前程序员首选的软件。

     

    Xshell [1]  是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。

     

    Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。

    1. 安装配置和使用:

     

    具体看老师的演示和操作!【看我的操作】

    安装的过程就是直接下一步即可【傻瓜式的安装】

     

  • 具体的连接步骤

 

 

  1. 远程上传下载文件Xftp5
    1. 基本的介绍

 

是一个基于  windows 平台的功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。(示意图)

 

 

  1. 安装和使用

看老师的演示:安装的步骤也是直接下一步即可,傻瓜式的安装。

 

 

  • 使用的步骤

 

  1. xftp的使用说明

当我们在实际工作中,如果需要部署一个项目,则应当向压缩后,再上传,上传后,使用linux的相关的解压缩命令,来解压[相关的命令后面会讲]

 

具体的使用看视频即可.

 

 

 

 

  1. SecureCRT的安装和使用
    1. 基本的介绍:

是用于远程登录Linux的软件。SecureCRT 也是一款常用的远程登录Linux的软件,在大数据开发中使用较多

  1. 安装:

绿色安装版,拷贝到指定目录(程序员决定)即可使用.

  1. 使用

 

步骤1: 安装好后,就启动 securecrt:

 

步骤2:配置好后,就点击链接,然后输入密码即可.

 

步骤3: 解决中文乱码问题

 

 

  1. 在安装的过程中可能遇到的问题和解决方法
  1. 安装secureCRT 时,如果提示 D\....\keymap. 路径找不到,原因是原来绿色版的软件会在d盘写入一个文件,如果没有d盘装不上。 重新下载一个最新版,安装即可.
  2. 没有虚拟网卡,这个问题,一定要启动虚拟网卡.
  3. 如果发现xshell5安装报资源不足,则给一个新版本。

     

     

     

     

  4. Vi和Vim编辑器
    1. vi和vim的基本介绍

    所有的 Linux 系统都会内建 vi 文本编辑器。

     

    Vim 具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

    我们只需要掌握它的基本使用即可。

     

     

    1. vi 和 vim的快速入门小案例

    使用 vim 开发一个 Hello.java 程序, 保存.步骤说明和演示

     

    1. vi 和 vim 三种模式的切换

     

     

    1. vim和vi的快捷键的使用
  • 快捷键使用练习【晚上练习】:

 

1) 拷贝当前行 yy , 拷贝当前行向下的5行 5yy,并粘贴 p。【快捷键在正常模式下使用】

2) 删除当前行 dd , 删除当前行向下的5行 5dd

3) 在文件中查找某个单词 [命令模式下 /关键字 , 回车 查找 , 输入 n 就是查找下一个 ]

 

4) 设置文件的行号,取消文件的行号.[命令行下 : set nu 和 :set nonu]

5) 编辑 /etc/profile 文件,使用快捷键到底文档的最末行[G]和最首行[gg] 【正常模式下】

6) 在一个文件中输入 "hello" ,然后又撤销这个动作 u 【正常模式下】

7) 编辑 /etc/profile 文件,并将光标移动到 20行 shift+g

8) 更多的看整理的文档

 

  1. vi和vim课堂练习

使用vim 编写一个Person.java ,显示个人信息 【姓名 年龄 职业 爱好】

把老师课堂讲的各种快捷键自己练习一把即可

 

 

 

 

 

 

 

  1. 开机、重启和用户登录注销
    1. 关机&重启命令
      1. 常见的指令如下

    shutdown -h now [立刻关机]

    shutdown -h 1 "1分钟,关机." [1分钟后,关机]

    shutdown -r now [立刻重启]

    shutdown -r 2 "2分钟后,重启"

    halt 【立刻关机】

    reboot 【立刻重启】

    在重启和关机前,通常需要先执行

    sync [把内存的数据,写入磁盘]

    1. 注意细节:

    不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中

    1. 用户的登录和注销
      1. 基本介绍:
  2. 登录时尽量少用root帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用"su - 用户名'命令来切换成系统管理员身份.
  3. 在提示符下输入 logout 即可注销用户【不同的shell 可能不同(logout exit)】

     

     

    1. 使用细节:
  4. logout 注销指令在图形运行级别(简单提一下:0-6个级别)无效,在 运行级别 3下有效.
  5. 运行级别这个概念,后面给大家介绍
  6. 用户管理
    1. 对linux用户的示意图

    1. 基本介绍

    Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统

    1. 添加用户
  • 基本语法

useradd 用户名

  • 案例演示

案例1:添加一个用户 xiaoming

  • 使用细节
  1. 当创建用户成功后,会自动的创建和用户同名的家目录 【/home/xiaoming】
  2. 也可以通过 useradd -d 指定目录 新的用户名jack,给新创建的用户指定家目录

    1. 指定/修改密码
      1. 基本语法

    passwd 用户名 // 如果没有带用户名,则是给当前登录的用户修改密码

    1. 应用案例
    1. 给xiaoming 指定密码

      passwd xiaoming // 需要root用户

       

      1. 删除用户
        1. 基本语法

      userdel 用户名

      1. 应用案例

      删除用户xiaoming,但是要保留家目录 userdel 用户名 //userdel xiaoming

      删除用户以及用户主目录 // userdel –r xiaoming 【小心使用】

      1. 细节说明

      是否保留家目录的讨论? [一般保留]

       

      1. 查询用户信息指令
        1. 基本语法

      id 用户名

       

      1. 应用实例

      案例1:请查询root 信息

      1. 细节说明
      1. 当用户不存在时,返回无此用户

         

        1. 切换用户
          1. 介绍

        在操作Linux中,如果当前用户的权限不够,可以通过 su - 指令,切换到高权限用户,比如root

        1. 基本语法

        su – 切换用户名

         

        1. 应用实例

        创建一个用户milan, ,指定密码,然后切换到 milan.

        1. 细节说明
      2. 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
      3. 当需要返回到原来用户时,使用exit指令
      4. 如果 su – 没有带用户名,则默认切换到root用户

         

        1. 用户组
          1. 介绍

        类似于角色,系统可以对有共性的多个用户进行统一的管理。

        1. 新增组

        指令

        groupadd 组名

        1. 案例演示 [增加 wudang ] 武当

    groupadd wudang

     

    1. 增加用户时直接加上组
  • 指令(基本语法)

useradd –g 用户组 用户名

  • 增加一个用户 zwj, 直接将他指定到 wudang


  1. 删除组
  • 指令(基本语法)

    groupdel 组名

  • 案例演示

这里有一个前提,就是这个组没有用户,才能删除。

 

  1. 修改用户的组
  • 指令(基本语法)

usermod –g 新的组名 用户名

  • 案例演示

创建一个shaolin组,让将zwj 用户修改到shaolin

 

 

  1. 用户和组的相关文件

 

  1. /etc/passwd 文件

    用户(user)的配置文件,记录用户的各种信息

每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell [图]

  1. /etc/shadow 文件

    口令的配置文件

每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留 [图]

  1. /etc/group 文件

    组(group)的配置文件,记录Linux包含的组的信息

每行含义:组名:口令:组标识号:组内用户列表

 

 

 

 

 

 

  1. 课堂练习

 

 

 

 

  1. 实用指令

     

     

    1. 指定运行级别
      1. 基本介绍:
  • 运行级别说明:
  1. 0 :关机
  2. 1 :单用户 [类似安全模式, 这个模式可以帮助找回root密码]
  3. 2:多用户状态没有网络服务
  4. 3:多用户状态有网络服务 [使用最多]
  5. 4:系统未使用保留给用户
  6. 5:图形界面 【】
  7. 6:系统重启

    常用运行级别是35 ,要修改默认的运行级别可改文件

  • 如果指定运行级别

/etc/inittab

id:5:initdefault:这一行中的数字

命令:init [012356] https协议

  • 应用实例:

案例: 通过init 来切换不同的运行级别,比如动 5-3 , 然后关机

init 5

init 3

init 0

 

 

  1. 指定运行级别
    1. 面试题:

 

如何找回root密码

 

  1. 课堂练习:

 

  1. 假设我们的root密码忘记了,请问如何找回密码【练习】

    启动时->快速输入enter->输入e-> 进入到编辑界面-> 选择中间有kernel 项->
    输入e(edit)-> 在该行的最后写入 1 [表示修改内核,临时生效]-> 输入enter->
    输入b [boot]-> 进入到单用模式 【这里就可以做补救工作】

     

  2. 请设置我们的 运行级别,linux 运行后,直接进入到 命令行终端(3级别)

     

    1. 帮助指令
      1. man 获得帮助信息
  • 基本语法

man [命令或配置文件](功能描述:获得帮助信息)

  • 应用实例

案例:查看ls命令的帮助信息

man ls

  1. help指令
  • 基本语法

help 命令 (功能描述:获得shell内置命令的帮助信息)

  • 应用实例

案例:查看cd命令的帮助信息

help cd

 

  1. 百度帮助更直接

虽然上面两个都可以来获取指令帮助,但是需要英语功底,如果英语不太好的,我还是推荐大家直接百度靠谱。[演示]

 

  1. 文件和目录相关的指令
    1. pwd 指令
  • 基本语法

pwd    (功能描述:显示当前工作目录的绝对路径)

  • 应用实例

案例:显示当前工作目录的绝对路径

演示:pwd

 

  1. ls指令
  • 基本语法

ls     [选项]     [目录或是文件]

  • 常用选项

-a :显示当前目录所有的文件和目录,包括隐藏的 (文件名以.开头就是隐藏)。

-l :以列表的方式显示信息

-h : 显示文件大小时,以 k , m, G单位显示

  • 应用实例

案例:查看当前目录的所有内容信息

ls -alh //显示当前的目录内容

ls -alh 指定目录

比如:

ls -alh /root/

 

  1. cd 指令
  • 基本语法

cd [参数]    (功能描述:切换到指定目录)

  • 常用参数

绝对路径【从 / 开始定位】和相对路径【从当前的位置开始定位】

cd ~ 或者cd :回到自己的家目录

cd .. 回到当前目录的上一级目录

  • 应用实例

案例1:使用绝对路径切换到root目录 [cd /root]

案例2: 使用相对路径到/root 目录 [ cd ../root]

案例3:表示回到当前目录的上一级目录 [ cd ..]

案例4:回到家目录 [ cd ~ ]

 

 

  1. mkdir指令 [make directory]
  • 说明

mkdir指令用于创建目录

  • 基本语法

mkdir [选项] 要创建的目录

  • 常用选项

-p :创建多级目录

  • 应用实例

案例1:创建一个目录 /home/dog
mkdir /home/dog

案例2:创建多级目录 /home/animal/tiger

mkdir -p /home/animal/tiger

 

  1. rmdir指令 [remove directory]
  • 说明

rmdir指令删除空目录

  • 基本语法

rmdir [选项] 要删除的空目录

  • 应用实例

案例1:删除一个目录 /home/dog

rmdir /home/dog [要求 /home/dog 空目录]

  • 使用细节

rmdir 删除的是空目录,如果目录下有内容时无法删除的。

提示:如果需要删除非空目录,需要使用 rm -rf 要删除的目录

比如:

rm -rf /home/dog

r: 表示递归删除,就是将该目录下的文件和子目录全部删除

f: 表示强制删除,就是不需询问

 

  1. touch指令

touch指令创建空文件, 还可以更新文件的修改时间

  • 基本语法

touch 文件名称

  • 应用实例

案例1: 创建一个空文件 hello.txt

touch hello.txt

说明:如果文件存在,则表示刷新该文件的修改时间.

 

 

 

cp指令[copy 拷贝]

  1. cp 指令拷贝文件到指定目录
  • 基本语法

cp [选项] source【源】 dest【目的文件】

  • 常用选项

-r :递归复制整个文件夹

 

  • 应用实例

案例1: 将 /home/aaa.txt 拷贝到 /home/bbb 目录下

案例2: 递归复制整个文件夹,举例, 将 /home 整个目录拷贝 /opt

  • 使用细节

强制覆盖不提示的方法:\cp

 

  1. rm指令
  • rm 指令移除文件或目录
  • 基本语法

rm [选项] 要删除的文件或目录

  • 常用选项

-r :递归删除整个文件夹

-f : 强制删除不提示

  • 应用实例

案例1: 将 /home/aaa.txt 删除
rm /home/aaa.txt

案例2: 递归删除整个文件夹 /home/bbb
rm –r /home/bbb

  • 使用细节

强制删除不提示的方法:带上 -f 参数即可

rm –rf /home/bbb

 

 

  1. mv指令

 

mv 移动文件与目录或重命名

  • 基本语法

mv oldNameFile newNameFile (功能描述:重命名)

mv /temp/movefile /targetFolder (功能描述:移动文件或目录)

 

  • 应用实例

案例1: 将 /home/aaa.txt 文件 重新命名为 pig.txt

案例2:将 /home/pig.txt 文件 移动到 /root 目录下

 

  1. cat指令

cat 查看文件内容

  • 基本语法

cat [选项] 要查看的文件

  • 常用选项

-n :显示行号

 

  • 应用实例

案例1: /ect/profile 文件内容,并显示行号

cat -n /etc/profile | more

说明:如果需要一行行,输入 enter

如果需要翻页 ,输入空格键.

如果需要退出,输入 q

  • 使用细节

cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 | more

cat xxx.txt | more (把cat xxx.txt 输出结果交给 more 处理)

 

  1. more指令

more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键,详见操作说明

 

  • 基本语法

more 要查看的文件

操作说明

  • 应用实例

案例: 采用more查看文件

/etc/profile

  • 快捷键

操作

功能说明

空白键 (space)

代表向下翻一页;

Enter

代表向下翻『一行』;

q

代表立刻离开 more ,不再显示该文件内容。

Ctrl+F

向下滚动一屏

Ctrl+B

返回上一屏

=

输出当前行的行号

:f

输出文件名和当前行的行号

 

  1. less指令

less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。

 

  • 基本语法

less 要查看的文件

  • 操作说明和快捷键

 

  • 应用实例

案例: 采用less查看一个

大文件文件

 

  1. echo指令

echo输出内容到控制台。

  • 基本语法

echo [选项] [输出内容]

  • 应用实例

案例: 使用echo 指令输出环境变量,比如 PATH

echo $PATH

  • 引出内容

查看系统的所有环境变量

env

修改环境变量

vim /etc/profile [系统的环境变量]

 

修改个人的环境变量:

 

  1. head指令

head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容

  • 基本语法

head 文件    (功能描述:查看文件头10行内容)

head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)

  • 应用实例

案例: 查看/etc/profile 的前面5行代码

head -n 5 /etc/profile

 

  1. tail指令

tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容。

  • 基本语法

1) tail 文件     (功能描述:查看文件头10行内容)

2) tail -n 5 文件     (功能描述:查看文件头5行内容,5可以是任意行数)

3) tail -f 文件    (功能描述:实时追踪该文档的所有更新)

  • 应用实例

案例1: 查看/etc/profile 最后5行的代码

案例2: 实时监控date.log , 看看到文件有变化时,是否看到, 实时的追加日期

 

  1. > 指令 >> 指令

> 输出重定向和 >> 追加

  • 基本语法

1) ls -l >文件        (功能描述:列表的内容写入文件a.txt中(覆盖写))

2) ls -al >>文件        (功能描述:列表的内容追加到文件aa.txt的末尾)

3) cat 文件1 > 文件2    (功能描述:将文件1的内容覆盖到文件2)

4) echo "内容">> 文件

  • 应用实例

案例1: 将 /home 目录下的文件列表 写入到 /home/info.txt 中

ls –l /home/ > /home/info.txt [如果文件不存在,则会自动创建]

案例2: 将当前日历信息 追加到 /home/mycal 文件中

date >> /home/mycal

 

 

  1. ln 指令 (link)

软链接也成为符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径

  • 基本语法

ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)

  • 应用实例

案例1: 在/home 目录下创建一个软连接 linkToRoot,连接到 /root 目录

ln -s /root/ linkToRoot

案例2: 删除软连接 linkToRoot

rm –rf linkToRoot [在看]

 

 

 

  • 细节说明

当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。

 

 

  1. history指令

查看已经执行过历史命令,也可以执行历史指令

  • 基本语法

history    (功能描述:查看已经执行过历史命令)

  • 应用实例

案例1: 显示所有的历史命令

history

案例2: 显示最近使用过的10个指令。

history 10

案例3: 执行历史编号为5的指令 !5

!5

 

  1. 时间日期类
    1. date指令-显示当前日期

 

  • 基本语法

1) date    (功能描述:显示当前时间)

2) date +%Y    (功能描述:显示当前年份)

3) date +%m    (功能描述:显示当前月份)

4) date +%d    (功能描述:显示当前是哪一天)

5) date "+%Y-%m-%d %H:%M:%S"(功能描述:显示年月日时分秒)

 

  • 应用实例

案例1: 显示当前时间信息

date

案例2: 显示当前时间年月日

date "%Y-%m-%d"

案例3: 显示当前时间年月日时分秒

date "%Y-%m-%d %H:%M:%S"

  1. 使用date指令设置最新时间
  • 基本语法

date -s 字符串时间

  • 应用实例

案例1: 设置系统当前时间 , 比如设置成 2020-11-11 11:22:22

 

  1. cal指令
  • 查看日历指令
  • 基本语法

cal [选项]    (功能描述:不加选项,显示本月日历)

  • 应用实例

案例1: 显示当前日历

cal

案例2: 显示2020年日历

cal 2020

 

  1. 搜索查找类
    1. find指令

find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。

  • 基本语法

find [搜索范围] [选项]

  • 选项说明

    

 

  • 应用实例

案例1: 按文件名:根据名称查找/home 目录下的hello.txt文件

find /home -name hello.txt

案例2:按拥有者:查找/opt目录下,用户名称为 nobody的文件
find /opt -user nobody

案例3:查找整个linux系统下大于10M的文件(+n 大于 -n小于 n等于)

find / -size +10M

 

 

  1. locate指令
  • 说明

locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。

  • 基本语法

locate 搜索文件

  • 特别说明

由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。    

  • 应用实例

案例1: 请使用locate 指令快速定位 hello.txt 文件所在目录

 

 

  1. grep指令和 管道符号 |
  • 说明

grep 过滤查找 , 管道符,"|",表示将前一个命令的处理结果输出传递给后面的命令处理。

 

  • 基本语法

grep [选项] 查找内容 源文件

  • 常用选项

 

 

    

  • 应用实例

案例1: 请在 /etc/profile 文件中,查找 "if" 所在行,并且显示行号

    grep –n if /etc/profile [在/etc/profile 中查找 if ,并显示行,区别大小写]

    grep –ni if /etc/profile [在/etc/profile 中查找 if ,并显示行,不区别大小写]

 

案例2: 配合 管道 | 使用案例, 查看当前服务器有没有 sshd 服务在监听.

 

  1. 压缩和解压类
    1. gzip/gunzip 指令

gzip 用于压缩文件, gunzip 用于解压的

 

  • 基本语法

gzip 文件     (功能描述:压缩文件,只能将文件压缩为*.gz文件)

gunzip 文件.gz    (功能描述:解压缩文件命令)

    

  • 应用实例

案例1: gzip压缩, 将 /home下的 hello.txt文件进行压缩

案例2: gunzip压缩, 将 /home下的 hello.txt.gz 文件进行解压缩

 

  1. zip/unzip 指令

zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的

 

  • 基本语法

zip [选项] XXX.zip 需要压缩的内容(功能描述:压缩文件和目录的命令)

unzip [选项] XXX.zip    (功能描述:解压缩文件)

  • zip常用选项

-r:递归压缩,即压缩目录

  • unzip的常用选项

-d<目录> :指定解压后文件的存放目录

  • 应用实例

案例1: 将 /home下的 所有文件进行压缩成 mypackage.zip [退出home]

zip -r mypackage.zip /home/

案例2: 将 mypackge.zip 解压到 /opt/tmp 目录下

unzip –d /opt/tmp mypackage.zip [如果/opt/tmp 不存在,会自动创建]

 

  1. tar 指令
  • 基本说明

tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。 [可以压缩,和解压]

 

  • 基本语法

tar [选项] XXX.tar.gz 打包的内容/目录 (功能描述:打包目录,压缩后的文件格式.tar.gz)

选项说明

 

  • 应用实例

1案例1: 压缩多个文件,将 /home/a1.txt 和 /home/a2.txt 压缩成 a.tar.gz 【zcvf】 zxvf

tar -zcvf a.tar.gz a1.txt a2.txt [注意,路径要写清楚]

2案例2: 将/home 的文件夹 压缩成 myhome.tar.gz

tar -zcvf myhome.tar.gz /home/ [注意,路径写清楚]

3案例3: 将 a.tar.gz 解压到当前目录

tar -zxvf a.tar.gz

4 案例4: 将myhome.tar.gz 解压到 /opt/tmp2目录下 【-C】

tar -zxvf myhome.tar.gz -C /opt/tmp2 [注意; /opt/tmp2 事先需要创建好]

 

 

 

 

 

 

  1. 组管理和权限管理
    1. Linux组基本介绍

    在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件

    有所有者、所在组、其它组的概念。

     

    1) 所有者

    2) 所在组

    3) 其它组

    4) 改变用户所在的组

     

    示意图:

     

     

     

     

    1. 文件/目录的所有者

     

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

     

    1. 查看文件的所有者
  • 指令:ls –ahl
  • 应用实例 :创建一个组police,再创建一个用户tom,将tom放在police组 ,然后使用 tom来创建一个文件 ok.txt,看看情况如何

 

 

 

  1. 修改文件所有者
  • 指令:chown 用户名 文件名
  • 应用案例

要求:使用root 创建一个文件apple.txt ,然后将其所有者修改成 tom

 

  1. 文件/目录的所在组
    1. 修改文件所在的组
  • 基本指令

chgrp 组名 文件名

  • 应用实例

使用root用户创建文件 orange.txt ,看看当前这个文件属于哪个组【root】,然后将这个文件所在组,修改到 police组。

chgrp police orange.txt

 

  1. 改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组。

  • 改变用户所在组

1) usermod –g 组名 用户名

2) usermod –d 目录名 用户名 改变该用户登陆的初始目录。

  • 应用实例

创建一个土匪组(bandit)将 tom 这个用户从原来所在的police组,修改到 bandit(土匪) 组

Usermod -g bandit tom

 

  1. 权限的基本介绍

 

  1. rwx权限详解

  1. 修改权限-chmod

 

  1. 修改文件所有者-chown
    1. 基本介绍

chown newowner file 改变文件的所有者

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

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

 

  • 案例演示:
  1. 请将 /home/abc.txt 文件的所有者修改成 tom
        chown tom /home/abc.txt
  2. 请将 /home/kkk 目录下所有的文件和目录的所有者都修改成tom
        chown –R tom /home/kkk
  3. 将home下的所有文件和目录的所有者都改成 tom,将所在组改成police
        chown –R tom:police /home/

     

    1. 修改文件所在组-chgrp
      1. 基本介绍

    chgrp newgroup file 改变文件的所有组

     

    1. 案例演示:
  4. 请将 /home/abc .txt 文件的所在组修改成 shaolin (少林)
        chgrp shaolin /home/abc.txt
  5. 请将 /home/kkk 目录下所有的文件和目录的所在组都修改成 shaolin(少林)
        chgrp -R shaolin /home/kkk

     

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

    police , bandit

     

    jack, jerry: 警察

    xh, xq: 土匪

  6. 创建组

    groupadd police

    groupadd bandit

  7. 创建用户

    useradd -g police jack

    useradd -g police jerry

    useradd -g bandit xh

    useradd -g bandit xq

    给分配密码

  8. jack 创建一个文件jack.txt,自己可以读写,本组人可以读,其它组没人任何权限

     

    登录后

    chmod 640 jack.txt

    提醒:如果我们希望同组的人可以读 jack.txt 文件,则需要将 jack 的家目录的权限打开.

    chmod g=rx /home/jack

  9. jack 修改该文件,让其它组人可以读, 本组人可以读写

    chmod g=rw, o=r jack.txt

  10. xh 投靠 警察,看看是否可以读写.(测试后,是ok, 注意需要重新登录)

    usermod -g police xh

     

    1. 课后练习

     

     

     

     

     

     

     

     

     

     

     

  11. 定时任务调度
    1. crond 任务调度

    crontab 进行 定时任务的设置,。

    1. 概述

    任务调度:是指系统在某个时间执行的特定的命令或程序。

    任务调度分类:1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等

    2.个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。

    1. 基本语法

    crontab [选项]

    1. 常用选项

     

    1. 快速入门

    设置任务调度文件:/etc/crontab

    设置个人任务调度。执行crontab –e命令。

    接着输入任务到调度文件
        如:*/1 * * * * ls –l /etc/ > /tmp/to.txt

    意思说每小时的每分钟执行 ls –l /etc/ > /tmp/to.txt命令

    1. 参数细节说明

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

    案例2:每隔1分钟, 将当前日期和日历都追加到 /home/mycal.log 文件中
            

     

    注意: 一定给 sh 脚本的执行权限.

     

    案例3: 每天凌晨2:00 将mysql数据库 testdb ,备份到文件中。

    步骤:1, 首先编写一个 脚本 backupdb.sh

    #!/bin/bash

    #备份路径

    BACKUP=/data/backup/sql/dy

    #当前时间

    DATETIME=$(date +%Y-%m-%d_%H%M%S)

    echo "===备份开始==="

    echo "备份文件存放于${BACKUP}/$DATETIME.tar.gz"

    #数据库地址

    HOST=localhost

    #数据库用户名

    DB_USER=root

    #数据库密码

    DB_PW=Ces123456

    #创建备份目录

    [ ! -d "${BACKUP}/$DATETIME" ] && mkdir -p "${BACKUP}/$DATETIME"

       

    #后台系统数据库

    DATABASE=dy_backgroundms

    mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --databases $DATABASE | gzip > ${BACKUP}/$DATETIME/$DATABASE.sql.gz

       

    #投入品监管数据库

    DATABASE=dy_firip

    mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --databases $DATABASE | gzip > ${BACKUP}/$DATETIME/$DATABASE.sql.gz

       

    #压缩成tar.gz包

    cd $BACKUP

    tar -zcvf $DATETIME.tar.gz $DATETIME

    #删除备份目录

    rm -rf ${BACKUP}/$DATETIME

       

    #删除30天前备份的数据

    find $BACKUP -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;

    echo "===备份成功==="

     

    步骤2: 给 /home/backupdb.sh 一个可以执行的权限

    chmod u+x backupdb.sh

    步骤3: 将backupdb.sh 部署到crontab

    crontab -e

    增加

    * 2 * * * /home/backupdb.sh

    到此ok!

     

  12. Linux磁盘分区、挂载
    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

 

  1. windows下的磁盘分区

 

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

     

     

    1. 硬盘说明

    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个分区]

     

     

    1. 查看所有设备(光驱 /mediau盘, 硬盘)挂载情况
  • 命令 :lsblk 或者 lsblk -f

 

  1. 挂载的经典案例
    1. 说明:

下面我们以增加一块硬盘1G 为例来熟悉下磁盘的相关指令和深入理解磁盘分区、挂载、卸载的概念

 

  1. 增加一块硬盘的步骤

看老师的演示:

  1. 增加一块硬盘 1G [到设置中添加一块硬盘即可]
  2. 重启一下服务器

    lsblk

  3. 给sdb 硬盘分区

     

  4. 格式化 sdb1

    mdfs -t ext4 /dev/sdb1 [把 /dev/sdb1 分区格式化]

  5. 挂载

    mkdir /home/newdisk

    mount /dev/sdb1 /home/newdisk [说明;挂载时,不要在 /home/newdisk ]

  6. 上面的方式,只是临时生效,当你重启系统,挂载的关系没有, 配置linux的分区表,实现启动时,自动挂载.

    vim /etc/fstab

  7. 重启后,会自动挂载.
  8. 如果,我们希望卸载,指令

    umount 设备名 | 挂载路径

    umount /dev/sdb1

     

    1. 磁盘情况查询

     

    1. 查询系统整体磁盘使用情况
  • 基本语法

df -h

  • 应用实例

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

 

  1. 查询指定目录的磁盘占用情况
  • 基本语法

du -h /目录

查询指定目录的磁盘占用情况,默认为当前目录

-s 指定目录占用大小汇总

-h 带计量单位

-a 含文件

--max-depth=1 子目录深度

-c 列出明细的同时,增加汇总值

  • 应用实例

查询 /usr目录的磁盘占用情况,深度为1

du -ach --max-depth= 1 /usr

 

  1. 磁盘情况-工作实用指令
  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

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  5. linux的网络配置
    1. linux网络环境配置
      1. 自动获取

    说明

  6. 配置比较简单
  7. 每次启动linux后,分配的ip地址可能不一样。不适合做服务器

     

    1. 配置固定的ip地址

    vim /etc/sysconfig/network-scripts/ifcfg-eth0

    如果希望配置生效

  8. reboot
  9. service network restart // 重启网络服务

     

    1. 修改主机名

     

     

     

     

     

     

     

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

     

    1. 显示系统执行的进程

    ps -aux // 显示所有的进程

     

     

    ps -aux | grep sshd //查看sshd进程

     

     

    1. ps详解

    指令: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:启动进程所用的命令和参数,如果过长会被截断显示

 

  1. 终止进程kill和killall
    1. 介绍:

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

  1. 基本语法:

kill [选项] 进程号(功能描述:通过进程号杀死进程 -9 强制终止)

killall 进程名称    (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)

  1. 常用选项:

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

  1. 最佳实践:

案例1:踢掉某个非法登录用户【jack】

案例2: 终止远程登录服务sshd, 在适当时候再次重启sshd服务

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

killall gedit

案例4:强制杀掉一个终端 对于 bash

kill -9 对应的bash的进程号

 

 

  1. 查看进程树pstree
    1. 基本语法:

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

 

  1. 常用选项:

-p :显示进程的PID

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

  1. 应用实例:
  1. 案例1:请用树状的形式显示进程的pid

    Pstree -p

    案例2:请用树状的形式进程的用户id

    Pstree –u

    Pstree -pu

     

    1. 服务(service)管理

    介绍:

    服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。【原理图】

     

    service管理指令:

    service 服务名 [start | stop | restart | reload | status]

    在CentOS7.0后 不再使用service ,而是 systemctl

    使用案例:

    1) 查看当前防火墙的状况,关闭防火墙和重启防火墙。

    Service iptables status

    细节讨论:

    关闭或者启用防火墙后,立即生效。[telnet 测试 某个端口即可]
        service iptables stop , service iptables start

    这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。

    如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig指令。

     

     

     

     

     

     

     

    1. 动态监控进程

     

    1. 介绍:

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

    1. top [选项]

     

    1. 选项说明:

  • top 指令的说明

 

 

 

 

  1. 监控网络状态
  • 查看系统网络情况netstat
  • 基本语法

netstat [选项]

  • 选项说明

-an 按一定顺序排列输出

-p 显示哪个进程在调用

 

应用案例

请查看服务名为 sshd 的服务的信息。

  • Netstat –anp | grep sshd
  • 如果我们希望查看当前系统有哪些端口在监听

netstat -tlnp

 

 

  1. 百度面试题:

问题:Linux常用命令,至少6个(netstat , top , lsblk , find , ps , chkconfig )

 

  1. 瓜子二手车题:

问题:Linux查看内存、磁盘存储、io 读写(iotop)、端口占用、进程等命令

 

top

df –lh

Netstat –tunlp

Ps –aux | grep 进程名

Iotop , 如果没有,就先安装一把

 

  1. rpm 和 yum软件安装
    1. rpm包的管理

    介绍:

     

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

     

    Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。

     

    1. rpm 常用的指令

     

    1. 卸载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      [小心使用]

 

  1. 安装rpm包:
  • 基本语法

rpm -ivh RPM包全路径名称

  • 参数说明

    i=install 安装

v=verbose 提示

h=hash 进度条

  • 应用实例

 

演示卸载和安装firefox浏览器

提示:很多的rpm包,就在我们的centos安装的镜像文件中

 

  1. yum的使用

转载于:https://www.cnblogs.com/songdanlee/p/10640414.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值