OR-WiFiSERVER-dev — различия между версиями
Setar (обсуждение | вклад) (→Подготовим тулчейн:) |
Setar (обсуждение | вклад) (→Подготовим таргет систему) |
||
Строка 12: | Строка 12: | ||
=Подготовим таргет систему= | =Подготовим таргет систему= | ||
− | + | так собираются пакеты на сервере | |
+ | <source> | ||
emerge-mipsel-softfloat-linux-uclibc -u system | emerge-mipsel-softfloat-linux-uclibc -u system | ||
emerge-mipsel-softfloat-linux-uclibc -av dropbear | emerge-mipsel-softfloat-linux-uclibc -av dropbear | ||
+ | </source> | ||
− | + | сборка ядра | |
− | + | <source> | |
ARCH=mips make menuconfig | ARCH=mips make menuconfig | ||
ARCH=mips CROSS_COMPILE=mipsel-softfloat-linux-uclibc- make | ARCH=mips CROSS_COMPILE=mipsel-softfloat-linux-uclibc- make | ||
+ | </source> | ||
+ | подготовка таргет системы | ||
+ | <source> | ||
rm /usr/mipsel-softfloat-linux-uclibc/etc/make.profile | rm /usr/mipsel-softfloat-linux-uclibc/etc/make.profile | ||
ln -s /usr/portage/profiles/uclibc/mips /usr/mipsel-softfloat-linux-uclibc/etc/make.profile | ln -s /usr/portage/profiles/uclibc/mips /usr/mipsel-softfloat-linux-uclibc/etc/make.profile | ||
Строка 26: | Строка 31: | ||
mkdir /usr/mipsel-softfloat-linux-uclibc/proc | mkdir /usr/mipsel-softfloat-linux-uclibc/proc | ||
mkdir /usr/mipsel-softfloat-linux-uclibc/mnt | mkdir /usr/mipsel-softfloat-linux-uclibc/mnt | ||
− | |||
cd /usr/mipsel-softfloat-linux-uclibc && tar cvzpf - ./bin ./dev ./etc ./lib ./proc ./sbin ./sys-include ./tmp ./usr ./var ./linuxrc | (cd /home/ftp/mips/; cat > root.tgz ) | cd /usr/mipsel-softfloat-linux-uclibc && tar cvzpf - ./bin ./dev ./etc ./lib ./proc ./sbin ./sys-include ./tmp ./usr ./var ./linuxrc | (cd /home/ftp/mips/; cat > root.tgz ) | ||
+ | </source> | ||
− | + | подготовка флешки (indes_size не более 128) | |
+ | <source> | ||
mkfs.ext3 -I 128 /dev/sdd1 | mkfs.ext3 -I 128 /dev/sdd1 | ||
+ | </source> | ||
=подготовка прошивки= | =подготовка прошивки= |
Версия 15:50, 16 октября 2009
пока здесь выкладываю процесс разработки, страница сырая, для собственной памяти разработка ведётся из под gentoo linux
Содержание
Подготовим тулчейн:
<source> emerge -av crossdev crossdev -t mipsel-softfloat-linux-uclibc emerge -av crossdev-wrappers </source>
Подготовим таргет систему
так собираются пакеты на сервере
<source> emerge-mipsel-softfloat-linux-uclibc -u system emerge-mipsel-softfloat-linux-uclibc -av dropbear </source>
сборка ядра <source> ARCH=mips make menuconfig ARCH=mips CROSS_COMPILE=mipsel-softfloat-linux-uclibc- make </source>
подготовка таргет системы <source> rm /usr/mipsel-softfloat-linux-uclibc/etc/make.profile ln -s /usr/portage/profiles/uclibc/mips /usr/mipsel-softfloat-linux-uclibc/etc/make.profile mkdir /usr/mipsel-softfloat-linux-uclibc/dev mkdir /usr/mipsel-softfloat-linux-uclibc/proc mkdir /usr/mipsel-softfloat-linux-uclibc/mnt cd /usr/mipsel-softfloat-linux-uclibc && tar cvzpf - ./bin ./dev ./etc ./lib ./proc ./sbin ./sys-include ./tmp ./usr ./var ./linuxrc | (cd /home/ftp/mips/; cat > root.tgz ) </source>
подготовка флешки (indes_size не более 128) <source> mkfs.ext3 -I 128 /dev/sdd1 </source>
подготовка прошивки
это асусовские процедуры подготовки прошивки:
cd $(TARGETDIR) && $(TOP)/misc/rootprep.sh $(LINUXDIR)/scripts/squashfs/mksquashfs-lzma $(TARGETDIR) $(PLATFORMDIR)/target.cramfs -all-root -noappend -nopad
asustrx -p $* -v $(KERNEL_VER).$(FS_VER) -o $(PLATFORMDIR)/$*-$(RELEASE).trx \ loader/loader.gz $(PLATFORMDIR)/vmlinuz $(PLATFORMDIR)/target.cramfs
asustrx -p $* -v $(KERNEL_VER).$(FS_VER) -o $(PLATFORMDIR)/$*-$(RELEASE).trx \ $(PLATFORMDIR)/vmlinuz $(PLATFORMDIR)/target.cramfs
OFFTOP Исследование роутера
[admin@or-serv mtdblock]$ cat /proc/mtd dev: size erasesize name mtd0: 00040000 00010000 "boot" mtd1: 007b0000 00010000 "linux" mtd2: 0070c000 00010000 "rootfs" mtd3: 00010000 00010000 "nvram" mtd4: 00410000 00010000 "flashfs"
[admin@or-serv tmp]$ dd if=/dev/mtdblock/0 of=boot.img 512+0 records in 512+0 records out [admin@or-serv tmp]$ dd if=/dev/mtdblock/1 of=linux.img 15744+0 records in 15744+0 records out [admin@or-serv tmp]$ dd if=/dev/mtdblock/2 of=rootfs.img 14432+0 records in 14432+0 records out [admin@or-serv tmp]$ dd if=/dev/mtdblock/3 of=nvram.img 128+0 records in 128+0 records out [admin@or-serv tmp]$ dd if=/dev/mtdblock/4 of=flashfs.img 8320+0 records in 8320+0 records out
Настройка на роутере
cd /tmp/mnt/disc0_1/ wget ftp://192.168.150.33/mips/root.tgz tar -xvzpf ./root.tgz mount -t proc none /tmp/mnt/disc0_1/proc mount -o bind /dev /tmp/mnt/disc0_1/dev chroot /tmp/mnt/disc0_1 /bin/bash
- в чруте:
source /etc/profile rc-update add dropbear default passwd ln -s /etc/init.d/net.lo /etc/init.d/net.eth0 nano /etc/conf.d/net config_eth0="192.168.150.243/24" routes_eth0="default via 192.168.150.1" rc-update add net.eth0 default