アカウント名:
パスワード:
EFIシステムパーティションはFAT32固定というアレな仕様ゆえに、適切な権限で書き込みしていたとしても、突然の電源断等で容易に破損する可能性があるので、EFIパーティションに書き込みするのは良くないことだと認識され、一部のPCやマザボ、大半のAnti-Virus系アプリ等は、EFIシステムパーティションに対する書き込み要求をブロック、又は単純にスルーする
Linuxにカーネル自前のEFI Boot Stubが実装された当時も、「新しくビルドしたカーネルを何度EFIに送り込んでも更新されず、古いものがいつまでも居座ってる」などと大騒ぎする人がまれによく居たね
確かその人達の使ってるPCやマザボが、起動したファームウェアはその環境上から差し替えすることができない仕様で、一旦新しいカーネルを別なOSのファームとしてEFIに突っ込んで起動した後、古い方を削除するというやり方しか受け付けないとかなんとか・・・
NVMeでEFIブートの使用を強いられて始めて痛感するね、EFIって本当にクソだと
あれはWindowsのように基本的にファームウェア固定のOSならともかく、LinuxやMacのようにしょっちゅう更新するようなOSのブートローダとしては極めて使いにくい
Macのことは知らんが、うちではEFIからカーネル直ではなく、一旦grub2を噛ますという、ブートローダからブートローダを呼び出すような運用してるわ
systemd-bootx64.efiとsystemd-bootコンビでもいいけど、systemdもカーネルに負けず劣らず更新多いからなぁ・・・
#だいたいEFIパーティションがFAT32固定って何なの? バカなの?#そんなことやってるから、誰もが破損恐れて書き込み毛嫌いし、結果こんな自体になってんだろうがよ
LinuxやMacでしょっちゅうファームウェアを更新するという話の根拠は?少なくともMacの場合ファームウェアの更新なんてOSのメジャーバージョンが上がる時に来るか来ないか程度の話だと思っていましたが。ブートローダはともかく。
何、NTFSとかexFatとかReiserFSとか、LZHが生に書かれるとかなら良かったわけ?だれがファイルシステムドライバ書くと思ってるんだか(UEFI含)。
ファームにしろOSにしろ、誰もが理解できる(しどうせサポートしないといけない)という点でFAT12/16/32はには利点があると思うがね。
対策するにしても複雑なファイルシステム使うより、FAT32のまま二重化しといて中断対策なりロールバックなりできようようにしとくほうが楽だろね。
FAT32なんて、書き込み方さえ気を付ければ壊れるタイミングはrenameだけだしな浮きクラスタが出来る可能性は潰せないけど、壊れるって訳でもないし、回収も出来る
古いの消して新しいのを書き込む、だと途中で止まったら起動不能になる。新しいのを書き込んでチェック終わったら古いのを消す、なら問題ないのかな。
両方あったら古いのを使うってことにするか、ないしは古いのを消さずにチェック完了のフラグを置いて起動成功段階で古いのとフラグを消すとかでも行けるか。
まぁそれでも怖いって人は怖いんかな……ちゃんとバッファを適宜フラッシュできれば問題ないはずなんだが。
MacのEFIはHPFS+/APFS。IntelのEFI開発キットこそFAT32のパーティションだったけど、EFIのファイルシステム・ブートローダーをどうするかはベンダ任せ。UEFIの仕様はよく知らないけど、そこでPC用の運用規格としてFAT32のEFIパーティションになったんじゃないかな。EFIパーティションをロックするのは /bootをROでマウントするのと同じ理由で、FAT32だからではないと思う。
誰もが破損恐れて書き込み毛嫌いし
そんなに嫌なら書き込みキャッシュオフにすれば?
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
犯人はmoriwaka -- Anonymous Coward
EFI使ってるとよくあること (スコア:0)
EFIシステムパーティションはFAT32固定というアレな仕様ゆえに、適切な権限で書き込みしていたとしても、突然の電源断等で容易に破損する可能性があるので、EFIパーティションに書き込みするのは良くないことだと認識され、一部のPCやマザボ、大半のAnti-Virus系アプリ等は、EFIシステムパーティションに対する書き込み要求をブロック、又は単純にスルーする
Linuxにカーネル自前のEFI Boot Stubが実装された当時も、「新しくビルドしたカーネルを何度EFIに送り込んでも更新されず、古いものがいつまでも居座ってる」などと大騒ぎする人がまれによく居たね
確かその人達の使ってるPCやマザボが、起動したファームウェアはその環境上から差し替えすることができない仕様で、一旦新しいカーネルを別なOSのファームとしてEFIに突っ込んで起動した後、古い方を削除するというやり方しか受け付けないとかなんとか・・・
NVMeでEFIブートの使用を強いられて始めて痛感するね、EFIって本当にクソだと
あれはWindowsのように基本的にファームウェア固定のOSならともかく、LinuxやMacのようにしょっちゅう更新するようなOSのブートローダとしては極めて使いにくい
Macのことは知らんが、うちではEFIからカーネル直ではなく、一旦grub2を噛ますという、ブートローダからブートローダを呼び出すような運用してるわ
systemd-bootx64.efiとsystemd-bootコンビでもいいけど、systemdもカーネルに負けず劣らず更新多いからなぁ・・・
#だいたいEFIパーティションがFAT32固定って何なの? バカなの?
#そんなことやってるから、誰もが破損恐れて書き込み毛嫌いし、結果こんな自体になってんだろうがよ
Re:EFI使ってるとよくあること (スコア:2)
LinuxやMacでしょっちゅうファームウェアを更新するという話の根拠は?
少なくともMacの場合ファームウェアの更新なんてOSのメジャーバージョンが上がる時に来るか来ないか程度の話だと思っていましたが。ブートローダはともかく。
Re:EFI使ってるとよくあること (スコア:1)
何、NTFSとかexFatとかReiserFSとか、LZHが生に書かれるとかなら良かったわけ?
だれがファイルシステムドライバ書くと思ってるんだか(UEFI含)。
ファームにしろOSにしろ、誰もが理解できる(しどうせサポートしないといけない)という点でFAT12/16/32はには利点があると思うがね。
Re: (スコア:0)
対策するにしても複雑なファイルシステム使うより、FAT32のまま二重化しといて中断対策なりロールバックなりできようようにしとくほうが楽だろね。
Re: (スコア:0)
FAT32なんて、書き込み方さえ気を付ければ壊れるタイミングはrenameだけだしな
浮きクラスタが出来る可能性は潰せないけど、壊れるって訳でもないし、回収も出来る
Re: (スコア:0)
古いの消して新しいのを書き込む、だと途中で止まったら起動不能になる。
新しいのを書き込んでチェック終わったら古いのを消す、なら問題ないのかな。
両方あったら古いのを使うってことにするか、
ないしは古いのを消さずにチェック完了のフラグを置いて起動成功段階で古いのとフラグを消すとかでも行けるか。
まぁそれでも怖いって人は怖いんかな……ちゃんとバッファを適宜フラッシュできれば問題ないはずなんだが。
Re:EFI使ってるとよくあること (スコア:1)
MacのEFIはHPFS+/APFS。IntelのEFI開発キットこそFAT32のパーティションだったけど、EFIのファイルシステム・ブートローダーをどうするかはベンダ任せ。
UEFIの仕様はよく知らないけど、そこでPC用の運用規格としてFAT32のEFIパーティションになったんじゃないかな。EFIパーティションをロックするのは /bootをROでマウントするのと同じ理由で、FAT32だからではないと思う。
Re: (スコア:0)
誰もが破損恐れて書き込み毛嫌いし
そんなに嫌なら書き込みキャッシュオフにすれば?
Re: (スコア:0)
キャッシュ有効にして壊れるとかカーネルバージョンに依存したローダーをEFI system partitionに置くとか
Linuxの実装に問題があるだけだと思うよなぁ。。。