用户中心
登录
登陆私有云
Toggle navigation
首页
分类
默认分类
English Novel
技术
机器学习
编程学习
智能家居
碎碎念
其他页面
whateat
一周Bing美图
书籍搜索网站
Media
OKAI
口红颜色可视化
关于我
关于我
Ubuntu缩小磁盘分区大小或扩容其他分区
看不见的城市
发布 | 2019-05-23 |
默认分类
| 10884 浏览
摘要: --- 1. 通过resize2fs调整文件系统大小 2. 通过parted调整磁盘分区大小 3. 通过fdisk进行磁盘分区相关操作 fdisk 磁盘分区相关操作 df 系统分区挂载信息 mount 挂载分区 umount 卸载分区 mkfs.ext4 格式化分区 在做强化学习训练时训练的数据越来越大越来越大,直接把所有的空间都给使用了,导致系统崩溃,只能挂载新的磁盘或者将未利用磁盘空间缩小,扩容到用户需要的目录下。 以下为非生产环境的操作,但大体一致 ----------------- STEP 1: 首先查看一下目前的磁盘分区 virtual@virtual:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 32G 0 disk ├─sda1 8:1 0 190M 0 part /boot ├─sda2 8:2 0 1K 0 part ├─sda5 8:5 0 7.6G 0 part /home ├─sda6 8:6 0 487M 0 part [SWAP] └─sda7 8:7 0 23.7G 0 part / sr0 11:0 1 1024M 0 rom 将/home分区的大小缩小为4G,这样可以多出一部分空间来新建一个分区 $ umount /home 显示/home分区是busy的 $ lsof +d /home 查看哪些进程在使用/home分区 STEP 2: 通过resize2fs命令来缩小/home分区的文件系统大小 (注意:文件系统大小和磁盘分区大小是两个不同的概念。文件系统大小表示的是文件系统实际可用的大小,而磁盘分区大小则是文件系统所安装的磁盘分区的真实大小。通过df -h命令我们可以查看文件系统大小,通过lsblk或者fdisk命令可以查看磁盘分区大小。粗略算一下1T=954.xxxG) root@virtual:~# e2fsck -f /dev/sda5 # 上面这条命令强制对/dev/sda5的文件系统进行了检查 e2fsck 1.42.13 (17-May-2015) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/sda5: 220/499968 files (3.6% non-contiguous), 69132/1999872 blocks root@vv2x:~# resize2fs /dev/sda5 4G resize2fs 1.42.13 (17-May-2015) Resizing the filesystem on /dev/sda5 to 1048576 (4k) blocks. The filesystem on /dev/sda5 is now 1048576 (4k) blocks long. 缩小/home分区的磁盘分区大小 调整好文件系统大小以后,我们就需要来调整磁盘分区大小了,这里我们通过parted命令中的resizepart命令来调整分区大小。用法如下: (parted) help resizepart resizepart NUMBER END resize partition NUMBER NUMBER is the partition number used by Linux. On MS-DOS disk labels, the primary partitions number from 1 to 4, logical partitions from 5 onwards. END is disk location, such as 4GB or 10%. Negative value counts from the end of the disk. For example, -1s specifies exactly the last sector. 其中NUMBER代表的是分区号,这里我们的/home分区为5,END代表的是结束的位置,我们可以用4GB来表示。(注意:parted的分区大小计算方式和lsblk不同,所以我们多留一些空间,防止数据丢失) 运行结果如下: root@virtual:~# parted /dev/sda GNU Parted 3.2 Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) resizepart 5 5G Warning: Shrinking a partition can cause data loss, are you sure you want to continue? Yes/No? Yes (parted) Information: You may need to update /etc/fstab. 调整/home分区的文件系统大小并重新挂载 STEP 3: 为了防止数据丢失,我们多留出了一些空间。在这里我们需要相应地调整文件系统大小,让其和磁盘空间大小匹配,这里我们通过resize2fs命令来完成这一步。 root@virtual:~# resize2fs /dev/sda7 # resize2fs如果没有指定大小,那么/dev/sda7的文件系统大小默认和磁盘分区大小相同 resize2fs 1.42.13 (17-May-2015) Resizing the filesystem on /dev/sda7 to 1171295 (4k) blocks. The filesystem on /dev/sda7 is now 1171295 (4k) blocks long. 最后我们重新把/home分区挂载上就可以了。 root@virtual:~# mount -a # 这条命令默认挂载/etc/fstab文件中所有指定的分区 root@virtual:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 32G 0 disk ├─sda1 8:1 0 190M 0 part /boot ├─sda5 8:5 0 487M 0 part [SWAP] ├─sda6 8:6 0 23.7G 0 part / └─sda7 8:7 0 4.5G 0 part /home sr0 11:0 1 1024M 0 rom 注意:最后需要注意的是调整磁盘分区大小以后,磁盘分区的UUID可能会改变,mount -a命令可能会失败,此时我们需要通过blkid命令来查看/home分区的大小,并相应地更改/etc/fstab配置文件中指定的/home分区的UUID。 查看磁盘uuid -------- 1. sudo blkid /dev/sda1: LABEL="System" UUID="5CA09A65A09A4604" TYPE="ntfs" ... 2. ls -l /dev/disk/by-uuid END STEP 格式化新分区: ------- 查看当前磁盘信息 *执行 fdisk -l 可以看到系统有sda, sdb 两块硬盘,其中 sdb 是我刚刚加的5G硬盘, 可以看到里面是没有任何分区的 [root@virtual~]# fdisk -l Disk /dev/sdb: 5368 MB, 5368709120 bytes 255 heads, 63 sectors/track, 652 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xcca98924 Device Boot Start End Blocks Id System Disk /dev/sda: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000dd21a Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux /dev/sda2 64 2611 20458496 8e Linux LVM *执行 df -lh 查看当前磁盘信息 sda2 挂载在根目录 sda1 挂载在/boot目录 [root@virtual~]# df -lh Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_freeman-lv_root 18G 12G 4.9G 71% / tmpfs 242M 0 242M 0% /dev/shm /dev/sda1 477M 29M 424M 7% /boot 创建分区 [root@virtual ~]# fdisk /dev/sdb Command (m for help): n <- 新建分区 Command action <- 选择要创建的分区类型 e extended <- 扩展分区 p primary partition (1-4) <- 主分区 p <- 输入建立主分区 Partition number (1-4):1 <- 分区编号 First cylinder (1-652, default 1): <- 柱面起始值,直接回车默认 Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652): +1G <-分区大小 Command (m for help): w <- 保存分区表, 完毕会退出fdisk命令 The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. ... *重复同样的方法再建立 ——2G大小的主分区sdb2 ——500M大小的扩展分区大小sdb3 ——100M大小的逻辑分区sdb5, sdb6 [root@virtual~]# fdisk /dev/sdb Command (m for help): p <- 打印当前磁盘的分区信息 Device Boot Start End Blocks Id System /dev/sdb1 1 132 1060258+ 83 Linux /dev/sdb2 133 394 2104515 83 Linux /dev/sdb3 395 459 522112+ 5 Extended /dev/sdb5 395 408 112423+ 83 Linux /dev/sdb6 409 422 112423+ 83 Linux 我已经将sdb已经做了5个分区(实际上4个有效,因为sdb3是扩展分区,sdb5 是第一个逻辑分区所以起始柱面和sdb3一样从395开始) 建立好分区后,先不要急着去挂载,否则提示必须知道文件系统类型 ,需要先格式化分区 [root@virtual/]# mount /dev/sdb2 /my_mount2 mount: you must specify the filesystem type *格式化分区 这里我使用ext4 filesystem type, 有关文件系统类型自己google [root@virtual/]# mkfs.ext4 /dev/sdb1 [root@virtual/]# mkfs.ext4 /dev/sdb2 [root@virtual/]# mkfs.ext4 /dev/sdb5 [root@virtual /]# mkfs.ext4 /dev/sdb6 参考: --------------------- 作者:Tyrion-Lannister 原文:https://blog.csdn.net/hmsiwtv/article/details/7525171 作者:黑翼天使56 原文:https://blog.csdn.net/u012291393/article/details/78636456 作者:jackytse_ 原文:https://blog.csdn.net/xiexievv/article/details/50525783
标签
没有标签
© 著作权归作者所有
本文由 豆末 创作,采用
知识共享署名4.0
国际许可协议进行许可,本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。
微信扫一扫查看
关闭
吐槽一下吧
取消回复
*选项为必填
分类
默认分类
3
English Novel
3
技术
15
机器学习
3
编程学习
2
智能家居
4
碎碎念
9
最新文章
智能家居终结篇之元宇宙
看不见的城市 - 12-31
智能家居二之家庭助理
看不见的城市 - 12-28
智能家居一之物联网设备
看不见的城市 - 12-28
家庭机柜 enjoy
看不见的城市 - 12-27
樱花医院暴雨下的爱情
看不见的城市 - 05-31
Kubernetes 最佳实践:处理容...
看不见的城市 - 04-13
Ubuntu缩小磁盘分区大小或扩容其他分区
看不见的城市 - 05-23
我只想活到50多岁。
鱼塘里的废柴少女 - 03-11
标签云
embedding python
最近回复
加啦加啦 我之前更新了程序
木月 - 11-24
求最新的ndr py版本 跪求
魔法少女刘能 - 11-10
Incredible points. ...
cialis - 04-30
Good way of describ...
cialis for sale in usa - 03-25
Our lives are not o...
鱼塘里的废柴少女 - 11-09
小公司倒是去了很多家
芭比 - 08-07
GG
归档
2021-12
4
2020-05
1
2020-04
1
2019-05
1
2019-03
2
2018-11
3
2018-10
3
2018-09
1
2018-07
3
2018-05
1
2018-04
2
2018-03
15
© 著作权归作者所有
本文由 豆末 创作,采用 知识共享署名4.0 国际许可协议进行许可,本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。