概要
Raspbianが、Stretch(Debian 9)ベースになり、パッケージレポジトリのxrdpは 0.9.1ベースになりました。
それによって、テキストのコピペなど簡単にできるようになりましたね。しかも、apt install xrdp
するだけ。
それだけの説明だと、つまらないので、pulseaudio
(デフォルトパッケージから外されましたが..)を使った、リモート経由で音も聞けるようにビルドしたファイルを用意したので、それの使い方も書きます。
#(追記:2017-8-25) TinkerBoardでも同じファイルを使って、できました。手順の2.と3.を参考に。
- => ラズパイのYoutube再生で、Windowsから音が出るよ
♪♪~けものはいても、のけものはいない~♪♪
https://www.youtube.com/watch?v=xkMdLcB_vNU
環境
- Raspberry Pi: 2 model B
- Raspbian:
2017-08-16-raspbian-stretch
- Windows 7 (64bit)の Remote Desktop Connection/リモートデスクトップ接続を使用。
手順
-
初期設定
- RaspbianイメージをmicroSDに焼く。(おすすめツール Etcher)
- sshを使う場合、bootパーティションに、
ssh
というファイル名で空ファイル作成。 - 起動。
- ターミナル起動
- パッケージ更新・再起動:
sudo apt update && sudo apt upgrade -y && sudo reboot
- その他設定(お好みで。または設定終了後、リモートデスクトップ上から)
- キーボードの設定
メニュー > 設定 > キーボードとマウス - タイムゾーン
sudo dpkg-reconfigure tzdata - 日本語関係(フォント,入力)
sudo apt install -y fonts-ipafont fonts-ipaexfont fonts-takao ibus-mozc
- ロケール
sudo dpkg-reconfigure locales
# ja_JP.UTF-8にする - ユーザパスワード変更:
passwd
- 再起動
- Mozc入力設定(101キーボードなど)
メニュー>設定 > Mozcの設定
キー設定の選択 > [編集] を押したら、入力キーをクリックして、ソート。Hankaku/Zenkaku
をCtrl+Space
とかに変更する
- キーボードの設定
-
xrdp関連のパッケージインストール
sudo apt install -y xorgxrdp xrdp
-
(お好みで)pulseaudio経由で、リモートで音も鳴らす場合は、コレもする。
- xrdpを終了させるので、リモートデスクトップ上で実行しないこと。 (sshなどでログインして行おう)
## Pulseaudioをインストール sudo apt install pulseaudio --install-suggests -y # 設定書き換え # /etc/pulse/default.pa の最後に2行追加 module-xrdp-sink.soとmodule-xrdp-source.so grep module-xrdp-sink.so /etc/pulse/default.pa || sudo sed -i -e '$amodule-xrdp-sink.so' /etc/pulse/default.pa grep module-xrdp-source.so /etc/pulse/default.pa ||sudo sed -i -e '$amodule-xrdp-source.so' /etc/pulse/default.pa # start-pulseaudio-x11 を自動起動させる ## For RPi f=~/.config/lxsession/LXDE-pi/autostart ; if [ -e $f ]; then grep 'start-pulseaudio-x11' $f > /dev/null || sed -i -e '$a@start-pulseaudio-x11' $f; fi ## For Tinker Board f=~/.config/lxsession/LXDE/autostart ; if [ -e $f ]; then grep 'start-pulseaudio-x11' $f > /dev/null || sed -i -e '$a@start-pulseaudio-x11' $f; fi ## pulseaudioに対応したファイルをダウンロード wget https://github.com/mt08xx/files/raw/master/xrdp-audio_armhf-20170821-1.tbz tar xf xrdp-audio_armhf-20170821-1.tbz cd xrdp-audio_armhf/ #ファイル確認 ls -l # モジュールをコピー sudo cp -v *.so /usr/lib/pulse-10.0/modules/ # ここのxrdpをインストール # sudo dpkg -i ./xrdp_0.9.1-9_armhf.deb # サービス・プロセス停止 sudo systemctl stop xrdp xrdp-sesman sudo killall -9 xrdp-chansrv sudo killall -9 xrdp-sesman sudo killall -9 xrdp-sessvc # debからファイルを抽出して、上書きコピー dpkg -x xrdp_0.9.1-9_armhf.deb ./ext sudo cp -r ext/usr/{lib,bin,sbin} /usr rm -rfv ./ext # 再起動 sync && sleep 5 && sudo reboot
-
Windowsでリモートデスクトップ接続を起動
おまけ
-
再起動後、ターミナルを開いて、音を再生。
aplay /usr/share/sounds/alsa/Front_Center.wav
鳴ったかな? -
Chromium開いて、Youtubeとか、見てみよう。
-
xrdp-audio_armhf-20170821-1.tbz
の中身配布ファイルpi@raspberrypi:~/xrdp-audio_armhf $ ls -l total 432 -rwxr-xr-x 1 pi pi 23952 Aug 21 20:03 module-xrdp-sink.so -rwxr-xr-x 1 pi pi 19496 Aug 21 20:03 module-xrdp-source.so -rw-r--r-- 1 pi pi 393574 Aug 21 20:04 xrdp_0.9.1-9_armhf.deb pi@raspberrypi:~/xrdp-audio_armhf $
ビルドメモ
-
Debianのソースからビルドを使用
-
xrdpのビルドのconfigureのオプションに
--enable-mp3lame
と--enable-pixman
を追加。 -
pulseaudioのconfigure間で実行させて、config.hを生成したら、CTRL-Cして、module-xrdp-{sink,source}.so をビルド。
-
手順
# ソース取得できるように設定 # /etc/apt/sources.list の #deb-src の#をはずして、apt update sudo bash -c "sed -i -e 's/#deb-src/deb-src/' /etc/apt/sources.list && apt update" # ワークフォルダ mkdir ~/work && cd ~/work #xrdp のビルドに必要なパッケージ取得 sudo apt-get build-dep -y xrdp pulseaudio && sudo apt install -y libmp3lame-dev # ソース取得 apt-get source xrdp pulseaudio #xrdp ### xrdpのソースフォルダへ移動 cd xrdp-0.9.1 # debian/rules を編集 : --enable-mp3lame --enable-pixman を configureに追加 sed -i -e 's@--enable-ipv6 \\@--enable-ipv6 --enable-mp3lame --enable-pixman \\@' debian/rules # xrdpビルド開始 dpkg-buildpackage -us -uc # => workに xrdp_0.9.1-9_armhf.deb ができる #module-xrdp-sink.so とmodule-xrdp-source.soのビルド ### pulseaudio の config.h cd ~/work/pulseaudio-10.0 # ビルドを開始させる。。が、configureが終わった(config.hが生成された)くらいで、CTRL-Cを押す。 dpkg-buildpackage -us -uc ## モジュールのビルド cd ~/work/xrdp-0.9.1/sesman/chansrv/pulse/ #変更前:PULSE_DIR = /home/lk/pulseaudio-1.1 #変更後:PULSE_DIR = /home/pi/work/pulseaudio-10.0 sed -i -e 's@/home/lk/pulseaudio-1.1@/home/pi/work/pulseaudio-10.0@g' Makefile make # 生成物をworkにコピー cp -v *.so ~/work
xrdpインストールログ
-
メモ
インストールログpi@raspberrypi:~ $ sudo apt install -y xrdp xorgxrdp Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: ssl-cert x11-apps x11-session-utils xbitmaps xfonts-75dpi xfonts-base xfonts-scalable xorg xorg-docs-core Suggested packages: openssl-blacklist xorg-docs x11-xfs-utils guacamole The following NEW packages will be installed: ssl-cert x11-apps x11-session-utils xbitmaps xfonts-75dpi xfonts-base xfonts-scalable xorg xorg-docs-core xorgxrdp xrdp 0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded. Need to get 10.8 MB of archives. After this operation, 17.1 MB of additional disk space will be used. Get:1 http://mirrordirector.raspbian.org/raspbian stretch/main armhf ssl-cert all 1.0.39 [20.8 kB] Get:2 http://mirrordirector.raspbian.org/raspbian stretch/main armhf x11-apps armhf 7.7+6 [544 kB] Get:3 http://mirrordirector.raspbian.org/raspbian stretch/main armhf x11-session-utils armhf 7.7+2 [61.4 kB] Get:4 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xbitmaps all 1.1.1-2 [32.1 kB] Get:5 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xfonts-75dpi all 1:1.0.4+nmu1 [3,367 kB] Get:6 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xfonts-base all 1:1.0.4+nmu1 [5,911 kB] Get:7 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xfonts-scalable all 1:1.0.3-1.1 [304 kB] Get:8 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xorg-docs-core all 1:1.7.1-1 [83.8 kB] Get:9 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xorg armhf 1:7.7+19 [38.4 kB] Get:10 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xorgxrdp armhf 0.9.1-9 [73.1 kB] Get:11 http://mirrordirector.raspbian.org/raspbian stretch/main armhf xrdp armhf 0.9.1-9 [402 kB] Fetched 10.8 MB in 17s (606 kB/s) Preconfiguring packages ... Selecting previously unselected package ssl-cert. (Reading database ... 122654 files and directories currently installed.) Preparing to unpack .../00-ssl-cert_1.0.39_all.deb ... Unpacking ssl-cert (1.0.39) ... Selecting previously unselected package x11-apps. Preparing to unpack .../01-x11-apps_7.7+6_armhf.deb ... Unpacking x11-apps (7.7+6) ... Selecting previously unselected package x11-session-utils. Preparing to unpack .../02-x11-session-utils_7.7+2_armhf.deb ... Unpacking x11-session-utils (7.7+2) ... Selecting previously unselected package xbitmaps. Preparing to unpack .../03-xbitmaps_1.1.1-2_all.deb ... Unpacking xbitmaps (1.1.1-2) ... Selecting previously unselected package xfonts-75dpi. Preparing to unpack .../04-xfonts-75dpi_1%3a1.0.4+nmu1_all.deb ... Unpacking xfonts-75dpi (1:1.0.4+nmu1) ... Selecting previously unselected package xfonts-base. Preparing to unpack .../05-xfonts-base_1%3a1.0.4+nmu1_all.deb ... Unpacking xfonts-base (1:1.0.4+nmu1) ... Selecting previously unselected package xfonts-scalable. Preparing to unpack .../06-xfonts-scalable_1%3a1.0.3-1.1_all.deb ... Unpacking xfonts-scalable (1:1.0.3-1.1) ... Selecting previously unselected package xorg-docs-core. Preparing to unpack .../07-xorg-docs-core_1%3a1.7.1-1_all.deb ... Unpacking xorg-docs-core (1:1.7.1-1) ... Selecting previously unselected package xorg. Preparing to unpack .../08-xorg_1%3a7.7+19_armhf.deb ... Unpacking xorg (1:7.7+19) ... Selecting previously unselected package xorgxrdp. Preparing to unpack .../09-xorgxrdp_0.9.1-9_armhf.deb ... Unpacking xorgxrdp (0.9.1-9) ... Selecting previously unselected package xrdp. Preparing to unpack .../10-xrdp_0.9.1-9_armhf.deb ... Unpacking xrdp (0.9.1-9) ... Setting up x11-session-utils (7.7+2) ... Setting up xbitmaps (1.1.1-2) ... Setting up ssl-cert (1.0.39) ... Setting up xfonts-75dpi (1:1.0.4+nmu1) ... Processing triggers for libc-bin (2.24-11+deb9u1) ... Setting up xrdp (0.9.1-9) ... Generating 2048 bit rsa key... ssl_gen_key_xrdp1 ok saving to /etc/xrdp/rsakeys.ini Created symlink /etc/systemd/system/multi-user.target.wants/xrdp-sesman.service → /lib/systemd/system/xrdp-sesman.service. Created symlink /etc/systemd/system/multi-user.target.wants/xrdp.service → /lib/systemd/system/xrdp.service. Processing triggers for systemd (232-25+deb9u1) ... Processing triggers for man-db (2.7.6.1-2) ... Setting up x11-apps (7.7+6) ... Setting up xfonts-scalable (1:1.0.3-1.1) ... Setting up xorgxrdp (0.9.1-9) ... Setting up xorg-docs-core (1:1.7.1-1) ... Setting up xfonts-base (1:1.0.4+nmu1) ... Processing triggers for fontconfig (2.11.0-6.7) ... Setting up xorg (1:7.7+19) ... Processing triggers for libc-bin (2.24-11+deb9u1) ... pi@raspberrypi:~ $
...
-
# (追記)Youtubeを、しばらく見てると、音が止まってしまう模様... う~ん..
=>(2017-8-23) ネットワークの品質の問題だった? 様子見 -
#
sudo apt update
すると、公式のxrdp
にアップグレードできる(=元に戻される)、、、とでてくる。うまい方法を考えますて教えてください..
=>(2017-8-23) しょうがないので、debからファイルを抽出し、上書きするように記事を変更
pi@raspberrypi:~/xrdp-audio_armhf $ sudo apt update
ヒット:1 http://archive.raspbian.org/raspbian stretch InRelease
ヒット:2 http://mirrordirector.raspbian.org/raspbian stretch InRelease
ヒット:3 http://archive.raspberrypi.org/debian stretch InRelease
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
アップグレードできるパッケージが 1 個あります。表示するには 'apt list --upgradable' を実行してください。
pi@raspberrypi:~/xrdp-audio_armhf $ apt list --upgradable -a
一覧表示... 完了
xrdp/stable 0.9.1-9 armhf [0.9.1-9 からアップグレード可]
xrdp/now 0.9.1-9 armhf [インストール済み、0.9.1-9 にアップグレード可]
pi@raspberrypi:~/xrdp-audio_armhf $
- (追記) Debianのソースからビルドする手順を書きました。やってることは、`debian/rules`を変更して、xrdpのビルドのconfigureのオプションに`--enable-mp3lame`と`--enable-pixman`を追加するだけです。
...
- [2017-8-22 8:34am(JST)頃] 1000 contribution 達成 :-) ![image.png](https://qiita-image-store.s3.amazonaws.com/0/75594/96579471-d01a-a053-e674-677e9e6a417b.png)