一. 挂载存储媒体

  linux文件系统将所有的磁盘都并入一个虚拟目录下,当使用新的存储媒体之前,需要把它放到虚拟目录下,这项工作称为挂载(mounting)

  1.1 mount 命令
    在linux上用来挂载媒体的命令叫做mount. 默认情况下,mount命令会输出当前系统上的挂载的设备列表。

  1.2 umont
    要除移可移动设备时,不能直接从系统上移除,应该先卸载。使用umont命令(以后在演示)。

二. 查看磁盘空间

  在linux系统中,监测系统磁盘使用情况很重要。知道还有多少空间供程序使用。下面介绍磁盘管理常用的命令。

  2.1 df 命令
    使用df -h参数会输出系统磁盘空间信息,已易读形式显示,如下图所示:
      

  2.2 du 命令
    使用du -h命令将显示当前目录的磁盘使用情况,确定占用了多少存储空间,是否有超大文件。如下图所示,显示mysql 的数据目录磁盘占用情况。
      

三 数据处理

  3.1  搜索数据 grep
    在前面章节介绍ps 命令查看进程时有说过grep命令。下面演示在mysql错误日志文件中,找出含有Warning关键词的信息。如下图所示:
      
    使用grep -c参数显示匹配数,下面匹配Warning关键词数有50个。如下图所示 :
      

    下面使用grep在整个系统中搜索一某字符串,下面查找my.cnf 的字符串,如下所示:

    find .|xargs grep -ri "my.cnf"

    

  3.2  压缩数据 gzip
    在windows中经常有用压缩文件,比如zip文件,压缩成占用更少空间的小文件。在linux中压缩工具包括:bzip1扩展名为.bz2; compress扩展名为.Z; gzip扩展名为.gz; zip扩展名为.zip。常用的压缩工具是gzip工具。
    gzip:用来压缩文件,gzcat:用来查看压缩过的文本文件内容。gunzip:用来解压文件。
    下面使用gzip压缩mariadb.log文件, 注意压缩完后,原文件不存在了,如下图所示:
      
    下面使用gunzip解压mariadb.log.gz包,如下图所示:
      

    面对比压缩前和压缩后的字节占用情况,如下图所示:
      

  3.3 归档数据 tar
    上面介绍的 zip命令可以很好地将数据压缩和归档进单个文件,但在linux中有最广泛使用的归档工具是tar命令。

    下面来看下tar命令的格式:
tar function [options] object1 object2 ..

    在tar命令中包括功能参数和选项参数二部份。在使用时,通常是功能参数和选项参数一起使用。

功能

描述

-A  --concatenate

将一个已有的tar归档文件追加到另一个已有tar归档文件

-c  --create

创建一个新的tar归档文件

-d  --delete

从已有的tar归档文件中删除

-r  --append

追加文件到已有tar归档文件末尾

-t  --list

列出已有tar归档文件的内容

-u  --update

将比tar归档文件中已有的同名文件新的文件追加到该tar归档文件中

-x  --extract

从已有tar归档文件中提取文件

选项

描述

-C   dir

切换到指定目录

-f   file

输出结果到文件

-j

将输出重定向给bzip2命令来压缩内容

-p

保留所有文件权限

-v

在处理文件时显示文件

-z

将输出重定向给gzip命令来压缩内容

    下面来演示tar命令以及参数(功能和选项)的组合,以/var/log/mariadb下的mariadb.log和mariadb.log2为例。

    (1) 使用 tar -cvf 组合创建一个名为mariadb.tar的归档空文件包,将mariadb2.log文件添加到mariadb.tar中,如下图所示:
      
    (2) 使用tar -tf命令来查看归档文件包中的内容,如下图所示:
      
    (3) 使用tar -xvf命令来提取归档文件包中的内容,下面演示先将mariadb2.log删除,再从mariadb.tar中取出到当前目录下(注意如果归档的不是文件,而是一个目录时,提取将是把归根的目录,在当前目录下重新创建)。
      
      下面在列出当前目录文件,可以看到mariadb2.log从归档中提取出来了。
      

    (4) 使用tar -zxvf来解压提取文件名以.tgz结尾的文件(下载了开源软件,一般都是以.tgz结尾的文件)。比如我们下载的mysql二进制包就是tar.gz文件,它是经过gzip压缩过的tar文件。如下图所示:
      

       一般都使用tar -zxvf命令来解压并提取文件
[root@hsr tool]# tar -zxvf mysql-5.7.-linux-glibc2.-x86_64.tar.gzcf

    总结:对于tar的功能和选项还有很多组合,例如上面可以再将mariadb.log也归档到mariadb.tar中,这样mariadb.tar文件中就包含了mariadb.log和mariadb2.log。例如使用-d功能参数从tar归档包中删除一个文件。 使用tar可以轻松将整个目录都归档到单个tar文件包中,方便把数据迁移到另一个系统上。

Linux编程 8 (挂载mount,查看磁盘df du,搜索grep,压缩zgip,归档tar)的更多相关文章

  1. 【目录】linux 编程

    随笔分类 - linux 编程 Linux编程 24 shell编程(结构化 if [ condition ] 数值比较,字符串比较) 摘要: 一.概述 接着上篇讲的结构化命令,最后讲到了test命令 ...

  2. linux 磁盘挂载及查看磁盘

    blkid命令实例 .列出当前系统中所有已挂载文件系统的类型: sudo blkid .显示指定设备 UUID: sudo blkid -s UUID /dev/sda5 .显示所有设备 UUID: ...

  3. Linux分区和挂载(mount命令的学习)

    当Windows系统出现问题的时候,可能需要重装系统,这个时候我们往往会使用系统盘将系统重新安装在C盘上,其他盘上的文件都没有受到重装系统的影 响,这就是分区的好处之一.同样,在Linux中也需要分区 ...

  4. Linux学习总结(七)-磁盘管理 du df fdisk

    一 命令df df,即disk free,可用来查看当前系统的挂载情况,也可以用来查看整体磁盘的使用情况df 不带参数,默认以KB单位显示df -i -----查看inodes 使用情况,要清楚理解i ...

  5. 在VirtualBox ubuntu/linux虚拟机中挂载mount共享文件夹

    referemce: https://www.smarthomebeginner.com/mount-virtualbox-shared-folder-on-ubuntu-linux/ 1) Virt ...

  6. Linux 查看磁盘使用情况

    Linux 查看磁盘使用情况 df 查看当前挂载空间使用情况 语法: df [选项]... [FILE]... 文件-a, --all 包含所有的具有 0 Blocks 的文件系统 文件--block ...

  7. 云服务器挂载/dev/vdb1磁盘

    1.首先检查是否有一块硬盘还未被挂载 2.如图所示,vdb还未被使用,开始分配它吧 [root@localhost ~]# fdisk /dev/vdb Command (m for help): n ...

  8. Linux的硬盘使用情况、挂载、SSD挂载(查看df -h不能看到的卷)

    linux上的盘和window的有区别,磁盘空间必须挂载在目录上,要不然没用 对与新增的硬盘.SSD固态硬盘.挂载到linux上的操作如下: df -h      #显示目前在Linux系统上的文件系 ...

  9. Linux下查看磁盘挂载的几种方法

    Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...

随机推荐

  1. 获取MessageBox按钮本地字符串(OK、Cancel、Yes、No等)

    问题仍然由定制MessageBox引发. 定制MessageBox,虽加入自定义些东西,但仍然希望,最大限度接近系统原生框.碰到的问题,就是其钮文本. 即如MessageBox.Show()之Mess ...

  2. 582. Kill Process杀死所有子代

    [抄题]: Given n processes, each process has a unique PID (process id) and its PPID (parent process id) ...

  3. Power designer 的使用

    1.Powere Designer 逆向 工程 首先 逆向工程 就是将数据库表 导入到模型, 首先新建个模型, 此处就省略 ... 工具栏,数据库(database) 下的 update model ...

  4. swift 分组tableview 设置分区投或者尾部,隐藏默认间隔高度

    1.隐藏尾部或者头部,配套使用 //注册头部id tv.register(JYWithdrawalRecordSectionView.self, forHeaderFooterViewReuseIde ...

  5. BootStrap常用组件及响应式开发

    BootStrap常用组件 PS:所有的代码必须写在<class="container/container-fluid">容器当中 常用组件包含内容: 字体图标 下拉菜 ...

  6. Python:每日一题003

    题目: 一个整数,它加上100和加上268后都是一个完全平方数,请问该数是多少? 程序分析: 在10000以内判断,将该数加上100后再开方,加上268后再开方,如果开方后的结果满足如下条件,即是结果 ...

  7. 使用RabbitMq

    1.配置环境 http://www.cnblogs.com/longlongogo/p/6479424.html 2.安装RabbitMQ https://www.cnblogs.com/longlo ...

  8. zigbee3.0的协议特性

    ZigBee协议有如下特性: 支持多种网络拓扑,比如点对点,点对多点,自组网: 低工作占空比能力,提供长电池供电的可能: 低延迟: 采用DSSS扩频技术: 每个网络最高可支持65,000节点 128- ...

  9. 别人的Linux私房菜(8)Linux磁盘与文件系统管理

    虚拟机的磁盘通常为:/dev/vd[a-p] LVM和软件磁盘阵列 software RAID可以将一个分区格式化为多个文件系统或者多个分区格式化为一个文件系统. 索引式文件系统中:如ext2.ext ...

  10. SQL SERVER 小语法

    1. 取字段长度:len select * from 表名 where len(expmessage)=1 2.rtrim, ltrim rtrim(ObjectName)