HPC.ru lite - Все форумы
Форум: КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее
Тема: Zaurus 5500 - Как установить pdaXrom на SD карту?

[Ответить]
netvagant [21.09.2008 14:53] Zaurus 5500 - Как установить pdaXrom на SD карту?:
Доброе время суток.

Пытаюсь решить следующую проблему:
Имеется Zaurus 5500, с прошивкой pdaXrom.
Cобственная память 64 метра, в которую умещается только минимальная система под завязку. Хочется получить возможность устанавливать дополнительные программы. Поэтому в SD слот установлена SD карта 2Гб. Так как родной драйвер поддерживает карточки не более гигабайта, он заменен на драйвер mmcsd_2g.o, взятый также с pdaxrom.org. (После этой замены памяти не хватает даже на то, что бы править конфиги).
На карточке созданы две партиции – swap и ext3.

fstab выглядит следующим образом:

/dev/root / jffs2 rw,noatime 1 1
/dev/hda1 /mnt/cf auto noauto,owner,noatime 0 0
/dev/mmcd/disc0/part2 /mnt/card ext3 defaults 0 0
/dev/mmcd/disc0/part1 swap swap defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
proc /proc proc defaults 0 0

При этом cf (CompactFlash) автоматически монтируется при загрузке, а SD – нет, видимо из-за того что драйвер SD выполняется позже чем fstab. (при загрузке пишет, что special device /dev/mmcd/part2 does not exist, и сразу следующей строчкой – SD card manager installed.)

Делаю все вручную после загрузки следующим образом:

Монтирую все, что не смонтировалось при загрузке из fstab:
mount -a
Добавляю swap:
swapon -a

На ext3 партицию копирую bin, lib, sbin, usr, и home, коммандой
cp -P -r /bin /mnt/сard/bin
и так далее.

Перемонтирую /bin на /mnt/сard/bin, соответственно и остальные перечисленные директории:
mount --bind /mnt/сard/bin/ /bin/
и так далее.

Обновляю пути к библиотекам:
ldconfig

Вроде все работает. Проверяю следующим образом – из внутренней памяти стираю /usr/bin/X11R вообще. До всех этих плясок иксы стартовать, разумеется отказываются. После – пожалуйста, хотя они остались только на SD-шке.

Теперь хочется, что-бы все эти действия проделывались автоматически при загрузке.
Как заставить драйвер грузиться до fstab? Пытался в mosules.conf написать:
modprobe sharp_mmcd_m
пишет ошибку при загрузке.

Ладно, пусть пишет ошибки, но делает все в самом конце загрузки. Вроде-бы эту функцию должен исполнять rc.local. Пишу дословно следующее:

#!/bin/sh

swapon -a /dev/mmcd/disc0/part1
mount -a
mount --bind /mnt/card/usr/ /usr/
mount --bind /mnt/card/bin/ /bin/
mount --bind /mnt/card/sbin/ /sbin/
mount --bind /mnt/card/lib/ /lib/
mount --bind /mnt/card/home/ /home/
ldconfig

echo "RC.LOCAL Executed !!!!!!!!!!!!!!!!!!!!!!!!!!"

Эффект нулевой, даже echo не проходит.

Что я делаю не так?

Дмитрий.
[Ответить]