linux压缩目录
作者:yasden
NAS的操作系统99%都是Linux系统,包括威联通和群晖的系统,不懂Linux就无法理解为什么威联通和群晖要这样操作和设置。学点Linux知识,玩NAS会更加得心应手。
本人的Linux系统下面有4块固态硬盘,一块1TB的京造nvme SSD作系统盘,另外两块2TB的移速SSD,一块1TB的梵想SSD(见下图)。我要将两块2TB的移速SSD,一块1TB的梵想SSD共3块5GB的SSD合并在一起,然后挂载到同一个目录下。
为什么要合并呢?一块一块硬盘单独用不行吗?真不行,一块硬盘最大2TB,有时候一个程序文件解压缩后就超过2TB了,老是报硬盘空间不够,无法继续。基于实际需要,因此有了本文的多个硬盘空间合并在一起的做法。这是Linux基础操作,必须掌握的基础用法。
终端下,查看硬盘信息的命令是:sudo fdisk -l
输入命令并回车后,看到的信息见下图:
往下拉,可以看到我的1TB的京造nvme M.2 固态被挂载到nvme0n1p1nvme0n1p3共3个目录下面了,分别是BIOS启动、EFI系统和Linux操作系统文件:
下图的/dev/sda就是我的2TB的移速SSD,/dev/sdb就是我的1TB的梵想SSD,dev/sdc就是我的2TB的移速SSD。本文的目的就是要将sda、sdb、sdc共3个sata的固态SSD合并成“一个硬盘”然后挂载到一个目录下来使用。
基础知识:
PV(physical volume)就是物理卷,也就是物理磁盘,例如我在上文是通过 fdisk -l 来查看我的操作系统有几块硬盘,我一共是4块硬盘。
VG(volume group)就是卷组,也就是一组物理磁盘的组合,VG可以有单块硬盘也可以有好多块硬盘。
LV(logical volume)就是逻辑卷,也就是在VG(指定的物理磁盘组)里面划分出来的东西,一个VG可以划分出多个LV。
下面用一张图来解释PV、VG和LV三者的关系(下图转载自网路):
第一步、pvcreate命令将物理硬盘分区初始化为物理卷
输入下面的三个命令并分别回车:
pvcreate /dev/sda
pvcreate /dev/sdb
pvcreate /dev/sdc\n
假如遇到下面的提示,就按照提示操作,先安装lvm2:
如果遇到提示,说权限不够的话,就在命令前面添加sudo,即:
sudo pvcreate /dev/sda
如果提示报错: cannot use /dev/sda:device is partitioned的话,用命令lsblk看看:
原来,sda下面还有一个sda1,修改命令为:
sudo pvcreate /dev/sda1
成功后出现下面的提示:
接下来,将第2块硬盘sdb加进去:
sudo pvcreate /dev/sdb
接下来,将第3块硬盘sdc加进去:
sudo pvcreate /dev/sdc
第二步、vgcreate 命令创建VG卷组
用下面的命令创建一个名字为VG_5G的卷组(卷组名字自己取即可,你也可以取一个abcd之类的名字的卷组):我的这三个硬盘加起来5GB,所以我取名为VG_5G:
sudo vgcreate VG_5G /dev/sda1
第三步、vgextend命令向卷组VG_5G中添加物理卷(名称VG_5G可自定义)
将第2个硬盘sdb加进去:
sudo vgextend VG_5G /dev/sdb
将第3个硬盘sdc也加进去:
sudo vgextend VG_5G /dev/sdc
第四步、lvcreate 命令创建逻辑卷
用下面的命令,将刚才3个磁盘的卷组(名词为VG_5G)创建为一个叫做my5G的逻辑卷(-l后面的100%VG这个参数的意思是,将3个磁盘100%的空间全部划分到my5G的逻辑卷上):
sudo lvcreate -l 100%VG -n my5G VG_5G
成功后显示上图的信息。
第五步、格式化逻辑卷
用下面的命令格式化刚才创建的逻辑卷,将/dev/VG_5G/my5G格式化为ext4文件系统(我记得ext4文件系统的单个文件最大16TB,不知道有没有记错,反正ext4文件系统一般情况下是够用了):
sudo mkfs -t ext4 /dev/VG_5G/my5G
格式化过程见下图:
完成后显示下面的信息:
第六步、挂载该逻辑卷到某个目录下
用下面的命令将刚才创建的逻辑卷挂载到/home/yasden/data下(注:/home/yasden/data是你自己选的目录,每个人选的目录都不一样的,想什么选就怎么选,如果没有/home/yasden/data这个目录,就用mkdir /home/yasden/data 命令来创建该目录):
sudo mount /dev/VG_5G/my5G /home/yasden/data
假如出现下图的提示,说明你的/home/yasden/目录下没有data这个文件夹,
用下面的命令:
mkdir /home/yasden/data
上面的命令回车来创建data文件夹后继续:
出现上面的信息代表已经挂载好了。
第七步、设置开机自动加载,不然每次开机都要用命令加载。
用下面的vi命令打开并编辑/etc/fstab文件(记得加sudo):
sudo vi /etc/fstab
将下面的语句加到etc/fstab里面,保存并退出(vi命令可以写一篇1万字的用法说明的文章,请自行研究vi命令的用法):
/dev/VG_5G/my5G /home/yasden/data ext4 defaults 0 0
保存之后,电脑重启一下,可以看见下面的硬盘信息,3个磁盘已经合并成一个5GB的大硬盘了:
如果发现/home/yasden/data 这个文件夹有个“锁”,代表用户权限不够,用下面的命令修改权限(777代表最高权限):
sudo chmod 777 /home/yasden/data
总结
这个方法可以将多个硬盘合并,变成“一个硬盘”来使用。
为什么要合并呢?一块一块硬盘单独用不行吗?真不行,一块硬盘最大2TB,有时候一个程序文件解压缩后就超过2TB了,老是报硬盘空间不够,无法继续。基于实际需要,因此有了本文的多个硬盘空间合并在一起的做法。
那为什么要买1TB、2TB的SSD呢?直接买一个5TB的不就好了吗?问题是5TB的SSD很贵很贵,比1TB、2TB这样买来凑在一起用的价格贵多了。为什么不买一个5TB的机械硬盘呢?因为机械硬盘太慢了,有些计算要求比较多的大数据文件,需要SSD,机械硬盘毕竟还是慢。
全文完,谢谢观看!
\n
富悦光2338急!急!用linux编写 把目录或选择的文件压缩到备份文件夹中 用tar 和gzip 进行压缩. 跪求大侠们相助! -
权颖伊19592403821 ______ 将 tar 目录的文件压缩为 tar.tar tar -cvf tar.tar tar 将 tar 目录,file1,file2 ,file3 的文件压缩为 tar.tar tar -cvf tar.tar tar file1 file2 file3 将 tar 目录,file1,file2 ,file3 , 以及tmo目录下的所有以 .so 结尾 的文件压缩为 tar.tar tar -cvf tar.tar tar file1 file2 file3 `ls tmo/*.so`
富悦光2338linux zip 怎样只压缩文件,不要包含路径? -
权颖伊19592403821 ______ 在Linux下直接使用命令:tar jcvf file.tar.bz files ,压缩files目录时,如果当前files路径是在/home/www/files下,压缩后的file.tar.bz2会将包含files的绝对路径;tar jcvf file.tar.bz2 -C /home/www files 这样压缩后,就是可以得当一个相对路径的压缩包了,直接排除掉/home/www路径不压缩了.这个方法适合于某些文件导出,但并不希望用户知道服务器上文件存放路径信息的需求.Tar在Unix/Linux世界虽然流行,但在终端用户这边,zip格式还是绝对的主流,所以,有可能zip格式更有用.
富悦光2338linux文件压缩 -
权颖伊19592403821 ______ Linux下的tar压缩解压缩命令详解(来源http://hi.baidu.com/feixia202023/blog/item/b54a243814ad87c1d4622502.html) tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令...
富悦光2338Linux下建立zip文件如何压缩某个目录以外的文件? -
权颖伊19592403821 ______ 先确定你要压缩的文件所在的目录,比如说有三个文件分别为1.txt,1.jpg,1.pdf,它们所在的目录是home,那么用zip 1.zip home/1.txt 1.jpg 1.pdf命令就可以把它们压缩成1.zip的压缩文件.总之,用zip命令压缩文件,得确定这个文件位于什么目录下面,要想压缩某个目录以外的文件也一样,得确定这个文件所在的位置.
富悦光2338如何在linux下解压缩一个文件到不同目录下 -
权颖伊19592403821 ______ 首先 你需要 cd进入一个你想要解压到的目录,你可以使用命令 pwd 检查是否是你想要解压到的路径,然后使用解压工具进行解压. 比如我们在 /home/user/downloads/ 下有一个 linux-4.2.7.tar.xz 的归档压缩文件,我们需要将它解压到 /home/user...
富悦光2338在Linux环境下,如何备份并压缩到指定目录 -
权颖伊19592403821 ______ 给你个脚本吧,以前学的时候写着玩的#!/bin/bash#备份指定目录下的所有文件, 如果不指定目录备份当前目录下的所有文件#help function help() { cat << HELP================== dirbackup.sh help =================== 备份指定目录下...
富悦光2338Linux系统下文件的压缩、打包与解压包介绍有哪些呢?
权颖伊19592403821 ______ 一般情况下Linux系统中我们常用到的压缩文件的种类大致为 .zip,.gz和.tar,那我们先就来介绍一下最常见的.zip文件的压缩解压命令. Linux中处理 .zip 文件的命令...
富悦光2338Linux系统中的文件目录结构有什么?
权颖伊19592403821 ______ 目录结构及主要内容 “/”根目录部分有以下子目录: /usr 目录包含所有的命令、程序库、文档和其它文件.这些文件在正常操作中不会被改变的.这个目录也包含你的...
富悦光2338如何将Linux系统的多个目录及文件备份并压缩到一个文件,以方面保持和传递? -
权颖伊19592403821 ______ 1.备份Linux系统 window系统在运行状态下,我们是无法将文件拷贝出来的,那么在Linux下呢?她的文件结构式一种树型结构.而且在系统运行的时候我们可以进行打包所有系统文件.特别要说的在Linux的root账户具备系统上的任何操作,这...
富悦光2338如何在Linux上将一个应用目录打成一个
权颖伊19592403821 ______ 常用的压缩命令有:zip -r 压缩包名 应用目录或者tar -jvcf 压缩包名 应用目录 或者tar -zvcf 压缩包名 应用目录r是迭代处理j是用bz2格式压缩z是用gz格式压缩v是显示过程c是压缩命令f是指定压缩包名