系统:ubuntu14.04

镜像:ubuntu-rootfs.img for aarch64

创建一个文件夹 ubuntu-mount

mkdir ubuntu-mount

将ubuntu-rootfs.img镜像挂载到ubuntu-mount

mount ubuntu-rootfs.img ubuntu-mount

进入ubunt-mount就可以看到文件系统的结构了。

cd ubuntu-mount

安装模拟处理器 qemu,这是一个可以模拟多种cpu构架平台的模拟器,类似于虚拟机。

详细情况可以参考官网网站https://www.qemu.org/

apt-get install qemu

复制关键文件到文件夹,根据自己系统的平台复制一份到虚拟文件系统下。

#this is for 32 bit arm system
cp /usr/bin/qemu-arm-static usr/bin/
#this is for 64 bit arm system
cp /usr/bin/qemu-aarch64-static usr/bin/

下面需要把根目录改变到ubuntu-mount上去,如果直接使用chroot的话,会存在proc已经dev下的文件无法检测到的问题,所以可以直接使用脚本 ch-mount.sh

#!/bin/bash

function mnt() {
echo "MOUNTING"
sudo mount -t proc /proc ${2}proc
sudo mount -t sysfs /sys ${2}sys
sudo mount -o bind /dev ${2}dev sudo chroot ${2}
} function umnt() {
echo "UNMOUNTING"
sudo umount ${2}proc
sudo umount ${2}sys
sudo umount ${2}dev }
if [ "$1" == "-m" ] && [ -n "$2" ] ;
then
mnt $1 $2
elif [ "$1" == "-u" ] && [ -n "$2" ];
then
umnt $1 $2
else
echo ""
echo "Either 1'st, 2'nd or both parameters were missing"
echo ""
echo "1'st parameter can be one of these: -m(mount) OR -u(umount)"
echo "2'nd parameter is the full path of rootfs directory(with trailing '/')"
echo ""
echo "For example: ch-mount -m /media/sdcard/"
echo ""
echo 1st parameter : ${1}
echo 2nd parameter : ${2}
fi

返回上一级目录,直接使用ch-mount.sh改变当前的根目录

./ch-mount.sh -m ubuntu-mount/

这个时候遇到了这个问题,就是挂载的文件系统的运行空间是按照镜像的大小来,所以无法再添加新的内容。由下图可知系统占用已满。

df -h

所以在当时在安装新的软件包的时候遇到以下的错误:

You don’t have enough free space in /var/cache/apt/archives/.

尝试使用 apt-get autocleanapt-get clean都没有作用。

在这里需要重新修改镜像大小,然后重新挂载发现就可以解决问题了。

#退出当前虚拟环境
exit
#将挂载的目录取消挂载,不进行此操作会影响后续操作
./ch-mount -u ubuntu-mount
umount ubuntu-mount

修改镜像大小需要用到工具 qemu-img

apt-get install qemu-kvm

安装成功之后就可以使用qemu-img工具了,执行指令

qemu-img resize ubuntu-rootfs.img +5G
resize2fs -f ubuntu-rootfs.img

修改完大小之后,重新挂载之后检查存储设备的使用情况,发现已经有多余的空间了,接下来就可以对改文件系统进行适当的修改了。

可以自由地安装软件包

参考文献:

https://gnu-linux.org/building-ubuntu-rootfs-for-arm.html

ubuntu文件系统修改( for arm)的更多相关文章

  1. 使用Qemu运行Ubuntu文件系统 —— 搭建SVE学习环境(2)

    开发环境 PC:ubuntu18.04 Qemu:4.1 Kernel:Linux-5.2 概述 由于要学习ARM的SVE技术,但是目前还没有支持SVE指令的板子,所以只能用Qemu来模拟,但是发现Q ...

  2. 使用ramdisk启动ubuntu文件系统

    环境 Qemu 4.1 vexpress-ca9 概述 为了减小linux内核的大小,可以把一些外设驱动编译成内核模块,但是在启动ubuntu的时候,需要读取flash,但是此时flash的驱动模块存 ...

  3. I.MX6 使用Ubuntu文件系统

    /********************************************************************************* * I.MX6 使用Ubuntu文 ...

  4. ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法

    ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法 前几天卸掉了用了好多年的Windows,安装了Ubuntu12.04,就开始各种搭环境.今天装好了MySQ ...

  5. 怎样在 Ubuntu 中修改默认程序

    导读 作为一个新手,你需要知道如何在 Ubuntu 中修改任何默认程序,这也是我今天在这篇指南中所要讲的. 对于我来说,安装 VLC 多媒体播放器是安装完 Ubuntu 16.04 该做的事中最先做的 ...

  6. ubuntu 下修改host文件

    原文地址:http://www.cnblogs.com/kingcat/archive/2012/02/23/2364509.html 有些时候,我们需要让某些域名指向本地,来实现调试,下面介绍下ub ...

  7. 【Ubuntu 16】深入Ubuntu文件系统

    Ubuntu文件系统的设计目的就是把文件有序地组织在一起,提供一个从逻辑上组织文件的文件系统.除了文件的组织外,文件安全也是文件系统的设计要点,所以文件的访问权限是文件系统不可缺少的组成部分 Ubun ...

  8. ubuntu 下修改文件访问权限chmod 777 -R *血的教训!没事别乱开权限!用谁开谁的就行。。。最后不要用这个命令,文件操作全部改用终端

    本文转自: 个人建议 Ubuntu下修改目录权限命令如下:chmod 600 name (只有所有者有读和写的权限)chmod 644 name (所有者有读和写的权限,组用户只有读的权限)chmod ...

  9. ubuntu上修改root密码

    ubuntu上修改root密码 author: headsen chen    2017-10-12  10:49:28 个人原创,转载请注明作者,出处. sudo  passwd 两次输入想设置的r ...

随机推荐

  1. @ModelAttribute 的使用

    @ModelAttribute注解可被应用在 方法 或 方法参数 上. 对方法使用 @ModelAttribute 注解: 注解在方法上的@ModelAttribute说明了方法的作用是用于添加一个或 ...

  2. requets中urlencode的问题

    前言 今天团队群里有师傅问requests怎么设置不解码,这里是语误,其实师傅想说的是,如果设置不编码. 一开始我没懂,然后师傅们解答了这个问题后,我想了会儿懂了. 在一些CTF题目中,可能会碰到这样 ...

  3. 彻底弄懂GMT、UTC、时区和夏令时

    前言 格林威治时间.世界时.祖鲁时间.GMT.UTC.跨时区.夏令时,这些眼花缭乱的时间术语,我们可能都不陌生,但是真正遇到问题,可能又不那么确定,不得不再去查一查,处理完可能过段时间又忘记.今天,我 ...

  4. java集合List

    需求:List集合存储字符串并遍历.List集合的特点: 有序(存储和取出的元素一致),可重复的.package javatest; import java.util.ArrayList;import ...

  5. SpringCloud-Config 配置中心

    概述 分布式系统面临的问题 微服务意味着要将单体应用中的业务拆分成一个个的子服务,这些服务都需要必要的配置信息才能运行,如果有上百个微服务,上百个配置文件,管理起来是非常困难的,这时候,一套集中式的. ...

  6. Java 反射调用方法 - 不跳过安全检查、跳过安全检查和普通方法性能比较测试

    java中反射提供灵活性同时,给运行效率带来了一定影响.写个代码测试一下 package com.xzlf.reflectTest; import java.lang.reflect.Method; ...

  7. IDEA设置导入主题样式皮肤,加入背景图片

    主题下载地址:http://www.riaway.com/theme.php 里面有很多主题,看个人喜好,这里我用的Monokai Sublime Text 3. 导入主题打开IDEA,找到File ...

  8. js 运动函数篇(二) (加速度运动、弹性运动、重力场运动(多方向+碰撞检测+重力加速度+能量损失运动)拖拽运动)层层深入

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS写加速度运动.弹性运动.重力场运 ...

  9. Java阻塞队列四组API介绍

    Java阻塞队列四组API介绍 通过前面几篇文章的学习,我们已经知道了Java中的队列分为阻塞队列和非阻塞队列以及常用的七个阻塞队列.如下图: 本文来源:凯哥Java(kaigejava)讲解Java ...

  10. 2019-05-22 BTC走势分析

    转载于:https://juejin.im/post/5ce4adf5f265da1b8c195ff8