使用龙芯派2代烧写自己制作的内核及文件系统(失败2次,最终成功)

使用龙芯派2代烧写自己制作的内核及文件系统

前期准备:

  • 已经制作好的具有init RAmdisk 选项的linux内核。
  • 使用buildroot工具制作好的文件系统。
  • 将这两部分拷贝到longxnix系统下的/boot路径下,修改/boot/boot.cfg文件中的内容,添加新建的两个选项。
  • 烧写启动流程:先启动ramdisk的内核到系统下,将文件系统解压到硬盘中,再启动到pmon下设置环境变量,
set al1 /dev/fs/ext2@wd0/boot/vmlinuz
set append "console=ttyS0,115200 init=/linuxrc rw root=/dev/sda1 rootfstype=ext2"

实践过程

方法1
  • 启动ramdisk系统,进入暂时存在内存下的文件系统中,在根目录下包含着该文件系统的cpio压缩包:
mount /dev/sda1 /mnt/rootfs
cd /mnt/rootfs
mkdir rootfs
cd rootfs
cp /yxkj_rootfs_test.cpio .
#解压文件系统
cpio -idmv < yxkj_rootfs_test.cpio
  • 到此,文件系统已经解压到了硬盘/dev/sda1下的rootfs目录下,尝试设置启动参数进行试验。
  • 设置参数:
set al /dev/fs/ext2@wd0/boot/vmlinuz
set append "console=ttyS0,115200 init=/linuxrc rw root=/dev/sda1 rootfstype=ext2"
  • 启动失败,机器卡死,
尝试解决:
  • 考虑可能是内核路径设置不对的原因,进行修改。
  • 修改后,内核能够正常启动,文件系统不行,提示
    Kernel panic - not syncing : VFS : Ubable to mount root fs on unknown-block(0,0)
  • 该错误考虑是需要将硬盘进行分区,所以接下来进行龙芯loongnix重新安装并进行存储分区。

龙芯loongnix系统重新安装

  • 使用龙芯官方提供的系统镜像:
    在这里插入图片描述
  • 在Ubuntu虚拟机下执行指令:
#	代表安装盘 iso 镜像文件路径, Y 代表待写入 U 盘设备符
 dd if=loongnix-20190331.iso of=/dev/sdb

在这里插入图片描述
完成后显示如下:
在这里插入图片描述

  • 插上U盘后,重启龙芯派,并没有显示u盘安装选项,重新安装龙芯loongnix系统失败。

硬盘分区后将文件系统写入新分区进行启动尝试

进行硬盘分区:
  • 观察到当前/dev/sda 硬盘设备有16G大小,但是当前只分区了10G作为/dev/sda1,所以开始考虑新建分区/dev/sda2,并在上面保存文件系统进行启动尝试。
fdisk /dev/sda
n(新建盘指令)
p(新建主分区)
2(序号2)
以下默认即可
w(保存退出)

#查看当前磁盘
fdisk -l
设置新分区的文件系统类型
mkfs.ext2 /dev/sda2

#查看修改后的文件系统类型
parted  #显示文件系统命令
print list #输入打印信息命令
在新建分区中写入文件系统
#挂载分区
mount /dev/sda2 /mnt
cd /mnt
#拷贝文件系统压缩包到当前目录下
cp /boot/rootfs.cpio.gz .
gunzip rootfs.cpio.gz
#解压
cpio -idmv < rootfs.cpio
#修改启动参数,重启尝试
cd /boot
vi boot.cfg

titel "YXKJ_TEST"
	kernel (wd0,0)/boot/vmlinuz_yxkj_1104_02
	args console=tty0,ttyS0,115200 init=/linuxrc rw root=/dev/sda2 rootfstype=ext2

#重启
reboot
使用镜像系统启动
titel "YXKJ_TEST"
	kernel (wd0,0)/boot/vmlinuz_yxkj_1104_02
	initrd (wd0,0)/boot/rootfs.cpio.gz
	args console=ttyS0,115200 console=tty0 

搞定

结论:

  • 目前正常启动自己制作的文件系统,就是使用新建分区并且初始化文件系统类型,然后在/boot/boot.cfg文件中添加参数即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值