
2,删除boot启动之后的启动画面,因为vmlinuz-*和initrd-*都在/boot目录下,所有是不可能手动指定内核的路径点;
3,用第一张光盘引导,进入rescue模式;
4,提示当前的系统被挂载在/mnt/sysimage下边,系统会去查找/ect/fstab文件,如果有就会有下边的提示,如果没有会告诉你没有任何分区;
5,使用chroot 来改变当前的 *** 作路径,不然是对内存中的系统 *** 作;
6,建立一个目录/cdrom,将光驱挂载,查找kernel相关的包:
7,强制安装内核包,要加参数force强制安装,不然提示包已经安装;
8,查看/boot目录,多文件了;
9,但是删掉了/boot目录内容的时候也把grub的stage2删掉了,下边就需要安装grub了,如果是安装在mbr中用,路径用/dev/sda,如果是装在分区的superblock中,需要用/dev/sdax,x代表具体的分区。现在就发现多了grub目录了;
10,但是grub目录中并没有grub.conf文件,也就是说系统启动还是无法找到正确的引导文件,就需要编辑配置文件;
11,重启就可以看到grub界面了,系统就可以启动了。
其实楼主的问题很专业,之前我在周立功那边也了解过不少。\x0d\x0a 当用户需要EasyARM-iMX283在开机启动后就运行指定的应用程序或指令时,可以通过vi命令编辑/etc/rc.d/init.d/start_userapp,将要执行的指令添加到里面。若用户有一个hellow的程序放在/home/目录中,那么设置hellow程序开机启动的方法如程序清单 1.1红色部分所示。\x0d\x0a程序清单1.1 用户启动文件\x0d\x0a#!/bin/sh \x0d\x0a#you can add your app start_command three \x0d\x0a/home/hellow \x0d\x0a#start qt command,you can delete it 下面是启动QT界面的指令,若用户不需要启动QT,可以直接删除\x0d\x0aexport TSLIB_PLUGINDIR=/usrb/ts/ \x0d\x0aexport TSLIB_CONFFILE=/etc/ts.conf \x0d\x0aexport TSLIB_TSDEVICE=/dev/input/ts0 \x0d\x0aexport TSLIB_CALIBFILE=/etc/pointercal \x0d\x0aexport QT_QWS_FONTDIR=/usrb/fonts\x0d\x0aexport QWS_MOUSE_PROTO=Tslib:/dev/input/ts0 \x0d\x0a/usr/zhiyuan/zylauncher/start_zylauncher &\x0d\x0a\x0d\x0a如果程序是一个阻塞程序(程序被运行后不会退出或返回),则可能会导致位于其后的指令或程序无法得到执行,并且始终占用串口终端,造成其他程序(比如Shell)无法通过串口终端与用户交互。对于此类应用程序,可以在其后面添加“ &”(注意:是“空格”+“&”符号)让其在后台运行,如下所示:\x0d\x0a/home/hellow &你 ARM 跑的 Linux 是 Fedora 还是 RHEL ?-----------------------
rc.local 是一个脚本,是要被运行才能被运行里面的东西的,这个脚本并不是被内核肯定运行,而是看你的 Linux 启动脚本。
这个 rc.local 是桌面 Linux 的习惯,但也不是所有 Linux 都会去执行的习惯。你的 ARM 系统如果不是完全和 Linux 系统相同的启动脚本,那么这里运行肯定有问题。
与其你来问 rc.local 里面的东西为什么不被运行,我觉得还不如去看看你的 Linux 系统启动脚本到底是如何启动的。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)