Apple の脅威の通知と金銭目当てのスパイウェアへの対策について

しばらく返答が寄せられていないようです。 再度ディスカッションを開始するには、新たに質問してください。

起動ドライブの健全性の確保

私は昔、システムDVDからディスク・ユティリティを呼び出して、起動ドライブを修復するのが好きでした。


しかし、Lionになり、アップルのテクニカル・サポートの方々と話をしていると、しばしばセーフ・ブートを勧められます。時間が勿体ないので、不本意ながらセーフ・ブートを実行していますが、ほかの方法では駄目かといつも思っています。


というのは、復元用HD(Recovery HD)からたち上がることが出来れば;


1) Mac OS X ユーティリティからディスク・ユティリティを利用できる。

2) ターミナルも動かせそう(当然、シングル・ユーザ・モード?)なので、

「cd /Volemes/○○; /sbin/fsck -fy」


なのでも同等と思うものです。でも、今一つ自信がありません。


ご解説を戴ければ幸いです。

Mac mini, Mac OS X (10.7.5), Mac mini(mid 2011), iMac(late 2009)

投稿日 2013/02/18 23:23

返信
返信: 23

2013/02/21 00:43 HAL への返信

HALさん:


文書によると「diskutil verify」に対応するみたいですね。

もし宜しければ、元文書をお教え下さいませんか。


自分の力では、「man fsck」から動作を理解しきれていません。ただ

・「TS1417:ディスクユーティリティおよび fsck を使用して、起動時の問題を解決する、あるいはディスクをメインテナンスする 」

で、あれだけ「fsck -fy」を推奨しているので、当面はこれに従うことにして、ボチボチと調べようと思います。


# 一昔前には「fsck -p」の是非が論議されていたようです。


ちなみに、大体月に1度くらいのペースでメンテナンスをかねてセーフモードで起動するようにしていますが、セーフモードだとエラーが自動で修復されてしまい、修復が必要なエラーがあったのか確認できないので事前にシングルユーザモードでfsckをするようにしています。ただ、起動ディスクにエラーがあったことはないです。

そうすると具体的には、月一のメンテ毎に;


1) シングルユーザモードで「fsck -fn」で、エラー検出をし、

2) セーフモードで、エラーの自動修復とキャッシュの自動クリアをする。


と考えて宜しいでしょうか? それとも2)なかで、「ディスクユーティリティ: Disk Utility」を起動して、修復をさせると言う事でしょうか?



#データパーティションは修復可能な範囲のエラーがたまに出ることがあるので注意深くチェックするようにしています。

「注意深くチェック」というのは、具体的にどうされるのでしょうか?



まぁ ぶっちゃけてしまえば、別に好きなようにやったらいいのではないかと思います。


バックアップさえしっかり取っておけば大抵のことはリカバリできます (^^;;

御意。


自分は模索中ですが、起動ドライブとデータドライブを分けて、夫々「Time Machine」に依るバックアップをてり、大きな作業終了毎にドライブ毎に外付けhddにコピーしています。

2013/02/21 01:29 mNeji への返信

>> 文書によると「diskutil verify」に対応するみたいですね。

もし宜しければ、元文書をお教え下さいませんか。


元も何もリンク先の文書を読んでそう思っただけです (^^;

「diskutil verify(verifyは「検証」の方なので正しくはrepairでしょうか)」がディスクユーティリティに対応すると思った根拠はdiskutilというコマンドにはディスクユーティリティの機能に対応するオプションが一通り用意されているのでこれがディスクユーティリティのベースだろうという至って単純なものです。

ただ、はにさんが指摘されたようにdiskutil repairもfsckを使っているので結局はfsckということになるのでしょうが、シングルユーザモードからfsckで修復できなかったのがインストールDVDのディスクユーティリティでは修復できたとか、またその逆とかも見聞きしたことがあるので全く同じでもない(実行状況の違いによる影響もあるのかもしれませんが)のかな・・・とは思っています。

なので、エラーが出ればどちらでも頼るしどちらかで修復できるならそれでいいという判断です。


そうすると具体的には、月一のメンテ毎に;

1) シングルユーザモードで「fsck -fn」で、エラー検出をし、

2) セーフモードで、エラーの自動修復とキャッシュの自動クリアをする。

と考えて宜しいでしょうか? それとも2)なかで、「ディスクユーティリティ: Disk Utility」を起動して、修復をさせると言う事でしょうか?


一応、セーフモードで起動したときに「アクセス権を修復」もするのでついでに「ディスクを検証」でエラーが出ないかどうかのチェックはしています。

で、シングルユーザモードでのfsckではデータパーティションの検証はしてくれないので、このときにデータのパーティションに対しても「ディスクを検証」しています。


#データパーティションは修復可能な範囲のエラーがたまに出ることがあるので注意深くチェックするようにしています。

「注意深くチェック」というのは、具体的にどうされるのでしょうか?


「注意深く」という言葉は適切ではなかったですね。どちらかというと「忘れずに」ってことです。

データ用のパーティションやバックアップ用のディスクのチェックというのは忘れがちなので、特に気をつけています。

#そして経験上、システムディスクよりデータディスクの方がよくエラーが出る気がする・・・


なので、


自分は模索中ですが、起動ドライブとデータドライブを分けて、夫々「Time Machine」に依るバックアップをてり、大きな作業終了毎にドライブ毎に外付けhddにコピーしています。


Time Machine用のディスクもときどきチェックした方がいいですよ。

2013/02/21 01:41 ni_ki への返信

ni_kiさん:


超個人的な意見ですが、あんまり文章にこだわると本質を見失うかもですよ^^;

確かに、先に進めなくなってします。気長に調べたいとおもいます。



・「シングルユーザーモードで起動」と「Start up in Safe Mode: 起動音が聞こえてから、⌘Sを押し続ける」とを同一視していますが。

ああ、自分の勘違いでした、ご免なさい。本当は;


1) シングルユーザーモード:起動音後に、「⌘S」の長押し

2) セーフモード:起動音後に、「⌘(shift)」の長押し


自分は、2)を、『「⌘(space)」の長押し』と誤記憶していました。判った今でも間違えたりします。←筋金入りの**!


nvramコマンドについては、後日トライしてみます。


疲労困憊。他の皆様、返信は明日以降にします、お許し下さい。

2013/02/21 12:10 はに への返信

はにさん:


> 「fy」を「forced repair with all yes」とばかり思っていました。


そ んなに間違ってないと思います。fy は -fと-y です。-f option はforced check です。-y は問いにすべて y (=yes) とするという意味です。これは、man fsck とすれば出てきます。-y は、fsck でファイルシステムのチェックをすると、おかしな点(矛盾)があるとそれを修正するか聞いてきます。そのときにyes とするという意味です。普通はこれで問題ないと思います。yes とするとディスクが壊れると思うならnoとすることもできます。no とすれば、その時点で fsck は中止されます。

引数の正しい説明有難うございます。すると"fsck -f"なら、強制的にcheck(Journaledデータとの比較:check ?)して、問題個所を表示するだけ。ところが"fsck -fy"なら、其の箇所の修正を実行となるわけですね。自分の語感では、"repair"と思うのが悪い様ですね。


と書いているうちに、"fsck -fn"か、単に"fsck"ならば、いわゆる"verify"になるのでは、と思いました。余裕のある時に、外付けhddで起動してテストしてみます。



また、man diskutil とすれば、diskutil repair は fsck でやると書いてますので、fsck と同じと思います。gui のディスクユーティリティは diskutil の一部を実行できるようにしたものですから、やはりfsckと同じことをしているだけと思います。トラブルがあるときにfsckしてみると分かりますが、 そういうときは、ファイルシステムの修正が大量に出てきます。diskutil では、その辺は良きに計らえとしているだけと思います。fsck と違うといえば、その辺りは少し違うかもしれませんけど。

なるほど、"man diskutil"を真面目に見たのは初めてです。該当するfsckの引数を表示してくれていたら嬉しかったです。diskutilは自分で直接に操るのは恐れ多いので、"Disk Utility"の利用に留まりそうです。



ディスクの修復に何を使うかは、その人の好みの問題と思います。

サポート文書でfsckをあまり勧めてないのは、最近のシステムだ と、暗号化ディスクとか、Fusion Drive とか論理ディスク機能をフルに利用したものが自由に使えるようになってます。こういうシステムだと、fsck でやるのは、システムのことをよく知ってないと難しい(あまりよく知らないでやると、最悪システムを壊してしまうかもしれません)ので、という理由からで はないかと思います。

そういった視点では考えた事はありませんでした。ただ、それらの新技術とファイル・システムの保守というのは、直列的な関係という気もしますが……。

2013/02/21 13:07 はに への返信

横から失礼します。


まだ咀嚼できていませんが、興味深い論議ですね。一部に判らない点があるのでお教え下さい。


fsck はアンマウント状態のディスクと、マウントされていても、read only のディスクしか修正出来ません。fsck のチェック中に、OSが勝手に何かを書き込んだら、fsck には何が正しいのか分からなくなってしまいますので。

「アンマウント状態のディスク」が判りません。少なくともfsckが動作しているファイル・システムは起動して「/」にマウントされているのですよね。それ以外のドライブを評価対象にするには、少なくともそれをマウントする必要があるのではないでしょうか?


fsckが、其の外部ドライブ(E)のファイル・システムの検証動作している時に、「/」のOSが外部ドライブ(E)に書き込み禁止にするという感じがしますが……。

2013/02/21 13:27 mNeji への返信

> "fsck -fn"か、単に"fsck"ならば、いわゆる"verify"になるのでは、と思いました


修正はしないという意味では verify と同じになります。しかし、何か悪いところを見つけると、それを画面に表示して、修正するかどうか聞いてきます。yes としないなら、そこで止まってしまいます。また、何か修正があるときには、大量の修正が出てきます。あるところに間違いがあると、その後の情報全て修正するためかな、と思います。なので、-y をつけて実行しないと何百回も何千回も y と手入力するはめになります。


> 該当するfsckの引数を表示してくれていたら


多分、fsck の出力を適当に処理する、あるいは、fsck の出力に応じて何か操作するような部分も含んでるでしょうから、実行の際の引数だけで同じ動作になるというような単純なものではないと思います。

なので、厳密には全く同じではないかもしれません。ただ、fsck の動作をベースにしているのは確かと思いますけど。


> それらの新技術とファイル・システムの保守というのは、直列的な関係という気もします


ちょっとどういう意味なのか取りかねますが、例えば、filevault で暗号化ボリュームにしていると、外付けhddなど、他の起動ボリュームから立ち上げると、そのままではボリューム自体が見えず、fsckというのは出来ません。ディスクユーティリティでディスクの修復するにも、一度ロックを外してからでないと出来ないなど、少し違いが出てきます。シングルユーザモードやセーフブートの場合は、起動直後にパスフレーズの入力が促されてロックが外れて、暗号化してないときと同じ動作になります。なので、filevault にしていると、fsck でやろうと思うと、同じように出来る場合と、一工夫必要な場合が出てきます。

2013/02/21 13:45 HAL への返信

HALさん、詳しいご解説、ありがとうございます。

ただ、はにさんが指摘されたようにdiskutil repairもfsckを使っているので結局はfsckということになるのでしょうが、シングルユーザモードからfsckで修復できなかったのがインス トールDVDのディスクユーティリティでは修復できたとか、またその逆とかも見聞きしたことがあるので全く同じでもない(実行状況の違いによる影響もある のかもしれませんが)のかな・・・とは思っています。

なので、エラーが出ればどちらでも頼るしどちらかで修復できるならそれでいいという判断です。

自分のように、単細胞的な考え方をする者にとっては、理解しがたい程の難しさですね。当面、「修復できればめっけ物」という心構え進みます。



で、シングルユーザモードでのfsckではデータパーティションの検証はしてくれないので、このときにデータのパーティションに対しても「ディスクを検証」しています。

そうですか、未だ実感がありません。外部hddにfsckをかけて体得して行きたいと思います。



「注意深く」という言葉は適切ではなかったですね。どちらかというと「忘れずに」ってことです。

データ用のパーティションやバックアップ用のディスクのチェックというのは忘れがちなので、特に気をつけています。

#そして経験上、システムディスクよりデータディスクの方がよくエラーが出る気がする・・・

あっ、これは予想外でした。健忘性なのですが、頑張ります。



Time Machine用のディスクもときどきチェックした方がいいですよ。

確かに了解いたしました、ハイッ。

2013/02/23 12:36 はに への返信

はにさん、返信が遅れまして、ご免なさい。

修正はしないという意味では verify と同じになります。しかし、何か悪いところを見つけると、それを画面に表示して、修正するかどうか聞いてきます。yes としないなら、そこで止まってしまいます。また、何か修正があるときには、大量の修正が出てきます。あるところに間違いがあると、その後の情報全て修正するためかな、と思います。なので、-y をつけて実行しないと何百回も何千回も y と手入力するはめになります。

何となく感じが掴めてきました。



なので、厳密には全く同じではないかもしれません。ただ、fsck の動作をベースにしているのは確かと思いますけど。

fsckはコマンドとしては気楽に使えるものの、特殊な動作をするのですね。を、今更ながらに知りました。他方、diskutiは使い方が複雑なので敬遠してしまいますが、意外と使い勝手が良いのかも知れませんね。


最近、"Safe Mode"で立ち上げる前後で、キャシュの設定がどう変化するかを見る為に、"/var/db/dyld"のリストをログ・ファイルにしてコンソールで見ていると;


・DiskUtility.log

・fsck_hfs.log


という項目があるのに気がつきました。一度、保守のノートと、上記のログとを比較しようかと思います。



ちょっとどういう意味なのか取りかねますが、例えば、filevault で暗号化ボリュームにしていると、外付けhddなど、他の起動ボリュームから立ち上げると、そのままではボリューム自体が見えず、fsckというのは出来ません。ディスクユーティリティでディスクの修復するにも、一度ロックを外してからでないと出来ないなど、少し違いが出てきます。シングルユーザモードやセーフブートの場合は、起動直後にパスフレーズの入力が促されてロックが外れて、暗号化してないときと同じ動作になります。なので、filevault にしていると、fsck でやろうと思うと、同じように出来る場合と、一工夫必要な場合が出てきます。

意味不明な発言をしました、撤回すると共に、お詫びします。


でも一度くらいは経験の為に、"SD card"位でfilevault動作を実験しようかと……。

起動ドライブの健全性の確保

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple ID を使ってご参加ください。