上野家のホームページ
ナーマル,マリン,ココ
[
新規
|
一覧
|
検索
|
最新
|
ヘルプ
]
PC/RaspberryPi/Linuxを動かしてみる/ubuntuをインストール
をテンプレートにして作成
資料室
PC/RaspberryPi/Linuxを動かしてみる/ubuntuをインストール をテンプレートにして作成
[
差分
|
バックアップ
|
リロード
]
[ ]
開始行:
* Ubuntu 16.04LTSをインストール
Raspberry Pi2B,3BがARMv7ベースになったので,ubuntuを動作...
Raspberry PiのUbuntuはオフィシャルからはリリースされてい...
** 使用するイメージについて
https://wiki.ubuntu.com/ARM/RaspberryPi でリリースされて...
ubuntuは%%16.04%%だが,GUIが入っていないserverになる。→ 1...
以下は,16.04をインストールしたときのメモ。
Raspberry Pi2: [[ubuntu-16.04.3-preinstalled-server-armhf...
Raspberry Pi3: [[ubuntu-16.04-preinstalled-server-armhf+r...
** インストール
通常のRaspberry Pi用OSのイメージをMicroSDカードに書き込む...
Windowsマシンで,.xzファイルのままなら [[Etcher>https://e...
このとき,[[使用するMicroSDカードの相性に注意>/PC/Raspber...
64GB,128GBなどの大きな容量のMicroSDカードを使用する場合...
これは,64GB,128GBのMicroSDカードは大抵exFATでフォーマッ...
MicroSDカードをFAT32でフォーマットし直せば使えるのではあ...
なので,古い&ref(../Raspbianのインストール/diskformatter2...
あとは,通常通りイメージファイルを書き込めば,64GB,128GB...
** 有線LANで接続
無線LANは最初からは使えないようなので有線LANを使う。~
MicroSDカードをPi3に挿して,有線LANを既存のNetwork(DHCP...
ubuntuは,デフォルトでSSHログイン出来るようになっているよ...
Pi3の電源をOnしてしばらくたったら,別のWindowsマシン等か...
この時,接続したネットワークのDHCPサーバーにより,Raspber...
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
** ブート関連の修正
Raspberry Pi用の配布されているubuntu 16.04LTSはシステムの...
''/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} $...
次にブート関連ファイルの更新を行う
# 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の編集
デフォルトのpackageリポジトリは古いため既に無効になってい...
http://ports.ubuntu.com
↓
http://jp.archive.ubuntu.com
に全て変更する。
** オプションPPAをリポジトリ追加する。
# add-apt-repository ppa:ubuntu-raspi2/ppa
として,PPAリポジトリ(Raspberry Pi用の追加package)を追...
オプションPPAの内容~
- libraspberrypi-bin~
VideoCoreユーティリティ(https://github.com/raspberrypi/u...
vcgencmd, raspistill・・・
- llibraspberrypi-bin-nonfree~
バイナリのVideoCoreユーティリティ。vcdbg,edidparser
- xserver-xorg-video-fbturbo~
Accelerated Xドライバ。
-hello-dkms~
RasPiでのDKMSのサンプル
** Packageの更新
インストールされているubuntuのpackage(PPAも含む)を更新...
# apt-get update
# apt-get upgrade
# apt-get dist-upgrade
この時,upgrade途中で書き込みエラーとかで失敗する場合は,...
** ロケールとタイムゾーンの設定
日本語ロケールとタイムゾーンの設定を行う。
# 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
** キーボードレイアウトの設定
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
** マシン名の変更
マシン名をpi3に変更する。
# hostnamectl set-hostname pi3
この後,ホスト名が解決できないとかメッセージが出る場合は...
127.0.0.1 localhost
127.0.1.1 pi3 <-- HOSTNAMEの名前
** ユーザの追加
ユーザを追加する。
例:yuji
# adduser yuji
/etc/groupファイルを編集して,追加したユーザが参加するグ...
編集し終わったら,
# grpconv
で,変更を反映させる。
** swapを使用するようにする
Raspberry Pi用のubuntuでは,swapは有効になっていない。~
swapが必要な場合は,以下の手順でswapを使えるようにする。...
# apt-get install dphys-swapfile
インストールが完了するとswapが使用されている。
# free
で確認できる。
** 日本語マニュアルをインストール
# apt-get install manpages-ja manpages-ja-dev
** wlanを使用できるようにする
ブート時にエラーが出ていて,そのままではwlanが使用できな...
wlanのファームウェアを以下のようにして,ファイルを更新す...
&ref(brcmfmac43430-sdio.bin); と &ref(brcmfmac43430-sdio....
# cp brcmfmac43430-sdio.bin /lib/firmware/brcm/brcmfmac4...
# cp brcmfmac43430-sdio.txt /lib/firmware/brcm/brcmfmac4...
wlanに必要なツールが入っていなかったらインストールする。
# apt-get install wireless-tools wpasupplicant
/etc/network/interfacesを編集する。eth0,wlan0のエントリを...
''/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_key0="xxxxxx"
wep_tx_keyidx=0
priority=2 <-...
}
network={
ssid="access2"
psk="xxxxxxxxxxxxxx" <-...
priority=1
}
** いくつかのfail対策
/etc/modprobe.d/blacklist.confに以下を追加。
blacklist ib_iser
install ib_iser /bin/false
** i2cドライバーをロード
/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環境のセットアップ
Raspberry Pi用のubuntuでは,GUI環境は入っていない。入れた...
# apt-get install lubuntu-desktop
# apt-get install xserver-xorg-video-fbturbo
# apt-get install fonts-ipafont fonts-ipaexfont language...
# apt-get install gnome-session-flashback language-pack-...
でGUI環境をインストールする。軽い? lubuntuにしてみた。サ...
/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のインストール
vcgencmd, raspistillなどのツール。
# apt-get install libraspberrypi-bin libraspberrypi-dev
/usrにインストールされるいくつかのサードパーティのスクリ...
# ln -s /usr /opt/vc
** 日本語入力mozc(fcitx)の自動起動
fcitx(入力メソッド)がそのままでは自動起動しないので,起...
$ cp /usr/share/applications/fcitx.desktop ~/.config/au...
** vncを使えるようにする
GUIでリモートアクセスするために,VNCサーバーをインストー...
# apt-get install tightvncserver
設定ファイルを作成するため一度vncserverを起動する。
$ vncserver
アクセス用のパスワードを設定する。
New 'X' desktop is hostname:1
のように最後の数字がデスクトップ番号になる。
停止するには,
$ vncserver -kill :1
とする。
接続用のパスワードを変更するには,
$ vncpasswd
として変更できる。
*** VNCサーバーからデスクトップを起動するように設定
.vnc/xstartupファイルを編集する。
#!/bin/bash
xrdb $HOME/.Xresources
lxsession -s LXDE &
とかしておく。
*** 自動でvncserverを起動するようにする。
/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...
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x76...
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
終了行:
* Ubuntu 16.04LTSをインストール
Raspberry Pi2B,3BがARMv7ベースになったので,ubuntuを動作...
Raspberry PiのUbuntuはオフィシャルからはリリースされてい...
** 使用するイメージについて
https://wiki.ubuntu.com/ARM/RaspberryPi でリリースされて...
ubuntuは%%16.04%%だが,GUIが入っていないserverになる。→ 1...
以下は,16.04をインストールしたときのメモ。
Raspberry Pi2: [[ubuntu-16.04.3-preinstalled-server-armhf...
Raspberry Pi3: [[ubuntu-16.04-preinstalled-server-armhf+r...
** インストール
通常のRaspberry Pi用OSのイメージをMicroSDカードに書き込む...
Windowsマシンで,.xzファイルのままなら [[Etcher>https://e...
このとき,[[使用するMicroSDカードの相性に注意>/PC/Raspber...
64GB,128GBなどの大きな容量のMicroSDカードを使用する場合...
これは,64GB,128GBのMicroSDカードは大抵exFATでフォーマッ...
MicroSDカードをFAT32でフォーマットし直せば使えるのではあ...
なので,古い&ref(../Raspbianのインストール/diskformatter2...
あとは,通常通りイメージファイルを書き込めば,64GB,128GB...
** 有線LANで接続
無線LANは最初からは使えないようなので有線LANを使う。~
MicroSDカードをPi3に挿して,有線LANを既存のNetwork(DHCP...
ubuntuは,デフォルトでSSHログイン出来るようになっているよ...
Pi3の電源をOnしてしばらくたったら,別のWindowsマシン等か...
この時,接続したネットワークのDHCPサーバーにより,Raspber...
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
** ブート関連の修正
Raspberry Pi用の配布されているubuntu 16.04LTSはシステムの...
''/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} $...
次にブート関連ファイルの更新を行う
# 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の編集
デフォルトのpackageリポジトリは古いため既に無効になってい...
http://ports.ubuntu.com
↓
http://jp.archive.ubuntu.com
に全て変更する。
** オプションPPAをリポジトリ追加する。
# add-apt-repository ppa:ubuntu-raspi2/ppa
として,PPAリポジトリ(Raspberry Pi用の追加package)を追...
オプションPPAの内容~
- libraspberrypi-bin~
VideoCoreユーティリティ(https://github.com/raspberrypi/u...
vcgencmd, raspistill・・・
- llibraspberrypi-bin-nonfree~
バイナリのVideoCoreユーティリティ。vcdbg,edidparser
- xserver-xorg-video-fbturbo~
Accelerated Xドライバ。
-hello-dkms~
RasPiでのDKMSのサンプル
** Packageの更新
インストールされているubuntuのpackage(PPAも含む)を更新...
# apt-get update
# apt-get upgrade
# apt-get dist-upgrade
この時,upgrade途中で書き込みエラーとかで失敗する場合は,...
** ロケールとタイムゾーンの設定
日本語ロケールとタイムゾーンの設定を行う。
# 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
** キーボードレイアウトの設定
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
** マシン名の変更
マシン名をpi3に変更する。
# hostnamectl set-hostname pi3
この後,ホスト名が解決できないとかメッセージが出る場合は...
127.0.0.1 localhost
127.0.1.1 pi3 <-- HOSTNAMEの名前
** ユーザの追加
ユーザを追加する。
例:yuji
# adduser yuji
/etc/groupファイルを編集して,追加したユーザが参加するグ...
編集し終わったら,
# grpconv
で,変更を反映させる。
** swapを使用するようにする
Raspberry Pi用のubuntuでは,swapは有効になっていない。~
swapが必要な場合は,以下の手順でswapを使えるようにする。...
# apt-get install dphys-swapfile
インストールが完了するとswapが使用されている。
# free
で確認できる。
** 日本語マニュアルをインストール
# apt-get install manpages-ja manpages-ja-dev
** wlanを使用できるようにする
ブート時にエラーが出ていて,そのままではwlanが使用できな...
wlanのファームウェアを以下のようにして,ファイルを更新す...
&ref(brcmfmac43430-sdio.bin); と &ref(brcmfmac43430-sdio....
# cp brcmfmac43430-sdio.bin /lib/firmware/brcm/brcmfmac4...
# cp brcmfmac43430-sdio.txt /lib/firmware/brcm/brcmfmac4...
wlanに必要なツールが入っていなかったらインストールする。
# apt-get install wireless-tools wpasupplicant
/etc/network/interfacesを編集する。eth0,wlan0のエントリを...
''/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_key0="xxxxxx"
wep_tx_keyidx=0
priority=2 <-...
}
network={
ssid="access2"
psk="xxxxxxxxxxxxxx" <-...
priority=1
}
** いくつかのfail対策
/etc/modprobe.d/blacklist.confに以下を追加。
blacklist ib_iser
install ib_iser /bin/false
** i2cドライバーをロード
/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環境のセットアップ
Raspberry Pi用のubuntuでは,GUI環境は入っていない。入れた...
# apt-get install lubuntu-desktop
# apt-get install xserver-xorg-video-fbturbo
# apt-get install fonts-ipafont fonts-ipaexfont language...
# apt-get install gnome-session-flashback language-pack-...
でGUI環境をインストールする。軽い? lubuntuにしてみた。サ...
/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のインストール
vcgencmd, raspistillなどのツール。
# apt-get install libraspberrypi-bin libraspberrypi-dev
/usrにインストールされるいくつかのサードパーティのスクリ...
# ln -s /usr /opt/vc
** 日本語入力mozc(fcitx)の自動起動
fcitx(入力メソッド)がそのままでは自動起動しないので,起...
$ cp /usr/share/applications/fcitx.desktop ~/.config/au...
** vncを使えるようにする
GUIでリモートアクセスするために,VNCサーバーをインストー...
# apt-get install tightvncserver
設定ファイルを作成するため一度vncserverを起動する。
$ vncserver
アクセス用のパスワードを設定する。
New 'X' desktop is hostname:1
のように最後の数字がデスクトップ番号になる。
停止するには,
$ vncserver -kill :1
とする。
接続用のパスワードを変更するには,
$ vncpasswd
として変更できる。
*** VNCサーバーからデスクトップを起動するように設定
.vnc/xstartupファイルを編集する。
#!/bin/bash
xrdb $HOME/.Xresources
lxsession -s LXDE &
とかしておく。
*** 自動でvncserverを起動するようにする。
/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...
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x76...
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
ページ名:
Counter: 0, today: 0, yesterday: 0
Copyright©2008 Yuji Ueno All Rights Reserved.
ログイン
ユーザ名:
パスワード:
IDとパスワードを記憶
パスワード紛失
メインメニュー
ホーム
でぶlog
資料室
最新ページ一覧
全ページ一覧
ヘルプ
フォーラム
お問い合わせ