ubuntu文件系统修改( for arm)
系统: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 autoclean 和 apt-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)的更多相关文章
- 使用Qemu运行Ubuntu文件系统 —— 搭建SVE学习环境(2)
开发环境 PC:ubuntu18.04 Qemu:4.1 Kernel:Linux-5.2 概述 由于要学习ARM的SVE技术,但是目前还没有支持SVE指令的板子,所以只能用Qemu来模拟,但是发现Q ...
- 使用ramdisk启动ubuntu文件系统
环境 Qemu 4.1 vexpress-ca9 概述 为了减小linux内核的大小,可以把一些外设驱动编译成内核模块,但是在启动ubuntu的时候,需要读取flash,但是此时flash的驱动模块存 ...
- I.MX6 使用Ubuntu文件系统
/********************************************************************************* * I.MX6 使用Ubuntu文 ...
- ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法
ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法 前几天卸掉了用了好多年的Windows,安装了Ubuntu12.04,就开始各种搭环境.今天装好了MySQ ...
- 怎样在 Ubuntu 中修改默认程序
导读 作为一个新手,你需要知道如何在 Ubuntu 中修改任何默认程序,这也是我今天在这篇指南中所要讲的. 对于我来说,安装 VLC 多媒体播放器是安装完 Ubuntu 16.04 该做的事中最先做的 ...
- ubuntu 下修改host文件
原文地址:http://www.cnblogs.com/kingcat/archive/2012/02/23/2364509.html 有些时候,我们需要让某些域名指向本地,来实现调试,下面介绍下ub ...
- 【Ubuntu 16】深入Ubuntu文件系统
Ubuntu文件系统的设计目的就是把文件有序地组织在一起,提供一个从逻辑上组织文件的文件系统.除了文件的组织外,文件安全也是文件系统的设计要点,所以文件的访问权限是文件系统不可缺少的组成部分 Ubun ...
- ubuntu 下修改文件访问权限chmod 777 -R *血的教训!没事别乱开权限!用谁开谁的就行。。。最后不要用这个命令,文件操作全部改用终端
本文转自: 个人建议 Ubuntu下修改目录权限命令如下:chmod 600 name (只有所有者有读和写的权限)chmod 644 name (所有者有读和写的权限,组用户只有读的权限)chmod ...
- ubuntu上修改root密码
ubuntu上修改root密码 author: headsen chen 2017-10-12 10:49:28 个人原创,转载请注明作者,出处. sudo passwd 两次输入想设置的r ...
随机推荐
- Multiple Books多账薄
有些公司因管理需要配置多本账薄,比如管理帐和PRC,那么在Epicor 10中如何实现呢? 1创建 new Book: 2 created a map: Financial Management -& ...
- JS Math&Date的方法 (上)
数学对象&时间对象 本篇文章主要介绍Math 和 Date 的常用方法! 一 :Math & Date Math 数学对象 - 处理数学计算和数学类 ...
- mybatis源码配置文件解析之二:解析settings标签
在前边的博客中分析了mybatis解析properties标签,<mybatis源码配置文件解析之一:解析properties标签>.下面来看解析settings标签的过程. 一.概述 在 ...
- [复现]GXY2019
前言 当时GXY的时候在复习中,临时抱拂脚,没时间打比赛.就写了一题./(ㄒoㄒ)/~~ babysqli 当时做了写了笔记. 过滤了or,()其中or可以用大小写绕过,可以用order by盲注 第 ...
- windows下常用快捷指令记忆
快速打开环境变量窗口 sysdm.cpl --系统设置 快速打开远程桌面程序 mstsc ---Microsoft terminal services client 快速打开事件查看器 eventvw ...
- [YII2] 文件上传类
//测试文件上传类 public function actionCreate() { $model = new Lvyou(); $upload_model = new \app\models\Upl ...
- sql注入原理+mysql相关知识点
什么是SQL注入 sql就是经常说的数据库,而sql注入就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.SQL注入是比较常见的网络攻击 ...
- 2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出
有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccc ...
- 设置 cipher suite
https://man.openbsd.org/SSL_CTX_set_cipher_list.3#ECDHE SSL_CTX_set_cipher_list() sets the list of a ...
- [Batch 脚本] 批量生成文件夹
@echo off echo start set time=30000 echo %time% for /l %%i in (1,1, %time%) do ( echo %%i% md " ...