Ubuntu日本語フォーラム
ログインしていません。
ubuntuでは24.04で確認しましたが、AlmaLinux9でも同様の現象が発生したので、もしかしたらハードウェア側の問題かもしれません。
もし同様の現象をご存じの方がおられればその旨だけでもご助言いただければ幸いです。
この度、少し古いミニPC、BMAX-B1にセンチュリーのCLS35U3BKF6G(愛称:四代目冷やし系HDD検温番)を接続してファイルサーバを構築したいと思い、ubuntu24.04をインストールしてみましたが、表題の通り再起動するとHDDを認識しなくなります。
今の所、判明している現象は以下の通りです。
1.先にubuntuを起動し後からHDDの電源を入れると正常に動作する
2.その状態でそのままrebootすると認識しなくなる
3.シェルから手動でumountとudisksctl power-off -bを実行した後にrebootすると正常に認識する
4.しかし、systemdにシャットダウン時/再起動時にumountとudisksctl power-offを行うシェルスクリプトを実行するよう設定しても、その後は認識しなくなる
※一応ログは残っているので、シェルスクリプト自体は実行されているようなのですが…
特に4が発生する理由が解りません。シェルから手打ちで実行する事と、シェルスクリプトで実行する事(あるいはsystemdから呼び出す事)に何か違いがあるのでしょうか?
もし必要なら、現在行っているsystemdへの設定やシェルスクリプトも掲載しますので、その旨ご指示をお願いします。
大変申し訳ありませんが、皆様のお知恵をお貸しいただければ幸いです。
よろしくお願い致します。
オフライン
4.しかし、systemdにシャットダウン時/再起動時にumountとudisksctl power-offを行うシェルスクリプトを実行するよう設定しても、その後は認識しなくなる
以下 raspbian/buster の時に調べたことなので Ubuntu 24.04 では差異があるかもしれませんが基本的な大枠は変わっていないはずなので、ご参考程度に:
udisksctl は udisks2 daemon (/usr/libexec/udisks2/udisksd) にリクエストを送るだけで実際の処理はこの daemon が行っています。なので、systemd の service unit から udisksctl を実行するならudisks2.service が動いている間に実行されるよう依存関係を記述しなければなりません。
ただ、shutdown/reboot 時にその device が停止可能状態になった後に service を起動して、かつ、その処理が完了した後にudisks2 を止めるような依存関係はどうやったら書けるのか私には分かりませんでした。
service unit 間の依存関係とは別にudisksctl が終了した時に udisks2 側の処理が完了しているのかも私には分かりません。
# 当時は諦めて udisksd のソースを読んで等価な処理を実行させました。
# 当然こんなやり方はお勧めできません。
オフライン
非常に詳細な解説、本当にありがとうございました。
こちらの想定通りに動かない理由については理解しました。
どうやら設定等で解決できそうな問題ではなさそうですね。
残念ですが、N100のミニPC等、安価なWindows11搭載PCでの構築を検討してみます。
やはりubuntuを含むLinuxは、こういう少しマイナーな周辺機器のサポートはWindowsに比べて劣っているようですね。
安定性やOSSとの整合をどのようにとるか、難しい課題がある事は理解していますが、使う側としてはやはり不便に感じてしまいます。
ともあれ貴重なアドバイス、まことにありがとうございました。
ubuntu自体は他の環境でこれからも使っていきたいと思っておりますので、今後とも宜しくお願い致します。
オフライン
sysfsを叩いて切り離し切断させることはできますが、当然数々の安全策を講じる必要がありそうなのが……
という戯言は捨て置き、本題はこちら。
FAZZ による投稿:
残念ですが、N100のミニPC等、安価なWindows11搭載PCでの構築を検討してみます。
CLS35U3BKF6Gのマニュアルを見ますと、トラブルシューティングに「 PCによっては接続したままOSを起動すると認識しないものがあるため、USBコネクタを接続しなおしてみる」と書かれていますので、実績があるのを選んだほうが良さそうな気はします。
オフライン
お返事ありがとうございます。
sysfsというキーワードで検索できるのは、かなり古い記事ですね…
https://dayflower.hatenablog.com/entry/20100723/1279874038
とはいえ「ここまで踏み込まないと、手動では『ちゃんと』は切り離せないのか…」という事は理解できました。
これは「ちょっと試してみる」という訳にはいかなそうですね。
一応、手持ちにN95のミニPCが(別用途で)あるので、Windows11の再起動とシャットダウン後の起動で問題なく認識できる事を確認し、今回の用途用にN100のミニPCを購入しました。
とりあえずはこの構成で進めてみます。
余ったBMAX-B1、何に使いましょうかねぇ…(失笑)
オフライン