制作ubuntu rootfs

下载base镜像:

http://cdimage.ubuntu.com/ubuntu-base/releases/16.04.1/release/

解压:

tar -zxf ubuntu-xx-base-amd64.tar.gz -C ./ubuntu-rootfs/

apt-get install qemu-user-static

cp /usr/bin/qemu-amd64-static usr/bin

cp -b /etc/resolv.conf etc/

#!/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 mount -o bind /dev/pts ${2}dev/pts

sudo chroot ${2}

}

function umnt() {

echo "UNMOUNTING"

sudo umount ${2}proc

sudo umount ${2}sys

sudo umount ${2}dev/pts

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

sudo bash ./ch_mount.sh -m ./ubuntu-rootfs

挂载到根文件系统中去

先设置下用户名密码:

useradd -s '/bin/bash' -m -G adm,sudo yourusername

echo "Set password for yourusername:"

passwd yourusername

echo "Set password for root:"

passwd root

设置主机名:

echo 'ubuntu.yourusername' > /etc/hostname

设置自动更新dns

dpkg-reconfigure resolvconf

安装各种常用的包

apt-get install \

language-pack-en-base \

sudo \

ssh \

net-tools \

network-manager \

iputils-ping \

rsyslog \

bash-completion

apt install gcc gdb tmux wget curl vim kmod -y

打包生成镜像

#!/bin/bash

image_name=$1

set -x

rm -rf tmpfs ${image_name}.img ${image_name}.img.tar.gz

dd if=/dev/zero of=${image_name}.img bs=1G count=4

mkfs.ext4 ${image_name}.img

mkdir -p tmpfs

mount ${image_name}.img tmpfs

cp -rfp ./ubuntu-amd64/* ./tmpfs/

umount tmpfs

e2fsck -p -f ${image_name}.img

resize2fs -M ${image_name}.img

tar zcf ${image_name}.img.tar.gz ${image_name}.img

rootfs 制作ubuntu_制作ubuntu rootfs相关推荐

  1. rootfs 制作ubuntu_为n1制作aarcm64/arm64 ubuntu rootfs系统

    安装debootstrap和qemu-user-static:apt install apt-transport-https qemu qemu-user-static binfmt-support ...

  2. rootfs 制作ubuntu_如何构建一个arm64 AArch64的Ubuntu rootfs

    的文章 ,本文将实现如何通过Ubuntu-core在Aarch64上构建最小的Ubuntu文件系统. 1 下载文件创建rootfs文件夹 mkdir ~/rootfs && cd ~/ ...

  3. rootfs 制作ubuntu_Firefly Ubuntu开发入门之(6)制作Ubuntu Rootfs镜像

    本帖最后由 牛头 于 2016-9-29 15:09 编辑 很多朋友希望在拿到Firelfy发布的Ubuntu镜像后,会想自己加驱动或自己编译的内核等等,但做的过程中难免出现各种各样的问题.网上各种教 ...

  4. rootfs 制作ubuntu_【整理】为何要把文件夹形式的rootfs制作成单个rootfs镜像文件...

    [背景] 之前折腾嵌入式linux,有个事情,一直没注意,那就是: 对于rootfs的话,已经有了,已经 制作好了对应的rootfs,已经包含了对应各种文件(bin下面各种工具等等)和文件夹(/bin ...

  5. 使用busybox制作根文件系统(rootfs)

    我们知道一个linux的启动过程,包括BIOS的加电自检POST,拷贝MBR的信息(启动BootLoader),加载内核,挂载根文件安系统这几大步,在嵌入式系统的移植方面我们也要自己动手制作内核映像, ...

  6. rootfs文件系统的制作(二)

    一.根文件系统制作 1. 源码下载 我们选择的版本是busybox-1.22.1.tar.bz2下载路径为: http://busybox.net/downloads/ 2. 解压源码 $ tar   ...

  7. 基于Linux的Buildroot 制作根文件系统(rootfs)

    基于Linux的Buildroot 制作根文件系统(rootfs) 1.需要条件 2.安装交叉编译链 3.下载Buildroot代码包 4.开始buildroot 制作根文件系统 5.配置文件系统 m ...

  8. 制作稳定版本的rootfs

    制作稳定版本的rootfs 因为rk3588在windows下可以使用官方提供的烧写工具RKDevTool.exe,因此我们可以对kernel.uboot.rootfs.userdata等进行分区,分 ...

  9. 定制适用于ARM平台的Ubuntu rootfs(根文件系统)

    0 背景 有一个很厉害的师兄针对我们实验室的需求设计了一块控制板,以beaglebone为基础,由于更改了一些底层的硬件,所以重新定制编译的内核,并预先烧写到了板子的flash中.现在需要安装ubun ...

最新文章

  1. 人生必须知道的十个为什么
  2. 把json对象串转换成map对象
  3. Go 语言编程 — gormigrate GORM 的数据库迁移助手
  4. 双向链表的建立、插入、删除、
  5. Maven的简单使用
  6. C++中有string类,string是一个类不是一种类型,c语言中没有
  7. Linux学习记录-----《快乐的Linux命令行》.
  8. NYOJ 762 第k个互质数(二分 + 容斥)
  9. 用户怒了!红帽公司宣布CentOS 8将停止维护,“免费” RHEL 寿终正寝
  10. uniapp 定时执行_ftp上传,完成ftp定时上传、下载只需3步
  11. PHP MYSQL关键词统计系统_PHP MySQL Order By 关键词
  12. mysql数据自定义随机_Mysql 自定义随机字符串
  13. linux进程map,LInux环境运行mapReduce程序
  14. 用cmd来向mysql导入sql文件
  15. 走在梦的路上 绝不回头
  16. Interpretation of 403 Bounded biharmonic weights
  17. 软件设计原则和方法通俗理解
  18. 【数据分析入门】R语言绘图语句总结
  19. 什么是为AI另辟蹊径的“小”数据?
  20. activex与matlab,基于ActiveX技术的LabVIEW与MATLAB混合编程总结

热门文章

  1. 懒人修仙传ce修改方法_专访|《凡人修仙传》原著作者忘语:“韩老魔”原型是我...
  2. python做系统查人的往来的信息_L01-04:python查询员工信息表练习
  3. Redis缓存持久化:RDB持久化和AOF持久化
  4. tar+openssl加密压缩解压缩
  5. c语言学生管理系统常见问题,关于C语言学生管理系统问题
  6. refs win10_Win10PE版本改为专业工作站版开启refs支持工具
  7. 制作不同方向的三角形(border属性)
  8. mfc多线程编程实例_多线程技术的PLC与PC的通讯方式
  9. html溢出部分纵向滚动,html - 无法滚动到溢出包含的flex项目的顶部
  10. idea war包和jar包区别 以及用maven如何打包