[{"data":1,"prerenderedAt":625},["ShallowReactive",2],{"content-/pc-environment-cleanup":3,"all-pages-for-dir":623,"og-image-/pc-environment-cleanup":624},{"id":4,"title":5,"body":6,"category":606,"description":607,"extension":608,"meta":609,"navigation":557,"ogImage":610,"path":611,"project_name":612,"published":613,"publishedAt":614,"seo":615,"stem":616,"tags":617,"todo":610,"unpublished":613,"updatedAt":610,"__hash__":622},"pages/2026-05/2026-05-09/pc-environment-cleanup.md","Dropboxが2.6万件同期する謎とSQL Serverの残骸を整理した話",{"type":7,"value":8,"toc":586},"minimark",[9,13,17,20,24,29,32,35,39,51,54,89,96,100,103,114,117,130,134,141,145,148,152,159,168,176,183,187,194,197,259,262,266,269,302,334,341,344,348,358,361,402,409,413,416,449,452,468,471,475,478,493,499,502,543,546,582],[10,11,12],"h2",{"id":12},"導入",[14,15,16],"p",{},"Dropboxのアイコンを開いたら「26,000ファイルを同期中」と表示されていた。回線が細る理由がここにあった。新しいPCに乗り換えたばかりで、ローカルの Documents は830ファイルしかないのに、クラウド側にはなぜか膨大な量の自分のファイルが居座っていた。",[14,18,19],{},"午後はその謎を解いて、ついでにスタートアップの常駐プロセスを棚卸しした。SQL Serverのインスタンスが3つ動いていて、そのうち1つはアンインストール済みのソフトの「サービスだけ残骸」になっていた。本体は消えているのにサービスは動き続けているという、地縛霊みたいな状態を解除する話を残しておく。",[10,21,23],{"id":22},"第一幕dropboxの26万件は何者か","第一幕：Dropboxの2.6万件は何者か",[25,26,28],"h3",{"id":27},"仮説1pcバックアップで-downloads-が丸ごと同期されているハズレ","仮説1：PCバックアップで Downloads が丸ごと同期されている（ハズレ）",[14,30,31],{},"最初に疑ったのは Dropbox の「PCバックアップ」機能。Documents / Downloads / Desktop を丸ごとクラウドに送る設定で、Downloads が6GBくらいあるからこれだろうと睨んだ。",[14,33,34],{},"設定画面を開いてもらうと、チェックが入っているのは Documents だけで Downloads は入っていなかった。仮説1は崩れた。",[25,36,38],{"id":37},"仮説2documents-のバックアップが暴走しているハーフ正解","仮説2：Documents のバックアップが暴走している（ハーフ正解）",[14,40,41,42,46,47,50],{},"ではその Documents が原因かと思って中身を覗いた。ローカルの ",[43,44,45],"code",{},"C:\\Users\\numbe\\Documents"," には830件しかファイルがない。一方、Dropbox のクラウド側に格納されている ",[43,48,49],{},"Documents/"," 配下には、見覚えのないフォルダがいくつも並んでいた。",[14,52,53],{},"PowerShell で容量を測ってみる。",[55,56,61],"pre",{"className":57,"code":58,"language":59,"meta":60,"style":60},"language-powershell shiki shiki-themes vitesse-light vitesse-light","Get-ChildItem \"$env:USERPROFILE\\Dropbox\\PC\\Documents\" -Recurse |\n  Group-Object Directory |\n  Select-Object Name, @{n='SizeMB';e={[math]::Round(($_.Group | Measure-Object Length -Sum).Sum/1MB,1)}} |\n  Sort-Object SizeMB -Descending | Select-Object -First 10\n","powershell","",[43,62,63,71,77,83],{"__ignoreMap":60},[64,65,68],"span",{"class":66,"line":67},"line",1,[64,69,70],{},"Get-ChildItem \"$env:USERPROFILE\\Dropbox\\PC\\Documents\" -Recurse |\n",[64,72,74],{"class":66,"line":73},2,[64,75,76],{},"  Group-Object Directory |\n",[64,78,80],{"class":66,"line":79},3,[64,81,82],{},"  Select-Object Name, @{n='SizeMB';e={[math]::Round(($_.Group | Measure-Object Length -Sum).Sum/1MB,1)}} |\n",[64,84,86],{"class":66,"line":85},4,[64,87,88],{},"  Sort-Object SizeMB -Descending | Select-Object -First 10\n",[14,90,91,92,95],{},"PDF書籍のフォルダが629MB、",[43,93,94],{},".tmp.drivedownload"," が80MB、その他見覚えのない領収書フォルダが100MB単位で並んでいた。ローカル830件 vs クラウド数万件のギャップが開きすぎている。",[25,97,99],{"id":98},"仮説3古いpcの残骸が残っているのではビンゴ","仮説3：古いPCの残骸が残っているのでは（ビンゴ）",[14,101,102],{},"ここで自分の側から仮説を出した。「これ、古いPCで Dropbox のPCバックアップを有効にしていたとき、そのPCの Documents がクラウドに上がっていて、新PCに乗り換えても削除されずに残っているのでは」。",[14,104,105,106,109,110,113],{},"Dropbox の ",[43,107,108],{},"PC/"," 配下にはホスト名でフォルダが切られる仕様だから、ホスト名を見れば古いPCのものかどうか分かる。確認したらビンゴだった。",[43,111,112],{},"PC/{古いホスト名}/Documents"," が丸ごと2.6万件分、古いPCの残骸として残り続けていた。新PCに乗り換えてからもDropboxはそれを「自分の管理対象」として同期し続けていたわけだ。",[25,115,116],{"id":116},"対処",[118,119,120,124,127],"ul",{},[121,122,123],"li",{},"新PCの Documents のバックアップを停止（ローカルからの吸い上げを止める）",[121,125,126],{},"Dropbox Web の「バックアップ」画面で、古いPCの登録を削除する画面まで誘導",[121,128,129],{},"削除確定はユーザー本人に任せた（取り返しがつかない操作なのでクリックは委ねる）",[25,131,133],{"id":132},"おまけpicturesclipboardimages-仮説ハズレ","おまけ：Pictures/ClipboardImages 仮説（ハズレ）",[14,135,136,137,140],{},"途中、Pictures 配下の ",[43,138,139],{},"ClipboardImages"," フォルダ（クリップボード画像の自動保存先）が「最近30日で764件」と多いことを発見した。これも同期対象なら太い回線喰いの容疑者だな、と思って Dropbox の設定を見直したら、Pictures はそもそもバックアップ対象外だった。仮説倒れ。容疑者リストから外した。",[10,142,144],{"id":143},"第二幕スタートアップ常駐プロセスの棚卸し","第二幕：スタートアップ・常駐プロセスの棚卸し",[14,146,147],{},"Dropboxの謎が片付いたので、ついでにPC起動時に立ち上がる常駐プロセス全体を見直すことにした。古いPCから新PCに環境を引き継ぐと、要らなくなったサービスが残骸として動き続けがちで、その地縛霊たちを今日のうちに片付けたい。",[25,149,151],{"id":150},"win32_startupcommand-だけ見ると判定が漏れる","Win32_StartupCommand だけ見ると判定が漏れる",[14,153,154,155,158],{},"最初は WMI の ",[43,156,157],{},"Win32_StartupCommand"," を眺めて「ここに並んでるのが起動時に立ち上がるやつ全部」と思っていた。",[55,160,162],{"className":57,"code":161,"language":59,"meta":60,"style":60},"Get-CimInstance Win32_StartupCommand | Select-Object Name, Command, Location\n",[43,163,164],{"__ignoreMap":60},[64,165,166],{"class":66,"line":67},[64,167,161],{},[14,169,170,171,175],{},"ところがこれだと、タスクマネージャの「スタートアップ」タブで",[172,173,174],"strong",{},"オフ","にしたエントリも一緒に出てくる。「本当にいま有効か」までは判別できない。",[14,177,178,179,182],{},"正しくは StartupApproved レジストリと突き合わせる必要がある。",[43,180,181],{},"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\StartupApproved\\Run"," などに、各エントリの有効/無効フラグが入っている。両方を読んで突き合わせると、初めて「現在ONになっているスタートアップ」の全貌が見える。これに気づくまでオン/オフ判定をミスっていた。",[25,184,186],{"id":185},"サービス側の調査sql-server-が3つ動いていた","サービス側の調査：SQL Server が3つ動いていた",[14,188,189,190,193],{},"スタートアップ（=ユーザーの自動起動）と並んで、Windows サービスとして自動起動しているプロセスも棚卸しした。",[43,191,192],{},"Get-Service"," で StartType=Automatic のものを抽出して、メモリ使用量と一緒に並べる。",[14,195,196],{},"驚いたのは SQL Server 系のインスタンスが3つ自動起動していたこと。",[198,199,200,216],"table",{},[201,202,203],"thead",{},[204,205,206,210,213],"tr",{},[207,208,209],"th",{},"インスタンス",[207,211,212],{},"用途",[207,214,215],{},"状態",[217,218,219,234,248],"tbody",{},[204,220,221,228,231],{},[222,223,224,227],"td",{},[43,225,226],{},"MSSQLSERVER","（SQL Server 2016）",[222,229,230],{},"税務ソフト系のサービス（達人）が使うDB",[222,232,233],{},"1.4GB 消費して稼働中",[204,235,236,242,245],{},[222,237,238,241],{},[43,239,240],{},"MSSQL$YAYOI","（SQL Server 2014）",[222,243,244],{},"会計ソフトC（弥生）のインスタンス",[222,246,247],{},"117MB 消費、ただし本体アンインストール済み",[204,249,250,253,256],{},[222,251,252],{},"SQL Server 2017",[222,254,255],{},"インストーラ残骸",[222,257,258],{},"エンジン自体は動いていない",[14,260,261],{},"加えて MySQL と PostgreSQL ×2 も自動起動していた。新PCに引っ越したときに「古いPCの開発環境を一通り入れ直す」をやったツケで、もう使っていないDBエンジンがメモリを占有していた。",[25,263,265],{"id":264},"mssqlserver達人の中身","MSSQLSERVER（達人）の中身",[14,267,268],{},"サービス名だけ見ても用途が分からないので、データベース一覧を引いて中身を確認した。",[55,270,274],{"className":271,"code":272,"language":273,"meta":60,"style":60},"language-sql shiki shiki-themes vitesse-light vitesse-light","SELECT name FROM sys.databases;\n","sql",[43,275,276],{"__ignoreMap":60},[64,277,278,282,285,288,292,296,299],{"class":66,"line":67},[64,279,281],{"class":280},"sHkkW","SELECT",[64,283,284],{"class":280}," name",[64,286,287],{"class":280}," FROM",[64,289,291],{"class":290},"snbK4"," sys",[64,293,295],{"class":294},"sG7-3",".",[64,297,298],{"class":290},"databases",[64,300,301],{"class":294},";\n",[14,303,304,307,308,307,311,307,314,307,317,307,320,307,323,307,326,329,330,333],{},[43,305,306],{},"Hj_DATABASE","、",[43,309,310],{},"Sy_DATABASE",[43,312,313],{},"St_DATABASE",[43,315,316],{},"Nc_DATABASE",[43,318,319],{},"Ug_DATABASE",[43,321,322],{},"Ef_DATABASE",[43,324,325],{},"Fl_DATABASE",[43,327,328],{},"Gk_DATABASE"," という命名規則のDBがずらりと並んでいた。これは税務ソフト系のサービス（達人シリーズ、NTTデータの税務申告ソフト）のDB。各税目（法人税・所得税・消費税など）が ",[43,331,332],{},"Hj_/Sy_/St_/Nc_/Ug_/Ef_/Fl_/Gk_"," の接頭辞で分かれている設計だった。",[14,335,336,337,340],{},"これは現役で使っているソフトのDBなので、消すと作業データが死ぬ。手は出さない。ただ自動起動のままにしておくとメモリ1.4GBを常時食うので、本来は手動起動に切り替えたいところ。ただし税務ソフトを起動するたびに先にサービスを ",[43,338,339],{},"net start"," するのが面倒で、結局 Automatic のまま据え置きにした。",[14,342,343],{},"代替案として、Stream Deck の Multi Action（複数コマンドの連鎖）にサービス起動とソフト起動を仕込めば、ボタン1個で両方立ち上げられる。これはメモに残しておいて、また気が向いたときに組む。",[25,345,347],{"id":346},"mssqlyayoi弥生は本体が消えていた","MSSQL$YAYOI（弥生）は本体が消えていた",[14,349,350,351,353,354,357],{},"問題はこっち。",[43,352,240],{}," は会計ソフトC（弥生）の専用インスタンスとして入っているもので、過去に弥生をインストールした時の置き土産。確認したら",[172,355,356],{},"本体はアンインストール済みでアプリのインストール痕跡が無い","のに、SQL Server インスタンスだけサービスとして残って毎回117MBのメモリを抱えて起動していた。",[14,359,360],{},"中身を覗いてみる。",[55,362,364],{"className":271,"code":363,"language":273,"meta":60,"style":60},"-- master だけ。ユーザーDBは存在しない\nSELECT name FROM sys.databases WHERE database_id > 4;\n",[43,365,366,372],{"__ignoreMap":60},[64,367,368],{"class":66,"line":67},[64,369,371],{"class":370},"sxvE3","-- master だけ。ユーザーDBは存在しない\n",[64,373,374,376,378,380,382,384,386,389,392,396,400],{"class":66,"line":73},[64,375,281],{"class":280},[64,377,284],{"class":280},[64,379,287],{"class":280},[64,381,291],{"class":290},[64,383,295],{"class":294},[64,385,298],{"class":290},[64,387,388],{"class":280}," WHERE",[64,390,391],{"class":294}," database_id ",[64,393,395],{"class":394},"stQ0i",">",[64,397,399],{"class":398},"sM54T"," 4",[64,401,301],{"class":294},[14,403,404,405,408],{},"ユーザーDBはゼロ。",[43,406,407],{},"master"," などシステムDBしか入っていない。完全に幽霊サービスになっていた。",[25,410,412],{"id":411},"codex-にセカンドオピニオンを求めた","Codex にセカンドオピニオンを求めた",[14,414,415],{},"サービスを Stop + Disabled にする手順を Claude Code に書いてもらった後、念のため Codex（gpt-5.5）にセカンドオピニオンを聞いた。サービスを止めて Disabled にする操作は、PCを再起動しても永続的に効くのか、ただの一時停止になっていないか、という確認をしたかった。",[55,417,421],{"className":418,"code":419,"language":420,"meta":60,"style":60},"language-bash shiki shiki-themes vitesse-light vitesse-light","codex exec -m gpt-5.5 \"PowerShell で Stop-Service と Set-Service -StartupType Disabled をしたら、再起動後も Disabled は維持されるか確認したい。あと、コマンド全体の引用符の使い方もレビューして\"\n","bash",[43,422,423],{"__ignoreMap":60},[64,424,425,429,433,436,439,443,446],{"class":66,"line":67},[64,426,428],{"class":427},"senZ8","codex",[64,430,432],{"class":431},"sdGka"," exec",[64,434,435],{"class":290}," -m",[64,437,438],{"class":431}," gpt-5.5",[64,440,442],{"class":441},"sMJiu"," \"",[64,444,445],{"class":431},"PowerShell で Stop-Service と Set-Service -StartupType Disabled をしたら、再起動後も Disabled は維持されるか確認したい。あと、コマンド全体の引用符の使い方もレビューして",[64,447,448],{"class":441},"\"\n",[14,450,451],{},"返ってきた指摘は2点。",[453,454,455,465],"ol",{},[121,456,457,460,461,464],{},[43,458,459],{},"Set-Service -StartupType Disabled"," は ",[43,462,463],{},"services.msc"," の「無効」と同じレジストリ書き換えなので、再起動後も永続的に効く",[121,466,467],{},"PowerShell のコマンド内文字列はダブルクォートとシングルクォートが混ざっていた。シングルに統一した方が変数展開の事故を防げる",[14,469,470],{},"2点目はコピペで Bash と PowerShell を行き来する自分の癖が出ていた。シングルクォートに揃えた。",[25,472,474],{"id":473},"弥生だけ-stop-disabled-に","弥生だけ Stop + Disabled に",[14,476,477],{},"UAC のプロンプトを承認して、以下を実行した。",[55,479,481],{"className":57,"code":480,"language":59,"meta":60,"style":60},"Stop-Service 'MSSQL$YAYOI' -Force\nSet-Service 'MSSQL$YAYOI' -StartupType Disabled\n",[43,482,483,488],{"__ignoreMap":60},[64,484,485],{"class":66,"line":67},[64,486,487],{},"Stop-Service 'MSSQL$YAYOI' -Force\n",[64,489,490],{"class":66,"line":73},[64,491,492],{},"Set-Service 'MSSQL$YAYOI' -StartupType Disabled\n",[14,494,495,496,498],{},"タスクマネージャでメモリを見ると117MB分の領域が解放された。1.4GB の MSSQLSERVER（達人）の方は据え置き、",[43,497,252],{}," の残骸はそもそもエンジンが動いていなかったので触らず。MySQL と PostgreSQL ×2 は今後使う可能性があるので Manual に落とすかどうか保留。今日はここまで。",[10,500,501],{"id":501},"学び",[118,503,504,514,525,531,537],{},[121,505,506,509,510,513],{},[172,507,508],{},"「同期しているファイル数」と「ローカルにあるファイル数」のギャップが大きいときは、まずホスト名を疑う","。Dropboxの ",[43,511,512],{},"PC/{ホスト名}/"," 構造を理解していないと、自分のローカルだけ見て延々調べることになる。古いPCの残骸はクラウドに残り続ける。",[121,515,516,521,522,524],{},[172,517,518,520],{},[43,519,157],{}," だけではスタートアップのオン/オフは判定できない","。StartupApproved レジストリを突き合わせて初めて「現在有効なエントリ」が分かる。タスクマネージャでオフにしたものも ",[43,523,157],{}," には残る。",[121,526,527,530],{},[172,528,529],{},"アンインストール済みソフトのSQL Serverインスタンスは残骸として生き残る","。会計ソフトCの本体は消えていたのに、専用インスタンスだけ動き続けて毎回メモリを抱えていた。アンインストーラがインスタンスまでは消してくれないことがある。",[121,532,533,536],{},[172,534,535],{},"Codex のセカンドオピニオンは「永続性」と「シェル文法」の確認に効く","。Stop-Service が一時停止か永続無効かの境目は意外と忘れやすい。引用符の混在もレビューの一発で気づいた。",[121,538,539,542],{},[172,540,541],{},"「メモリを食うから自動起動を止めたい」と「いざ使うとき手動起動が面倒」のトレードオフは、ボタン1個で連鎖起動できる仕組みがあれば解ける","。Stream Deck の Multi Action にサービス起動とアプリ起動を並べれば両立する。今日は組まずにメモだけ残した。",[10,544,545],{"id":545},"明日以降の宿題",[118,547,550,560,570,576],{"className":548},[549],"contains-task-list",[121,551,554,559],{"className":552},[553],"task-list-item",[555,556],"input",{"disabled":557,"type":558},true,"checkbox"," Dropbox Web で古いPCのバックアップ削除を実行する（クリックはユーザー操作）",[121,561,563,565,566,569],{"className":562},[553],[555,564],{"disabled":557,"type":558}," 達人シリーズ用に Stream Deck の Multi Action を組む（",[43,567,568],{},"net start MSSQLSERVER"," → 達人本体 .exe を順次起動）",[121,571,573,575],{"className":572},[553],[555,574],{"disabled":557,"type":558}," MySQL と PostgreSQL ×2 の使用状況を確認して、未使用なら Manual に落とす",[121,577,579,581],{"className":578},[553],[555,580],{"disabled":557,"type":558}," 古いPCそのものを物理的に処分する前に、Dropbox 以外（OneDrive・Google Drive 等）のクラウド連携にも残骸が無いか確認する",[583,584,585],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHkkW, html code.shiki .sHkkW{--shiki-default:#1E754F;--shiki-dark:#1E754F}html pre.shiki code .snbK4, html code.shiki .snbK4{--shiki-default:#A65E2B;--shiki-dark:#A65E2B}html pre.shiki code .sG7-3, html code.shiki .sG7-3{--shiki-default:#393A34;--shiki-dark:#393A34}html pre.shiki code .sxvE3, html code.shiki .sxvE3{--shiki-default:#A0ADA0;--shiki-dark:#A0ADA0}html pre.shiki code .stQ0i, html code.shiki .stQ0i{--shiki-default:#AB5959;--shiki-dark:#AB5959}html pre.shiki code .sM54T, html code.shiki .sM54T{--shiki-default:#2F798A;--shiki-dark:#2F798A}html pre.shiki code .senZ8, html code.shiki .senZ8{--shiki-default:#59873A;--shiki-dark:#59873A}html pre.shiki code .sdGka, html code.shiki .sdGka{--shiki-default:#B56959;--shiki-dark:#B56959}html pre.shiki code .sMJiu, html code.shiki .sMJiu{--shiki-default:#B5695977;--shiki-dark:#B5695977}",{"title":60,"searchDepth":73,"depth":73,"links":587},[588,589,596,604,605],{"id":12,"depth":73,"text":12},{"id":22,"depth":73,"text":23,"children":590},[591,592,593,594,595],{"id":27,"depth":79,"text":28},{"id":37,"depth":79,"text":38},{"id":98,"depth":79,"text":99},{"id":116,"depth":79,"text":116},{"id":132,"depth":79,"text":133},{"id":143,"depth":73,"text":144,"children":597},[598,599,600,601,602,603],{"id":150,"depth":79,"text":151},{"id":185,"depth":79,"text":186},{"id":264,"depth":79,"text":265},{"id":346,"depth":79,"text":347},{"id":411,"depth":79,"text":412},{"id":473,"depth":79,"text":474},{"id":501,"depth":73,"text":501},{"id":545,"depth":73,"text":545},"personal","Dropboxが2.6万件のファイルを延々同期する原因が古いPCのバックアップ残骸だと判明し、ついでにWindowsの常駐サービスを棚卸しして弥生インスタンスの幽霊を成仏させた一日","md",{},null,"/pc-environment-cleanup","daily-log",false,"2026-05-09T00:00:00.000Z",{"title":5,"description":607},"2026-05/2026-05-09/pc-environment-cleanup",[618,619,620,621],"Windows","Dropbox","SQL Server","Codex","Rocj_2UXqyxE1Ed-S-hQY3gA7MqWOpOnrDRDaN4Rg_s",[],"https://log.eurekapu.com/og/blog/pc-environment-cleanup.png?v=2026-05-09T00%3A00%3A00.000Z&title=Dropbox%E3%81%8C2.6%E4%B8%87%E4%BB%B6%E5%90%8C%E6%9C%9F%E3%81%99%E3%82%8B%E8%AC%8E%E3%81%A8SQL%20Server%E3%81%AE%E6%AE%8B%E9%AA%B8%E3%82%92%E6%95%B4%E7%90%86%E3%81%97%E3%81%9F%E8%A9%B1&author=Kei%20Komatsu&sig=a73e2d70de52e5d0",1782528834511]