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

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

FileVault ホームフォルダでログインできない

はじめまして。


先日、突然ログインできなくなりました。

前日までは普通に使えていたのですが。突然です。


過去にもこのデリスカッションフォーラムで似たような事を書かれている方がいたのですが、

微妙に状況が違うため質問させてください。


macでログインしようとすると「FileVaultで保護されたホームフォルダを開けません。修復が必要です。」と出ました。

「OK」を押すと「このアカウントにログインできません」と出てきます。


先日たまたまHDの容量が足りなくなり、TimeMachineのデータを消したところに、このエラーメッセージでした。

データがあれば最初から復帰が出来たのですが、消してしまったもので。

FileVaultはオンです。これもHDの空き容量が少なくて、OFFに出来ないままずっとそのままにしていました。


過去のスレッドの方と違うのは、アカウントを一つしか作っていないという事です。

ですので、他のアカウントからログインして、修復作業が出来ません。


使用環境は、MacBookAir(初代)OSはSnow Leopardです。

なんとかアドバイスを頂けませんでしょうか?

よろしくお願い致します。

MacBook Air, Mac OS X (10.6.2)

投稿日 2010/01/06 00:08

返信
スレッドに付いたマーク ベストな回答

投稿日 2010/01/06 00:53

アカウントを一つしか作っていないという事です。



下記の順番で操作すると、新規アカウントを作成出来ます。

1)Cキーを押しながらMac OS X 10.6 Install DVD で起動

2)ユーティリティメニュー>リセットパスワード でrootのパスワードをリセット

3)Macを再起動

4)"その他のユーザ" を選択

5)名前を root にし、ログイン

6)システム環境設定>アカウント で管理者権限があるアカウントを作成

7)rootをログアウト

8)6)のアカウントでログイン


追記:

ルートユーザは何でも出来るスーパーユーザなので、問題が解決したら無効にした方が良いです。

ディレクトリユーティリティ(/System/Library/CoreServices/Directory Utility.app)を起動後、左下の鍵を開いて、編集メニュー>ルートユーザを無効にする をしてください。



このメッセージは次により編集されています: syaraku

返信: 49

2010/01/13 15:29 SakuraPanda への返信

みなさま


いつもアドバイスありがとうございます。



新しいHDが届きました。

そこで「GUIDパーティション」で「MacOS拡張(ジャーナリング)」にして初期化しました。

それをMacBookAirにつなげ、


/sbin/mount -uw /

と、書き込み権限を与えた後、

cp -p -R /Users/[UserName]/[UserName].sparsebundle /Volumes/[USB_HDD]

でやってみたところ。

cp: /Volumes/[USB_HDD]/bands/[3桁の英数字]: No such file or directory

と言うメッセージが大量に出てきました。


買ってきたばかりで、当然のことながらボリュームには何も無いのですが、

こんなメッセージが出てくるのはおかしいと思います。


これの原因と、ファイルの退避方法を教えていただけませんでしょうか。

2010/01/13 15:51 SakuraPanda への返信

その外付けHDDにOSX 10.6.xをInstallして、それで起動し、SparseimageをCopyすれば良いと思います。ただし、SparseimageをDouble-clickでMountしてPasswordを入れて開くかは何とも言えませんが...


不可視FileをCopyする時、ダイアログで下記Shortcutが使えます。

Command-Shift-. (period)  不可視

Command-Shift-, (comma)  可視

2010/01/13 15:45 はに への返信

cp コマンドのオプションはどうされてますか?ni_ki さんのコメントにあるようにされてますか?

cp -a と a オプションにしてみるとどうですか?



はにさん。


なんとなくオプションの意味がわかりました。

「-a」とか「-p」とか 「-」がついているのがオプションなのですね。


で、もしコマンドを打つ場合なのですが、



cp -a -p -R /Users/.UserName/UserName.sparsebundle /Volumes/[外付けHDDの名前]


とするべきでしょうか?


もし宜しければそれぞれの、

「-a」「-p」「-R」などの意味もあわせて教えていただけると嬉しいです。

2010/01/13 15:49 SakuraPanda への返信

新しいHDが届きました。

そこで「GUIDパーティション」で「MacOS拡張(ジャーナリング)」にして初期化しました。


それを2つのパーティションに分けて(システム用に50GBと残り)、iMacからでいいので片方のパーティションにOS X 10.6をインストールしてください。

それをMacBook Airにつないで外付けHDDから起動できるのを確認したら、ターミナルを立ち上げて

defaults write com.apple.Finder AppleShowAllFiles -bool YES

killall Finder

と実行してください。

Finderから不可視ファイルも確認できるようになるので /ユーザ/.username を

外付けHDDのシステムじゃない方のパーティションにコピーしてください。

コピーしたら、.username内にあるsparsebandleファイルをディスクユーティリティの右カラムにドラッグ&ドロップで登録し、選択した状態でディスクの修復を試してみてください。それでエラーが修復されず、ダブルクリックでマウントもできないようだと残念ながらデータを諦めるしかないかもしれません。


こんなメッセージが出てくるのはおかしいと思います。


なので、シングルユーザモードでの作業はやめた方がいいと思います。

2010/01/13 18:52 HAL への返信

SakuraPanda さんへ

HAL さんによる書き込み:


それを2つのパーティションに分けて(システム用に50GBと残り)、iMacからでいいので片方のパーティションにOS X 10.6をインストールしてください。

起動可能な外付けがあるのであれば、その方が何かと楽なので、HAL さんお勧めの方法が良いですね。


それと、.UserNameフォルダとUserNameフォルダですが、どちらかにsparsebundleが有ったと思うのですが、どちらでした?

それとUserNameの部分は、ご自分のアカウント名に変更して頂いていると思いますが、もしかして半角スペースを含んでますか?


cpコマンド

-p アクセス権等を変更せずにコピーします。

-R フォルダをコピーします。フォルダをそっくりコピーする際に付けてないと「ディレクトリだぞ」とコマンドが文句を言います。sparsebundleの実体は、パッケージなのでcpでコピーの際には、必要です。


なお、ターミナルコマンドでは「半角スペース」は指示の区切りなので、フォルダ名やファイル名に「半角スペース」が入っている場合は「"」で囲って下さい。

例:(この例だと、ユーザアカウントTest Nameの書類フォルダUSB_HDDと言う名前のボリュームにコピーします)

cp /Users/"Test Name"/Documents /Volumes/USB_HDD

ちなみに、下記でもOKとのことです。

cp /Users/'Test Name'/Documents /Volumes/USB_HDD

cp /Users/Test\ Name/Documents /Volumes/USB_HDD


HAL さんへ

起動DVDの件は、説明して頂き感謝いたします。略して書きすぎました^^;

Re: FileVault ホームフォルダでログインできない

2010/01/16 14:01 ni_ki への返信

Firefox開発版を落としてあったので試してみました。

$HOME/Downloads/firefox-3.7a1pre.en-US.mac.dmg, /Volumes/External2

-rw-r--r--@ pippi staff firefox-3.7a1pre.en-US.mac.dmg
com.apple.quarantine 42


外付けHDDを繋いだまま再起動... Shiftを押さえて文字を表示したら放す。

mount -uw /

cp /Users/pippi/Downloads/firefox-3.7a1pre.en-US.mac.dmg /Volumes/External2

直ぐにPromptが出たのでrebootを行う。


確認するとfirefox.dmgはExternal2の何処にもCopyされてない。挙げ句の果てに/Volumes/External2 1となってExternal2に変更できない事態に... このままだとBackup専用の各々のFolderを可視にするchflags nohidden, chmod 700や不可視にするchflags hidden, chmod 400のShell Scriptを実行できない。


一寸怖いので深く追求しないでMainのVolumeのOSXを復元して直しました。

# ACL, EAでがっちり固めてあるSparseimage(Bundle)は更に難しいのでは...


追記 次のコメントのリンク先にあるScriptは内蔵HDDの別VolumeをMountしますが...

mount -uw /
launchctl load /System/Library/LaunchDaemons/com.apple.notifyd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.configd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.diskarbitrationd.plist
ls -la /Volumes

FireWire接続の外付けHDDはMount出来ませんでした。


追記2 外付けHDDをMountしてFileをCopy出来ました。

1. 事前にTerminalでDevice name, Volume nameを調べる必要があります。

df -h

/dev/disk0s2 / ... 現在起動している内蔵HDDのVolume
/dev/disk1s5 /Volumes/External2 ...Mountしたい外付けHDDのVolume

# Sizeなどは省略してあります。


2. Single User Mode

mount -uw /

mkdir /Volumes/External2

mount_hfs /dev/disk1s5 /Volumes/External2/

cp /Users/pippi/Desktop/Untitled.txt /Volumes/External2/

reboot

2010/01/14 09:06 ぴっぴ への返信

確認するとfirefox.dmgはExternal2の何処にもCopyされてない。挙げ句の果てに/Volumes/External2 1となってExternal2に変更できない事態に...


ぴっぴさんの検証結果を見て、大事なことを忘れていたことに気づきました。

シングルユーザモードではシステムボリューム以外がデフォルトでマウントされないのです。

# リンク先はMac OS X 10.5での話ですが、確認したところ10.6でも同様でした。

Apple Discussions - Japan: ノードの構造が正しくありません。

もっと早くに気づくべきでした。というかもっときちんと事前確認するべきでした。すいません。

なので、"No space left on device"というエラーもSakuraPandaが操作を間違っているわけでもファイルシステムに問題があるわけでもなく、ボリュームがマウントされていないので内蔵ハードディスクの/Volumes下にフォルダを作ってそこにコピーがなされるため内蔵HDDの容量を圧迫した上でのエラーであると思われます。


なので、シングルユーザモードから再度操作を行うのであれば /Volumes/[HDD名] の内容を削除するために


rm -r /Volumes/[HDD名]


を行ってからリンク先のスクリプトを実行してボリュームマウントを行い操作をやりなおす必要がありますが、シングルユーザモードでの操作の危険性を思い知らされた結果になってしまったのでこれ以上のシングルユーザモードでの操作はしない方がいいと思います。

2010/01/14 21:38 HAL への返信

HAL さんによる書き込み:


(中略)

シングルユーザモードでの操作の危険性を思い知らされた結果になってしまったのでこれ以上のシングルユーザモードでの操作はしない方がいいと思います。

私もこのように思います。特にrmコマンドでの削除は、起動可能な外付けHDDを入手した今は、後回しにした方が良いと思います。

2010/01/15 22:49 SakuraPanda への返信

みなさま、本当にありがとうございました。


返事が遅くなり失礼しました。


シングルモードで起動することなく、

2パーティションに分けた外付けHDDにOSXをインストールし、

そちら側から起動し、

データを別パーティションのHDDに退避するようにします。






ただ、今現在OSXをインストールする過程で問題が。


2パーティション→GUIIDパーティションテーブル

MacOS拡張(ジャーナリング)で初期化し、

片方にインストールしているのですが、残り30分くらいになると

途中でシャットダウンするんです。

別のパーティションにインストールしても同様でした。


何が何だか分からない状態です。


もう少しトライしてみます。


この現象に心あたりがある方は、

宜しければアドバイスいただけますでしょうか?


なかなか道程は長いです。

2010/01/15 22:51 ni_ki への返信

ni_kiさん。

それと、.UserNameフォルダとUserNameフォルダですが、どちらかにsparsebundleが有ったと思うのですが、どちらでした?


UserNameフォルダでした。


それとUserNameの部分は、ご自分のアカウント名に変更して頂いていると思いますが、もしかして半角スペースを含んでますか


半角スペースは有りませんでした。


とりいそぎです。


2010/01/16 00:44 SakuraPanda への返信

SakuraPandaです。



なんとか外付けハードディスクにOSXをインストールすることができました。

(結局、購入した10.6ではダメだったので、

iMacを買った時についてきたインストールディスクでインストールしました。)



そして、MacBookAirをUSBに接続し、

optionを押しながら、起動ディスクを選択したところ、

ようやく、ようやく起動することができました。


userフォルダに「user.sparsebundle」があったので、

現在コピー中です。51GBありました。


これを終了次第、検査してみようと思います。

うまく行くか、ちょっとドキドキです。


また報告させていただきます。

2010/01/16 02:39 SakuraPanda への返信

SakuraPandaです。


「username.sparsebundle」を修復してみました。


〜メッセージ〜

ジャーナリングが有効はHFS+ボリュームを確認中です。

エクステントオーバーフロー・ファイルを確認中です。

カタログファイルを確認中です。

ノードの構造が正しくありません。

ボリューム"username"は検証を完了できませんでした。


みたいなエラーメッセージが出てきて結局ダメでした。


結局、だめだったようです。

かなり悲しいです。

しばらくこのデータは初期化することがきませんが。

諦めて、今後はちゃんとんバックアップとることを心がけます。


FileVaultはやめた方がいいですね。


みなさん、本当にありがとうございます。

2010/01/16 10:26 SakuraPanda への返信

念のため、MacBook Airの内蔵HDDにあるオリジナルのファイルを直接修復してみても同様かを確認した方がいいかもしれません。

アクセス権がないとか言われたら、内蔵HDDをFinderで File>情報を見る>このボリューム上の所有権を無視 にチェックが入っていないかを確認してください。


しばらくこのデータは初期化することがきませんが。



一応ディスクとしては認識されているようなので修復ができればマウントできるようになるかもしれないという一縷の望みにかけてDiskwarriorを試してみるという手もあるかと思うのですが、DiskWarriorってsparsebundleをディスクとして修復対象に選べるのでしょうか?

もし所有されている方がいらっしゃいましたら確認してみていただけるとありがたいのですが・・・

DiskWarrior ( http://www.senko-corp.co.jp/alsoft/DiskWarrior4.htm )

2010/01/16 14:22 ni_ki への返信

cpコマンド

.....


10.6 になってFileVault の実体がsparseimage ファイルから変わっているので,ちょっと試してみました。xxx.sparsebundle (xxx はアカウント名)をダブルクリックすれば、パスワードを聞いて来て、ログインパスワードを入力するとボリュームがマウントされるのは従来と同じです。


それで、ターミナルやシングルユーザモードの cp コマンドでコピーできるかどうか試してみました。

ターミナルでは,

sudo cp -a /Users/xxx/xxx.sparsebundle /Volumes/[コピー先ボリューム]

で問題なくコピーでき,それをダブルクリックしてパスワードを入力してやればボリュームとしてマウントされます。

cp -pR でも同じでした。ちなみに、man cp とすると、-a は -pPR と同じとしています。-P はdefaultなので,通常は指定しなくても同じです。

シングルユーザモードですが、シングルユーザモードでは起動ボリュームはread onlyでマウントされ,外付けHDDなど他のボリュームは全くマウントもされてませんので,これらをマウントする必要があります。具体的には以下の3つのコマンドが必要です。

mount -uw /

mkdir /temp

mount -t hfs /dev/disk1s2 /temp

ここで、/temp はマウント先の空のディレクトリーで、通常はありませんので,2番目のコマンドで作っています。ここに外付けボリュームをマウントします。3行目は外付けHDDをマウントするためのコマンドです(外付けHDDはhfs+でフォーマットされているときです)。ここで、/dev/disk1s2 の1と2は、1は外付けHDDを繋いだときに割り振られるドライブ番号です。普通のマックでは,disk0 は起動ドライブ、disk1 が最初の外付けドライブライブです。もし、HDDを増設していたりすると,この辺は変わります。確かめるためには,ターミナルなら

sudo diskutil list

で,接続しているドライブすべてリストされます。

シングルユーザモードでは,diskutil コマンドが使えません(このコマンドが使えるのは,OSXを正常に立ち上げてOSXの作法通りにマウントしたときだけ)ので,

pdisk /dev/disk1

とかしてみると確かめられます。

最後の番号2はパーティション番号です。通常,外付けHDDを一つのパーティションとしてフォーマットすると,ユーザが使える最初のパーティション番号は2になります(0はパーティションスキームが入り、1にはパーティションマップが入り,これらは必ず出来ますので,2がユーザが使える最初のパーティションです)。このパーティション番号は、上記のdiskutilやpdisk コマンドで確かめることが出来ます。

ここまでやっておけば,後はターミナルのときと同じcpコマンドでFileVault の実体のファイル(ディレクトリーになっている)をコピーできます。

cp -a /Users/xxx/xxx.sparsebundle /temp

こうしてコピーしたファイルも、通常通り立ち上げた後,ダブルクリックすればパスワードを聞いて来て,正しいパスワードを入力してやればFileVault アカウントのホームがボリュームとしてマウントされます。

FileVault ホームフォルダでログインできない

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