文章目录
- 前言
- 一、格式化
-
- 二、把格式化后未挂载的磁盘挂载到/home(此操作有风险)
- 1. 将/home目录重命名,并创建新的/home文件夹
- 2. 挂载并迁移原home中的数据到目标分区
- 3. 永久挂载(此步骤可能会导致无法进入系统,但是能救)
- 填坑:对于上面所说的“能救”
- 三、将系统转移到格式化后已挂载的新磁盘
- 总结
- Reference
前言
因为之前把系统里aarch64-linux-gnu
需要的OpenCV3.2卸了,装了OpenCV4.4.0,但是我却不知道怎么用OpenCV4.4.0把它重新编译,搞了几天毫无办法,希望有经验的dalao可以指点一下。
故,对Nvidia Xavier nx进行了刷机处理,但是原来的系统磁盘不够用,所以需要挂载一块较大的盘给/home,记录一下。
最后其实发现挂载给/home
并没有什么作用,因为Nvidia Xavier NX
板子的系统都是直接装在内置16G的eMMC内嵌式硬盘,一个系统刷进去就给我快占满了,剩不到1G,不如直接扩容或者转移。买板子的时候顺便搭载了一块M.2 Key M NVMe SSD
,把系统转移到这块磁盘上吧。
图,没有存图的习惯,凑合看吧哈哈哈。
一、格式化
1. 查看磁盘情况
sudo fdisk -l
查找对应容量大小的设备名,查看后,
我的磁盘名是:/dev/nvme0n1
只有一个分区:/dev/nvme0n1p1
2. 磁盘分区
因为我是直接把整块盘作为一个分区,所以直接整块格式化。
如果要进行分区,可在命令中输入要进行分区的磁盘名称(假设磁盘名为:/dev/sda),进入分区模式:
fdisk /dev/sda
然后键入m
获取帮助,选取对应的模式就可以,具体可以看Reference[1]、[2],论坛里挺多帖子的。
还有另一种方法就是用Disks进行分区创建和擦除。
3. 格式化
格式化和分区的先后顺序看自己的需求,
如果想要所有分区都是空的就:格式化-分区;
如果只想对某一个单独的分区格式化,则直接格式化这块分区即可。
格式化之前一定要确认这块磁盘没有被挂载!!!
如果正在被挂载,卸载:#umount /dev/sdb
(/dev/sdb改为自己需要格式化的磁盘名)
如果该磁盘正在被XX使用,则杀掉这个进程。
例如/data2:device is busy
,说明data2正在对这块磁盘进行使用,kill it:fuser -km /data2
插曲:像我直接把扩容磁盘搭载在/home
下的基本不可能杀死了,直接刷机,才能这磁盘重新空出来,即使修改/etc/fstab
重启也没用,因为/home架构乱了,进不了系统。
方法一:用Ubuntu 18.04系统自带的Disks进行格式化
- 进入Disks后,对着要进行格式化的磁盘进行
Ctrl+F
或点击右上角的菜单选择Format Disk
并将其格式化为GPT
格式 - 随后点
+
,进入创建分区模式,选择容量大小,创建名称,因为要作为/home
内存或扩根目录,选择ext4
格式 - 输入密码就可以格式化了
- 如果需要挂载在系统,则直接点小三角就可以(注:搭载在/home下不需要进行此操作,转移系统需要进行)
![在这里插入图片描述](https://img-blog.csdnimg.cn/6f45e20222b641669bc670310d2415c6.png#pic_center)
方法二:命令行格式化
对取消挂载后的磁盘或者分区进行格式化。
格式化磁盘/dev/sdb为.ext4格式:
mkfs.ext4 /dev/sdb
格式化根目录下磁盘的sda5分区为.ext4格式:
mkfs.ext4 /dev/sda5
当done都出现完毕后,意味着格式化已经进行完毕。
格式化完毕后我们使用命令:ll
,来查看我们格式化完毕后的分区的文件类型信息。
详细看Reference[1]。
二、把格式化后未挂载的磁盘挂载到/home(此操作有风险)
注:
切记重命名之后要完成后面的操作,否则没有home目录重启后无法登入系统!!!
- 保留有/home目录才能救(下面填坑)
- 搭载在
/home
目录下的扩容盘,以后就只能在/home下了,斟酌清楚。
卸载会提示/home
目录正在占用,且无法杀死此进程,因为杀了系统会崩;
如果修改/etc/fstab
文件,取消挂载在/home
目录下,则重启后会导致开机一直进不了系统。
1. 将/home目录重命名,并创建新的/home文件夹
sudo mv /home /oldhome
sudo mkdir /home
2. 挂载并迁移原home中的数据到目标分区
sudo mount /dev/sdb1 /home
cd /oldhome
sudo cp -a * /home
此时此刻,扩容盘已经是/home
目录的了,但是还没有永久生效,这个时候重启,重启后扩容盘还是没有挂载上。
可以用这一点,在后续永久生效操作无法进入系统时,能救回来。
一开始,进不了系统,我就傻傻地重新又刷机。
3. 永久挂载(此步骤可能会导致无法进入系统,但是能救)
方法一:UUID标识分区
- 获取所挂载分区的UUID,通过分区名字找到对应的UUID,拷贝一下
sudo blkid
- 进入
/etc/fstab
文件,配置一下
sudo vim /etc/fstab
-
在最后一行添加下列文本(如果已经存在/home的挂载,可以注释掉),UUID是通过上一步命令获取到的
UUID=xxxx-xxxx /home ext4 defaults 0 0
中间用空格隔开即可
-
重启,删/oldhome
文件夹即可
方法二:分区名标识分区
- 进入
/etc/fstab
文件,配置一下
sudo vim /etc/fstab
-
在最后一行添加下列文本(如果已经存在/home的挂载,可以注释掉),分区名就是刚才被挂载的磁盘/分区名称(此处假设/dev/sdb1)
/dev/sdb1 /home ext4 defaults 0 0
中间用空格隔开即可
-
重启,删/oldhome
文件夹即可
Reference[5]里面提到的,重启前检查一下是否挂载成功,没用的,现在检测了是挂载成功,但是不代表重启是成功的。
注:这一步骤不一定能一次成功 ,设置的自动挂载硬盘修改后未修改fstab文件重启,则可能会出现开机硬盘挂载错误。我就是重复了几次才实现永久挂载和成功进入系统的!
填坑:对于上面所说的“能救”
执行第3步后没办法进入系统的解决方法:
没办法进入系统的表现:重复处于开机状态,让你输密码。
解决方法:
Ctrl+Alt+F1~F7
进入Linux单用户(tty)模式(我是Ctrl+Alt+F3
)- 修改/etc/fstab文件:
sudo vim /etc/fstab
,直接把刚刚加的那一行注释了 - 重启
reboot
就能进入系统了,重新反复设置几次,就实现了扩容盘搭载在/home目录下。
三、将系统转移到格式化后已挂载的新磁盘
这个其实挺简单的,Jetson官方有脚本。
- 下载脚本及其相关文件
git clone https:
如果git不下来就直接上github下载,我就是终端上没办法git clone下来。
- 进入
rootOnNVMe
文件夹,按顺序执行脚本
./copy-rootfs-ssd.sh
./setup-service.sh
- 重启
sudo reboot
![在这里插入图片描述](https://img-blog.csdnimg.cn/aefb1e4b2b9140fb84c6710a99a8958b.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBASmF5X3rlnKjpgKDmoqY=,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
转移结束。
但是内置的存储模块还是不能格式化!!!
总结
刷机只有第0次和无数次,第一次刷机就因为扩容问题给我搞了4次,行8。
嗯、我把内置存储块格式化了,5刷,记录一下。
加油,科研人。
Reference
- https://blog.csdn.net/a1766855068/article/details/84942745(磁盘管理,很全面)
- https://blog.csdn.net/qq_27565769/article/details/80731154(分区、删除分区、格式化、挂载、卸载)
- https://blog.csdn.net/yhao2014/article/details/44648199(格式化并重新挂载磁盘)
- https://www.jianshu.com/p/045df333042e(用系统自带的disks格式化,并转移系统到新磁盘)
- https://blog.csdn.net/u011932817/article/details/102878605(磁盘分区并挂载到home下,挺全的,但是慎重)
- https://help.ubuntu.com/community/Partitioning/Home/Moving(Ubuntu官方:为/home更换分区)
- https://blog.csdn.net/qq_32595487/article/details/101272587(自救手册)
- https://wenku.baidu.com/view/58c7e1f0f61fb7360b4c6503.html(挂载硬盘错误,开机后无法进入系统)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)