More Related Content
Similar to SONiCインストールしてみた
Similar to SONiCインストールしてみた (20)
SONiCインストールしてみた
- 5. Linux Kernelをbuild
Debian Jessie x64の環境を用意
ソースを落としてきて build (最終的には5時間くらい)
$ git clone https://github.com/Azure/sonic-linux-kernel/
$ cd sonic-linux-kernel/
$ ./build.sh
必要な package は随時インストール
http://tsuchinoko.dmmlabs.com/?p=3237
これで Kernel ができた
- 6. SONiC imageをbuild
SONiC image が依存する initramfs などを build
$ mkdir sonic-buildimage/deps/
$ cp sonic-linux-kernel/*.deb sonic-buildimage/deps/
$ cd sonic-buildimage
$ ./get_deps.sh
SONiC image をbuild (30分くらい)
$ ./build_debian.sh "sonic" "$(perl -e 'print crypt("sonic", "salt"),"¥n"')"
&& ./build_image.sh
$ ls -l acs-generic.bin
-rw-r--r-- 1 watanabe-k watanabe-k 238388488 Mar 30 15:28 acs-generic.bin
これで SONiC image ができた
- 7. インストール
USBメモリに “onie-installer” という名前で image を置く
$ cp acs-generic.bin <USBメモリ>/onie-installer
USBメモリをスイッチに挿すと自動的に install が始まる
ONIE: Starting ONIE Service Discovery
ONIE: Executing installer: file://dev/sdb1/onie-installer
- 9. ログ
ONIE: Starting ONIE Service Discovery
ONIE: Executing installer: file://dev/sdb1/onie-installer
(中略)
Installation finished. No error reported.
(中略)
machine restart
(中略)
Press <DEL> or <F2> to enter setup.
この後、画面が真っ暗に
DELやF2を押しても反応しない
- 13. ONIE install
USBメモリに焼いて
$ dd if=onie-recovery-x86_64-dell_s6000_s1220-r0.iso of=/dev/sdb bs=4096
BIOSメニューでUSBメモリから起動
普通のパソコンと同じ
これで何度でもやりなおせるようになった
- 14. Linux Kernelをbuild (再)
実は Dockerfile で環境提供されてた
https://github.com/Azure/sonic-build-tools/blob/master/sonic-slave/Dockerfile
ソースを落としてきて build (5時間くらい)
$ git clone https://github.com/Azure/sonic-linux-kernel/
$ cd sonic-linux-kernel/
$ ./build.sh
これで Kernel ができた
SONiC image 作るところ・インストールは省略
- 16. 調査
さっき作ったUSBのONIE installerでrescueモードで起動
ONIE-RECOVERY:/ # cat /mnt/onie-boot/grub/grub.cfg
# begin: serial console config
serial --port=0x3f8 --speed=9600 --word=8 --parity=no --stop=1
terminal_input serial
terminal_output serial
Linux の grub でシリアルが 9600baud になってる
⇔ Dell S6000-ON はデフォルト 115200baud でこれを利用
していた
- 17. 文鎮ではなかった
Tera Termの設定見直したら boot してた(///▽///)
sonic@acs:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast
state DOWN group default qlen 1000
link/ether ec:f4:bb:fd:fe:91 brd ff:ff:ff:ff:ff:ff