Skip to content

2020/02

pyenv 自身をバージョンアップする

pyenv 自身をアップデートしたい場合、以下のように pyenv のインストールディレクトリで git pull するだけで可能です。

1
2
cd ${PYENV_ROOT}
git pull

プラグインを利用したい場合は pyenv-update${PYENV_ROOT}/plugins/ 配下にコピーします。

1
git clone git://github.com/yyuu/pyenv-update.git ${PYENV_ROOT}/plugins/pyenv-update

後は pyenv update すれば pyenv のアップデートが実行されます。

1
pyenv update

CentOS8 に axel をインストールして大きなファイルを分割ダウンロードする

以前に axel で CLI 上から分割ダウンロードするというメモを書きました。 CentOS8 では標準リポジトリや EPEL では axel が提供されていません。 getpagespeed というリポジトリでは axel が提供されているのですが、getpagespeed リポジトリを使うには登録が必要のようです (未確認)。 その為、今回はソースコードから axel をインストールしました。

指定された URL の英単語数を数える

「海外メーカー製品は、ドキュメントを英語で読むのが大変」という会話を耳にしたので、実際に「海外メーカー = シスコのドキュメントの英単語数」を計測してみました。 「英語の勉強をしてみよう」と思い立つのですが、単語を覚えるにしても「とりあえず人気のありそうな単語帳を買って…」となっても、興味が無く・使わない単語は忘れてしまいます。 逆に言うと「テクニカルドキュメントによく出てくる単語」を重点的に勉強すれば効率が良いのでは… と思い立った、ということもあります。 当初は「指定 URL の単語数を数える」だけのサンプルスクリプトを作ったのですが、結局 word-counter として PyPi に登録しました。 とは言え、PyPi として登録するほど大したことはしていません……

なぜインターネットの MTU は 1,500 バイトになったのか

Ben Cox の Blog は興味深い記事が多く掲載されています。 その中でも How 1500 bytes became the MTU of the internet という記事が面白かったので、Ben さんに許可頂き、日本語に翻訳してみました。 英語が苦手なので、ところどころ「どう、ニュアンスを訳して良いのか?」が分かりませんが、とりあえず自分の勉強を兼ねてメモしておきます。 Thanks for your great article, Ben!

Python で営業日を取得出来るライブラリ「jpbizday」を公開

日本の祝日情報を取得する Python ライブラリは幾つかありますが、動作は以下に大別出来ると思います。

  1. オンラインで動作するもの (「Google カレンダー」や「公共機関が出しているカレンダー」からネットワーク経由で情報取得するもの)
  2. オフラインで動作するもの

どちらも一長一短ですが、「1. オンライン」の場合は当然、オンライン側の URL や提供データのフォーマット変更などの影響を受けてしまいます。 「2. オフライン」タイプのライブラリとしては jpholiday という、素晴らしいライブラリが公開されています。 こちらのライブラリを利用する形で (祝日では無く) 営業日情報を取得する jpbizday というライブラリを作成しました。

WSL でマウントしたファイルシステムでもパーミッションを扱えるようにする

WSL は一般的には「VolFs」と「DrvFs」の、ふたつのファイルシステムを併せて運用することになると思います。

  1. VolFs (WSL 内部を管理する。 WSL 上にインストールされたディストリビューションを管理するファイルシステム)
  2. DrvFs (WSL 外部を管理する。 WSL 上からマウントされた外部 (NTFS など) を管理するファイルシステム)

ですが、デフォルトの状態では DrvFs でパーミッションを細やかに管理することが出来ません。 WSL のファイルアクセス許可には下記のように書かれています。

ファイルにメタデータが関連付けられていない場合は、Windows ユーザーの有効なアクセス許可を読み取り/書き込み/実行ビットに変換し、ユーザー、グループ、およびその他の同じ値として設定します。 たとえば、Windows ユーザーアカウントに読み取りと実行のアクセス権があり、ファイルへの書き込みアクセスが許可されていない場合は、ユーザー、グループ、およびその他の r-x として表示されます。 ファイルに Windows で ' 読み取り専用 ' 属性が設定されている場合、Linux では書き込みアクセス権は付与されません。

ですが、DrvFs をマウントする際に metadata オプションを指定することで、パーミッション情報をメタデータに保存することが出来るようになります。