Не загружается RootFS

Добрый день.

Даже не знаю, с какой стороны подойти к проблеме что-то совсем тривиальное не могу найти решение :

Плата с процессором AT91SAM9263 (ARM9), ядро загружается по tftp (uboot) , rootfs монтируется по NFS.

Лог загрузки :

U-Boot> bootm
## Booting kernel from Legacy Image at 22000000 ...
Image Name: linux-2.6
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1500808 Bytes = 1.4 MB
Load Address: 20008000
Entry Point: 20008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux................................................................................................ done, booting the kernel.
//-------------------------------//
cut
//-------------------------------//
tc-pcf8563 0-0051: setting system clock to 2010-08-16 18:48:52 UTC (1281984532)
IP-Config: Complete:
device=eth0, addr=192.168.1.100, mask=255.255.255.0, gw=192.168.1.1,
host=192.168.1.100, domain=, nis-domain=(none),
bootserver=192.168.1.110, rootserver=192.168.1.110, rootpath=
Looking up port of RPC 100003/2 on 192.168.1.110
eth0: link up (100/Full)
Looking up port of RPC 100005/1 on 192.168.1.110
VFS: Mounted root (nfs filesystem) on device 0:12.
Freeing init memory: 120K
INIT: version 2.88 booting

OpenRC 0.6.1 is starting up Gentoo Linux (armv5tejl)

Press I to enter interactive boot mode

* Mounting /proc ...
[ ok ]
* Caching service dependencies ...
/lib/rc/sh/gendepends.sh: line 716: command: not found
[ ok ]
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found
/lib/rc/sh/runscript.sh: line 252: command: not found

В какую сторону смотреть?

Смотреть на 716-ю строку

Смотреть на 716-ю строку /lib/rc/sh/gendepends.sh и 252-ю /lib/rc/sh/runscript.sh
КО

Покажите хотя бы sed -n

Покажите хотя бы

sed -n '716p' /lib/rc/sh/gendepends.sh

и

sed -n '252p' /lib/rc/sh/runscript.sh

Я Gentoo & Funtoo

Сточки в логе это концы

Сточки в логе это концы файлов.

Цитата:
linuxworld rootfs # sed -n '716p' lib/rc/sh/gendepends.sh
linuxworld rootfs #

Файл gendepends.sh состоит из 92 строк, в него включены файлы

# Copyright (c) 2007-2009 Roy Marples
# All rights reserved. Released under the 2-clause BSD license.

. /etc/init.d/functions.sh
. /lib/rc/sh/rc-functions.sh

Цитата:
linuxworld rootfs # sed -n '252p' lib/rc/sh/runscript.sh
done
linuxworld rootfs #

Т.е. у меня ощущение что дело не в скриптах, а в том с какими командами они запускаются.

может вопрос и дурацкий но в

может вопрос и дурацкий но в скриптах пути полностью прописаны?

Если путей не было, то ошибка

Если путей не было, то ошибка была бы другая, явно было бы сказано что не может найти.

Загрузку можно прервать и выйти в консоль, работают утилиты, запускается nano, а скрипты начальной загрузки не работают.

Цитата:

192 / # cd /etc/init.d
192 init.d # rc-status
Runlevel: default
udev-postmount
[ started ]
netmount
[ started ]
local
[ stopped ]
Dynamic Runlevel: hotplugged
Dynamic Runlevel: needed
udev-mount
[ started ]
Dynamic Runlevel: manual

192 init.d # ./net.eth0
Usage: net.eth0 [options] stop | start | restart | describe | zap

Options: [dDsvl:ZChqv]
-d, --debug set xtrace when running the script
-Z, --dry-run show what would be done
-s, --ifstarted only run commands when started
-D, --nodeps ignore dependencies
-l, --lockfd fd of the exclusive lock from rc
-h, --help Display this help output
-C, --nocolor Disable color output
-v, --verbose Run verbosely
-q, --quiet Run quietly

192 init.d # ./net.eth0 -d -v start
+ _conf_d=/etc/init.d/../conf.d
+ _c=net
+ [ -n net -a net != net.eth0 ]
+ [ -e /etc/init.d/../conf.d/net.default ]
+ [ -e /etc/init.d/../conf.d/net ]
+ . /etc/init.d/../conf.d/net
+ modules=busybox
+ config_eth0=192.168.1.100/24
+ fallback_eth0=192.168.0.77 netmask 255.255.255.0
+ fallback_route_eth0=default via 192.168.1.1
+ unset _c
+ [ -e /etc/init.d/../conf.d/net.eth0.default ]
+ [ -e /etc/init.d/../conf.d/net.eth0 ]
+ unset _conf_d
+ [ -e /etc/rc.conf ]
+ . /etc/rc.conf
+ rc_interactive=YES
+ rc_shell=/sbin/sulogin
+ rc_depend_strict=YES
+ rc_hotplug=*
+ rc_logger=YES
+ rc_start_wait=100
+ rc_crashed_stop=NO
+ unicode=NO
+ net_fs_list=afs cifs coda davfs fuse fuse.sshfs gfs glusterfs lustre ncpfs nfs nfs4 ocfs2 shfs smbfs
+ rc_tty_number=12
+ [ -n ]
+ . /etc/init.d/net.eth0
+ MODULESDIR=/lib/rc/net
+ MODULESLIST=/lib/rc/init.d/nettree
+ _config_vars=config routes
+ [ -z ]
+ IN_BACKGROUND=NO
+ description=Configures network interfaces.
+ __IFS=

+ unset _d
+ unset _f
+ [ -n start ]
+ [ start = depend ]
+ [ describe = start ]
+ [ start = start ]
+ command -v start
/lib/rc/sh/runscript.sh: line 252: command: not found
+ [ = start ]
+ [ start = start -o start = stop ]
+ shift
+ continue 2
+ [ -n ]
192 init.d #

а при такой архитектуре что в

а при такой архитектуре что в fstab?

Ничего, все монтируется

Ничего, все монтируется раньше.

Цитата:
# /etc/fstab: static file system information.
#
# noatime turns off atimes for increased performance (atimes normally aren't
# needed); notail increases performance of ReiserFS (at the expense of storage
# efficiency). It's safe to drop the noatime options if you want and to
# switch between notail / tail freely.
#
# The root filesystem should have a pass number of either 0 or 1.
# All other filesystems should have a pass number of 0 or greater than 1.
#
# See the manpage fstab(5) for more information.
#

#

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
#/dev/BOOT /boot ext2 noauto,noatime 1 2
#/dev/ROOT / ext3 noatime 0 1
#192.168.10.1:/home/armdev/rootfs / nfs sync,hard,intr,rw,nolock 0,0
#/dev/SWAP none swap sw 0 0
#/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
#/dev/fd0 /mnt/floppy auto noauto 0 0

busybox! Я собрал две rootfs

busybox!

Я собрал две rootfs : ~arm и arm. Оказалось, что если скопировать /bin из arm в ~arm скрипты волшебным образом начинают работать; но пересобрав busybox с флагом arm я получил другую проблему :

Цитата:
Looking up port of RPC 100003/2 on 192.168.1.110
eth0: link up (100/Full)
Looking up port of RPC 100005/1 on 192.168.1.110
VFS: Mounted root (nfs filesystem) on device 0:12.
Freeing init memory: 120K
Bad inittab entry at line 15
Bad inittab entry at line 21
can't open /dev/si: No such file or directory
can't open /dev/l0: No such file or directory
can't open /dev/l0s: No such file or directory
can't open /dev/l1: No such file or directory
can't open /dev/l2: No such file or directory

Опять опытным путем, нашел, что если пересобрать sys-apps/sysvinit система худо-бедно начинает грузиться :

Цитата:
INIT: version 2.88 booting

OpenRC 0.6.1 is starting up Gentoo Linux (armv5tejl)

Press I to enter interactive boot mode

* Mounting /proc ...
[ ok ]
* Setting system clock using the hardware clock [UTC] ...
modprobe: module 'rtc_cmos' not found
hwclock: can't open '/dev/misc/rtc': No such file or directory
* Failed to set the system clock
[ !! ]
* Autoloaded 0 module(s)
* Checking local filesystems ...
[ ok ]
* Updating /etc/mtab ...
[ ok ]
* Mounting local filesystems ...
[ ok ]
* Setting hostname to localhost ...
[ ok ]
* Configuring kernel parameters ...
[ ok ]
* Creating user login records ...
[ ok ]
* Cleaning /var/run ...
[ ok ]
* Wiping /tmp directory ...
[ ok ]
* Mounting /dev/pts ...
[ ok ]
* Mounting /dev/shm ...
[ ok ]
* Setting terminal encoding [ASCII] ...
[ ok ]
* Setting keyboard mode [ASCII] ...
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
[ ok ]
* Loading key mappings [us] ...
/lib/rc/sh/runscript.sh: line 252: loadkeys: not found
* Error loading key mappings
[ !! ]
* ERROR: keymaps failed to start
* Terminating remaining processes ...
[ ok ]
* Killing remaining processes ...
[ ok ]
* Saving dependency cache ...
[ ok ]
* Remounting remaining filesystems read-only ...
[ ok ]
* Bringing up interface lo
* Caching network module dependencies
* 127.0.0.1/8 ...
[ ok ]
* Adding routes
* 127.0.0.0/8 via 127.0.0.1 ...
[ ok ]
* Mounting USB device filesystem [usbfs] ...
[ ok ]
* Activating swap devices ...
[ ok ]
* ERROR: urandom failed to start
INIT: Entering runlevel: 3
* Setting keyboard mode [ASCII] ...
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
[ ok ]
* Loading key mappings [us] ...
/lib/rc/sh/runscript.sh: line 252: loadkeys: not found
* Error loading key mappings
[ !! ]
* ERROR: keymaps failed to start
* Mounting network filesystems ...
[ ok ]
* ERROR: urandom failed to start
* Starting local ...
[ ok ]
INIT: Id "c4" respawning too fast: disabled for 5 minutes
INIT: Id "c2" respawning too fast: disabled for 5 minutes
INIT: Id "c5" respawning too fast: disabled for 5 minutes
INIT: Id "c3" respawning too fast: disabled for 5 minutes
INIT: Id "s0" respawning too fast: disabled for 5 minutes
INIT: Id "c6" respawning too fast: disabled for 5 minutes
INIT: Id "c1" respawning too fast: disabled for 5 minutes
INIT: no more processes left in this runlevel

Теперь можно ковырять конфигурационные файлы.

solved

Аккуратно запустил все процессы :

Цитата:

* Starting local ...
[ ok ]

This is localhost.unknown_domain (Linux armv5tejl 2.6.32.11) 14:28:02

localhost login:

решение проблемы не знаю. но

решение проблемы не знаю. но есть пару вопросов
1. Возможно ли поставить на такую плату Gentoo Linux?
2. Если да, то где про это почитать?
3. Имеет ли к этому отношение раздел arm в документации по установке?

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".