Yearly Archives: 2016

Linux から Windows 2012 にリモートデスクトップ接続

Fedora から Windows Server 2012 R2 にリモートデスクトップ接続しようとしたとき、rdesktop コマンドを使うと、なぜか以下のようなエラーが表示されて接続できませんでした。

$ rdesktop 192.168.100.100
Autoselected keyboard map en-us
Failed to connect, CredSSP required by server.

(参考)
https://bugzilla.redhat.com/show_bug.cgi?id=1075697

かわりに xfreerdp コマンドを使ってみたところ接続できました。

xfreerdp をインストールするにはつぎのコマンドを入力します。

# dnf install xfreerdp -y

xfreerdp コマンドで Windows Server 2012 R2 にリモートデスクトップ接続するにはつぎのようにコマンドを入力します。

$ xfreerdp /u:<User> /p:<Password> /d:<Domain> /f /v:<IP-Address> /kbd:US +toggle-fullscreen

フルスクリーンで表示されるので、画面内で CTRL+ALT+ENTER を入力すると Exit (トグル)できます。すなわちフルスクリーンを ON/OFF できます。

もし、以下のようなエラーが表示されて接続できなくなったときは、

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

つぎのコマンドで、xfreerdp 用の known_hosts ファイルをクリアすることで対応できます。

$ cp /dev/null ~/.config/freerdp/known_hosts

Fedora の不要なプロセスを停止してみた

Fedora 23/24 にて、やたらと不要なプロセスがたくさん実行されている気がする。使っていそうにないプロセスを停止してみた。いまのところ特に問題なし。また、ヒストリー関連のクリアしてみた。

1. avahi-daemon を停止する

# systemctl disable avahi-daemon.service

2. abrt(Automatic Bug Reporting Tool) を停止する

# systemctl disable abrt-ccpp.service
# systemctl disable abrt-oops.service
# systemctl disable abrt-vmcore.service
# systemctl disable abrt-xorg.service
# systemctl disable abrtd.service

3. zeitgeist などを停止する

すまん、ドイツ語は苦手なのだ。俺は “Poltergeist” のほうが好きだな。

# cd /etc/xdg/autostart/
# ls -1
...
# mv zeitgeist-datahub.desktop{,-inactive}
# mv abrt-applet.desktop{,-inactive}
# mv evolution-alarm-notify.desktop{,-inactive}
# mv gnome-welcome-tour.desktop{,-inactive}
# mv tracker-extract.desktop{,-inactive}
# mv tracker-miner-apps.desktop{,-inactive}
# mv tracker-miner-fs.desktop{,-inactive}
# mv tracker-miner-rss.desktop{,-inactive}
# mv tracker-miner-user-guides.desktop{,-inactive}
# mv tracker-store.desktop{,-inactive}

4. evolution などを停止する

俺には国際救助隊 “Thunderbird” がバックにいるので、evolution は不要だな。

# dnf erase evolution
# cd /usr/share/dbus-1/services
# ls -al | grep -i evolution
...
# mv org.gnome.evolution.dataserver.AddressBook.service{,-inactive}
# mv org.gnome.evolution.dataserver.Calendar.service{,-inactive}
# mv org.gnome.evolution.dataserver.Sources.service{,-inactive}
# mv org.gnome.evolution.dataserver.UserPrompter.service{,-inactive}

5. Gnome のヒストリーのクリア

All Settings (gnome-controle-center) > Privacy > Usage & Histry > Clear Recent Histry

6. FireFox のヒストリーのクリア

FireFox のメニューから
Edit > Preferences > Privacy > clear your recent histry

ちょっと、すっきりした。

7. plymouth 関連のパッケージの削除

起動時間を短縮するには、以下のコマンドで、どのユニットの起動に時間がかかっているかを調べるとよい。

起動時間のサマリー表示
# systemd-analyze

ユニットの起動時間の一覧を表示
# systemd-analyze blame | cat

ユニットの起動状況をツリー形式で表示
# systemd-analyze critical-chain

起動時のメッセージの確認
# journalctl -x -b | cat

plymouth 関連を削除すると短縮できそうだ。plymouth はブート時にグラフィカル表示をおこなう機能であるが、これは Linux ユーザーには不要だと思う。思い切って削除してみる。

# dnf erase plymouth -y

8. journal ログの削除

Gnome の起動に時間がかかっているようだが、これは journal ログを削除すると多少は改善されそうだ。

# rm -rf /var/log/journal/*

9. GRUB のタイムアウト時間を 0 に変更

これは既に設定されている人が多いと思うが、念の為。
まずは GRUB 設定ファイルのバックアップを取得する。

# cp -ipv /etc/default/grub{,-ORG}

以下の2箇所を変更する。

  • GRUB_TIMEOUT の行の値を小さくする
  • GRUB_CMDLINE_LINUX の行の「rhgb quiet」を削除する

sed を使って変更するには以下のコマンドを実行すればよい。

# F1=/etc/default/grub
# sed -i 's/GRUB_TIMEOUT=.*/GRUB_TIMEOUT=0/g' $F1
# sed -i '/GRUB_CMDLINE_LINUX=/s/ rhgb//g' $F1
# sed -i '/GRUB_CMDLINE_LINUX=/s/ quiet//g' $F1

変更内容を確認する。

# diff /etc/default/grub{-ORG,}

変更したら、つぎのコマンドを実行して設定内容を反映させる。

# grub2-mkconfig -o /boot/grub2/grub.cfg

だいぶ、すっきりした。

VMware Workstation 12 Pro Linux 版のインストール

Fedora 25 に VMware Workstation 12.5.2 Linux 版をインストールしてみました。

準備

VMware Workstation のインストールに必要な依存パッケージを事前にインストールします。

# dnf -y group install "Development Tools"
# dnf -y install kernel-devel kernel-headers

VMware Workstation 12 Pro のダウンロード

以下より VMware Workstation 12 Pro Linux 評価版をダウンロードします。
http://www.vmware.com/products/workstation/workstation-evaluation

最新版がダウンロードされます。2017年1月16日時点では、以下がダウンロードできました。
VMware-Workstation-Full-12.5.2-4638234.x86_64.bundle

VMware Workstation 12 Pro のインストール開始

Fedora 25 のデスクトップは、デフォルトでは Wayland の Gnome が採用されています。しかし、VMware Workstation 12.5.2 はまだ Wayland の Gnome をサポートしていません。”Gnome” をいったんログアウトし、”GNOME on Xorg” でログインしなおしてインストールします。ログイン画面の “Sign In” ボタンの横に、歯車アイコンが表示されるので、それをクリックして “GNOME on Xorg” を選択してログインしてください。

つぎのコマンドでインストーラを開始します。

# chmod a+x ./VMware-Workstation-Full-12.5.2-4638234.x86_64.bundle
# ./VMware-Workstation-Full-12.5.2-4638234.x86_64.bundle

下記のようなエラーメッセージが表示されますが無視して進めます。

Extracting VMware Installer...done.

(vmware-installer.py:6379): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
/usr/share/themes/Adwaita/gtk-2.0/main.rc:733: error: unexpected identifier `direction', expected character `}'

(vmware-installer.py:6379): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
/usr/share/themes/Adwaita/gtk-2.0/hacks.rc:28: error: invalid string constant "normal_entry", expected valid string constant
Gtk-Message: Failed to load module "pk-gtk-module": libpk-gtk-module.so: cannot open shared object file: No such file or directory
Gtk-Message: Failed to load module "canberra-gtk-module": libcanberra-gtk-module.so: cannot open shared object file: No such file or directory

インストーラの画面にしたがって操作します。画面については、「VMware Workstation 11」のときと大きな変化はないので省略します。

  1. 「VMware Workstation – End User License Agreement」の画面が表示されるので、「I accept …」を選択して [Next] ボタンをクリックします。
  2. 「VMware OVF Tool component for Linux – End User License Agreement」の画面が表示されるので、「I accept …」を選択して [Next] ボタンをクリックします。
  3. 「Would you like to check for product updates on startup?」の画面が表示されるので、「No」を選択して [Next] ボタンをクリックします。
  4. 「Would you like to help make VMware software …」の画面が表示されるので、「No」を選択して [Next] ボタンをクリックします。
  5. 「Please enter the user that will initially connect to Workstation Server …」の画面が表示されるので、「root」を変更して通常ログインしvmware で使用するユーザー名を入力します。[Next] ボタンをクリックしてつぎに進みます。
  6. 「Please choose a directory for your shared virtual machines.」の画面が表示されるので、特に変更しないで、[/var/lib/vmware/Shared VMs]のまま[Next] ボタンをクリックしてつぎに進みます。
  7. 「Please enter the port to use for https access to Workstation Server.」の画面が表示されるので、HTTPS port: [443] を適切に変更して [Next] ボタンをクリックしてつぎに進みます。
  8. 「Enter license key.」の画面が表示されるので、空白のまま [Next] ボタンをクリックしてつぎに進みます。
  9. 「The product is ready to installed.」の画面が表示されるので、[Install] ボタンをクリックしてつぎに進みます。
  10. 「Installing …」の画面が表示されるので、完了するまで待ちます。
  11. 「Installation was successful.」の画面が表示されるので、[Close] ボタンをクリックします。

VMware Workstation に対するパッチ作業

2017年1月16日時点では、Fedora 25 の最新カーネルは、kernel-4.9.3-200 となっています。VMware Workstation 12.5.2 は kernel-4.9.x にまだ対応していないため、このバージョンのカーネルでは正常に起動できません。VMware Workstation に対して以下のパッチ作業が必要です。つぎのコマンドを実行してパッチ作業とモジュールのコンパイルを行います。

# cd /usr/lib/vmware/modules/source/
# cp -npv vmmon.tar{,-ORG}
# tar xvf vmmon.tar
# wget https://communities.vmware.com/servlet/JiveServlet/download/2644848-168136/ws-12.5.2-linux-4.9-vmmon-only.patch.zip
# unzip ws-12.5.2-linux-4.9-vmmon-only.patch.zip
# patch -p0 < ws-12.5.2-linux-4.9-vmmon-only.patch
# tar cvf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only
# rm -rf vmmon-only

# cd /usr/lib/vmware/modules/source/
# cp -npv vmnet.tar{,-ORG}
# tar xvf vmnet.tar
# wget https://communities.vmware.com/servlet/JiveServlet/download/2644848-168137/ws-12.5.2-linux-4.9-vmnet-only.patch.zip
# unzip ws-12.5.2-linux-4.9-vmnet-only.patch.zip
# patch -p0 < ws-12.5.2-linux-4.9-vmnet-only.patch
# tar cvf /usr/lib/vmware/modules/source/vmnet.tar vmnet-only
# rm -rf vmmon-only

# vmware-modconfig --console --install-all

以上で完了です。”GNOME on Xorg” の環境で VMware Workstation が正常に起動できることを確認してください。

参考:
https://ask.fedoraproject.org/en/question/98084/error-on-vmware-in-fedora-25/
https://communities.vmware.com/message/2644848
http://rglinuxtech.com/?p=1847

TCX ファイルを GPX ファイルに変換する

ランニング・サイクリング・ウォーキングなどの GPS アプリのデータを Google Map で表示したいと思っている人は多いでしょう。GPS アプリの多くはその移動ルートを TCX ファイルでエクスポートできます。しかし、Google Map は TCX ファイルを直接にインポートすることができません。そこで、TCX ファイルを GPX ファイルに変換する必要があります。

Fedora 23 では標準で GPSBabel のパッケージが用意されているので、これを使って TCX から GPX への変換ができます。

GPSBabel のインストール手順は以下のとおりです。

# dnf search all gpsbabel
...
gpsbabel.x86_64 : A tool to convert between various formats used by GPS devices
gpsbabel-gui.x86_64 : Qt GUI interface for GPSBabel

# dnf install gpsbabel gpsbabel-gui -y

gpsbabel コマンドを使ってファイルの形式を変換できます。使い方は以下のとおりです。

$ gpsbabel -i <入力形式> -f <入力ファイル> -o <出力形式> -F <出力ファイル>

例えば、TCX ファイルを GPX ファイルに変換する場合、つぎのコマンドを実行します。

$ gpsbabel -i gtrnctr -f input.tcx -o gpx -F output.gpx

上記の「-i gtrnctr」は入力ファイルの形式として「Garmin Training Center (.tcx)」を指定することを意味し、「-o gpx」は出力ファイルの形式として「GPX XML」を指定することを意味します。詳細は「gpsbabel --help」コマンドで確認するか、Web サイト http://www.gpsbabel.org/ を参照してください。

または GUI フロントエンド (gpsbabelfe-bin) も用意されているのでこれを利用すると簡単です。入力ファイル名とその形式、出力ファイル名とその形式を指定して OK ボタンをクリックするだけです。実際に実行されるコマンドが下方のテキストボックスに表示されるので便利です。

gpsbabelfe-bin-01

GPX ファイルに変換できたら、これを用いて Google Map のマイマップにインポートして自分の地図を作成することができます。

Fedora 23 に Google Earth をインストール

Google Earth を Fedora 23 にインストールしました。自分の環境では、どうも最新の Google Earth (GE7) はうまく動作しませんでした。替わりに古い Google Earth (GE6) をインストールしてみたところ問題なく動作しました。以下にその代替のインストール手順を紹介します。

既存の Google Earth がインストールされている場合は削除します。

# rpm -ev --nodeps google-earth-stable

古いバージョンの Google Earth (GE6) をダウンロードします。

# wget http://dl.google.com/earth/client/GE6/release_6_2_2/google-earth-stable-6.2.2.6613-0.x86_64.rpm

ダウンロードした Google Earth (GE6) をインストールします。このとき、rpm コマンドを使って「--force」オプションを付けて実行する必要があります。dnf コマンドを使ってインストールしようとすると、「Error: Transaction check error: file /usr/bin from install of google-earth-stable-#.#.#.####-#.x86_64 conflicts with file from package filesystem-3.2-35.fc23.x86_64」と表示されてインストールに失敗します。

# rpm -ivh --force google-earth-stable-6.2.2.6613-0.x86_64.rpm

その他の必要なライブラリをインストールします。

# dnf install redhat-lsb*
# dnf install redhat-lsb*.i686
# dnf install mesa-dri-drivers*
# dnf install mesa-dri-drivers*.i686

以上で、インストールは完了です。なお、Linux 版 Google Earth はプロキシ下のネットワーク環境では使用できないようです。Google Earth の起動シェル「/usr/bin/google-earth」の43〜44行目に環境変数を設定すると動作するという情報がありましたが未確認です。

script_path=$(FindPath $0);

cd $script_path;

export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=http://proxy.example.com:8080
LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ./googleearth-bin "$@"

実は、最新の Google Earth (GE7) ですが、新しく作成した Fedora 23 の仮想マシンで試すと問題なくインストールできて正常に動作します。しかし、自分の物理 PC の Fedora 23 で試すと、いろいろアップデートをかけているせいか、Google Earth をインストール後に起動しようとすると、スプラッシュスクリーンを表示した直後にクラッシュしてしまいます。

以下の画像は KVM 仮想マシン上の Fedora 23 で、Google Earth 7 を実行しているときのイメージです。

fedora23-google-earth7-on-vm

以下の画像は物理 PC 上の Fedora 23 で、Google Earth 6 を実行しているときのイメージです。

fedora23-google-earth6-on-pm

(2016.09.10 追記)
Fedora 24 では最新の Google Earth (google-earth-stable.x86_64 7.1.7.2600-0 , Build Date 8/25/2016) を普通にインストールできることを確認しました。手順はつぎのとおりです。

# wget https://dl.google.com/dl/earth/client/current/google-earth-stable_current_x86_64.rpm
# dnf install ./google-earth-stable_current_x86_64.rpm 

KVM 仮想マシンの自動インストール

KVM 環境で仮想マシンを利用してインストール手順などを検証するとき、最低限のパッケージを入れた状態の OS を何度も繰り返して作成することがよくあります。このようなときは、仮想マシンを全自動でインストールするシェルスクリプトを用意しておくと便利です。

仮想マシンを全自動でインストールするシェルスクリプトはつぎの github に公開しています。
https://github.com/uvirt/kvm-sample
CentOS 6.8 用と CentOS 7.2 用の2つのシェルスクリプトを用意しています。

ミニマル構成でインストールしたいが、yum レポジトリの設定だけは済ませておきたいといった場面がよくあります。これに対応するため、インストールメディアの DVD をゲスト OS 内の /media ディレクトリにコピーし、それを利用してローカル yum レポジトリの設定をおこなうようにしています。この方法により、ゲスト OS はいちいちインターネットにアクセスすることなく DVD に含まれる RPM パッケージを後から自由にインストールすることができます。

シェルスクリプトの使用方法

シェルスクリプトの使用方法を説明します。まずは、KVMホスト側の環境を設定します。つぎのコマンドを入力してKVMをインストールします。以下は Fedora 25 での例となります。

# dnf group install with-optional virtualization -y
# dnf install libvirt-client libguestfs libguestfs-tools -y

つぎにゲストOSのインストールメディアをKVMホストのディレクトリ /var/lib/libvirt/images 以下にコピーします。

➤ CentOS 6.8 (DVD2は省略可能です)
# cd /var/lib/libvirt/images
# wget http://ftp.riken.jp/Linux/centos/6.8/isos/x86_64/CentOS-6.8-x86_64-bin-DVD1.iso
# wget http://ftp.riken.jp/Linux/centos/6.8/isos/x86_64/CentOS-6.8-x86_64-bin-DVD2.iso

➤ CentOS 7.2
# cd /var/lib/libvirt/images
# wget http://ftp.riken.jp/Linux/centos/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso

KVM 仮想マシン自動インストールのシェルスクリプトをダウンロードします。

➤ CentOS 6.8
# wget https://raw.githubusercontent.com/uvirt/kvm-sample/master/centos68-install.sh

➤ CentOS 7.2
# wget https://raw.githubusercontent.com/uvirt/kvm-sample/master/centos72-install.sh

シェルスクリプトをエディターで開いて、パラメータを設定します。以下の部分を設定したい値に変更してください。

#-- Guest Name (Domain Name)
DOM=centos68

#-- Guest Memory Size (MB)
RAM=1024
#-- Guest Disk Size (GB)
SIZE=16.0
# -- Virtual NETWORK
VIRTUALNETWORK=network:default

#-- root password
PASSWORD=password
#-- Hostname
HOSTNAME=centos68.example.com
#-- IP Address
IP=192.168.122.110
#-- Netmask
NETMASK=255.255.255.0
#-- Gateway IP
GATEWAY=192.168.122.1
#-- DNS server
NAMESERVER=8.8.8.8,8.8.4.4
#-- NTP server
NTPSERVERS=0.centos.pool.ntp.org,1.centos.pool.ntp.org,2.centos.pool.ntp.org,3.centos.pool.ntp.org

シェルスクリプトを実行します。約15分で仮想マシンのインストールが完了します。

➤ CentOS 6.8
# sh centos68-install.sh

➤ CentOS 7.2
# sh centos72-install.sh

インストールが完了したら、つぎのコマンドで仮想マシンを起動できます。コンソールの接続を抜けるには CTRL+] をタイプします。

➤ CentOS 6.8
# virsh list --all
# virsh start centos68
# virsh console centos68

➤ CentOS 7.2
# virsh list --all
# virsh start centos72
# virsh console centos72

KVM ホスト側から SSH 経由で仮想マシンに接続するに、つぎのコマンドを入力します。root パスワードは「password」です。

$ ssh-keygen -R 192.168.122.110
$ ssh root@192.168.122.110

インストール後にインターネット上の yum レポジトリを使用したい場合は、仮想マシンにてつぎのコマンドを入力して各レポジトリを有効化します。

# yum-config-manager --enable base
# yum-config-manager --enable updates
# yum-config-manager --enable extras
# yum-config-manager --enable centosplus

真冬に和光市から見えるあの白い山脈はどこ?

和光市からは、冬の空気の澄んだ日、西北のはるか遠方に雪に覆われた山脈が見えることがあります。とくに正月の前後、年に数回程度それを見ることができます。以下がその写真です。これは和光市の北側のパノラマです。2016年1月19日に撮影しました。ちょうど雪がどっさり降った翌日の朝です。近辺の住宅の屋根は雪が積もって白くなっています。

northern-japan-alps-20160119-wako-1

つぎの写真は上の写真の左半分をさらに拡大したものです。この写真のちょうど中央あたりに、はるか遠方に山頂が雪で覆われた山脈が見えます。山脈の上にはうっすらと灰色の雲がかかっているのでちょっとわかりにくいです。

northern-japan-alps-20160119-wako-2

もしや北アルプスではと思って色々と調べ回っていましたが間違いでした。どうやらこの雪をかぶった山脈は白砂山(しらすなやま 2140m)、上ノ倉山(かみのくらやま 2108m)あたり、すなわち三国山脈の周辺が正解のようです。苗場スキー場の近くといったほうがわかりやすいかもしれません。和光市から白砂山までは直線距離で134kmぐらいです。

上の写真の右端は赤城山(あかぎやま)です。その赤城山の左側には雪をかぶった谷川岳(たにがわだけ 1977m)が見えています。右端の大きな鉄塔の向こうに赤城山が見えていて、つぎの左隣の小さく見える鉄塔の向こうに子持山(こもちやま 1296m)が見えています。その赤城山と子持山の間に谷川連峰が見えています。

Map
wakocity-and-mt-shirasuna-134km

中央の白い山脈の左側に見えるごつごつした山は榛名山(はるなさん 1449m)です。榛名山の左側にもぼんやりと写っている白い山脈がありますが、草津白根山(くさつしらねさん 2160m)でしょうか。

別の日の2月22日には、浅間山(あさまやま 2568m)がきれいに見えました。浅間山の左に見える乳房のような形の山は笠山(かさやま 837m)です。

wakocity-and-mtasama-20160222-1

このときのパノラマです。

wakocity-and-mtasama-20160222-2

和光市から浅間山までは直線距離で120kmぐらいです。

Map
wakocity-and-mtasama-120km

(2017.03.14 追記)
近くに立ち寄ったついでに撮影してきました。関越自動車道の赤城高原SAで撮影しました。左に見える雪山が谷川岳、右側の雪山が武尊山(ほたかやま)です。
https://www.google.com/maps/@36.6031,139.0603,17z

渋川市で撮影しました。写真左側の道路の先が「子持山」、右側のなだらかなスロープが「赤城山」、真ん中に見える雪山が「武尊山(ほたかやま)」です。
https://www.google.com/maps/@36.5217,139.0206,17z

群馬総社駅の近くから撮影した赤城山です。写真を拡大すると、赤城山の西の裾野の向こうに雪山がうっすらと見えているように思れます。武尊山(ほたかやま)でしょうか。
https://www.google.com/maps/@36.4208,139.0350,17z

(2016.09.03 追記)
便利な時代になりました。スマホ・アプリ「スーパー地形」を利用すると山の方角が簡単にわかります。つぎは和光市から見える山の360°の方角です。
superchikei-wako-360-landscape-all

つぎは和光市から見える山の北西の方角を拡大したものです。
superchikei-wako-360-landscape-north

(参考サイト)
http://www.shochi-club.jp/wgel/tenbou-syu/from_shochi.html
http://ameblo.jp/wandel72/entry-12110432489.html
http://www.go-isesaki.com/id_mt_west.html
http://tenbou.travel.coocan.jp/shwv1/styo/tyo09.htm
http://tenbou.travel.coocan.jp/shwv1/styo/tyo10.htm
http://tenbou.travel.coocan.jp/shwv1/styo/tyo15.htm
http://yamao.lolipop.jp/tenbo/mondai/nerima/nerima.htm
http://yamao.lolipop.jp/shaso/2017/01/28/0128.htm
http://yamaosensei.fc2web.com/080405/akagikogenSA.htm
http://yamaosensei.fc2web.com/080405/kanetsu-2.htm