zsh の設定調整
macOSの標準シェルがzshになって、Linux環境にもzshを入れて使い始めたけど、時々予想外の動きをしてくれた。
リモートのファイルをscpでコピーしようと “scp remote:*.c .”みたいなことをしたら、no match*.c みたいなエラー。ワイルドカード展開のタイミングが bash などと違うみたい。
逆に、リモートホスト名が書いてある状態だと、ファイル名補完でリモートに接続しようとして待ちが発生して使い勝手も悪くなるといった情報もある。
そこで、上記2つの問題に対応するために、.zshrc に以下の内容を追加。
PROMPT="%F{cyan}[%n@%m %1~]%(#.#.$)%f " setopt nonomatch zstyle ':completion:*:complete:scp:*:files' command command -
macOS Catalina と zsh
macOS Catalina(10.15)
基本ファイルシステムがリードオンリーになるとか、システムの変更がいつもになく危険そうでアップデートを躊躇っていた、macOS Catalina だけど、人柱の方々の撃沈のネタもなく、ようやく Catalina を入れてみた。
でも、心配だった割には、特に重大なトラブルもなく、インストールは終わった。
この後、Macports なども更新を行った。一部、ossp-uuid のパッケージが不具合を発生して、”sudo port clean ossp-uuid” を実行した程度。
Debian環境も zsh に移行
インストールも無事に終わったけど、Catalina からは標準 shell が zsh に変更になった。そこで、身の回りの Debian の環境でも zsh を入れてみた。
ただ、インストールしようとすると、zsh-static という動的リンクをしないパッケージもある。
システムの動的リンクライブラリが異常になっても動くようにということだろう。そこで admin では、zsh-static を使うようにしておいた。
$ sudo aptitude install zsh zsh-static $ chsh -s /bin/zsh $ sudo chsh -s /bin/zsh-static root
macOSでtelnet
色々とネットワークの状況確認をする時には、telnet を使うけど、何気なく macOS で telnet を使ったら、command not found とな。which telnet しても、ダメ。
High Sierra 頃から、標準では消されたのを思い出し、”sudo port install inetutils”を動かし、インストールが終わったので改めて、”telnet…” 再び、command not found… なぜぇ〜。
MacPorts の使い方間違えたかと悩んだけど、結論は、”gtelnet” でインストールされている。”ls /opt/local/bin/g*”を実行したら、”gcat gcp gftp…” MacPorts でインストールした、GNU 物って、最近は全部”g*”になってるのね。
まあ、macOS標準物と混ざって誤動作ネタになることも多いだろうし、解らなくもないが、気づかなかった。
MacPortsをMojave版に更新
Mojaveをインストールしたため、MacPorts の再インストール。
最初に Xcode を更新し、Command Line Tools をインストール
$ xcode-select --install
Migration – MacPorts の記事を参考に、”installing the base MacPorts system”からダウンロードできる “MacPorts-2.5.X-10.14-Mojave.pkg” をインストールしたあと、以下を実行
$ sudo port selfupdate $ sudo port upgrade outdated
High Sierraのrootパスワード
High Sierra でユーザ名に root を入れたら、パスワード無しで root になれる件、対策で root のパスワード設定するだけでいいらしい。だけど、その方法の紹介記事が、root を有効にして…とか面倒な方法が書いてある。
$ sudo passwd root
でいいんじゃね?って思ったけど、やっぱそれで充分だよね。
あれ、Dropbox 使ってないじゃん
今まで、LaTeX 仕事だと、Linux 環境じゃないと今一つ不便 だった。 このため、Windows,Mac で作業をするときは、 Windows,Mac,Linux で Dropbox を起動して共有させて、 terminal 経由で実際は Linux 上で作業をしていた。
LaTeX 仕事なら、emacs anthy anthy-el texlive-lang-cjk texlive-binaries tgif があれば、 ひとまず問題なし。
でも、Windows で、Windows 10 Creaters Update の Bash on Windows でも terminal がまともに使えるから、emacs も自然に動く。 実質 debian だし、aptitude install texlive-lang-cjk で、 LaTeX 環境も悩まずに入る。
同じく、Mac でも、MacPorts で LaTeX 環境が動くので、 Linux で作業する必要がほぼ無くなってきた。
でということで、Dropbox をほぼ使わなくなっているので、 「Dropbox、今までありがとうございました」
MacPorts もアップデート
Perl の CPAN も更新したけど、テストを前に Mac の LaTeX 環境用 ということで、MacPorts も更新しよう。
(( MacPorts 自体の更新 )) $ sudo port selfupdate (( MacPorts のリスト更新 )) $ sudo port outdated (( インストール済みの更新 )) $ sudo port upgrade installed
これは、自分自身へのサーバ作業の健忘録です。