2018年2月14日水曜日

xubuntu 17.10 にリモートデスクトップをインストールして Windows 10 からつながるようにする

xubuntu 17.10 に xrdp にてリモートデスクトップ接続できるようにしました。
いくつかのページを見てやってみたのですが、xrdp のインストールのみと書かれているものや、vnc4server + xrdp と書かれているものが多かったのですが、これだと Windows からは接続できないようでした。
  • vino を入れて暗号化しないようにしないと Windows からの接続でエラーになってしまうようです。
  • linux からの接続のみならば xrdp だけで問題ないようです。

vino のインストール

xubuntu には標準では vino はインストールされていないようなのでまずはインストールから。
$ sudo apt install vino

設定画面を開く

$ vino-preferences
チェックを入れる
  • [x] 他のユーザーが自分のデスクトップを表示できる
  • [x] 他のユーザーがデスクトップを操作できる

自動起動設定

  1. [設定] → [セッションと起動] → [自動起動アプリケーション]
  2. [テスクトップの共有] のチェックを入れる

暗号化を停止

$ gsettings set org.gnome.Vino require-encryption false

参考URL

Windows10とUbuntu16.04をリモートデスクトップ接続で行き来する

xrdp のインストール

$ sudo apt install xrdp

設定ファイルを作成

※接続を許可するユーザーにて実行
# ~/.Xclients ファイルを作成
cat > ~/.Xclients <<EOF
#!/bin/bash
exec xfce4-session
EOF
chmod +x ~/.Xclients
# xfce4 を RDP 接続のデフォルトのウィンドウマネージャーにします。
echo xfce4-session > ~/.xsession
# 新規作成するユーザーにも適用
sudo cp ~/.Xclients /etc/skel
sudo cp ~/.xsession /etc/skel

console 以外を有効にする

$ sudo vi /etc/X11/Xwrapper.config
#@@mod allowed_users=console
allowed_users=anybody
これをやらないと接続しようとしても真っ黒画面

再起動

$ sudo service xrdp restart

ログの位置

$ tail /var/log/xrdp-sesman.log
[ERROR] X server for display 10 startup timeout

接続してみる

ちなみに初回接続時はなぜか真っ黒画面ですが、一旦切断して再度つなぐとちゃんと表示されました。(これ何回インストールし直しても同じ現象が発生しました)

Windows 10 からの接続

  1. リモートデスクトップを起動
  2. IP を指定
  3. [接続ボタンを押す]
  4. [Login to xxxx] ダイアログが表示される
  5. Session: Xorg
  6. username: ユーザー名を指定
    自動で入っているかもしれません・その場合はドメイン名(\の前)を \ も含めて削除
  7. password を入力
  8. [OK] ボタンを押す

2018年2月6日火曜日

ionic ビルド時に大量のエラー><;

開発も順調に進みそろそろ実機で動かしてみるかと試してみると

$ ionic cordova run android
Running app-scripts build: --platform android --target cordova
--中略--
:compileDebugJavaWithJavac
/home/kiya/JobFiles/mieta1/platforms/android/src/com/tangide/statusbar/StatusBar/StatusBar.java:76: error: cannot find symbol
--以下大量のエラー--

げげ!エラー!何が起きたんだろうとあれこれ調べてみると

$ ionic cordova plugin list
cordova plugin ls
com.tangide.statusbar 1.0.0 "StatusBar"
cordova-plugin-device 1.1.4 "Device"
cordova-plugin-device-motion 1.2.5 "Device Motion"
cordova-plugin-ionic-webview 1.1.16 "cordova-plugin-ionic-webview"
cordova-plugin-splashscreen 4.0.3 "Splashscreen"
cordova-plugin-statusbar 2.4.1 "StatusBar"
cordova-plugin-whitelist 1.3.1 "Whitelist"
ionic-plugin-keyboard 2.2.1 "Keyboard"

??? com.tangide.statusbar 1.0.0 "StatusBar" ってなんだ?

どうやら、cordova-plugin-statusbar をインストールする際に間違えて入れてしまったようだ

$ ionic cordova plugin rm com.tangide.statusbar
> cordova plugin remove com.tangide.statusbar --save
--中略--
Removing com.tangide.statusbar from package.json

無事ビルドできました。