Skip to content

Linux

自分用・検証用 Ubuntu22.04.2LTS 作成手順メモ(2023/05/06 版

以前に以下のメモを書きました。

現時点では Ubuntu 22.04.2LTS までリリースされていますので、改めて検証用 Ubuntu の作成手順をメモにしておきます。 ほぼ過去メモと同じ内容です。

Amazon Linux2 上で TACACS+ F4.0.4.28 の RPM パッケージを作成する

以前に CentOS7 に RPM パッケージで TACACS+ をインストールする というメモを書きました。 Amazon Linux2 上で最新の Tacacs+ (tac_plus) をビルドし、RPM パッケージを作成し直したので、改めて手順をメモしておきます。 今回作成した RPM パッケージは下記からダウンロード可能です。

RPM パッケージ作成手順は以下の通りです。

Linux の 2 つの time コマンド

Linux では同じ time コマンドでも、2 種類存在します。

  • /usr/bin/time
  • bash の 組み込みコマンドである time

上記を踏まえれば当然ですが、「どの time なのか?」を意識せずに実行してしまうと以下のように (実行する time が異なってしまうので) 結果が異なります。

ディレクトリを再帰的に検索してファイルを削除する

macOS では .DS_Store (Desktop Services Store) というファイルが自動的に作成されます。 このファイルに限らないのですが、何れかの理由で「ディレクトリを再帰的に検索し、対象ファイルを削除したい」というケースがあります。 こういった場合は以下のようなシェルスクリプトで対応することが可能です。 -name 指定されているファイル名を変更することで、他のファイルを対象することも可能です。

1
2
#!/bin/sh
find . -name ".DS_Store" -delete

cron から venv 環境の Python スクリプトを実行する

Python スクリプトを実行する為、以下のように /opt/sample ディレクトリ配下に .venv という venv 環境をしたとします。

1
2
cd /opt/sample
python3 -m venv .venv

この環境に対して venv 環境を意識した Python スクリプトを実行するには (システム全体の Python では無く) 以下のように venv 環境内の Python を指定します。 下記の例では /opt/sample/.venv/bin/python3 のように venv 環境内の Python を指定しています。

1
0 0 * * * root cd /opt/sample/ && /opt/sample/.venv/bin/python3 script.py