用户中心
登录
登陆私有云
Toggle navigation
首页
分类
默认分类
English Novel
技术
机器学习
编程学习
智能家居
碎碎念
人工智能
元宇宙
chatgpt
强化学习
其他页面
whateat
一周Bing美图
书籍搜索网站
Media
OKAI
口红颜色可视化
关于我
关于我
Ubuntu缩小磁盘分区大小或扩容其他分区
看不见的城市
发布 | 2019-05-23 |
默认分类
| 14989 浏览
摘要: --- 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
技术
16
机器学习
3
编程学习
2
智能家居
4
碎碎念
9
人工智能
0
元宇宙
2
chatgpt
0
强化学习
0
最新文章
编译 openwrt教程
看不见的城市 - 11-25
数字经济元宇宙之电力元宇宙
看不见的城市 - 05-28
数字经济元宇宙
看不见的城市 - 05-28
智能家居终结篇之元宇宙
看不见的城市 - 12-31
智能家居二之家庭助理
看不见的城市 - 12-28
智能家居一之物联网设备
看不见的城市 - 12-28
家庭机柜 enjoy
看不见的城市 - 12-27
樱花医院暴雨下的爱情
看不见的城市 - 05-31
标签云
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
归档
2023-11
1
2023-05
2
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 国际许可协议进行许可,本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。