Linux编程 8 (挂载mount,查看磁盘df du,搜索grep,压缩zgip,归档tar)
一. 挂载存储媒体
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)的更多相关文章
- 【目录】linux 编程
随笔分类 - linux 编程 Linux编程 24 shell编程(结构化 if [ condition ] 数值比较,字符串比较) 摘要: 一.概述 接着上篇讲的结构化命令,最后讲到了test命令 ...
- linux 磁盘挂载及查看磁盘
blkid命令实例 .列出当前系统中所有已挂载文件系统的类型: sudo blkid .显示指定设备 UUID: sudo blkid -s UUID /dev/sda5 .显示所有设备 UUID: ...
- Linux分区和挂载(mount命令的学习)
当Windows系统出现问题的时候,可能需要重装系统,这个时候我们往往会使用系统盘将系统重新安装在C盘上,其他盘上的文件都没有受到重装系统的影 响,这就是分区的好处之一.同样,在Linux中也需要分区 ...
- Linux学习总结(七)-磁盘管理 du df fdisk
一 命令df df,即disk free,可用来查看当前系统的挂载情况,也可以用来查看整体磁盘的使用情况df 不带参数,默认以KB单位显示df -i -----查看inodes 使用情况,要清楚理解i ...
- 在VirtualBox ubuntu/linux虚拟机中挂载mount共享文件夹
referemce: https://www.smarthomebeginner.com/mount-virtualbox-shared-folder-on-ubuntu-linux/ 1) Virt ...
- Linux 查看磁盘使用情况
Linux 查看磁盘使用情况 df 查看当前挂载空间使用情况 语法: df [选项]... [FILE]... 文件-a, --all 包含所有的具有 0 Blocks 的文件系统 文件--block ...
- 云服务器挂载/dev/vdb1磁盘
1.首先检查是否有一块硬盘还未被挂载 2.如图所示,vdb还未被使用,开始分配它吧 [root@localhost ~]# fdisk /dev/vdb Command (m for help): n ...
- Linux的硬盘使用情况、挂载、SSD挂载(查看df -h不能看到的卷)
linux上的盘和window的有区别,磁盘空间必须挂载在目录上,要不然没用 对与新增的硬盘.SSD固态硬盘.挂载到linux上的操作如下: df -h #显示目前在Linux系统上的文件系 ...
- Linux下查看磁盘挂载的几种方法
Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...
随机推荐
- SSM框架整合过程总结
-----------------------siwuxie095 SSM 框架整合过程总结 1.导入相关 jar 包( ...
- Git的操作方法
创建仓库 git clone 加上你的远程仓库克隆下来 git add . 把你文件里面的改动更改添加到git里面 git status 查看状态,更新了那些内容 git commit -m" ...
- Git-git push -u为何第二次不用指定-u?
1,如果当前分支只有一个追踪分支,那么主机名都可以省略,如:git push origin 将当前分支推送到origin主机的对应分支 2,$ git push 如果当前分支与多个主机存在追踪关系,那 ...
- 3H - 进制转换
输入一个十进制数N,将它转换成R进制数输出. Input 输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10). Outpu ...
- Android无线蓝牙总结
一.基础知识: ①蓝牙的四层协议: 蓝牙协议分为4层,即核心协议层.电缆替代协议层.电话控制协议层和采纳的其它协议层.这4种协议中最重要的是核心协议.蓝牙的核心协议包括基带.链路管理.逻辑链路控制和适 ...
- spring rabbitmq集成
pom.xml加 <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-clien ...
- 接口测试3A原则
手工的功能测试用例也可以用3A原则来编写. Arrange: 准备被测功能相关的测试数据,比如往系统里录入一批工单以便测试工单的分页功能 Act : 调用被测的功能,实际上这就是我们一直讲的测试步骤 ...
- 2019.02.15 bzoj5210: 最大连通子块和(链分治+ddp)
传送门 题意:支持单点修改,维护子树里的最大连通子块和. 思路: 扯皮: bzojbzojbzoj卡常差评. 网上的题解大多用了跟什么最大子段和一样的转移方法. 但是我们实际上是可以用矩阵转移的传统d ...
- windows下多tomcat部署
两种方式: 第一种是修改tomcat下很多配置文件,且配置环境变量: 第二种不配tomcat环境变量,通过修改server.xml文件即可: 本篇讲解第二种方式: 首先说下如何修改tomcat控制台标 ...
- cp备份操作时如何忽略指定的目录
需求场景:进行CP拷贝备份的时候,子目录里面的某些大文件或是一些log文件是无需备份的,那么在CP操作时需要忽略掉指定的目录. 案例演示如下:备份data目录,但是不包括里面的share子目录. 先看 ...