はじめに
Windows 10 21H1以降、Windows環境を利用していると、いきなりOneDriveにデスクトップ上のファイルが全てアップロードされ、挙げ句にはアカウントが停止され、ファイルへのアクセスができなくなってしまう現象が観測されています。
一般に、これはオフラインアカウントを利用することで解決できるのですが、Windows 11においては、オフラインアカウントを利用するためのあらゆる手段が封じられており、(ほぼ)Microsoftアカウントを使うしかない現状があります。
この記事では、押し付けがましいMicrosoftのWindows 11をインストールした後、Microsoftによってデータを人質にされないために、設定しておくべきものと、設定しておくとしあわせになれるかもしれないものを併せて幾つか紹介します。
やるべきこと・やりたいこと
最低限これだけはやっておきたいことを紹介します。
OneDriveの無効化
OneDriveへの意図しない同期でデータを人質にされないために、OneDriveを完全無効化します。
これにより、以下の影響が生じることを理解したうえで続行してください。
- カメラロールフォルダから写真やビデオを自動的にアップロードされなくなる
- WindowsストアアプリからOneDriveにアクセスできなくなる
- OneDriveアプリからOneDriveにアクセスできなくなる
- ナビゲーションペインにOneDriveが表示されなくなる
- OneDriveファイルがクラウド同期されなくなる
PowerShellを管理者として起動し、OneDriveのレジストリキーを作成します。
New-Item 'HKLM:SOFTWARE\Policies\Microsoft\Windows\OneDrive' -force
Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows
Name Property
---- --------
OneDrive
OneDriveを完全に無効化します。
Set-ItemProperty -Path 'HKLM:SOFTWARE\Policies\Microsoft\Windows\OneDrive' -Name DisableFileSyncNGSC -Type DWord -Value 1
レジストリの設定値を確認する。
Get-ItemPropertyValue -Path 'HKLM:SOFTWARE\Policies\Microsoft\Windows\OneDrive' -Name DisableFileSyncNGSC
1
以上の操作をすべて完了した後、再起動を行うと適用されます。
ユーザーディレクトリの変更
メアドの上5文字により勝手に命名されたローカルユーザーの名称を変更します。
後述の操作で必要となるため、Administratorアカウントを有効化しておきましょう。
これ以下は、上記手順と同様、管理者権限のあるPowerShell上で実行してください。
net user administrator /active:yes
net user Administrator [任意のパスワード]
変更するユーザーを取得するため、以下のコマンドを実行します。
Get-LocalUser
Name Enabled Description
---- ------- -----------
Administrator True コンピューター/ドメインの管理用 (ビルトイン アカウント)
DefaultAccount False システムで管理されるユーザー アカウントです。
Guest False コンピューター/ドメインへのゲスト アクセス用 (ビルトイン アカウント)
WDAGUtilityAccount False Windows Defender Application Guard シナリオでシステムによって管理および使用されるユーザー...
[変更元の名前] True
ローカルユーザーのアカウント名を変更します。
Rename-LocalUser -Name "[変更元の名前]" -NewName "[変更後の名前]"
ユーザーディレクトリを変更するため、レジストリエディタを起動します。
Win
+ R
を押下し、regedit
を実行します。
コンピューター\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
を開き、
S-1-5-...
のような文字列で構成されたフォルダを上から順に総当たりして、目的のユーザーフォルダ名を探します。
このフォルダは、ローカルに存在するユーザーの数だけ存在しています。
目的のユーザーデータが格納されたフォルダを見つけたら、ProfileImagePath
を押下し、現在設定されているユーザーディレクトリを変更したい名称のものへ書き換えます。
値のデータにあるC:\Users\
は絶対に消去しないでください。
入力を確認して、問題がなければOKを押下し、レジストリエディタを終了します。
ここまでの操作が全て完了したら、PCを再起動し、最初の手順で有効化したAdministratorアカウントとしてサインインします。
エクスプローラーを開き、C:配下にあるユーザーディレクトリを開きます。
ここに存在している元々の名称が付けられたディレクトリの名称を先程、レジストリに記述したパスと一致するように変更します。
次で最後の手順です。
レジストリエディタを上記同様の手順で開き、編集(E) > 検索(F)からC:\Users\[旧ユーザー名]
を検索します。
次を検索を押下し、旧ユーザーディレクトリのパスが残っていれば、新しいものに全て書き換えてください。
ここでの編集は最新の注意を払い、慎重に行ってください。
後々の余計なトラブルで苦しむ羽目になるのはあなたです。
全ての手順が終了した後、再起動を行います。
これにて全ての手順が完了しました。
おわりに
これらの手順を実行することで、OneDriveにデータを人質にされず、快適な開発環境を構築する基盤が出来上がります。
そもそも、クラウド側にあるデータが本体で、PCはそれを複製したもの~みたいな考え方自体、かなりキモいですよね。
近年のWindowsはどこかこうパーソナルではないような、自分の所有物ではないように思える挙動が多くなっている気がします。
AdobeCCがLinux系に対応してくれれば私も.脱Windowsするんですけどね)
しかしながら、Windowsでしかできないことがあるのも事実としてあり、なかなか環境を捨てることができません。
この記事が、そんなどこかの迷えるあなたの助けになれれば幸いです。
それでは。