- Windows側に、VNC接続するためのVNC Viewerをインストール
サーバとビューワがセットになった「VNC」も選択できますがサーバ用無償ライセンスの取得など面倒なので
ビューワのみダウンロードします。
名前とE-Mailを記入すれば、後は「I have read and accept these terms and conditions」にチェックしてダウンロード出来ます。
初期バージョン(display:1)と違ってdisplay:0に接続しますので、HDMI端子に接続したモニターと同じ画面が見えます。
図のようにIPアドレスのみでも、[192.168.10.11:0]あるいは明示的にポートを指定した[192.168.10.11 :5900]でも構いません。
[Connect] を押すとパスワードを聞いてきますのでraspberryを入力します。
ここで「ウォーキングDVAP」が可能なパソコンレス環境
を参考に「dvapnode」「ircddbgateway」および「WiFi」を着けた場合はその設定を済ませてください。
(チューニングをしないで使用するにはここまでで完成です。)
=MEMO=
VNCやsshを使用するときIPアドレスがDHCPであるため、ルータなどでも確認できない場合は、直接モニターを着けて起動し
「LXTerminal」を立ち上げて次のコマンドで確認してください。(スマートフォン向けアプリ「Fing」などもとても便利です。)
$ ifconfig
- Windowsからsshでアクセス(専用ディスプレイ不要)
PuTTYのオリジナルサイトや
PuTTYの日本語化サイトから
「PuTTY」をダウンロードしてインストールします。
日本語の場合は「puttyjp.exe」を起動します。
使い方は簡単です。Raspberryの[IPアドレス]を指定し、ポートが[22]であることと[ssh]が選択されていることを確認したら
[開く]をクリックします。初めての時のみ暗号化キーの承認を求められますので「OK」します。
login as:pi
pi@192.168.10.11's password:raspberry
- ユーザーpi のパスワードの変更
$ passwd
Changing password for pi.
(current) UNIX password:paspberry
Enter new UNIX password:new password
Retype new UNIX password:new password
passwd: password updated successfully
- VNC使用時のパスワードを設定
$ sudo x11vnc -storepasswd /home/pi/.x11vnc/passwd
Enter VNC password:new password
Verify password:new password
Write password to /home/pi/.x11vnc/passwd? [y]/n y
Password written to: /home/pi/.x11vnc/passwd
- 不要なデーモンをOFFする
ここで、デーモンとして登録されているもののリストを表示したりupdate-rc.d 同様ON/OFFするためのコマンドをインストールします。
(RasのようなDebian系には rcconf や sysv-rc-confもあります。)
$ sudo apt-get install chkconfig
$ sudo chkconfig cron off
$ sudo chkconfig dbus off # *1
$ sudo chkconfig triggerhappy off
$ sudo chkconfig pulseaudio off
$ sudo chkconfig plymouth off
$ sudo chkconfig motd off
$ sudo chkconfig lightdm off # *1
$ sudo chkconfig rmnologin off
ファイルごと(*1は後で必須)削除してしまいたい場合はsudo apt-get remove [service name]を使用してください。
(2012/11版参照)
autoremoveは残骸ファイルをまとめて削除してくれます。
- デーモン(daemon)dvapnoded と ircddbgatewayd をサービス登録し自動立ち上げ
新規ファイルを作成します。(ファイル名:dvap)
$ sudo nano /etc/init.d/dvap
この内容をコピー&ペーストしてください。
GNU nano 2.2.6 File: /etc/init.d/dvap
#!/bin/bash
### BEGIN INIT INFO
#Provides: dvap
#Required-Start: $syslog
#Required-Stop: $syslog
#Default-Start: 2 3 4 5
#Default-Stop: 0 1 6
#Short-Description: DVAP
#Description:
#
### END INIT INFO
#!/bin/sh
# /etc/init.d/dvap
#
case "$1" in
start)
/usr/local/bin/dvapnoded -daemon
/usr/local/bin/ircddbgatewayd -daemon
echo "Starting DVAP... "
;;
stop)
pkill ircddbgatewayd
pkill dvapnoded
echo "DVAP has been stopped "
;;
restart)
pkill ircddbgatewayd
pkill dvapnoded
/usr/local/bin/dvapnoded -daemon
/usr/local/bin/ircddbgatewayd -daemon
echo "Restarting DVAP... "
;;
*)
echo "Usage: sudo service dvap {start|stop|restart}"
exit 1
;;
esac
exit 0
[Ctrl]+[o]で書き出し、ファイル名の確認で[Enter]して、[Ctrl]+[x]で終了します。
$ sudo chmod a+x /etc/init.d/dvap
このコマンドでファイル「dvap」の属性を「Excutable」立ち上げ可に変更します。
そして、立ち上げ時自動起動するように設定します。
$ sudo chkconfig dvap on
$ chkconfig --list
alsa-utils 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
bootlogs 0:off 1:on 2:on 3:on 4:on 5:on 6:off
bootmisc.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
checkfs.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
checkroot-bootclean.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
checkroot.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
console-setup 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
cron 0:off 1:off 2:off 3:off 4:off 5:off 6:off
dbus 0:off 1:off 2:off 3:off 4:off 5:off 6:off
dphys-swapfile 0:off 1:off 2:on 3:on 4:on 5:on 6:off
dvap 0:off 1:off 2:on 3:on 4:on 5:on 6:off
fake-hwclock 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
hostname.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
hwclock.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off
ifplugd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
kbd 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
keyboard-setup 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
killprocs 0:off 1:on 2:off 3:off 4:off 5:off 6:off
kmod 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
lightdm 0:off 1:off 2:off 3:off 4:off 5:off 6:off
motd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
mountall-bootclean.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
mountall.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
mountdevsubfs.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
mountkernfs.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
mountnfs-bootclean.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
mountnfs.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
mtab.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
networking 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
nfs-common 0:off 1:off 2:off 3:off 4:off 5:off 6:off
ntp 0:off 1:off 2:off 3:off 4:off 5:off 6:off
plymouth 0:off 1:off 2:off 3:off 4:off 5:off 6:off
plymouth-log 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
procps 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
pulseaudio 0:off 1:off 2:off 3:off 4:off 5:off 6:off
rc.local 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rcS 0:off 1:off 2:off 3:off 4:off 5:off 6:off
rmnologin 0:off 1:off 2:off 3:off 4:off 5:off 6:off
rpcbind 0:off 1:off 2:off 3:off 4:off 5:off 6:off
rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sendsigs 0:off 1:off 2:off 3:off 4:off 5:off 6:off
ssh 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sudo 0:off 1:off 2:on 3:on 4:on 5:on 6:off
triggerhappy 0:off 1:off 2:off 3:off 4:off 5:off 6:off
udev 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
udev-mtab 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
umountfs 0:off 1:off 2:off 3:off 4:off 5:off 6:off
umountnfs.sh 0:off 1:off 2:off 3:off 4:off 5:off 6:off
umountroot 0:off 1:off 2:off 3:off 4:off 5:off 6:off
unattended-upgrades 0:off 1:off 2:off 3:off 4:off 5:off 6:off
urandom 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
x11-common 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on
x11vncserver 0:off 1:off 2:off 3:off 4:off 5:off 6:off
これで、起動時自動的に立ち上げられるデーモン(サービス)として登録できましたので[sudo reboot]します。
再度sshで接続、ユーザーpiとパスワードでログインし、次のコマンドで起動しているか確認します。
(その前にうまくいっていれば接続アナウンスが聞こえるかも知れません)
$ ps -e
PID TTY TIME CMD
1 ? 00:00:01 init
2 ? 00:00:00 kthreadd
3 ? 00:00:00 ksoftirqd/0
中略
1858 ? 00:00:16 dvapnoded
1876 ? 00:00:16 ircddbgatewayd
1879 ? 00:00:00 startpar
1903 ? 00:00:00 sshd
中略
2070 pts/1 00:00:01 bash
2080 pts/1 00:00:00 ps
次のコマンドも試してみましょう。
$ sudo service dvap stop
DVAP has been stopped
$ sudo service dvap start
Starting DVAP...
$ sudo service dvap restart
Restarting DVAP...
- リストアップされないゲートウェイを加える (これ以降は必須では有りません)
$ sudo nano /usr/local/etc/ DPlus_Hosts.txt
GNU nano 2.2.6 File: /usr/local/etc/DPlus_Hosts.txt
# DPlus_Hosts.txt
#
# The format of this file is the name of the reflector/gateway followed by its
# IP address.
#
JR3WZ jr3wz.dyndns.org
REF001 109.69.104.195
REF002 129.93.2.132
REF003 203.194.18.195
省略
- DVAP Node と ircDDB Gateway の設定をバックアップしよう
Windows で VNC を使用してセットアップしているという前提で簡単なコピー&ペーストでバックアップやリストアをしてみます。
(DVAP Node の設定ファイルを例にします。)
$ sudo nano /etc/dvapnode
GNU nano 2.2.6 File: /etc/dvapnode
callsign=JE3HCZ B
gateway=JE3HCZ G
mode=1
ack=1
restriction=0
rpt1Validation=0
gatewayAddress=127.0.0.1
gatewayPort=20010
localAddress=127.0.0.1
localPort=20011
dvapPort=/dev/ttyUSB0
dvapFrequency=144550000
dvapPower=10
dvapSquelch=-100
dvapOffset=0
timeout=180
ackTime=500
beaconTime=600
beaconText=DVAP Node JE3HCZ
beaconVoice=1
language=0
logging=0
windowX=62
windowY=0
Windows用のエディターとは少し使い勝手が違います。もし間違ったときは[Ctrl]+[x]のあと[n]
を押せば保存せず終了できますのでやり直してください。
・まず内容全体をマウスドラッグで選択してください。
・[Ctrl]+[c]でコピーします。(マウスは使ってはいけません。)
・Windows側のエディターに[Ctrl]+[v]または右ボタンクリック「貼り付け」を選んで貼り付けます。
・リストア(今回、設定をバックアップから一挙に戻すような場合)の時はWindows側では慣れた方法で
コピーします。
・注意: Linux のエディター側でペーストするときは、まずマウスではなくキーボードで貼り付けたい位置
(この場合先頭)にカーソルを移動します。
・そしてマウスの右ボタンをクリックするとクリックだけで貼り付きます。
/etc/ircddbgatewayも同様、また/etc/network/intarfaces(ネットワーク設定)に関するファイルなどもバックアップしておくととても便利です。
- 時計に関する改良をして遊んでみましょう。
「ntp」の登録をOff しましょう。
$ sudo chkconfig ntp off
$ chkconfig --list ntp
ntp 0:off 1:off 2:off 3:off 4:off 5:off 6:off
ntpをアンインストールし、代わりにchronyをインストールします。
$ sudo apt-get remove ntp
$ sudo apt-get install chrony
$ sudo nano /etc/chrony/chrony.conf
標準のntpサーバはコメントアウトし、新たに日本のサーバを加える。
GNU nano 2.2.6 File: /etc/chrony/chrony.conf
省略
#server 0.debian.pool.ntp.org offline minpoll 8
#server 1.debian.pool.ntp.org offline minpoll 8
#server 2.debian.pool.ntp.org offline minpoll 8
#server 3.debian.pool.ntp.org offline minpoll 8
server ntp.jst.mfeed.ad.jp
server ntp.nict.jp
server ntp.ring.gr.jp
省略
さらに、Raspberry Pi にはRTC(リアル・タイム・クロック)が有りませんので起動時にntpdateを使用して時計を設定します。
$ sudo apt-get install ntpdate
これを起動時実行スクリプトに追加します。
$ sudo nano /etc/rc.local
次の一行を加えます。
GNU nano 2.2.6 File: /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
ntpdate jp.pool.ntp.org
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
exit 0
- 時計を日本時間に変更します。
$ sudo dpkg-reconfigure tzdata
矢印キーとTabキーを使って移動し、[Enter]します。
Package configuration
Please select the geographic area in which you live. Subsequent
configuretion questions will narrow this down by presenting a list of
citeis, representing the time zones in which they are located.
Geogpaphic area:
Africa
America
Antarctica
Australia
Arctic
Asia
Atlantic
Europe
Indian
Pacific
SystemV
US
Etc
<Ok> <Cancel>
- VNCモードとターミナルモードを切り替えられるようにする
整理すると、chkconfigリストにおいて
VNCモードでは ②dvap が off、dbus と lightdm が onです。
ターミナルモードでは ①dvap が on、dbus と lightdm が off。
①の場合、dbusとlightdmがOffであるため自動立ち上げのアプリircddbgatewayとdvapnodeは起動せず、ircddbgatewayd(daemon)とdvapnoded(daemon)が起動します。
②の場合は逆となります。
そこで私の場合、次のようなファイルを作成しました。
$ sudo nano vncmode
GNU nano 2.2.6 File:vncmode
echo "Setting up VNC Mode..."
sudo chkconfig dbus on
sudo chkconfig lightdm on
sudo chkconfig dvap off
echo "Reboot for GUI Applications..."
sudo reboot
$ sudo nano termmode
GNU nano 2.2.6 File:termmode
echo "Setting up Terminal Mode..."
sudo chkconfig lightdm off
sudo chkconfig dbus off
sudo chkconfig dvap on
echo "Reboot for Terminal Mode"
sudo reboot
二つのファイルを実行可能に変更します。
$ sudo chmod a+x vncmode
$ sudo chmod a+x termmode
ファイル名の前に「ドット」「スラッシュ」を着けると実行できます。
$ ./vncmode
$ ./termmode
- 最後に管理用コマンド2つ
$ pstree
init─┬─chronyd
├─dhclient
├─dvapnoded───{dvapnoded}
├─7*[getty]
├─3*[ifplugd]
├─ircddbgatewayd───8*[{ircddbgatewayd}]
├─rsyslogd───3*[{rsyslogd}]
├─sshd───sshd───sshd───bash───pstree
├─udevd───2*[udevd]
└─wpa_supplicant
今までチューニングした努力の結果が表示されます。下図はグラフィックモードです。
init─┬─chronyd
├─console-kit-dae───64*[{console-kit-dae}]
├─2*[dbus-daemon]
├─dbus-launch
├─7*[getty]
├─gvfs-afc-volume───{gvfs-afc-volume}
├─gvfs-gdu-volume
├─gvfs-gphoto2-vo
├─gvfsd
├─3*[ifplugd]
├─lightdm─┬─Xorg
│ ├─lightdm─┬─lxsession─┬─lxpanel
│ │ │ ├─openbox
│ │ │ ├─pcmanfm
│ │ │ ├─ssh-agent
│ │ │ └─{lxsession}
│ │ └─{lightdm}
│ └─2*[{lightdm}]
├─lxpolkit───{lxpolkit}
├─menu-cached
├─polkitd───{polkitd}
├─pulseaudio───{pulseaudio}
├─rsyslogd───3*[{rsyslogd}]
├─rtkit-daemon───2*[{rtkit-daemon}]
├─sshd───sshd───sshd───bash───pstree
├─sudo───ircddbgateway───9*[{ircddbgateway}]
├─sudo───dvapnode───2*[{dvapnode}]
├─udevd───2*[udevd]
├─udisks-daemon─┬─udisks-daemon
│ └─{udisks-daemon}
├─wpa_cli
├─wpa_supplicant
└─x11vncserver───sudo───x11vnc
$ sudo apt-get install htop
$ htop
同様にチューニングを施したターミナルモードでは htop 自体のCPU負荷が5%有るにもかかわらず、平均的なところで14%前後となっています。
パソコンにLinuxをインストールしてではちょっと・・・と思っておられた方もSDカードを2枚焼いておいて挑戦してみてください。