Blog¶
Python で「ファイルを一行ずつ読み込む」サンプル
Python で「ファイルを一行ずつ読み込む」サンプルをメモしておきます。 よく end=""
を忘れて意図しない、余計な改行をしてしまいます…
1 2 3 4 5 |
|
macOS 14.4 で yabai が動作しない
普段は macOS を使っているのですが、デスクトップの切り替えには TotalSpaces2 という、有償のソフトウェアを使っていました。 ですが、TotalSpaces2 は Intel 版の mac にしか対応していません。 Apple Sillicon 対応の TotalSpaces3 も開発が進められていましたが、こちらは安定版のリリースに至っておらず、サポートページから無保証でバイナリがダウンロード出来る状態のようです。
代替策として、同じく有償の Space Capsule というソフトウェアがあるそうです。 こちらは 1,499 円だそうです。 10 日間の試用版もあるそうですが、試していません。
TotalSpaces2 が利用出来なくなって以降は yabai を使っていました。 ただ、macOS のバージョンが上がると yabai が動作しなくなることがしばしばあります。 yabai が使えないとかなり使い勝手が悪くなってしまう為、最近は「新バージョンの OS がリリースされてもしばらく様子見してからバージョンアップする」ようにしているのですが、今回はあまり確認をせず macOS 14.4 へバージョンアップしたところ、やはり yabai が動作しなくなってしまいました… この問題は既に Issue として報告されています。
- #2146 Loader quit unexpectedly
- #2149 The document yabai.osax could not be opened after upgrading to Sonoma14.4
#2146 のコメント として下記のように報告されています。
Payload has been fixed on master.
Note that there are tons of breaking changes on master compared to the last released version, and there will likely be more breaking changes before a new release is made.
Consult the changelog before you consider building the master branch from source.
早期に修正版がリリースされることを期待します! (開発者の皆さんに感謝です!!)
Ubuntu 22.04 へ Cisco CSLU をインストールする
Cisco の Smart License / Smart License Using Policy は SSM (Smart Software Manager) で管理する方法があります。 この場合、「SSM 専用の仮想マシンを用意する」ことになります。 尚、SSM は Public Cloud や物理サーバはサポートされておらず、仮想マシンのみがサポート対象です。 以下は Cisco Smart License Utility Release Notes からの抜粋です。
- As of now, deployment of the SSM On-Prem on the cloud (AWS, GCP, etc.) and on physical servers (Cisco UCS M2, M3, etc.) is not supported.
- SSM On-Prem has been officially tested/supported on VM
既存で Windows や Linux がある場合は Windows / Linux 上へ CSLU (Cisco Smart Licensing Utility) をインストールして利用する方法があります。
- Cisco Smart Licensing Utility
- Cisco Smart License Utility Release Notes
- Cisco Smart Licensing Utility User Guide
- Cisco Smart Licensing Utility Quick Start Setup Guide
現時点で CSLU の最終アップデートは 2022 年 11 月とやや古いのですが、今回は CSLU を Ubuntu 22.04 へインストールする手順をメモしておきます。
CML でノードの起動時間を取得する
Cisco CML で「一定時間以上、起動しているラボは停止する」という処理を実装しようと思ったのですが、ラボには「作成時間」や「起動時間」というプロパティが存在しないようです。 代替手段として「機器へ TELNET / SSH して uptime を取得する」という方法もあるかもしれませんが、イマイチです。 ラボそのものには「起動時間」のプロパティが無いものの、ノードには「起動時間を示すプロパティ」があるようです。 今回はその値を取得する Python のサンプルプログラムをメモしておきます。
Cisco ACI 5.3(8i) リリース
Cisco ACi 5.3(8i) がリリースされました。 5.3 系としては 5.3(1d) と 5.3(2a) に続く、みっつ目のリリースです。 変更点は Resolved Issues の追加のみのようです。
- ダウンロードページ
- リリースノート
Cisco ACI 6.0(5h)M リリース
Cisco ACi 6.0(5h)M がリリースされました。 5.3 系としては 5.3(1d) と 5.3(2a) に続く、みっつ目のリリースです。 変更点は Resolved Issues の追加のみのようです。
- ダウンロードページ
- リリースノート
JupyterLab の Markdown 部分に画像を挿入する
一般的な Markdown 同様、JupyterLab の Markdown 部分に画像を挿入したい場合、以下の方法があります。 どちらの方法も効果は同じなので、慣れている方法で記載するのが良いと思います。
Markdown で書く方法
1 |
|
HTML の img タグで書く方法
1 |
|
JupyterLab を停止する際、「y/n」を聞かれないようにする
JupyterLab を停止する際、通常では [y/n]
の入力を要求されます。 これを入力せずに 5 秒放置すると [y/n]
の入力はキャンセルされ、サーバは停止せずに動作を継続するようです。
1 2 3 4 |
|
-y does not confirm exit prompt #9585 で言及されていますが、JupyterLab を起動する際に -y
というオプションを付与することで停止時に [y/n]
を入力すること無く、即時サーバを停止出来るようです。 Jupyter Notebook を Docker Compose で起動し、トークン無しでログインする で言及した内容ですが、トークンの入力も省略して JupyterLab を起動する場合、例えば以下のように実行します。
1 |
|
これでサーバ停止時に [y/n]
を要求されなくなります。