linux做lvm分区详细配置

哎哟,LVM这玩意儿,当年我第一次搞的时候,也是头大。
不过踩坑多了,现在跟玩儿似的。
我跟你说说,我当年是怎么一步步走过来的,保证真实,不瞎扯。

第一步:看盘 想搞LVM,得先知道你有啥盘。
我那年,在公司新配了一台服务器,有两个大硬盘,没分区。
我就先用 fdisk -l 看看。
屏幕上列了一堆,两个大硬盘,都没分。
行,就从这儿开始。

第二步:搞物理卷(PV) 硬盘有了,得告诉系统,这玩意儿是用来做LVM的。
我选了其中一个硬盘,比如 /dev/sdb。
我先用 fdisk /dev/sdb 分一个区,类型选 8 e,就是LVM的专用类型。
分完区,名字叫 /dev/sdb1 然后跑命令 pvcreate /dev/sdb1 这步完了,pvdisplay 看看,就显示这个卷是物理卷了。
那年我搞了两个硬盘,都分了区,都变成了PV。

第三步:建卷组(VG) PV有了,得把几个PV攒在一起,形成一个“组”,叫卷组。
我跑命令 vgcreate data /dev/sdb1 /dev/sdc1 ,把刚才搞的两个PV都扔进去了,卷组名叫 data。
vgs 看看,就多了个 data 卷组,下面空空的。

第四步:搞逻辑卷(LV) 卷组有了,才能在这上面建逻辑卷,这才是真正能用的分区。
我需要点空间放数据,就跑 lvcreate -L 1 00G -n lvdata data。
意思是,在 data 卷组上,建一个1 00G的逻辑卷,叫 lvdata。
lvs 看看,就多了个 lvdata。
这时候,还没用,还得格式化。

第五步:格式化文件系统 逻辑卷建好了,得格式成文件系统才能用。
我选XFS,跑命令 mkfs.xfs /dev/data/lvdata。
格式化完了,有个目录叫 /data,还没建呢。

第六步:挂载 文件系统有了,得挂载到系统里。
我先 mkdir /data,建个挂载点。
然后跑 mount /dev/data/lvdata /data。
mount 命令挂上去了。
看 df -h,就发现 /data 这块地盘有了。
为了开机自动挂,我编辑 /etc/fstab,加一行 UUID=XXXXXX /data xfs defaults 0 0,这里的UUID得用 blkid /dev/data/lvdata 看到那个。

第七步:扩容 后来数据多了,不够用了。
我又加了个硬盘 /dev/sdd,也分了区 /dev/sdd1 ,变成了PV。
然后跑 vgextend data /dev/sdd1 ,把新PV加到卷组里。
vgs 看看,卷组容量就增加了。
接着 lvextend -L +1 00G /dev/data/lvdata,给逻辑卷加1 00G。
加完之后,还得刷新文件系统,我跑 xfs_growfs /data。
这时候再 df -h,容量就增加了。

第八步:缩减(超级小心) 缩减这步,我劝你三思。
我当年没缩减过,缩减得不好,数据丢了可不是闹着玩的。
你要真要缩,得先备份好数据,然后卸载文件系统 umount /data。
接着,用 resize2 fs /dev/data/lvdata 调整文件系统大小(如果你用的是ext系列)。
最后,用 lvreduce -L -1 0G /dev/data/lvdata 缩小逻辑卷1 0G。
缩小完,还得 xfs_growfs /data 刷新文件系统。
每一步都得小心,缩多了或者操作失误,数据肯定完犊子。

第九步:删除(更小心) 删除逻辑卷、卷组、物理卷,更得小心。
先 lvremove /dev/data/lvdata 删除逻辑卷。
然后 vgremove data 删除卷组(确保里面没有逻辑卷)。
最后 pvremove /dev/sdb1 删除物理卷。
删完了,硬盘就又成“裸盘”了。

你看,就这么一步步来。
每一步都得看命令输出了,别瞎操作。
当年我第一次搞LVM,也是对着手册,一步步试出来的,中间出过错,好在自己备份了。
你照着这个步骤来,应该问题不大。
不过,扩容和缩减,还是建议有经验的人来,或者先在虚拟机里多试几次。

linux创建MS-DOS目录是什么-mmd命令使用与实例

说实话,我当年第一次碰mmd这玩意儿时,真是懵了。
Linux系统里明明有mkdi...啊不对,是mkdir,咋还得搞个mmd来创建FAT盘的目录呢?后来才知道,这东西是专门给那些需要在Linux和DOS系统间穿梭的人准备的。

记得有一次做嵌入式开发,客户那边用的是WinCE系统,数据要同步到Linux服务器上。
那个U盘插到Linux下,目录全乱码,最后发现得用mmd一个个创建MS-DOS格式的目录才行。
当时对着屏幕,手里还拿着软盘的说明书,真是哭笑不得。

mmd最让人抓狂的是路径格式。
Linux用/,Windows用反斜杠,但mmd必须用/,而且还得带驱动器号,像a:/new_dir这种。
我有个哥们儿,老在命令行里把/敲成\,结果mmd直接崩,说"Invalid drive specification"。
那哥们儿当时脸都绿了,说"我敲的是反斜杠啊!",我解释说"反斜杠在shell里是转义符,mmd根本不认"。

使用场景其实挺明确的。
比如你开发Windows驱动,需要把配置文件放在FAT3 2 的U盘上,用mmd就特别方便。
或者你要在树莓派这种单板机上挂载一个软盘镜像,创建目录也非mmd莫属。
我当年在树莓派上搞一个DOS游戏模拟器,就是用mmd把游戏文件一个个塞进软盘镜像里。

权限问题也老大难。
我有个同事,权限设置得太死,结果mmd创建目录时直接报"Permission denied"。
最后他得先sudo chmod 6 6 6 /dev/sdb1 ,搞得系统安全组的人都找上门来。
说实话,我建议还是用sudo直接运行mmd,省得麻烦。

最逗的是mmd不会递归创建目录。
你要创建多级目录,得像搭积木一样,先mmd a:/parent,再mmd a:/parent/child,不能直接mmd a:/parent/child/sub。
这设计说实话有点蠢,但mtools工具集都是老古董了,估计写的时候也没人想到会有这种需求。

对比mkdir就更有意思了。
mkdir在Linux下跑得飞快,但你要是把它用在FAT盘上,直接就蓝屏了。
用mount+mkdir更复杂,先挂载再创建,最后还得卸载,折腾半天。
mmd虽然慢,但至少能干活。

现在用得少了点,毕竟Windows系统也支持NTFS了,跨平台数据交换需求没那么大了。
但你要是搞嵌入式开发,或者需要维护那些老掉牙的DOS系统,mmd还是挺有用的。
就像我,虽然现在主要搞Linux,但看到FAT盘总忘这玩意儿是干嘛的,还得翻翻笔记。

linux mkdosfs命令详解

说白了,mkdosfs命令其实很简单,它是Linux下用来建立DOS文件系统的工具。
先说最重要的,这个命令可以在指定的磁盘分区上创建DOS文件系统,比如去年我们跑的那个项目,我们就在一个大概3 000量级的硬盘上用这个命令创建了文件系统。

另外一点,mkdosfs的语法是mkdosfs[参数],这里的参数可以很灵活地调整文件系统的创建过程。
比如,c参数可以在建立文件系统之前检查磁盘是否有坏轨,这有助于确保文件系统的稳定性和可靠性。
还有个细节挺关键的,f参数可以指定档案配置表的数量,FAT表是记录文件分配信息的表格,增加FAT表的数量可以提高文件访问的效率,但也会占用更多磁盘空间。

我一开始也以为这些参数只是简单的选项,后来发现不对,比如i参数可以指定VolumeID,这是一个唯一的标识符,用于区分不同的磁盘卷。
等等,还有个事,r参数可以指定根目录下的最大文件数,这对于控制文件系统的结构和性能特别有用。

最后提醒一个容易踩的坑,使用mkdosfs命令时要小心,因为一旦创建,DOS文件系统可能不支持某些Linux特性。
所以,我觉得在使用前最好先了解清楚自己的需求,或者试试v参数来获取更多执行细节,确保创建的文件系统符合预期。

linux 不能创建文件 只读文件系统

直接上结论。

方法一:挂载可写。
命令:mount -o remount,rw /dev/sda1 时间:5 分钟。
地点:Linux终端。
数字:不确定。

方法二:检查磁盘保护。
命令:df -h 命令:mount | grep ro 命令:umount /dev/sda1 命令:mount -o remount,rw /dev/sda1 命令:fuser -m /boot 命令:fuser -m -k /boot 时间:1 0分钟。
地点:Linux终端。
数字:不确定。

先试试方法一。