Lenovo YOGA Bookを使ってみて、分かってはいましたが、やはりCドライブの空き容量が少ない。
なのでマイクロSDカードを仮想HDDとして使えるようにしてみました。
マイクロSDを挿入すれば普通にDドライブとして使えるわけですが、それだと外部メモリとして認識されているので使い勝手が悪い。
そこで、SDカードを仮想HDDとして認識させれば格段に使い勝手が良くなります。
たとえばアプリケーションのインストール先としても使えるようになります。
それでは作業をしてみます。
マイクロSDカードのドライブを変更
まずは仮想HDDをDドライブとして使いたいので、マイクロSDカードのドライブをDドライブから、今後も使う事が無いであろうOドライブへ変更します。
コントロールパネル > 管理ツール > コンピュータの管理から、ディスクの管理を選択します。
まずは画面下段のマイクロSDカード(Dドライブ)を選択して右クリック。
メニューから「ドライブ名とパスの変更」を選択します。
「変更」ボタンを押します。
「次のドライブ文字を割り当てる」で「O」ドライブを選択します。
もちろん他のドライブ文字を選んでもOKです。
確認画面が表示されるので「OK」をクリックします。
これでドライブ名が「Oドライブ」になり、変更が完了です。
仮想ディスクの作成
次に仮想ドライブの作成です。
スタートボタンを押して、メニューから「ディスクの管理」を選択します。
ディスク管理の画面が開いたら、メニューの 「操作」>「VHDの作成」 を選択します。
「仮想ハードディスクの作成と接続」画面が開いたら、参照ボタンを押します。
ファイル参照の画面が開いたら、左のツリーからマイクロSDカードを選択し、ファイル名を適当に付けます。
私は「VHD」としておきました。
仮想ハードディスクのサイズを入力します。
きっちり全部ににはできそうになかったし、後に軽いファイルを2つ入れなきゃいけないので、数十MB余らすことになるギリギリの値をセットしました。
値がオーバーしているとエラーメッセージが表示されます。
他に仮想ハードディスク フォーマットを「VHD」、仮想ハードディスクの種類を「容量固定」にします。
最後に「OK」ボタンを押すと作成が始まり、数分後(画面右下に進捗割合が表示)に上の画像のディスク管理に戻ります。
次に新しく追加されたディスクの右端「ディスク2 不明 初期化されていません」と書かれた部分で右クリックし、メニューから「ディスクの初期化」を選択します。
MBR(マスターブートレコード)を選択し、「OK」ボタンを押します。
新しく追加されたディスクの右端が「ディスク2 XXGB オンライン」になります。
次にその右側、「XXGB 未割り当て」で右クリックし、メニューから「新しいシンプルボリューム」を選択します。
ウィザード画面が表示されるので「次へ」をクリックします。
ボリュームサイズを指定します。特に分割とかしないなら最大値でよいです。
次にドライブ名を指定します。
先ほどDドライブを空けておいたのでDドライブを指定します。
ボリュームラベルを適当に付けます。
設定内容に間違いが無ければ「完了」をクリックします。
これで仮想HDDのできあがりです。
起動時に仮想HDDを自動でマウント
折角作った仮想HDDですが、PCを再起動すると消えてなくなっちゃうんです。
これは毎回起動時にマウントする作業が必要なんですね。
そこで、タスクスケジューラを使って、起動時に自動でマウントするようにします。
まず、ファイルを2つ作成します。
vhd_mount.bat
diskpart -s O:\vhd_mount.txt
vhd_mount.txt
sel vdisk file="O:\vhd.vhd" attach vdisk
vhd_mount.batとvhd_mount.txtというファイルをテキストエディタで作り、それぞれ上の内容を「O」ドライブに保存します。
1つ目のファイル、hd_mount.batの「O:\mount.txt」のところ、「O」の部分はこのファイルの保存先ドライブになります。
私はマイクロSDカードに保存するので「O」としました。
また、「mount.txt」は2つ目のファイルのファイル名になります。
2つ目のファイル、vhd_mount.txtの「O:\vhd.vhd」は作成した仮想HDDファイルの保存場所を指定します。
今回は「O」ドライブのマイクロSDカードに作成したので「O:\vhd.vhd」になります。
念のため、、、「vhd.vhd」は上で作成した仮想HDDのファイル名になります。
次にスタートメニューを右クリックしたメニューから「コンピュータの管理」を選択します。
開いた画面の左側にあるメニューから「タスクスケジューラ」を選択し、次に右側にあるメニューから「タスクの作成…」を選びます。
追記 2018.11.08
以下、コメントいただいた方の件を調べててタスクスケジューラへの登録手順を変更しました。
開いた画面の上部にある「名前」欄にタスクの名称を適当に入力します。
次に「ユーザーまたはグループの変更」ボタンをクリックします。
開いたウインドウに「」選択するオブジェクト名を入力してください」欄に「system」と入力して「名前の確認」ボタンをクリックします。
「system」は小文字でもOKですが、「名前を確認」ボタンを押した時に、大文字の「SYSTEM」にかわります。
「SYSTEM」はWindowsOSがサービスを起動するためのアカウントで、システムへのフルアクセスが可能です。
ユーザーアカウントよりこちらにしておいた方がトラブルが少ないかも。
「名前の確認」ボタンをクリックしたときに、タイプミス等があるとエラーがでます。
「OK」ボタンをクリックしてプロパティ画面に戻ります。
「タスクの実行時に使うユーザーアカウント」欄が「NT AUTHORITY¥SYSTEM」になっていることを確認します。
「最上位の特権で実行する」にチェックを入れます。
ここではまだ画面下の「OK」ボタンを押しません。
次に「トリガー」タブをクリックし、画面下にある「新規」ボタンをクリックします。
画面上部の「タスクの開始」で「スタートアップ時」を選択し、「OK」ボタンをクリックします。
トリガー画面に「スタートアップ時」が追加されます。
次に「操作」タブをクリックし、画面下にある「新規」ボタンをクリックします。
参照ボタンをクリックし、マイクロSDカードに保存した「vhd_mount.bat」を選択します。
引数は不要なので「OK」ボタンをクリックします。
操作画面に「O:\vhd_mount.bat」が追加されました。
次に「条件」タブをクリックし、「コンピュータをAC電源で使用している場合のみタスクを開始する」のチェックを外します。
全ての条件に間違いなければ画面下の「OK」ボタンをクリックしてタスクを保存します。
追記 2018.11.08
修正はここまで
これで全て完了です。
再起動しても仮想HDDがあるかどうか確認します。
エクスプローラで見てみるとDドライブができているのがわかります。
設定の最初の方で仮想ハードディスクのサイズを最大値で入力したので、マイクロSDカードが容量一杯で真っ赤です。
これが気になりますね。
赤くなってるSDカードを見えないようにする
真っ赤になっているマイクロSDカードを目にするのも嫌なので消してしまいたい。
ドライブの表示を消すにはレジストリを弄るしかなさそうです。
スタートボタンを右クリックし、メニューから「ファイル名を指定して実行」をクリックします。
「regedit」と入力し、「OK」をクリックしてレジストリエディタを起動します。
なお、レジストリを弄るとPCが起動しなくなるなどのトラブルが発生する場合があります。
以下の作業は自己責任でお願いします。
左のツリーから「HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer」を探します。
しかし私のLenovoにはPoliciesの下にExplorerがありません。
なので作成することにします。
「Policies」で右クリックし、メニューから「新規 > キー」を選択します。
Policiesの下にフォルダのようなマークの入力欄ができるので「Explorer」と入力します。
次に作成した「Explorer」で右クリックし、メニューから「新規 > DWORD(32ビット)値」を選択します。
画面右側に「新しい値#1」という項目ができます。
この「新しい値#1」の名称を「NoDrives」に変更します。
「NoDrives」を選択し、右クリックメニューから修正を選択します。
表記で「10進数」を選択し、「値のデータ」下記表のドライブ名に該当する値を入力します。
私の場合は「Oドライブ」なので「16384」を入力しました。
間違いなければ「OK」ボタンをクリックします。
ドライブ名 | 値 | ドライブ名 | 値 |
A | 1 | N | 8192 |
B | 2 | O | 16384 |
C | 4 | P | 32768 |
D | 8 | Q | 65536 |
E | 16 | R | 131072 |
F | 32 | S | 262144 |
G | 64 | T | 524288 |
H | 128 | U | 1048576 |
I | 256 | V | 2097152 |
J | 512 | W | 4194304 |
K | 1024 | X | 8388608 |
L | 2048 | Y | 16777216 |
M | 4096 | Z | 33554432 |
これで「Oドライブ」を非表示にする作業の完了です。
反映させるには再起動が必要です。
再起動後にエクスプローラを開いてみると、「Oドライブ」が消えています。
これですっきりしました。
それにしてもこの記事だけで画像の使いすぎ。
自分が次回迷うといけないのでと思うと、ついつい画像が多くなってしまいますねぇ。
追記:2018/04/17 誤字脱字等修正しました。
コメント
初めまして。
Yogabookを有効利用しようと、貴殿のサイトを参考に作業を進めたのですが、再起動の後にDドライブが表示されません。
何が悪いのでしょうか?
お手数ですが、お教えいただければ助かります。
はじめまして。ご覧いただきありがとうございます。
タスクスケジューラの登録まで設定して、再起動でDドライブが表示されないということでしょうか?
SDカードのドライブは表示されてますか?
SDカードが表示されているのであれば、その中にある「vhd_mount.bat」を実行して、Dドライブが表示されればタスクスケジューラの登録ミス。
表示されなければ「vhd_mount.bat」、「vhd_mount.txt」の記述ミスが考えられますがいかがでしょうか。
よろしくお願いいたします。
早速の御解答、ありがとうございます。
SDカードのOドライブは表示されます。
昨日は、3回通りやりなおしてもダメだったので、諦めました。
スペルミスについては、コピペなので間違いは無いと思っていますが…。
本日は、試しに作成した二つのファイルをCドライブに保存してみたろころ、なぜか上手くいきました。
‥と書きながら再起動したところ、また表示されなくなりました。
batファイルを実行したところ、「WindowsDefenderSmartScreenは認識されないアプリの起動を停止しました」と表示され、これが原因かもしれません。
Oドライブから、VHD.VHDを実行すれば、Dドライブが表示されます。
何度も再起動をして試したのですが、2回に1回くらいDドライブが表示されまるようです。
ウイルス対策でアバストを入れているのですが、その影響かもしれません。
こんにちは。
頂いたコメントで気になったところがあります。
> 「O」ドライブから、VHD.VHDを実行すれば、Dドライブが表示されます。
2つのファイルの保存先は「O」ドライブですので、「O」ドライブから実行できれば問題ないと思います。
タスクスケジューラーへの登録も「O」ドライブのBATファイルを指定します。
もし他のドライブに2つのファイルを保存しているならOドライブに入れて、タスクスケジューラにもOドライブのvhd_mount.batを指定してください。