Windows10のユーザフォルダ名変更後の参照エラー
Markdownの練習と作業ログも兼ねて初めて記録を残してみる。
概要
Win10でユーザフォルダ名を変更すると一部の古い(?)ソフトウェアが動作しなくなった。
ユーザフォルダ直下のリンクの情報を修正すれば解決する模様。
前提
- Windows 10 (64bit)
- (直接関係ないけど)gnupack_devel-13.06-2015.11.08
-
C\Users
直下のユーザフォルダ名を変更した
経緯 - ユーザフォルダ名の変更
普段“noriben”というユーザ名を愛用している(仮名)のだが、Win10のユーザーフォルダが“norib”
とかいう中途半端な名前にされてしまっていた。
モヤモヤするので、こちらの記事を参考にユーザフォルダ名の変更作業を行った。
「手順2」に従い、アカウントを追加することなくフォルダ名の変更を行った。
Windows10のユーザーフォルダ名変更 - @aaaKUKIaaa
https://qiita.com/aaaKUKIaaa/items/83d6234b69b0d958d3f1
追加作業として、念のためレジストリの関連項目を一括修正した。
適当なソフト(Registry Finder等)でnorib\
-> noriben\
でキー・値を一括replaceした。
(C:\Users\norib\
だと取りこぼしがあるので注意)
課題 - emacsとcygwin(gnupack)が起動しない
当方emacs派なのでCygwinもセットで導入すべくgnupackを愛用しているのだが、
この両方が起動しなくなった。
start_emacs.exe(start_cygwin.exe)を起動すると以下のような警告が出た。
fontcache
はgnupackの各種ソフトで読み込むフォント(Migu 1Mとか)が置かれるフォルダ(らしい)。
原因 - Local Settingsの参照先情報が古い
Local Settingsは何処へ
エラー文に従いフォルダfontcache
の在処を見に行こうと試みるも、ユーザフォルダ以下にLocal Settingsが無い。
他アカウントのユーザフォルダでもLocal Settingsは見つからないので、コマンドプロンプトでdir /a
してみた。
:\Users\noriben>dir /a
ドライブ C のボリューム ラベルは OS です
ボリューム シリアル番号は hoge-fuga です
C:\Users\noriben のディレクトリ
2018/05/06 10:30 <DIR> .
2018/05/06 10:30 <DIR> ..
(略)
2017/12/29 16:20 <DIR> AppData
(略)
2018/05/06 10:30 <JUNCTION> Local Settings [C:\Users\norib\AppData\Local]
(略)
8 個のファイル x,xxx,xxx バイト
34 個のディレクトリ xxx,xxx,xxx,xxx バイトの空き領域
C\Users\[username]\AppData\Local
へのリンクとしてLocal Settings
が貼られているが、
その参照先がC\Users\norib
以下となっている。
もちろん[username]
はnoriben
に変わっているので、fontcache
が参照不可となっていた。
ジャンクションリンク
調べてみると、C\Users\[username]\Local Settings
というのはWin7時代に使われていた場所で、
Win10ではC\Users\[username]\AppData\Local
がそれに相当するらしい。
当然Win7対応ソフトは前者を参照するので、Win10では前者から後者へのリンクを貼ることで
互換性対策が為されているものと想像できる。
それはともかく、このリンクは「ジャンクションリンク」と呼ばれるもので、ハードリンクや
シンボリックリンクとはまた別物。詳細は自分の説明よりも以下をご参照。
Tech TIPS:Windowsのシンボリックリンクとジャンクションとハードリンクの違い - 打越浩幸
http://www.atmarkit.co.jp/ait/articles/1306/07/news111.html
ジャンクションリンクはコマンドプロンプトから貼ることができる。
mklink
コマンドに/J
オプションを付ければよい。
> mklink /J [リンク名] [リンク先のパス]
対応 - ジャンクションリンクの貼り直し
Local Settings
のジャンクションリンクを一旦rmdir
コマンドで削除し、貼り直す。
> cd C:\Users\noriben
> rmdir "Local Settings"
> mklink /J "Local Settings" C:\Users\noriben\AppData\Local
結果 - 復活
startup_emacs.exe及びstartup_cygwin.exeが両方とも無事に起動するようになった。
余談1
実際にユーザフォルダでdir /a
すると、他にもジャンクションリンクが貼られていることが分かる。
こいつらを貼りなおせば、上記参照記事で言及されていた一部の問題も解決するかも?(未検証)
1. iTunesの楽曲がすべて吹っ飛んだ → "Application Data"?
2.「最近表示したファイル」的なのが揃いも揃ってみんなだめ → "Recent"?
余談2
貼り直したリンクはエクスプローラー上でも思いっきり見えている。
まとめ
ユーザフォルダ上には色々とジャンクションリンクが貼られている。
やむを得ない理由でユーザフォルダ名を変更したら、リンクの情報も併せて更新するべし。
Author And Source
この問題について(Windows10のユーザフォルダ名変更後の参照エラー), 我々は、より多くの情報をここで見つけました https://qiita.com/noribentooooooh/items/0f2a6f0ed295a7a3010a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .