上野家のホームページ
ナーマル,マリン,ココ
[
新規
|
一覧
|
検索
|
最新
|
ヘルプ
]
PC/RaspberryPi/Linuxを動かしてみる/ubuntuをインストール
のソース
資料室
PC
/
RaspberryPi
/
Linuxを動かしてみる
/
ubuntuをインストール
のソース
[
差分
|
バックアップ
|
リロード
]
[ ]
差分
を表示
PC/RaspberryPi/Linuxを動かしてみる/ubuntuをインストール
へ行く。
« Prev
* Ubuntu 16.04LTSをインストール [#q506a605] Raspberry Pi2B,3BがARMv7ベースになったので,ubuntuを動作させられるようだ。~ Raspberry PiのUbuntuはオフィシャルからはリリースされていないが、アンオフィシャルなものは出ているので、Pi3Bにインストールしてみた。 ** 使用するイメージについて [#i24297d2] https://wiki.ubuntu.com/ARM/RaspberryPi でリリースされている。~ ubuntuは%%16.04%%だが,GUIが入っていないserverになる。→ 18.04になっている。 以下は,16.04をインストールしたときのメモ。 Raspberry Pi2: [[ubuntu-16.04.3-preinstalled-server-armhf+raspi2.img.xz>http://cdimage.ubuntu.com/ubuntu/releases/16.04/release/ubuntu-16.04.3-preinstalled-server-armhf+raspi2.img.xz]]~ Raspberry Pi3: [[ubuntu-16.04-preinstalled-server-armhf+raspi3.img.xz>http://www.finnie.org/software/raspberrypi/ubuntu-rpi3/ubuntu-16.04-preinstalled-server-armhf+raspi3.img.xz]]~ ** インストール [#p2ae929e] 通常のRaspberry Pi用OSのイメージをMicroSDカードに書き込むのは,Raspbianのときと同じ。~ Windowsマシンで,.xzファイルのままなら [[Etcher>https://etcher.io/]] 使用して,解凍した.imgファイルなら [[Win32DiskImager>https://sourceforge.net/projects/win32diskimager/]] を使用して,容量が8GB以上のMicro SDカードに書きこむ。 このとき,[[使用するMicroSDカードの相性に注意>/PC/RaspberryPi/SDカードの相性]]する。 64GB,128GBなどの大きな容量のMicroSDカードを使用する場合には, [[Etcher>https://etcher.io/]] で書き込む必要がある。 [[Win32DiskImager>https://ja.osdn.net/projects/sfnet_win32diskimager/]] で書き込んだ場合は,ブート出来ない。~ これは,64GB,128GBのMicroSDカードは大抵exFATでフォーマットされて販売されている。Raspberry Piでは,最初のパーテーションがFAT/FAT32でないとブートローダーがロードできないので,結果,ブート出来ないのが理由。~ MicroSDカードをFAT32でフォーマットし直せば使えるのではあるが, [[SD card Formatter 5.0>https://www.sdcard.org/jp/index.html]] では64GB以上だとFAT32でフォーマット出来なくなってしまっている。~ なので,古い&ref(../Raspbianのインストール/diskformatter2_124.exe,BuffaloのDiskFormatter2);なんかを使ってフォーマット(論理サイズ調整をONにして)すれば,FAT32でフォーマット出来ます。~ あとは,通常通りイメージファイルを書き込めば,64GB,128GBのMicroSDカードでも使用出来る。 ** 有線LANで接続 [#iec84389] 無線LANは最初からは使えないようなので有線LANを使う。~ MicroSDカードをPi3に挿して,有線LANを既存のNetwork(DHCP環境)に接続する。 ubuntuは,デフォルトでSSHログイン出来るようになっているようだ。~ Pi3の電源をOnしてしばらくたったら,別のWindowsマシン等からPuTTYなどのSSHクライアントを使ってログインする。 この時,接続したネットワークのDHCPサーバーにより,Raspberry Piの有線LAN(Ethernet)コネクタにアサインされたIP Addressを知らないと接続できない。IP Addressではなく,ubuntu@ubuntu.localを使用してもリモートログイン出来る。 IP Addressを知る場合は, - Windowsマシンでは以下のようにすれば見つけられる for /l %i in (0,1,255) do ping -w 1 -n 1 192.168.1.%i 終了までしばらく時間がかかる。実行が終わったら, arp -a | find "b8-27" とかすると,Raspberry Piに設定されたIP Addressがわかる。 - Linuxマシンの場合 # arp-scan -l --interface eth0 とかすればわかる。 ログインする時の初期アカウントは, ユーザー名:ubuntu パスワード:ubuntu になっている。 上記でログインすると,パスワードを変更するように促される。好きなパスワードに変更する。~ もう一度ログインし直す。 rootのパスワードを変更する。 $ sudo passwd root ** ブート関連の修正 [#i487f36c] Raspberry Pi用の配布されているubuntu 16.04LTSはシステムのブートにU-Bootを使用している。''しかし,そのままではPi3でブート出来なくなる''ので,その対策をする。 ''/usr/share/flash-kernel/bootscript/bootscr.rpi3''を修正する。 setenv fdt_addr_r 0x02008000 fatload mmc 0:1 ${fdt_addr_r} bcm2710-rpi-3-b.dtb fdt addr ${fdt_addr_r} fdt get value bootargs /chosen bootargs setenv kernel_addr_r 0x01000000 setenv ramdisk_addr_r 0x02100000 fatload mmc 0:1 ${kernel_addr_r} vmlinuz fatload mmc 0:1 ${ramdisk_addr_r} initrd.img setenv initrdsize $filesize bootz ${kernel_addr_r} ${ramdisk_addr_r}:${initrdsize} ${fdt_addr_r} 次にブート関連ファイルの更新を行う # update-initramfs -u -k all ''/boot/firmware/config.txt'' を修正する。 ... kernel=uboot.bin # enable uart (needed for u-boot on RPi3) enable_uart=1 # set extended DT area # device_tree_address=0x100 # device_tree_end=0x8000 device_tree_address=0x02008000 device_tree_end=0x200ff00 # enable i2c dtparam=i2c_arm=on dtparam=spi=on ... ** /etc/apt/sources.listの編集 [#i42990b8] デフォルトのpackageリポジトリは古いため既に無効になっている。 http://ports.ubuntu.com ↓ http://jp.archive.ubuntu.com に全て変更する。 ** オプションPPAをリポジトリ追加する。 [#nddfa331] # add-apt-repository ppa:ubuntu-raspi2/ppa として,PPAリポジトリ(Raspberry Pi用の追加package)を追加する。 オプションPPAの内容~ - libraspberrypi-bin~ VideoCoreユーティリティ(https://github.com/raspberrypi/userland)~ vcgencmd, raspistill・・・ - llibraspberrypi-bin-nonfree~ バイナリのVideoCoreユーティリティ。vcdbg,edidparser - xserver-xorg-video-fbturbo~ Accelerated Xドライバ。 -hello-dkms~ RasPiでのDKMSのサンプル ** Packageの更新 [#h8d6a569] インストールされているubuntuのpackage(PPAも含む)を更新する。 # apt-get update # apt-get upgrade # apt-get dist-upgrade この時,upgrade途中で書き込みエラーとかで失敗する場合は,MicroSDカードの相性や寿命が考えられる。 ** ロケールとタイムゾーンの設定 [#j1516f88] 日本語ロケールとタイムゾーンの設定を行う。 # locale-gen ja_JP.UTF-8 # echo "LANG=ja_JP.UTF-8" | tee /etc/default/locale # dpkg-reconfigure -f noninteractive locales # timedatectl set-timezone Asia/Tokyo # timedatectl status ** キーボードレイアウトの設定 [#e412b31d] SSH等でリモートログインして使用する場合は設定の必要ないが,モニターとキーボードを接続して使用する場合は必要になる。 # localectl set-keymap jp106 # localectl status System Locale: LANG=ja_JP.utf8 VC Keymap: jp106 X11 Layout: jp X11 Model: jp106 X11 Options: terminate:ctrl_alt_bksp ** マシン名の変更 [#x319d542] マシン名をpi3に変更する。 # hostnamectl set-hostname pi3 この後,ホスト名が解決できないとかメッセージが出る場合は,''/etc/hosts''ファイルを修正する。 127.0.0.1 localhost 127.0.1.1 pi3 <-- HOSTNAMEの名前 ** ユーザの追加 [#g84206fd] ユーザを追加する。 例:yuji # adduser yuji /etc/groupファイルを編集して,追加したユーザが参加するグループを片っ端から登録する。~ 編集し終わったら, # grpconv で,変更を反映させる。 ** swapを使用するようにする [#v156bb81] Raspberry Pi用のubuntuでは,swapは有効になっていない。~ swapが必要な場合は,以下の手順でswapを使えるようにする。(GUI環境にはメモリがけっこう必要) # apt-get install dphys-swapfile インストールが完了するとswapが使用されている。 # free で確認できる。 ** 日本語マニュアルをインストール [#wb354772] # apt-get install manpages-ja manpages-ja-dev ** wlanを使用できるようにする [#f72e17b8] ブート時にエラーが出ていて,そのままではwlanが使用できない。 wlanのファームウェアを以下のようにして,ファイルを更新する。~ &ref(brcmfmac43430-sdio.bin); と &ref(brcmfmac43430-sdio.txt);を,/lib/firmware/brcmにコピーする。 # cp brcmfmac43430-sdio.bin /lib/firmware/brcm/brcmfmac43430-sdio.bin # cp brcmfmac43430-sdio.txt /lib/firmware/brcm/brcmfmac43430-sdio.txt wlanに必要なツールが入っていなかったらインストールする。 # apt-get install wireless-tools wpasupplicant /etc/network/interfacesを編集する。eth0,wlan0のエントリを追加して,interfaced.dでロードするのをやめる。 ''/etc/network/interfaces'' : auto eth0 iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet dhcp wireless-power off wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf #source /etc/network/interfaces.d/*.cfg <-- コメント化 /etc/wpa_supplicant/wpa_supplicant.confを以下のように作成する。 ''/etc/wpa_supplicant/wpa_supplicant.conf'' ctrl_interface=/var/run/wpa_supplicant country=JP network={ ssid="access1" key_mgmt=NONE <-- WEPの場合 wep_key0="xxxxxx" wep_tx_keyidx=0 priority=2 <-- 数字が大きい方が優先される } network={ ssid="access2" psk="xxxxxxxxxxxxxx" <-- WAPの場合 priority=1 } ** いくつかのfail対策 [#wcd0d6e3] /etc/modprobe.d/blacklist.confに以下を追加。 blacklist ib_iser install ib_iser /bin/false ** i2cドライバーをロード [#ac2c2441] /boot/firmware/config.txtには, # enable i2c dtparam=i2c_arm=on dtparam=spi=on にセットされている。(i2cやspiをon) なぜかi2c-devモジュールが読み込めてないので,/etc/modulesに追加する。 i2c-dev リブート後モジュールがロードされているか確認。 # lsmod //** NTP サーバーの設定 [#x3c7789b] // /etc/ntp.confを編集する。 // #pool 0.ubuntu.pool.ntp.org iburst // #pool 1.ubuntu.pool.ntp.org iburst // #pool 2.ubuntu.pool.ntp.org iburst // #pool 3.ubuntu.pool.ntp.org iburst // #pool ntp.ubuntu.com // server ntp1.jst.mfeed.ad.jp iburst // server ntp2.jst.mfeed.ad.jp iburst // server ntp3.jst.mfeed.ad.jp iburst // //ntpサーバーを再起動する。 // # systemctl restart ntp // ** GUI環境のセットアップ [#n415891b] Raspberry Pi用のubuntuでは,GUI環境は入っていない。入れたい場合は(上記でPPAのレポジトリをわすれずに), # apt-get install lubuntu-desktop # apt-get install xserver-xorg-video-fbturbo # apt-get install fonts-ipafont fonts-ipaexfont language-pack-ja fcitx-mozc # apt-get install gnome-session-flashback language-pack-gnome-ja でGUI環境をインストールする。軽い? lubuntuにしてみた。サイズが1.8GBで3時間以上かかる。 /etc/X11/xorg.conf を作成する。~ ''/etc/X11/xorg.conf'' Section "Device" Identifier "Raspberry Pi FBDEV" Driver "fbturbo" Option "fbdev" "/dev/fb0" Option "SwapbuffersWait" "true" EndSection ** VideoCoreのインストール [#x48f7c8b] vcgencmd, raspistillなどのツール。 # apt-get install libraspberrypi-bin libraspberrypi-dev /usrにインストールされるいくつかのサードパーティのスクリプトは,/opt/vc/bin/vcgencmdにあると期待してるため,リンクを張っておく。 # ln -s /usr /opt/vc ** 日本語入力mozc(fcitx)の自動起動 [#kae0ae42] fcitx(入力メソッド)がそのままでは自動起動しないので,起動するようにする。 $ cp /usr/share/applications/fcitx.desktop ~/.config/autostart/ ** vncを使えるようにする [#v370a34a] GUIでリモートアクセスするために,VNCサーバーをインストールしておく。 # apt-get install tightvncserver 設定ファイルを作成するため一度vncserverを起動する。 $ vncserver アクセス用のパスワードを設定する。 New 'X' desktop is hostname:1 のように最後の数字がデスクトップ番号になる。 停止するには, $ vncserver -kill :1 とする。 接続用のパスワードを変更するには, $ vncpasswd として変更できる。 *** VNCサーバーからデスクトップを起動するように設定 [#rdd0e544] .vnc/xstartupファイルを編集する。 #!/bin/bash xrdb $HOME/.Xresources lxsession -s LXDE & とかしておく。 *** 自動でvncserverを起動するようにする。 [#i7273acc] /etc/systemd/system/vncserver@.serviceファイルを作成する。~ ''/etc/systemd/system/vncserver@.service'' [Unit] Description=Start TightVNC server at startup After=syslog.target network.target [Service] Type=forking User=[USERNAME] PAMName=login PIDFile=/home/[USERNAME}/.vnc/%H:%i.pid ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x768 :%i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target Unitファイルを読み込ませる。 # systemctl daemon-reload 自動で起動するようにする。 # systemctl enable vncserver@1.service vncserverを起動する。 # systemctl start vncserver@1
« Prev
PC/RaspberryPi/Linuxを動かしてみる/ubuntuをインストール のバックアップ一覧
PC/RaspberryPi/Linuxを動かしてみる/ubuntuをインストール のバックアップソース(No. All)
1: 2018-03-17 (土) 07:56:35
yuji
現: 2020-12-26 (土) 16:08:05
yuji
Attached file: brcmfmac43430-sdio.bin, Attached file: brcmfmac43430-sdio.txt
Counter: 2189, today: 1, yesterday: 0
Copyright©2008 Yuji Ueno All Rights Reserved.
ログイン
ユーザ名:
パスワード:
IDとパスワードを記憶
パスワード紛失
メインメニュー
ホーム
でぶlog
資料室
最新ページ一覧
全ページ一覧
ヘルプ
» 関連ページ
» Wikiソース
» 編集履歴
» バックアップ一覧
» 添付ファイル一覧
フォーラム
お問い合わせ