デスクトップ機のHDDを換装するだけで1日がつぶれた
-- 2014/07/20 21:35
何でかというと、システムドライブをSSDにしたのだが当時その耐久性に過度に疑問を持っていてProgramDataとUsersをデータ用HDDにうつしてしまったため、それを移植しなければ正常動作しない状態になってたから。
結果的にはProgramDataとUsersをC:にrobocopyして、mklink /jを逆に張って、その状態でドライブレターをスワップする感じに。元のそれらを消すのにWindowsのリカバリディスクとSlax5のLiveCDを使ったり、途中変になった%USERPROFILE%をなおすためとかにレジストリ弄りまくったりと実に面倒だった。
が、まあリカバリ等無しで換装にいたったのでよかったとしよう。
元々ProgramDataとUsersを移したのはインスコ途中だったが、これでまあ場所移動はいちおう使い込んでからも出来るということが判明した。
追記:
一応紆余曲折あったのを端折ってフカンした感じで大まかな手順を書いておくと、
0. 新しいHDD(E:)をフォーマットしてきとうに元のHDD(D:)の内容をProgramDataとUsers除いて全コピー
1. Windows(7)のリカバリディスクをつくる。
2. リカバリディスクで起動しUsersとProgramDataをC:\にrobocopy /E /COPYALL /XJ。
3. 元のWindowsを起動し、Registry ToolkitでD:\path\to\UsersとかをC:\Usersに、ProgramDataも同様に出来る限り置換。
(参考: Windows 7: C:\Program Files フォルダーを別ドライブに移動のを逆目的に使った感じ)
4. リカバリディスクで起動しUsersとProgramDataを削除。削除できない場合てきとうなLinux等も導入してとにかく削除。最悪リネーム。
5. リカバリディスクで起動しD:\の削除跡地にコピった先C:\にある実体に向けてUsersとProgramDataのジャンクションをmklink /j。
6. E:\の下でもそれと同じパスでUsersとProgramDataのジャンクションをmklink /j。
7. 元のWindowsを起動し、ドライブ名をスワップし再起動。
これ試行錯誤の結果こういうのがいいんじゃないかってくらいなんで上手くいくかどうかは保障しません。
同志の方へ、健闘を祈ります。
結果的にはProgramDataとUsersをC:にrobocopyして、mklink /jを逆に張って、その状態でドライブレターをスワップする感じに。元のそれらを消すのにWindowsのリカバリディスクとSlax5のLiveCDを使ったり、途中変になった%USERPROFILE%をなおすためとかにレジストリ弄りまくったりと実に面倒だった。
が、まあリカバリ等無しで換装にいたったのでよかったとしよう。
元々ProgramDataとUsersを移したのはインスコ途中だったが、これでまあ場所移動はいちおう使い込んでからも出来るということが判明した。
追記:
一応紆余曲折あったのを端折ってフカンした感じで大まかな手順を書いておくと、
0. 新しいHDD(E:)をフォーマットしてきとうに元のHDD(D:)の内容をProgramDataとUsers除いて全コピー
1. Windows(7)のリカバリディスクをつくる。
2. リカバリディスクで起動しUsersとProgramDataをC:\にrobocopy /E /COPYALL /XJ。
3. 元のWindowsを起動し、Registry ToolkitでD:\path\to\UsersとかをC:\Usersに、ProgramDataも同様に出来る限り置換。
(参考: Windows 7: C:\Program Files フォルダーを別ドライブに移動のを逆目的に使った感じ)
4. リカバリディスクで起動しUsersとProgramDataを削除。削除できない場合てきとうなLinux等も導入してとにかく削除。最悪リネーム。
5. リカバリディスクで起動しD:\の削除跡地にコピった先C:\にある実体に向けてUsersとProgramDataのジャンクションをmklink /j。
6. E:\の下でもそれと同じパスでUsersとProgramDataのジャンクションをmklink /j。
7. 元のWindowsを起動し、ドライブ名をスワップし再起動。
これ試行錯誤の結果こういうのがいいんじゃないかってくらいなんで上手くいくかどうかは保障しません。
同志の方へ、健闘を祈ります。
