[Thunderbird] サーバに接続できない

Thunderbird 78.4.0 で「Peer using unsupported version of security protocol」のメッセージが出て、サーバに接続できない状況が発生。

原因としてはおそらく TLS1.0, TLS1.1 が拒否されるようになったんだろうなと。オプションの設定エディタから、security.tls.version.min の値を 3 から 1 に変更して対応。

security.tls.version.min
0 = SSL 3.0 以降
1 = TLS 1.0 以降
2 = TLS 1.1 以降
3 = TLS 1.2 以降
4 = TLS 1.3 以降

「can not send mail after update ver78」
https://support.mozilla.org/en-US/questions/1295861

macOS を Catalina に上げる準備メモ

macOS Catalina

必要なことを順次メモしていく。

NFS

ユーザと同じ名前のグループを作って VM の Linux にマウントさせている。ユーザ名と同じグループを作る方法はこちら

/etc/exports の記述が、

"/Users/hoge/develop" -mapall=501:501 -network 172.16.157.0 -mask 255.255.255.0

から、

/System/Volumes/Data/Users/hoge/develop" -mapall=501:501 -network 172.16.157.0 -mask 255.255.255.0

というように、/System/Volumes からの指定が必要になるみたい。

システムボリューム(/)が読み取り専用らしく、あまり詳しくないがこんな記事もあった。

フォント Cica を入れる(Ubuntu 20.04 の環境整備 #3)

ubuntu-logo14

フォントのインストール

ターミナルで使うフォントを入れる。以前は Ricty を使っていたけど、最近は Cica を使っている。
まずはダウンロードする。適当な場所で zip ファイルを解凍。
インストール先の作成は sudo mkdir /usr/local/share/fonts/Cica で。
ttf が 4 ファイルあるので、sudo cp Cica-*.ttf /usr/local/share/fonts/Cica でコピー。
fc-cache -fv でフォントキャッシュの生成。

端末に設定

端末の設定画面でフォントが表示されないので、以下の流れで設定する。

gsettings get org.gnome.Terminal.ProfilesList default
gsettings get "org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:<前行での出力>/" font

これで設定されているフォントが表示される。

gsettings set "org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:<前行での出力>/" font "Cica 10.5"

で設定する。
端末の設定、画面サイズを 120×36 にしておく。

Ubuntu 20.04 の環境整備 #2

ubuntu-logo14

システムを最新に

まず、取得元を riken.jp に変更する。画面左下の「アプリケーションを表示する」をクリックして、検索ワード「software」を入力。「ソフトウェアとアップデート(ソフトウェアと…)」を起動。
Ubuntu のソフトウェアタブが開かれているので、ダウンロード元ポップアップで「その他…」を選択。ダイアログで「日本」の中の「ftp.riken.jp」を選択してサーバの選択ボタンをクリック。認証ダイアログでパスワードを入力して、「認証」ボタンをクリック。
アップデートタブを開き、セキュリティアップデートがあるときで「すぐに表示」を選択しておく。
ウインドウを閉じるときに「利用可能なソフトウェアの情報が古くなっています」と言われるので、再読み込みボタンをクリックして、キャッシュを更新しておく。
インストール元が設定できたので、

sudo apt update
sudo apt upgrade
sudo apt install open-vm-tools-desktop ※VM 環境の場合

を実行。open-vm-tools-desktop はインストール済みかもしれない。

その他必要そうなもの

git とか vim とか。

sudo apt install git
sudo apt install vim-nox
sudo update-alternatives --config editor
sudo apt install curl
sudo apt install htop
sudo apt install build-essential libgtk-3-dev
sudo apt install ubuntu-restricted-extras
sudo apt install fonts-takao fonts-ipafont fonts-ipaexfont
sudo apt install gnome-tweaks
sudo apt install gdebi
sudo apt install gedit-plugins

日本語のディレクトリを修正

LANG=C xdg-user-dirs-gtk-update

NFS で仮想環境ホストのディレクトリをマウント

ホスト側(MacOS)の /etc/exports を編集。

/Users/hoge/dev -mapall=nakase:nakase -network 172.16.157.0 -mask 255.255.255.0

こんな感じに。nfsd checkexports で確認。修正したときは sudo nfsd update で読み込み直し。
仮想環境側は、

sudo apt install nfs-common
sudo mount -t nfs -o vers=3 172.16.157.1:/Users/hoge/dev /mnt ※とりあえずマウントしてみる
ls -l /mnt/ ※確認
sudo vi /etc/fstab
172.16.157.1:/Users/hoge/dev /home/hoge/dev nfs defaults 0 0

こんな感じで。

キーボード・IME 関連

実機では、CapsLock キーを Ctrl キーにする設定が必要。Gnome Tweaks で設定。キーボードとマウス>キーボードの追加のレイアウトオプションボタンをクリック。Ctrl position で CapsLock を Ctrl として扱うにチェックを入れる。
VMware Fusion のゲストでは、/usr/share/X11/xkb/symbols/jp を編集。2 行あるkey <CAPS> { [ Eisu_toggle, Caps_Lock ] };key <CAPS> { [ Eisu_toggle ] }; と修正。
その他、IME ON/OFF のキーバインドなど以前の記事を参照。

Ubuntu 20.04 の環境整備 #1

ubuntu-logo14

Ubuntu 20.04 の日本語 Remix を使って環境整備。

前提としては、

  • 実環境と VM 環境双方で同じように使えるようにする
  • Mac の環境があるので UID と GID を 501 にする

あたりがある。UID/GID を 501 にするので、インストール時に作成するユーザを管理ユーザとして、その後に一般ユーザ(と言っても sudo はできるようにするが)をつくる。

インストール

インストール時に、「アップデートをダウンロードする」のと「プロプライエタリなソフトウェアもインストールする」にチェックを入れる。LVM は使っても使わなくても。
インストール時に作成するユーザは管理者っぽい名前にしている(意味はない)。

インストール完了後

インストール時に設定したユーザでログイン。端末(ターミナル)を起動して /etc/login.defs を編集、system uid/gid の最大値を調整する。

#
# Min/max values for automatic uid selection in useradd
#
UID_MIN			  500
UID_MAX			60000
# System accounts
SYS_UID_MIN		  100
SYS_UID_MAX		  499

#
# Min/max values for automatic gid selection in groupadd
#
GID_MIN			  500
GID_MAX			60000
# System accounts
SYS_GID_MIN		  100
SYS_GID_MAX		  499

こんな感じ。
20.04 から uid/gid が 999 な systemd-coredump とかいうユーザがあるので、これの uid/gid を調整。find で uid または gid が 999 なファイルを探したが無かったので、サクっと変更する。実際は /etc/passwd と /etc/group を修正する。/etc/passwd は vipw で編集。
一般ユーザを作成する。sudo adduser hoge --uid 501 で作成。
作成したユーザの調整。インストール時に作成したユーザと同じグループに入れる。/etc/group を編集。

ssh:x:118:
netdev:x:119:
lpadmin:x:120:myadmin
avahi:x:121:
scanner:x:122:saned

こんなのを、

ssh:x:118:
netdev:x:119:
lpadmin:x:120:myadmin,hoge
avahi:x:121:
scanner:x:122:saned

こんな感じに。vi で :%s/myadmin/myadmin,hoge/g で全置換。ただし、

myadmin:x:1000:

myadmin,hoge:x:1000:

になるので、この行は手作業で戻してやる。
以降の作業は、作成したユーザでおこなう。

AWS の CodeCommit と Windows の Sourcetree

Windows の SourcetreeAWSCodeCommit を扱う。

Git を GUI で扱うツールで初めて使ったのが Atlassian の Sourcetree でした。当時は Mac の上でコードを書いていたんですが、最近は Windows でも書くことが増え、Windows 版の Sourcetree も使うようになってきました。

で、Windows 版の Sourcetree では、デフォルトで Embed 版の Git を使うようになっています(多分)。そして、私はリポジトリへのアクセスは ssh を使っています。Winsows 版 Sourcetree の Git が ssh スキームのときにどの ssh を使うかなどをきちんと認識しておかないと面倒なことになります。以前は Pagent が使われていたと記憶しているのですが、Git に PuTTY が組み込まれていると理解していました。というのも、(そうならば当然と思うのですが) ~/.ssh/config を読むということがなかったからです。

CodeCommit からリポジトリをクローンするときに、

ssh://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/hogerepo

のような URL(?)でアクセスしますが、これでは IAM に登録した鍵の ID の情報が無いのでエラーになります。ホスト名の前に SSH キー ID をつけて、

ssh://<SSH Key ID>@git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/hogerepo

のような形にすると、SSH Key ID としてアクセスして、Pagent に登録した鍵でアクセスしてくれました。

 

どんどん追加していく。

天板

IKEA GERTON
GERTONこれ。155×75 で 12,990 円。幅がありすぎるかも。
IKEA EKBACKEN
EKBACKENこれ。126x65x2.8 で 9,900 円。何色かあるみたい。IKEA のキッチンワークトップのページ
IKEA LINNMON
LINNMONこれ。120×60 で厚みは表記が無いけれども 3.4 くらいらしい。2,999 円。安い。

マルトクショップで買うのも良いかも。実際に買った人の記事(【DIY】低予算で簡単!ネットでオーダーした天板で自作デスクを作ってみた。)

参考ページ

node.js 環境

python 環境からの続き。

ndenv のインストール。

$ anyenv install ndenv
$ anyenv install nodenv
$ exec $SHELL -l

node.js を入れてグローバルの設定。

$ nodenv install 4.3.2
$ nodenv install 6.10.3
$ nodenv install 8.10.0
$ nodenv install 10.15.3
$ nodenv global 10.15.3

npm を新しくしておく。

$ npm install -g npm

とりあえず、ここまでかな。

python 環境

必要そうなもの。

$ sudo apt install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev git

anyenv と anyenv-update のインストール。

$ git clone https://github.com/anyenv/anyenv ~/.anyenv
$ vi ~/.bashrc

# anyenv environment
if [ -d “$HOME/.anyenv/bin” ] ; then
export PATH=”$HOME/.anyenv/bin:$PATH”
fi
eval “$(anyenv init -)”

$ ~/.anyenv/bin/anyenv init
$ exec $SHELL -l

ANYENV_DEFINITION_ROOT(/home/nakase/.config/anyenv/anyenv-install) doesn’t exist. You can initialize it by:

> anyenv install –init

$ anyenv install –init

Manifest directory doesn’t exist: /home/nakase/.config/anyenv/anyenv-install
Do you want to checkout ? [y/N]: y
Cloning https://github.com/anyenv/anyenv-install.git master to /home/nakase/.config/anyenv/anyenv-install…
Cloning into ‘/home/nakase/.config/anyenv/anyenv-install’…
remote: Enumerating objects: 48, done.
remote: Total 48 (delta 0), reused 0 (delta 0), pack-reused 48
Unpacking objects: 100% (48/48), done.

Completed!


$ mkdir -p $(anyenv root)/plugins
$ git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update

pyenv と pyenv-virtualenv のインストール。

$ anyenv install pyenv
$ exec $SHELL -l
$ git clone https://github.com/yyuu/pyenv-virtualenv $(anyenv root)/envs/pyenv/plugins/pyenv-virtualenv

AWS 関連なので python は 2.7 系と 3.6 系と 3.7 系を入れておく。

$ pyenv install 2.7.16
$ pyenv install 3.6.9
$ pyenv install 3.7.4

グローバル環境の作成。

$ pyenv virtualenv 3.7.4 my-global
$ pyenv global my-global

aws-cli のインストール。pyenv などを使っているときには –user は指定しない。

$ pip install awscli --upgrade

~/.aws/credencials と ~/.aws/config を作成・修正して、完成。

Mac で nfs エクスポート

Mac で nfs エクスポートする。VMware 上の Linux でマウントするため。

Mac 側では、/etc/exports で、

/Users/hoge/develop -mapall:hoge:hoge -network 172.16.133.0 -mask 255.255.255.0

ここで、GID も hoge にしているけれども、Mac のデフォルトグループでは gid が 200 の staff になっているが、これが Linux 側で dialout になっているため。この作業の前に、

$ sudo dscl . -create /Groups/hoge
$ sudo dscl . -append /Groups/hoge PrimaryGroupID 501
$ sudo dscl . -append /Groups/hoge GroupMembership hoge
$ sudo dscl . -read /Groups/hoge

としておく。先に MacPorts とか入れると、GID 501 を取られてしまうので要注意。

それと、Linux 側の /etc/login.defs を修正して、最小一般ユーザ UID と GID を 500 とかにして、Linux 上での作業ユーザを UID 501 でつくっておく。

Linux でのマウントに関しては、/etc/fstab で、

172.16.133.1:/Users/hoge/develop /home/hoge/develop nfs defaults 0 0

として、自動的にマウントするようにする。