Ubuntu 19.10の日本語入力をfcitx-mozcにする

デフォルトのiBusからfcitxに変えたのでメモ。

なぜfcitxを使うのかというと、俺は英語キーボードの右AltをIMEのオンオフ切り替えに使うのが常なんだが、iBusはそもそもAltキーを使えない仕様。

というわけでfcitxを使う。

まずはfcitxとfcitx-mozcをインストール。

sudo apt install fcitx fcitx-mozc -y

ibusを削除

sudo apt purge ibus -y

つづいて「入力メソッド」(im-config)ツールを起動して、以下の手順で進む。

im-configとも言う

  1. インプットメソッド設定というウィンドウが開くので→「OK」をクリック
  2. 明示的にユーザー設定を選択しますか?→「はい」
  3. ユーザー設定を選択してください→「fcitx」を選んで「OK」
  4. ユーザー設定がim-config により変更されました→「OK」

次は「Fcitx設定」ツールを起動する。ただの「Fcitx」と「Fcitx設定」と2つあるけど後者を選ぶ。

Fcitx設定を選ぶ

開いたら、「全体の設定」を開き、入力メソッドのオンオフをすべて「Ralt」に設定して閉じる。

右AltでIMEをオンオフ

そしてUbuntuを再起動したらOK。
右AltでIMEがオンオフ出来る。

Ubuntu 19.10にVirtualboxをインストールする

VirtualboxのダウンロードサイトEoan Ermine用のパッケージになかったのでメモ。

何も考えずにapt使えばOK。

sudo apt install virtualbox -y

これだけ。

Ubuntu 19.10で背景をただの「色」にしたい

Ubuntu19.10で背景をただの色にしたのでメモ。

19.10(Eoan Ermine)ではGnomeの設定から背景を画像から「色」にできない。

というわけで下記のコマンドで設定。
色はHTMLカラーコードで指定する。

gsettings set org.gnome.desktop.background picture-uri ''
gsettings set org.gnome.desktop.background color-shading-type 'solid'
gsettings set org.gnome.desktop.background primary-color '#6B818E'

Ubuntu18.04でApache2/vhost/SSL化/BASIC認証

たまにやるのでメモ。

Ubuntu18.04だけどGCPのComputeEngineでやるのでufwは使わない。

Firewall設定の [Allow HTTP/HTTPS traffic] をONにしとく。

そして、先にDNSにAレコード登録しておく。

おまじない

sudo apt update -y; sudo apt upgrade -y

Apache2インストール

sudo apt install apache2 -y

サーバーバージョンは隠したいのでServerSignatureを無効にする。
/etc/apache2/apache2.conf に下記を追記。

ServerSignature Off
ServerTokens Prod

VirtualHost設定

以下www2は適宜書き換える。

ディレクトリを用意する。
そしてsudoしなくても操作できるようにオーナーを自分にする。

cd /var/www
mkdir www2
sudo chown ${USER}:${USER} www2
sudo chmod 755 www2

conf作る。

cd  /etc/apache2/sites-available
sudo cp 000-default.conf www2.conf

/etc/apache2/sites-available/www2.confにvirtual host設定を追記する。
ServerNameはDNSにAレコード登録したFQDNにする。

<VirtualHost *:80>
  ServerAdmin root@localhost
  ServerName www2.kwonline.org
  DocumentRoot /var/www/www2
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

conf切り替えてApache再起動。

sudo a2ensite www2.conf
sudo a2dissite 000-default.conf
sudo systemctl restart apache2

SSL化

LetsEncryptのcertbotを使う

sudo add-apt-repository ppa:certbot/certbot

確認メッセージが出るので[Enter]キーを押す。
以下www2のFQDNは適宜書き換える

sudo apt install python-certbot-apache -y
sudo certbot --apache -d www2.kwonline.org

メアドやHTTPのリダイレクトについて質問されるので適宜答える。

BASIC認証

htpasswdコマンドの初回実行時のみ[-cオプション]を付ける

cd /etc/apache2
sudo htpasswd -c .htpasswd myuser1

/etc/apache2/sites-enabled/www2-1-le-ssl.conf というファイルがあるので下記を 「VirtualHostディレクティブの中」に追記する。
外に書いても動かない。
もし特定のディレクトリのみBASIC認証をかけたい場合は指定すればOK。
正規表現も使える。
詳しくはここに書いてある。

  <Directory "/var/www/www2/">
    AuthType Basic
    AuthName "Password Required"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
  </Directory>

最後にApache2を再起動して完了

sudo systemctl restart apache2

ファイブフィンガーズに似た安いベアフット系シューズを買う

だいぶ前からビブラム・ファイブフィンガーズを愛用しているんだが、履き続けるとソールが磨り減ってしまうのは仕方ない。

↓前に書いたブログ記事

5本指シューズの履き心地が良すぎて他の靴いらない
ビブラム・ファイブフィンガーズをまた買った

特に愛用してた Spyridon MR が一番すり減ってしまったので廃棄。
新しいファイブフィンガーズを買おうと思ったけど、やっぱ価格が高いのがネック。
そんな時Amazonで見つけたのがこれ
SUGARO ベアフット トレーニングシューズ。

税込みで2,788円。
安い。
安すぎて心配になるレベルw

指先は分かれてないけど、レビュー見て「この価格なら試してみても良いか」と思ってポチった。
サイズは普段の靴と同じ26.5cm

ファイブフィンガーズなら靴下履く場合は+0.5cmが良いんだけど、これはコメント見たところ丁度で良いというのでそうした。

で、届いたのがこれ。

清々しい簡易包装。

届いた

早速開封。

SUGAROベアフットシューズ

早速履いてみたけど、悪くない。
かと言ってすごく良い訳でもなくw
指先分かれてないけどこの価格ならそうだろう。

一点気になったのは、踵というか足首周りの素材がファイブフィンガーズよりも薄くてゴワゴワしてるので、履いてると足首の裏側にやや違和感。
(伝えづらい、この気持ち・・・)
しかしそのまま2日連続で履いてたら慣れて来た。
素材が馴染んだかな。

というわけで、

この価格ならアリです。

もちろんファイブフィンガーズの方が全然良いんだけどコスパ重視ならSUGARAベアフットも選択肢です。
ガンガン履いて履きつぶします。

bash: ホスト名のIPアドレスを取得する方法

bashシェル上で単純にホスト名に対するIPアドレスを取得したかったのでメモ

digコマンドに +short オプションを付けると結果がとてもシンプル

$ dig +short www.kwonline.org
34.85.103.60

これを応用してrouteコマンドの結果からdefaultのゲートウェイホスト名のIPを調べる際に使ってる。
routeの結果がこうなんだが

$ route
カーネルIP経路テーブル
受信先サイト    ゲートウェイ    ネットマスク   フラグ Metric Ref 使用数 インタフェース
default         ntt.setup       0.0.0.0         UG    0      0        0 wlp1s0

このntt.setupというWifiルーターのホスト名をササっとシェルで取得したいのでこうなった。

$ route |grep default|sed -n '1p' |awk '{print $2}'|xargs dig +short
192.168.1.1

ncコマンド(netcat)でファイル転送

Virtualboxやらクラウドで、VM同士でササっと単発でファイルを転送したい時に使うのでメモ

サーバー側(ファイル転送元)
9999番ポートを開けてファイルおいとく

nc -lvp 9999 < input.txt

クライアント側(ファイル受け先)
サーバー(10.0.0.1)の9999番ポートからファイルをもらう

nc 10.0.0.1 9999 > output.txt

クライアントからサーバーに接続されると、サーバー側のターミナルにメッセージが表示される。

Listening on [0.0.0.0] (family 0, port 9999)
Connection from 10.0.0.101 50908 received!

クライアント側は何も表示されないので、Ctrl-Cで終わらす。
で、クライアント側にoutput.txtが出来上がっていればOK。

Emacs: 空白行を一括削除

Emacsで空白行を削除したかったのでメモ

テキスト開いてる状態で

M-x flush-lines ⏎
^$ ⏎

これで消える。

Xubuntu: Emacs上でemacs-mozcを使って日本語入力

Emacs上でemacs-mozc使ったら日本語入力が快適なのでメモ

まずはaptでemacs-mozc-binをインストール

$ sudo apt install emacs-mozc-bin

~/.emacs.d/init.el を編集してpackageを有効化する

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/"))
(add-to-list 'package-archives  '("marmalade" . "https://marmalade-repo.org/packages/"))
(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/"))
(package-initialize)

Emacsを起動して、M-x package-list-packages を開き、「mozc」を選んで「Install」する

mozcパッケージインストール後、再び ~/emacs.d/init.el を編集してmozcパッケージを有効化する

(require 'mozc)
(set-language-environment "Japanese")
(setq default-input-method "japanese-mozc")
(prefer-coding-system 'utf-8)

これでOK.
Emacs起動後 Ctrl + \ で日本語IMをオンオフする。