WindowsXP、Windows2000のジャンクション機能は危険
Windows 2000からファイルシステムがNTFS5となり、リパースポイント機能が追加されました。
これによりジャンクションが使えるようになったのですが、この機能はかなり危険です。
「ジャンクション機能って何?」という人のために説明すると、
ドライブ・ボリューム・フォルダを任意のNTFSフォルダにマウントする機能(シンボリックリンクのようなもの)です。
どういうときに使えるかというと、
DドライブにProgram FilesやDocuments and Settingsの実体をおいて、Cドライブにそのジャンクションをマウントする
webサイトの開発などで、シンボリックリンクの代わりに使う
とか
しかし問題点が多々ある。
フォルダのジャンクションを消すと、実体のファイルが消える
フォルダのジャンクションを作成してマウントしていたとします。
このジャンクションが不要になり削除する場合、ごみ箱に入れるまでは問題がありませんが、
ごみ箱から削除された時点でジャンクションの実体のフォルダ以下のファイルが消えます。
ごみ箱にも残りません。
ディレクトリに対するジャンクションを削除するにはコマンドプロンプトで RD (RMDIR) コマンドを使わないといけません。
間違って DEL コマンドで削除すると、やはり実体のフォルダ以下のファイルが消えます。
実体とは別のドライブにジャンクションを作成するとフォルダが削除できない
実体とジャンクションが別のドライブに分かれているとき、Explorerがジャンクション下のフォルダをごみ箱に入れることができません。
ごみ箱に入れず即座に削除(Shiftを押しながら削除する)することはできます。
WindowsXP SP2のファイヤーウォールが正しく機能しない
WindowsXP SP2よりファイヤーウォール機能が強化されていますが、
『Windows ファイアウォールによるプログラムのブロック時に通知を表示する』にチェックを入れても、
ジャンクション上にあるプログラムに対しては通知を表示しません。
このとき手動でポート設定を追加する必要があります。
WindowsVistaでは、これらは修正されています。
ジャンクション機能自体の不具合ではないですが、それ以外にも問題が生じます。
インストーラがドライブの空き容量を判断できない
インストール対象のドライブの空き容量を調べるインストーラがありますが、別ドライブにジャンクションがあった場合、 正しく空き容量を計算できず、インストールできないことがあります。
アンインストーラがジャンクションを理解できない
ソフトには不要になったときのためにアンインストーラが付いている場合がありますが、 そのアンインストーラの一部にはジャンクションに不具合を起こすものがあります。
関連記事
- Windows11でオフラインアカウントを作成する方法(Microsoftアカウントを使わない)
- 「VCRUNTIME140_1.dllが見つからないため、コードの実効を続行できません」の対処法
- WindowsやMacのコマンドライン(CLI)でダブルクリックで高速にChiaをマイニング(Plot:耕作)する方法
- WindowsでソフトウエアRAIDを組む方法(ストライプボリューム ミラーボリューム RAID5)
- WindowsでChia Network(XCH)をHDDマイニングする方法
- SSDの現在のTBWを調べる方法 SSDの残り寿命 (Windows Linux CentOS)
- RAIDの種類
- NTFSのディスクをLinuxにマウントすると読み込み専用でマウントされてしまう
- Windows10で自動更新を停止させる方法(Windows Updateの停止)
- IntelのCore i CPUの接尾辞(末尾のアルファベット)まとめ
- Linux・WindowsでMTUを変更する方法(ジャンボフレーム)
- Logitec HDDケース(HDD4台用) ガチャベイ LHR-4BNHEU3 LGB-4BNHEU3
- NTFSフォーマットのストレージの読み書きが異常に遅い場合
- 各ストレージの速度一覧 規格速度や実効速度(HDD/SSD/M2/NVMe/USBメモリ)
- GoogleChromeでSSL接続を強制される設定(HSTS)のキャッシュを消す方法
- phpMyAdminでログイン画面を出さずにデータベースに接続する方法
- 10GbEのLANカードで、速度が遅いときの設定方法(ジャンボフレーム・ジャンボパケット)
- Windows10でデバイスマネージャーを開く方法
- php.ini が見つからない時
- PHPでMySQLなどにPDO接続をすると、could not find driverのエラーが出る場合
- MBR形式で設定されたHDDパーティションをGPT形式に変更する方法(2TB以上のHDDを認識させる方法)
- LinuxサーバでWindowsのファイルシステムNTFSを読み込む方法
- 環境変数(PATH)を設定する方法
- Apacheをコマンドプロンプトから起動・停止・再起動する方法
- Apacheから2GB以上のファイルをダウンロードしようとすると403エラーが出ます
- 1枚のNIC(ネットワークカード)に複数のIPアドレスを設定する方法(Windows)
- PEARを更新する方法
- WindowsのPCをルータにする方法(DHCP接続)
- memcachedのインストール
- Rubyのインストール
- PostgreSQLのインストール
- Windows版PHPにPEAR・PECLをインストールする
- 他のパソコンからもApacheなどを閲覧できるようにする方法
- Windows版ApacheでCGI(Perl)を使用する方法 ActivePerl
- Windowsでシンボリックリンクを使う方法
- JDKの常駐ソフトjusched.exeを停止する方法
- ほかのアプリケーションにポートを使用されてApacheが起動できない
- DNSの設定を端末で独自に設定するには
- Windows版PHPのインストール
- Windows Apacheのインストール
- Windows MySQLインストール後の設定
- Windows MySQLのインストール
スポンサーリンク