手順の一部を修正しました。
− 2018年1月9日 takezou
1. ディスクイメージのダウンロード/解凍/SDカードへの書込み(PCにて作業)
・raspbian-stretch-light (by raspberrypi.org) をダウンロード
・#unzip [zipped file name]
・SDカードを挿入する
・#fdisk -l でSDカードのデバイス名を調べておく
・#dd bs=1M if=[unzipped file name] of=/dev/[device name] conv=fsync
(最大限注意!出力先を間違えると大事故に)
(入出力先に外付けHDDを指定しない/外付けHDD等重要なメディアを外してからdd)
・#sync
・SDカードをアンマウントしてから抜く
(注:抜く前にSDカードにアクセスしないこと)
2.SSH用スイッチの作成(PCにて作業)
・SDカードを再度挿入/マウント(新しいファイルシステムでマウントされる)
・#touch [mountpoint]/boot/ssh
(ブートパーティションの下に空のファイル ssh を作る)
(ルートファイルシステムの下のbootディレクトリ [mountpoint]/rootfs/boot/ ではない)
・SDカードをアンマウントしてから抜く
3.本体の起動(RP3B本体にて作業)
・電源ケーブルを抜いておく
・SDカードを挿入
・LANケーブル(DHCPが有効であること)を挿入
・電源ケーブルを挿入
4.ssh接続によるRP3Bの設定(PCにて作業)
4−1.ユーザ整理
【$ssh pi@192.168.xxx.xxx で接続(初期パスワードはraspberry)】
・$su
・#adduser newuser(新ユーザ:パスワードも必要)
・#exit (piをログアウト)
【$ssh newuser@192.168.xxx.xxx で接続しなおす】
・$su
・#userdel -r pi(デフォルトユーザを削除)
・#passwd root(rootログインのため)
・#visudo
4−2.基本設定
⇒
"B20A" も参照のこと
・通信用設定ファイルの編集
@ /etc/dhcpcd.config
(以下、最下行に追加:注:ens4でなくeth0)
--- interface eth0
--- static ip_address=192.168.xxx.xxx/24
--- static routers=192.168.xxx.xxx
--- static domain_name_servers=192.168.xxx.xxx
--- interface wlan0
--- static ip_address=192.168.xxx.xxx/24
--- static routers=192.168.xxx.xxx
--- static domain_name_servers=192.168.xxx.xxx
@ /etc/hostname(ホスト名定義)
@ /etc/ssh/sshd_config(rootログインを許可)
@ /etc/wpa_supplicant/wpa_supplicant.conf(WiFiのSSIDとパスフレーズ:コピーあり)
・ファイアーウォール用ファイルの追加
@ /home/newuser/mysystem/myfirewall を追加(内容は iptables:コピーあり)
@ /etc/systemd/system/myservice.service を追加(スクリプト myfirewall の起動用:コピーあり)
・#systemctl enable myservice.service(オリジナルサービスを systemd にマージ)
・キーボード設定ファイルの編集
@ /etc/default/keyboard
--- XKBMODEL="jp106"
--- XKBLAYOUT="jp"
・#dpkg-reconfigure locales(ロケール追加)
--- en-US UTF-8 と ja-JP UTF-8 を追加する
--- デフォルトはGBのまま
・#timedatectl set-timezone Asia/Tokyo(タイムゾーン変更)
4−3.起動設定ファイルを編集
⇒
"B20A" も参照のこと
@ /boot/config.txt
(以下変更:表示解像度)
--- hdmi_group=1
--- hdmi_mode=4 (720p/60Hz:画素数以下の最大値が良い)
(以下最下行に追加:基板上LED起動OFF)
--- dtparam = act_led_trigger=none,act_led_activelow=on
--- dtparam = pwr_led_trigger=none,pwr_led_activelow=on
@ /boot/cmdline.txt(logo.nologoの追加など表示を調整)
4−4.SDカードの拡張
・#raspi-config
--- Expand Filesystem を実行
4−5.シャットダウン
・#halt -p
5.本体の再起動(RP3B本体にて作業)
・電源ケーブルを一旦抜いて再挿入
このあたりから、RP3B本体を、PC上の debian(stretch) と同じ要領で扱うことができます。
キーボードとHDMIディスプレイを接続し、ローカルで使ってみてください。
(但し、ウインドウマネージャ/ディスプレイマネージャ/デスクトップ環境すべて無し)
(X Window System のみ必要に応じてあとでインストールすると良い)
<アップデート>
・apt update を実行しておく(注意:apt upgrade は行わないこと:安全のため)
<X Window System と gtk のインストール(サーバーコントロールプログラム用)>
・xserver-xorg をインストール
・xinit をインストール
・libgtk-3-0 をインストール(gtkプログラムの実行用)
・libgtk-3-dev をインストール(gtkの実機コンパイル用)
<自動起動の設定>
⇒
"B20A" も参照のこと。
・自動ログイン:/etc/systemd/system/getty@tty1.service.d/autologin.conf など作成、ExecStart で agetty --autologin
・ユーザーアプリケーション:~/.bash_profile に記載(xinitはここに:execだとforkしないので終了はログアウト=自動ログイン)
・X上のプログラムはさらに:~/.xinitrc に記載(/etc/X11/xinit/xinitrc をコピーして標準XTERMセッションを削除)
<サーバーコントロールプログラムのインストール>
⇒ 専用のマニュアルをご利用ください。
⇒
"B20A" も参照のこと。
<エンベデッド向け起動処理/マウント>
⇒ 専用のマニュアルをご利用ください。
⇒
"B20A" も参照のこと。
---付録---
現在使用しているRP3Bのうち1台は、上記 "エンベデッド向けの起動処理とマウント" を行った「サーバーコントローラ」としてではなく、出勤日の昼休みに自動的に YouTube のプレイリストを全画面で再生するなど、PCタイプのままで使用しています。その構成手順もここで簡単に紹介しておきます。
・yt-dlp を wget、これを /usr/local/bin などに入れておく(yt-dlp -U で最新アップデートが可能)
・omxplayer をインストール
・vchiqをvideoグループとする
/etc/udev/rules.d/nn-xx.rules などルールファイルを作成、SUBSYSTEM=="vchiq",GROUP="video",MODE="0660"をセット
・videoグループにユーザを追加する
adduser hoge video
・プレイリスト毎にシェルスクリプトを作成
⇒
"B20A" も参照のこと。
<ショートカット>
p :ポーズと再開([space]も同じ)
> :早送り(< 巻き戻しは効かないかも)
→ :30秒進める
← :30秒戻す
+ :音量アップ
- :音量ダウン
ctrl-c :omxplayerを停止してリストの次へ(2回連打でforループ終了)
---補足---
八王子事業所では、各サーバーラックに1台ずつの「サーバーコントローラ」が設置されています。「サーバーコントローラ」の本体はシングルボードコンピュータ Raspberry Pi 3 Model B (以降RP3B)であり、OSには Raspbian-Stretch-Lite と X Window System がインストールされています。デスクトップ環境/ウインドウマネージャ/ディスプレイマネージャはいずれもインストールされていません。万一動作に不具合が発生した場合は、ハードウエアまたはSDカードの交換(準備してあります)が簡単でお薦めです。このページは再インストールの手順です。
なお、このページの情報は、ページ
"B20A" と一部重複しています。
−---- takezou -----