現在、Raspberry Pi 5 で運用している NAS サーバはサーバアプリケーションに samba を利用しており、記憶媒体は USB 接続の外付け HDD で運用しています。この HDD は論理パーティションで区切っているのですが、今回は NAS サーバに Linux の LVM2 を導入し、柔軟にサイズ変更などが可能な論理ボリュームに移行したいと思います。
また、現在の HDD では USB を挿すだけで誰の PC からもデータが見える状態ですので、ついでに論理ボリュームの暗号化もしていきます。
Docker で一度確保された領域は、イメージ内で空き領域を増やしても、どうやらホストマシン上では自動的には開放されないらしい。ということで、今回は無駄に拡大されて開放されなくなってしまった Docker イメージ(正確には仮想マシンの VHDX)を縮小していきます。
自作の DeepL API 向け CLI ツールである「dptran」で、先日のアップデートより任意・自作の翻訳 API を利用できるようになったので、実験としてローカル LLM を利用した翻訳 API を作成し、dptran から LLM 翻訳を実行してみました。
今回は作成方法からプロンプト、そして実行結果までを共有したいと思います。
普段より Yapps という Web アプリサイトを GitHub Pages 上で運営しており、主に JavaScript でアプリを実装しているのですが、これまでは自分で書いた js ファイルはミニファイをしておらず、改行・コメント等が残されたままでした。
ご存知の通り、JavaScript はブラウザで実行させるためにバイナリにコンパイルして配布するわけではなく、ソースファイルを配布するのが一般的です。ブラウザでファイルを読み込み、ブラウザ実装の js エンジンで構文解析、バイトコード変換、インタプリタ実行、JIT compile、…といった手順が踏まれます。
js ファイルは単なるテキストファイルですので、単なる改行であろうと単なるコメントであろうとブラウザはそれも含めて読み込みます。が、実行の上では無駄なデータでしかなく、それを回避することは有意義と言えます。
この無駄な改行やコメントを削除する工程を「minify(ミニファイ)」「minimize」あるいは「圧縮」などといいます。世の中のイケてるサービスはだいたいミニファイをきちんと実施している印象です。というわけで、世の中で一般的に行われているミニファイを適用しようと意気込んだのですが、毎回自分でやるのは面倒です。せっかく GitHub Pages を使っていることですし、毎回のデプロイごとに GitHub Actions にやらせることにしました。
先日、crates.io にて Rust 製の画像処理ツール「rusimg」を crates.io にて公開しました。BMP, JPEG, PNG, WebP の各種主要フォーマットに対応し、フォーマット間での画像変換・リサイズ・圧縮(クオリティの指定)・トリミング・コマンドライン上での画像表示に対応しています。
https://crates.io/crates/rusimg
※インストールには Rust のインストールが必須です
開発者である私自身、開発しながら既に長いこと普段使いしており、例えば当ブログに貼っている画像はほぼすべて JPEG や PNG 形式から WebP 形式に rusimg で変換したものです。よって動作確認はバッチリです。
とは言ってもこちらのツール、当ブログでは初出ではなく…もう2年も前になるんですが、開発途中のツールの紹介記事として2023年7月に一度言及しています。
自作画像変換ツール「rusimg」の紹介 | 為せばnull
「一旦ベータ版として近日中に公開しようかなと思っております」なんて書いてたのに、ベータ版として公開することすらなく2年も放置していました。申し訳ございません…
RTL-SDR を購入して10ヶ月、すっかりラジオ代わりとして普段使いしております。広い周波数帯を聞けることが RTL-SDR のメリットですが、結局は FM ラジオの受信がほとんどです。
普段はラズパイ(Linux)をサーバとして RTL-SDR のドングルを USB 接続しており、rtl_tcp を使って LAN 内の Windows マシンや Mac マシンなどのクライアントソフトで受信して聞いています。
毎週水曜に深夜ラジオ番組を聞くんですが、就職に伴いリアタイできなくなってしまいました。そこで予約録音したいのですが、普段使っている SDR# で予約録音するにはクライアント側、すなわち Windows マシンを録音する深夜に立ち上げておかなければなりません。
そこで、Linux 向けの RTL-SDR コマンドツールとシェルスクリプトを組み合わせ、指定した日時から指定した時間分の録音をできるようにしました。
以前、こんな記事を書きました。
GRUBがデフォルトで起動するOSを変更する | 為せばnull(2021年10月16日投稿)
今回やりたいのは上記の記事と同じことなんですが、久々にやろうとしたらなんか様子が変わっていたので、対処法をメモしておきます。
最近、ラズパイサーバに fail2ban を導入しました。
fail2ban とは、簡単に言えば SSH で複数回パスワード認証に失敗したり(対ブルートフォース攻撃)、Apache の HTTP(S) サーバで無効な URL に複数回アクセスしたり(対ディレクトリ・トラバーサル攻撃)したときに、IP アドレスごとファイアウォールでブロックしておくことで攻撃者によるアクセスを自動的に遮断するツールです。
せっかくだから SSH ハニーポットに fail2ban を適用し、ブルートフォース攻撃にどんな影響が現れるのか気になったので自分の環境で試してみました。
先日、crates.io にて、Windows からプロセスやスレッドの情報を取得するライブラリクレート「winprocinfo」を公開しました。
winprocinfo - crates.io: Rust Package Registry
せっかく作ったのでその中身のお話をしたいと思います。
今回は Yapps のアクセス解析に関するお話です。
当ブログは大したアクセス数を得られない弱小個人ブログですし、YotioSoft に至っては目も当てられないレベルなのですが、Yapps だけは違います。
まだ月間1万 PV までは到達していませんが、今や稼ぎ頭的な存在です(広告貼ってないけど)。せっかくここまで増えたのだから、現状分析と今後の対策を立てて、実験も兼ねて1万 PV を目指していこうかなと思います。