Windowsのユーザーフォルダ名を変更したい(失敗)

高度なPC設定としてはメジャーな、「ユーザーフォルダ名の変更」について。

今回自分が手を伸ばしたきっかけは、パスを参照するプログラムコードを複数のパソコンで共有する機会があったからである。どうせなら使うPCの絶対パスを統一しておいたほうが便利だろうという思い付きで作業を始めたのだが、結果的に大失敗に終わってしまった。同じ轍を踏む方が一人でも減ればいいと思い、一連の過程を記しておく。

ちなみに、コードに関しては ホームディレクトリを表す "~" を使えば解決する ということに後から気付いた。コード共有という課題だけをクリアしたい人がいるなら、くれぐれもこんな大袈裟な真似をしないように(そんなドジは流石に私だけか…)。

基礎知識

Windowsのユーザーフォルダ(C:/User/username)は、アカウント作成時のユーザー名で作成される。その後ユーザー名を変更しても、ユーザーフォルダ名には反映されない。また基本的に、自身が使っているユーザーフォルダ名をエクスプローラーから直接編集することはできない。

要するに、最初の設定したユーザー名から変更するのは簡単ではないGoogle先生に尋ねると、大きく分けて次の2通りの方法が出てくる。

  1. 新規にローカルアカウントを作成し、移行する。
  2. 管理者権限アカウントで強制的にフォルダ名を変更し、レジストリを書き換える。

1.新規ローカルアカウント作成・移行

ユーザーフォルダ名が新規作成時のユーザー名で固定されるのなら、変更したい名前で新規にユーザーを作ってしまおうというもの。新規アカウントの設定は手作業で行うという泥臭い手筋である。Microsoftアカウントがあれば再設定も簡単らしいのだが、自分は使っていないので分からない。

手順1

Microsoftアカウントでサインインしている場合は、まず現在のアカウントを一時的な作業用ローカルアカウントに変更する。PC設定>アカウント>ユーザーの情報 から、「ローカルアカウントでのサインインに切り替える」を実行し、適当な名前のローカルアカウントに変える。このとき、アカウント名は希望フォルダ名にしないこと

この手順は既存のアカウントとMicrosoftアカウントとの紐付けを解除するための作業である。もとからローカルアカウントでサインインしている場合、手順1は必要ない。

手順2

希望フォルダ名のローカルアカウントを新規作成する。 PC設定>アカウント>家族とその他のユーザー で、「その他のユーザーをこのPCに追加」。アカウントの名前は希望するフォルダ名にする。さらに、「ユーザーの種類を変更」で新規アカウントを"管理者"にする。

手順3

新しいアカウントにファイル、ソフトなどを移行する。ユーザーフォルダ内のフォルダを、旧アカウントから新規アカウントに全て移動し、ソフトウェアは必要に応じて再セットアップする。

手順4

PC設定>アカウント>ユーザーの情報 から「Microsoftアカウントでのサインインに切り替える」を実行し、新規アカウントとMicrosoftアカウントを紐付ける。ローカルアカウントのままでよければ手順4は必要ない。

https://ottan.xyz/windows10-users-folder-name-modify-6062/

2.強制変更・レジストリ編集

  • 管理者権限を持つアカウントは、別のユーザーのユーザーフォルダ名を書き換えることが可能
  • レジストリ内にユーザーフォルダ名を指定する値がある

この2つを踏まえた上で、旧アカウントのユーザーフォルダ名を変更する手法。アカウント移行の手続きが無くて済むが、レジストリとの衝突が怖い。

手順1

管理者権限を持つアカウントを別に作成する。上記の手順でローカルアカウント作成→管理者に設定でも良いし、コマンドプロンプトで net user administrator /active:yes を入力してAdministratorアカウントを出現させても良い。

手順2

手順1で用意した別の管理者アカウントでサインインし、目的のユーザーフォルダ名を変更する

手順3

レジストリエディタを起動する(Win+R → regedit)。 HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Windows NT -> CurrentVersion -> ProfileList 内にある、旧ユーザーフォルダのパスの書かれたレジストリを探して新しいユーザーフォルダのパスに書き換える

また、必要に応じて上以外で旧ユーザーフォルダのパスを含むレジストリを検索し、新しいパスに書き換える。ただし量が膨大なので、全て書き換えるのは現実的でない。

https://qiita.com/aaaKUKIaaa/items/83d6234b69b0d958d3f1


自分は2番を選択した。一応フォルダ名変更後にPCは起動できたのだが、Googleバックアップと同期が上手く動かなくなってしまった。調べても直る気配が無かったので諦めて元の状態に戻そうとしたのだが、なんとシステムの復元が全ての復元ポイントで失敗するという訳の分からない状態になってしまった。打つ手がなくなり、仕方なく回復ドライブから設定を初期化する羽目に。

「既存のアカウントのユーザーフォルダ名だけをスッキリ変える」方法は無いのだろうか…。Microsoftには是非とも改善してほしいところである。