あらためてBeagleBoneBlackにUbuntuをインストールしてみた

TAKEさんのLinuxブログをみてみたら、UbuntuがGUIで起動した、という記事がありました。
自分の方は先日失敗しているので、ちょっとみてみたら、BeagleBoard UbuntuのWikiに8月24日付けで新しいarmhfイメージが上がっていて、BeagleBone Blackについては、

BeagleBone/BeagleBone Black: v3.8.13-bone26 kernel
・Lots of hdmi fixes...

という記載が・・・・(^^;

ということで、BeagleBoard UbuntuのWikiに沿って改めて試してみました。
まず、SDイメージをダウンロードしてきます。これは上記Wikiの中の「Raring 13.04 armhf」の項目の少し下にある Prebuilt image のリンクを辿って入手します。

その後の作業は・・・・面倒なので作業ログをそのまま・・・(^^;

$ md5sum ubuntu-13.04-console-armhf-2013-08-24.tar.xz 
$ tar xJf ubuntu-13.04-console-armhf-2013-08-24.tar.xz 
$ cd ubuntu-13.04-console-armhf-2013-08-24/
$ sudo ./setup_sdcard.sh --probe-mmc

Are you sure? I Don't see [/dev/idontknow], here is what I do see...

fdisk -l:
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
Disk /dev/sdb: 7948 MB, 7948206080 bytes

lsblk:
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0 923.8G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   7.7G  0 part [SWAP]
sdb      8:16   1   7.4G  0 disk 
├─sdb1   8:17   1    64M  0 part 
└─sdb2   8:18   1   7.3G  0 part 

$ sudo ./setup_sdcard.sh --mmc /dev/sdb --uboot bone

I see...
fdisk -l:
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
Disk /dev/sdb: 7948 MB, 7948206080 bytes

lsblk:
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0 923.8G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   7.7G  0 part [SWAP]
sdb      8:16   1   7.4G  0 disk 
├─sdb1   8:17   1    64M  0 part 
└─sdb2   8:18   1   7.3G  0 part 

Are you 100% sure, on selecting [/dev/sdb] (y/n)? 
Debug: image has armv7 multi arch kernel support: v3.11.0-rc6-armv7-x10
Debug: image has bone device tree kernel support: v3.8.13-bone26
Debug: image has omap kernel support: v3.7.10-x13
-----------------------------
info: [conf_boot_startmb] undefined using default value: 1
info: [conf_boot_endmb] undefined using default value: 64
Debug: ARM rootfs: armhf-rootfs-ubuntu-raring.tar
Debug: image has initrd.img:
Debug: image has device tree:

Downloading Device's Bootloader
-----------------------------
2013-09-01 22:13:11 URL:http://rcn-ee.net/deb/tools/latest/bootloader-ng [4877/4877] -> "/tmp/tmp.VKamn8ukc4/dl/bootloader-ng" [1]
2013-09-01 22:13:12 URL:http://rcn-ee.net/deb/tools/am335x_evm/MLO-am335x_evm-v2013.07-r0 [103852/103852] -> "/tmp/tmp.VKamn8ukc4/dl/MLO-am335x_evm-v2013.07-r0" [1]
SPL Bootloader: MLO-am335x_evm-v2013.07-r0
--2013-09-01 22:13:12--  http://rcn-ee.net/deb/tools/am335x_evm/u-boot-am335x_evm-v2013.07-r0.img
rcn-ee.net (rcn-ee.net) をDNSに問いあわせています... 69.163.128.251
rcn-ee.net (rcn-ee.net)|69.163.128.251|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 359124 (351K) 
`/tmp/tmp.VKamn8ukc4/dl/u-boot-am335x_evm-v2013.07-r0.img' に保存中

100%[======================================>] 359,124      509K/s   時間 0.7s  

2013-09-01 22:13:13 (509 KB/s) - `/tmp/tmp.VKamn8ukc4/dl/u-boot-am335x_evm-v2013.07-r0.img' へ保存完了 [359124/359124]

UBOOT Bootloader: u-boot-am335x_evm-v2013.07-r0.img

Unmounting Partitions
-----------------------------
Zeroing out Partition Table
16+0 レコード入力
16+0 レコード出力
16777216 バイト (17 MB) コピーされました、 1.10709 秒、 15.2 MB/秒

Using sfdisk to create partition layout
-----------------------------
Checking that no-one is using this disk right now ...
OK

Disk /dev/sdb: 1021 cylinders, 245 heads, 62 sectors/track

sfdisk: ERROR: sector 0 does not have an msdos signature
 /dev/sdb: unrecognized partition table type
Old situation:
No partitions found
New situation:
Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start   End    MiB    #blocks   Id  System
/dev/sdb1   *     1     64     64      65536    e  W95 FAT16 (LBA)
/dev/sdb2        65   7579   7515    7695360   83  Linux
/dev/sdb3         0      -      0          0    0  Empty
/dev/sdb4         0      -      0          0    0  Empty
Successfully wrote the new partition table

Re-reading the partition table ...

If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
Partition Setup:
-----------------------------

Disk /dev/sdb: 7948 MB, 7948206080 bytes
245 heads, 62 sectors/track, 1021 cylinders, total 15523840 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048      133119       65536    e  W95 FAT16 (LBA)
/dev/sdb2          133120    15523839     7695360   83  Linux
-----------------------------
Formating Boot Partition
-----------------------------
mkfs.vfat 3.0.12 (29 Oct 2011)
Formating rootfs Partition as ext4
-----------------------------
mke2fs 1.42 (29-Nov-2011)
Filesystem label=rootfs
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
481440 inodes, 1923840 blocks
96192 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1971322880
59 block groups
32768 blocks per group, 32768 fragments per group
8160 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information:      
done

Populating Boot Partition
-----------------------------
`/tmp/tmp.VKamn8ukc4/dl/MLO-am335x_evm-v2013.07-r0' -> `/tmp/tmp.VKamn8ukc4/disk/MLO'
`/tmp/tmp.VKamn8ukc4/dl/MLO-am335x_evm-v2013.07-r0' -> `/tmp/tmp.VKamn8ukc4/disk/backup/MLO'
-----------------------------
`/tmp/tmp.VKamn8ukc4/dl/u-boot-am335x_evm-v2013.07-r0.img' -> `/tmp/tmp.VKamn8ukc4/disk/u-boot.img'
`/tmp/tmp.VKamn8ukc4/dl/u-boot-am335x_evm-v2013.07-r0.img' -> `/tmp/tmp.VKamn8ukc4/disk/backup/u-boot.img'
-----------------------------
Copying Kernel image:
`/home/xxx/ダウンロード/ubuntu-13.04-console-armhf-2013-08-24/vmlinuz-3.8.13-bone26' -> `/tmp/tmp.VKamn8ukc4/disk/zImage'
-----------------------------
Copying Kernel initrd/uInitrd:
`/home/xxx/ダウンロード/ubuntu-13.04-console-armhf-2013-08-24/initrd.img-3.8.13-bone26' -> `/tmp/tmp.VKamn8ukc4/disk/initrd.img'
-----------------------------
Copying Kernel uInitrd:
`/home/xxx/ダウンロード/ubuntu-13.04-console-armhf-2013-08-24/uInitrd-3.8.13-bone26' -> `/tmp/tmp.VKamn8ukc4/disk/uInitrd'
-----------------------------
Copying Device Tree Files:
am335x-boneblack.dtb
am335x-bone.dtb
am335x-evm.dtb
am335x-evmsk.dtb
am335x-tester.dtb
omap2420-h4.dtb
omap3-beagle.dtb
omap3-beagle-xm.dtb
omap3-evm.dtb
omap3-tobi.dtb
omap4-panda-a4.dtb
omap4-panda.dtb
omap4-panda-es.dtb
omap4-sdp.dtb
omap4-var-som.dtb
omap5-evm.dtb
-----------------------------
Copying uEnv.txt based boot scripts to Boot Partition
-----------------------------
`/tmp/tmp.VKamn8ukc4/bootscripts/normal.cmd' -> `/tmp/tmp.VKamn8ukc4/disk/uEnv.txt'
-----------------------------
kernel_file=zImage
initrd_file=uInitrd
initrd_high=0xffffffff
fdt_high=0xffffffff

#Video: Uncomment to override:
#kms_force_mode=video=HDMI-A-1:1024x768@60

##BeagleBone Cape Overrides
##Note: On the BeagleBone Black, there is also an uEnv.txt in the eMMC, so if these changes do not seem to be makeing a difference...

##BeagleBone Black:
##Disable HDMI/eMMC
#optargs=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN,BB-BONE-EMMC-2G

console=ttyO0,115200n8

mmcroot=/dev/mmcblk0p2 ro
mmcrootfstype=ext4 rootwait fixrtc

loadkernel=load mmc ${mmcdev}:${mmcpart} 0x80200000 ${kernel_file}
loadinitrd=load mmc ${mmcdev}:${mmcpart} 0x81000000 ${initrd_file}; setenv initrd_size ${filesize}
loadfdt=load mmc ${mmcdev}:${mmcpart} 0x815f0000 /dtbs/${fdtfile}

boot_classic=run loadkernel; run loadinitrd
boot_ftd=run loadkernel; run loadinitrd; run loadfdt

device_args=run expansion_args; run mmcargs
mmcargs=setenv bootargs console=${console} ${optargs} ${kms_force_mode} root=${mmcroot} rootfstype=${mmcrootfstype} ${expansion}

expansion_args=setenv expansion ip=${ip_method}
#Classic Board File Boot:
#uenvcmd=run boot_classic; run device_args; bootz 0x80200000 0x81000000:${initrd_size}
#New Device Tree Boot:
uenvcmd=run boot_ftd; run device_args; bootz 0x80200000 0x81000000:${initrd_size} 0x815f0000

-----------------------------
Debug:
#!/bin/sh
format=1.0
board=am335x_evm

bootloader_location=fatfs_boot
dd_spl_uboot_seek=
dd_spl_uboot_bs=
dd_uboot_seek=
dd_uboot_bs=

conf_bootcmd=bootz
boot_script=uEnv.txt
boot_fstype=fat

serial_tty=ttyO0
loadaddr=0x80200000
initrdaddr=0x81000000
zreladdr=0x80008000
fdtaddr=0x815f0000
fdtfile=

usbnet_mem=

Adding: /opt/boot-scripts/*.sh trigger file, remove [run_boot-scripts] (in boot partition) to disable custom startup scripts...
Debug: Adding Useful scripts from: https://github.com/RobertCNelson/tools
-----------------------------
Cloning into '/tmp/tmp.VKamn8ukc4/disk/tools'...
remote: Counting objects: 1048, done.
remote: Compressing objects: 100% (441/441), done.
remote: Total 1048 (delta 592), reused 1029 (delta 573)
Receiving objects: 100% (1048/1048), 162.87 KiB | 40 KiB/s, done.
Resolving deltas: 100% (592/592), done.
Debug: Adding BeagleBone drivers from: https://github.com/RobertCNelson/bone-drivers
Cloning into '/tmp/tmp.VKamn8ukc4/bone-drivers'...
remote: Counting objects: 67, done.
remote: Compressing objects: 100% (50/50), done.
remote: Total 67 (delta 8), reused 67 (delta 8)
Receiving objects: 100% (67/67), 3.56 MiB | 17 KiB/s, done.
Resolving deltas: 100% (8/8), done.
-----------------------------
Debug: Contents of Boot Partition
-----------------------------
合計 9.0M
drwxr-xr-x  2 root root 2.0K  9月  1 22:14 Docs
drwxr-xr-x  5 root root 2.0K  9月  1 22:14 Drivers
-rwxr-xr-x  1 root root  39K  9月  1 22:14 LICENSE.txt
-rwxr-xr-x  1 root root 102K  9月  1 22:13 MLO
-rwxr-xr-x  1 root root  313  9月  1 22:13 SOC.sh
-rwxr-xr-x  1 root root  110  9月  1 22:14 START.htm
-rwxr-xr-x  1 root root  223  9月  1 22:14 autorun.inf
drwxr-xr-x  2 root root 2.0K  9月  1 22:13 backup
drwxr-xr-x  2 root root 2.0K  9月  1 22:13 debug
drwxr-xr-x  2 root root 2.0K  9月  1 22:13 dtbs
-rwxr-xr-x  1 root root 2.7M  9月  1 22:13 initrd.img
-rwxr-xr-x  1 root root    0  9月  1 22:13 run_boot-scripts
drwxr-xr-x 11 root root 2.0K  9月  1 22:14 tools
-rwxr-xr-x  1 root root 351K  9月  1 22:13 u-boot.img
-rwxr-xr-x  1 root root 1.3K  9月  1 22:13 uEnv.txt
-rwxr-xr-x  1 root root 2.7M  9月  1 22:13 uInitrd
-rwxr-xr-x  1 root root 3.2M  9月  1 22:13 zImage
-----------------------------
Finished populating Boot Partition
-----------------------------
Populating rootfs Partition
Please be patient, this may take a few minutes, as its transfering a lot of data..
-----------------------------
  :
  :
  :
Transfer of data is Complete, now syncing data to disk...
-----------------------------
Finished populating rootfs Partition
-----------------------------
setup_sdcard.sh script complete
-----------------------------
The default user:password for this image:
ubuntu:temppwd
-----------------------------

1行めはダウンロードしたファイルのMD5のチェックサムを確認しています。正しい値はWikiの中に記載があります。4行目はSDカードがどこに刺さっているか確認しています。自分の場合は/dev/sdbに8GBのMicroSDが刺さっています。22行目でカードに書き込みます。本当に進めていいのか39行目で聞いてくるので、よければ y を押します。あとは勝手に進んで行って、最後にデフォルトのユーザー名が「ubuntu」で、パスワードが「temppwd」であることを表示して完了します。

書き込んだSDカードをBeagleBoneBlackに取り付けて、USBシリアルケーブルとACアダプタを取り付け、電源供給するとブートします。正常にブートしたら、一旦シャットダウンし、キーボードとマウスとHDMIディスプレイを接続して再度起動します。起動後、接続したキーボードからログインし、

$ /bin/sh /boot/uboot/tools/ubuntu/small-lxde-desktop.sh

として、デスクトップ環境をインストールします。62MBのアーカイブをダウンロードしてインストールするようで、時間がかかります。15分くらいすると完了し、リブートするよう表示が出るので、リブートさせます。

$ sudo reboot

再起動すると・・・・いきなりグラフィカルログインしている状態で起動しました。前回のような画面の乱れはないのですが・・・・・・・・・・・・・・・・マウスカーソルが表示されません.....orz

右クリックするとメニューが出るので、マウス自体は認識して動作しているのですが、表示だけがされません(泣)

やけになって、再起動して、シリアルコンソールから、

$ sudo apt-get install lxde

として、さらに再起動しても、症状は同じです。・・・・と思ったら、何かの拍子にマウスカーソルが表示されました(謎)。・・・が、再び再起動すると、マウスカーソルは見えなくなります。

どうも、「Preference」→「Monitor Setting」を頑張って選んで、開いたWindowの中にマウスカーソルが入ると、それ以降は表示されるような感じです。

$ sudo apt-get install xrdp

として、リモートデスクトップ接続ができるようにしてみます。接続先を確認するため、BeagleBoneBlackのIPアドレスを確認します。

$ /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr c8:a0:30:ac:41:65  
          inet addr:192.168.1.104  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::caa0:30ff:feac:4165/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:7082 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1272 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:7744883 (7.7 MB)  TX bytes:100110 (100.1 KB)
          Interrupt:56 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:2 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:100 (100.0 B)  TX bytes:100 (100.0 B)

usb0      Link encap:Ethernet  HWaddr 92:81:25:65:2c:bf  
          inet addr:192.168.7.2  Bcast:192.168.7.3  Mask:255.255.255.252
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

・・・ん?usb0 って何でしょう???

ま、それは置いておいて(^^;ホスト側で、

$ rdesktop -u ubuntu 192.168.1.104

として接続してみたら・・・・ばっちり接続できました。マウスカーソルもバッチリです。

Screenshot-rdesktop - 192.168.1.104

画面が狭いので、一旦ログアウトして、

$ rdesktop -u ubuntu -g1280x1024 192.168.1.104

とすると、メニューが出てきません。・・・が、再起動してもう一度トライするとでてきました。一旦ログアウトして、再度接続すると・・・出てきません。1回しかまともに動作しないようです・・・・orz。

うーん、まあ、今日はこんなところで。(^^;

“あらためてBeagleBoneBlackにUbuntuをインストールしてみた” への3件の返信

  1. ビーグルボーンブラックのGUI、手ごわそうですね。

    自分の場合はVNC接続と、そのvncのXの設定を少しいじったような気もします。
    素のmicroHDMIでは接続したことがないです。

    実際のディスプレイにつなぐ場合は、そのディスプレイ自身の設定も絡むのでXの設定が難しくなるのかもしれませんね。
    自分はラズベリーパイをHDMIで実際のディスプレイに一度だけつないだことあるのですが、画面が乱れてわけがわからなかったので、それ以降vncでしかつないだことがないです。

    ビーグルボーンブラックはGUI周りがあまり安定していないようなので、安定を待ったほうがいいかもしれませんね。

  2. TAKEさん、コメントありがとうございます。

    TAKEさんはvncで接続されていたのですね。ちょっと納得しました。(^^;
    BeagleBoneBlackのHDMIは動作が不安定なのですが、動作だけでなく、物理的にUSBとMicroHDMIのコネクタが干渉するのも困りものです。両方同時に挿すとかなりストレスがかかっている感じ。

    BeagleBoneBlackは取り付けもちゃんとできるし、安定すればある意味RasPiよりも使い勝手は良さそう、と思っていたのですがちょっと残念。

    一方で、自分のところではRasPiのHDMIは極めて安定しています。HDMI以外でもRasPiの方がいろんな面でよいですね。
    あまりLinuxやハードウェアになれていない人にどちらか勧めるとしたら、圧倒的にRasPiだと思います。

  3. 私もlxdeを入れてみましたが、やはりマウスカーソルが出ませんでした。
    いろいろ調べているうちに、こちらにたどり着きました。

    調べている間にBBBの方はスクリーンセーバーが起動しており、
    何故かそれを抜けるとマウスカーソルが出ているではないですか!

    理屈はわかりませんが、一度、画面のロック(シャットダウンの隣のアイコン)で
    スクリーンセーバーを起動して、抜ければカーソルが
    復活するようです。

    でも何とかしてほしい・・・

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)