首页 > 系统相关 >嵌入式Linux系统磁盘空间问题

嵌入式Linux系统磁盘空间问题

时间:2024-10-12 23:18:23浏览次数:9  
标签:创建 gdisk dev 嵌入式 磁盘空间 mmcblk1p5 Linux 挂载 我们

问题描述:

我的系统板是stm32mp157,属于mpu,搭载了嵌入式Linux系统,我将系统通过STM32CubeProgrammer烧录在了一张32g的sd卡上,可是系统烧录完毕启动板子后,使用命令df -h查看发现磁盘空间只有1个多g,如下图

上网查看,问题可能出在我的系统是由buildroot进行构建的,某些嵌入式系统的构建工具(如 Yocto 或 Buildroot)可能只使用最小的必要空间来创建镜像,因此设备启动后,未使用的存储空间仍保持空闲,除非进行手动分区或调整。 

问题解决:

我们进入根文件系统之后,可以在/dev/下看到有很多 mmcblkXpY 的设备文件,这里如果大家把 sd 卡也插到卡槽中,可以看到 mmcblk1 代表的是 sd 卡,mmcblk2 代表的是 emmc,我们根据自己启动的方式选择相应的序号。 

ls /dev/mmcblk*

(我这里多了个/dev/mmcblk1p5,原因是我的系统已经挂载了未分配的那部分空间产生的,后续我们将会创建这个分区) 

 然后输入

gdisk /dev/mmcblkX

X 代表 1 sd 卡,2 emmc。(这里作者使用的是sd卡,所以为 mmcblk1) 

我们首先保存重新使用gdisk一下,不然后面会报错(原因在于gdisk 有 bug,第一次打开不会加载剩余空间)

我们输入w,2 次选择都选择 y,就重新加载了gdisk了

重新加载完后我这里再次输入

gdisk /dev/mmcblkX

下面我们输入 n 创建一个分区,一路回车即可,创建好后输入 p  

可以看到我们创建的分区已经生成了 ,然后 w 保存,重启开发板。

重启完成后,可以看到/dev 下生成了一个 mmcblkXpY你刚刚创建的编号的一个设备文件,这就说明我们完成了分区表的创建。 

 

下面我们需要格式化这个分区,格式为 ext4。mkfs.ext4 /dev/mmcblkXpY,Y 为你刚刚创建的编号  

mkfs.ext4 /dev/mmcblk1p5

 格式化完成后,我们挂载到 root 目录下(这里挂载到一个空目录下即可)

mount /dev/mmcblk1p5 /root/

然后输入 df -h 就可以看到挂载完成了。这样就创建好了我们新的分区目录,就可以将我们想要拷贝的内容存放到这里了。

 

挂载完成后,我们还可以配置自动挂载,这样我们只要没有重新烧录系统,就可以开机自动挂载了 

首先使用 vi 打开/etc/fstab 

 

可以看到这里有自动挂载 rootfs 的代码,我们按照上面这个代码,将 root 换成我们自己的设备文件.我这里是/dev/mmcblk1p5,然后上面的代码挂载点为/,我们这里就不能用/了,不然会导致两个点都在用/,就是共用 rootfs,没有实现我们扩容的效果,我这里推荐大家使用/root,因为启动系统就进入了,其他的就都一样了,示例: /dev/mmcblk1p5 /root auto rw 0 1 

然后 reboot 重启,重启完成 df -h,发现挂载成功就可以了 

标签:创建,gdisk,dev,嵌入式,磁盘空间,mmcblk1p5,Linux,挂载,我们
From: https://blog.csdn.net/m0_73406058/article/details/142891015

相关文章

  • Linux下安装搜狗输入法
    Linux下中文输入法很多人说Linux下的难以输入中文,这里介绍一个X11下的安装Sogou输入法的方案sogou输入法Linux版,只支持Fcitx+X11,所以需要给Fcitx5卸载,并且进入X11桌面环境安装sogou输入法sudoaptremovefcitx5-*sudoaptinstallfcitxsudoaptinstallqtbase5-devsudo......
  • 第105天:权限提升-Linux系统&Docker挂载&Rsync未授权&Sudo-CVE&Polkit-CVE
    演示案例Linux-Rsync未授权访问覆盖-本地Linux-Docker组用户挂载目录-本地Linux-Sudo(CVE-2021-3156)-本地Linux-Polkit(CVE-2021-4034)-本地Rsync(未授权访问)Rsync是linux下一款数据备份工具,默认开启873端口https://vulhub.org/#/environments/rsync/common/借助Linux默认......
  • 第104天:权限提升-Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
    知识点总结#知识点:1、Linux提权-定时任务2、Linux提权-环境变量3、Linux提权-权限配置不当4、Linux提权-数据库自动化#系列内容:内核,数据库,第三方服务,SUID&GUID,定时任务,环境变量,SUDO,权限不当等脏牛漏洞(CVE-2016-5195)DirtyPipe(CVE-2022-0847)SUDO(CVE-2021-3156)Polki......
  • 第103天:权限提升-Linux系统&辅助项目&脏牛&Dirty&内核漏洞&SUID&GUID
    知识点梳理#知识点:1、Linux提权辅助项目-探针&漏扫2、Linux提权-配置SUID&内核CVE#系列内容:内核,数据库,第三方服务,SUID&GUID,定时任务,环境变量,SUDO,权限不当等脏牛漏洞(CVE-2016-5195)DirtyPipe(CVE-2022-0847)SUDO(CVE-2021-3156)Polkit(CVE-2021-4034)案例演示Linux-辅......
  • 《Linux从小白到高手》综合应用篇:详解Linux系统调优之内存优化
    本篇介绍Linux服务器系统内存调优。内存是影响Linux性能的主要因素之一,内存资源的充足与否直接影响应用系统的使用性能。内存调优的主要目标是合理分配和利用内存资源,减少内存浪费,提高内存利用率,从而提升系统整体性能。1.内存相关重要命令及参数(不同版本略有区别,大家注意):......
  • 【应急响应+Linux】常见的rootkit隐藏手段:前言
    原文首发在:奇安信攻防社区https://forum.butian.net/share/3796本文主要针对黑灰产相关的蠕木僵毒等恶意软件在Linux上常用的rootkit手段做一些总结,以及详细分析常见应急响应中遇到的进程、文件隐藏手段的原理以及排查和恢复方法;前言本文主要针对黑灰产、以及蠕木僵毒等恶意软......
  • 【应急响应+Linux】常见的rootkit隐藏手段:通过用户层劫持加载器/连接器隐藏进程pld(用
    原理linux在进程启动后,和windows加载dll一样会按照一定的顺序加载动态链接库,相关顺序如下:加载环境变量LD_PRELOAD指定的动态库加载文件/etc/ld.so.preload指定的动态库搜索环境变量LD_LIBRARY_PATH指定的动态库搜索路径搜索路径/lib64下的动态库文件攻击者常见使用的劫......
  • 【应急响应+Linux】常见的rootkit隐藏手段:通过劫持shell环境,实现文件、进程名隐藏等操
    原理修改或构造/etc/profile.d/下sh文件,劫持环境变量,从而实现覆盖常见的命令,如:ps、ls、lsof等;实现:1、配置环境变量shell脚本:重新登录用户之后;或者使用命令source/etc/profile更新配置,使生效;2、根目录下存在的myshell.sh文件被隐藏:执行ls命令效果:排查方法:使用strace......
  • 【应急响应+Linux】常见的rootkit隐藏手段:通过挂载/proc/pid实现pid隐藏
    原理ps、netstat是遍历/proc来显示pid的原理,通过隐藏相关/proc/pid文件夹来实现pid隐藏实现运行如下命令,将pid对应文件夹挂载到隐藏目录上面mount-obind/home/.hidden/proc/9212现象:如下图,使用root权限调用netstat发现PID和Programname都是空:排查方法1、ca......
  • openEuler、Linux操作系统常见操作-(6)如何登录Linux
    如何登录Linux·Linux登陆方式主要有如下两种: 。本地登陆   。一个典型的Linux系统将运行六个虚拟控制台和一个图形控制台,openEuler目前暂未支持图形化界面;·可以通过Ctrl+Alt+F[1-6]在6个虚拟控制台之间进行切换。远程登录。默认情况下openEuler支持......