2014-01-21 15:02:58 +0000 2014-01-21 15:02:58 +0000
8
8
Advertisement

スクリプト/ソフトウェアによるハードドライブのマウントとディスマウント

Advertisement

は、Windows 8.1でスクリプトまたは簡単なユーティリティソフトを介して接続されたハードディスクをマウントしたり、取り外したりする方法はありますか?

基本的に、私はThinkPadのウルトラベイスロットにハードドライブを持っています(DVDドライブの代わりに)。システムを起動すると、このハードドライブは自動的にマウントされて表示されます。タスクバーのアイコンを使用して、私はそれをアンマウントすることができます。しかし残念ながら、システムを再起動したときにしか使えなくなってしまいます。

そこで、再起動しなくても別のスクリプトでドライブをマウントしてマウントを解除できるコマンドラインスクリプトはありますか?

この方法では、起動後にアンマウントスクリプトを呼び出すことができるので、ドライブは常に起動しているわけではなく、必要なものがあるときだけマウントスクリプトを呼び出してファイルにアクセスすることができます。

誰かこれを解決する方法について何かアイデアをお持ちの方がいたら嬉しいです! ありがとうございます!

Advertisement

回答 (4)

8
8
8
2014-01-22 06:22:36 +0000

_免責事項: ご自身の行動に責任を持ってください。以下のことを試してみて、あなたのコンピュータやラップトップに損害を与える可能性がある場合、私は責任を負いません。

チュートリアル

1.まず、管理者としてコマンドプロンプトを開きます。 2. 2. コマンド mountvol を実行し、マウント/アンマウントしたいドライブの文字の上にあるボリューム名をメモします(例: `\?\Volume{########-####-####-####-############}_免責事項: ご自身の行動に責任を持ってください。以下のことを試してみて、あなたのコンピュータやラップトップに損害を与える可能性がある場合、私は責任を負いません。

チュートリアル

1.まず、管理者としてコマンドプロンプトを開きます。 2. 2. コマンド mountvol を実行し、マウント/アンマウントしたいドライブの文字の上にあるボリューム名をメモします(例: )

  1. ドライブをアンマウントするには、mountvol [DriveLetter] /pと入力します。必ず「[DriveLetter]」をアンマウントしたいドライブに割り当てられている文字に置き換えてください(例:G: )

  2. ドライブをマウントするには、「mountvol [DriveLetter] [VolumeName]」と入力します。DriveLetter]をマウント先のドライブに割り当てられた文字(例: G:)に置き換え、[VolumeName]をステップ2で指定したボリューム名に置き換えてください。

バッチスクリプト

これは、任意のドライブをマウントしたりアンマウントしたりするために使用できる2つのシンプルなバッチスクリプトの例です:

バッチファイルを動作させるには、管理者権限で実行する必要があります。

アンマウント:

@echo off

REM Be sure to change this to the drive you want to unmount! 
set drive=G:

echo Unmounting Drive...
mountvol %drive% /p
echo Drive Unmounted!

pause
exit

マウント:

@echo off

REM Be sure to change this to the drive letter you want to mount the drive to!
set drive=G

REM Be sure to change this to the Volume Name of the drive you want to mount!
set volume=\?\Volume{ae101d9f-7653-11e3-be83-8056f23387a6}\

:start
echo Mounting Drive...
mountvol %drive%: %volume%
echo Drive Mounted!

pause
exit

**実行する前に上部のバッチファイルを変更して、正しいドライブのマウント/アンマウントを行っていることを確認してください。

ドライブレターの割り当てを削除するだけの /D は使用しないでください。mountvol /?から: Access Denied

2
2
2
2014-12-21 07:01:55 +0000

これでいいのかどうかはわかりませんが、試してみてください。diskpartを起動(startで “diskpart "と検索するか、cmdウィンドウを開いてdiskpartと入力してください。diskpart を実行するには管理者権限が必要です)

  1. diskpart に "list volume” と入力して、削除するボリュームのボリューム番号と名前をメモします
  2. 2. “select volume [drive letter(or drive number)]と入力し、Enterキーを押します。"select volume [select volume G] or "select volume 5”
  3. “remove letter [VOLUME LETTER]” と入力します。

ボリュームをマウントするには、以下のようにしてみてください。ボリュームの文字は表示されず、ボリューム番号などの詳細のみが表示されることに注意してください。2. “assign letter [volume letter]"と入力します。ここでは、ボリュームに割り当てたい任意の文字に[volume letter]を置き換えます。

1
Advertisement
1
1
2014-11-19 12:55:07 +0000

diskpartコマンドラインユーティリティを使うことができます。これはディスクパーツのコマンドを受け付ける “独自の "コマンドラインを持っています。

このツールについての記事はこちらです。 link to technet.microsoft.com

以下のことをしなければなりません。

  • diskpart.exe を実行(Windows Vista/7/8 に付属しています。それより古いものもあるかもしれません)
  • select disk n コマンドでディスクを選択(n はディスク番号)
  • select partition n コマンドでパーティションを選択(n はパーティション番号)
  • 以下のパラメータで assign コマンドを実行

assign [{letter=d|mount=path}] [noerr]

ドライブレターまたはマウントポイントをフォーカスしてボリュームに割り当てます。ドライブレターまたはマウントポイントが指定されていない場合は、次に使用可能なドライブレターが割り当てられます。割り当てられたドライブレターまたはマウントポイントがすでに使用中の場合は、エラーが発生します。

assign コマンドを使用すると、リムーバブルドライブに関連付けられたドライブレターを変更できます。システムボリューム、ブートボリューム、ページングファイルを含むボリュームにドライブ文字を割り当てることはできません。OEM パーティションや基本データパーティション以外の GPT パーティションにドライブレターを割り当てることはできません。

letter=d ボリュームに割り当てるドライブレターを指定します。

mount=path ボリュームに割り当てるマウントポイントパスを指定します。

list disklist partition、またはlist volumeを使用して、ディスク/パーティション/ボリューム番号を検索することもできます。

**このツールを使って何をしているのか注意してください。ドライブのフォーマットに使用される可能性があります。

1
1
1
2014-01-22 08:31:34 +0000

powershellからWMIメソッドを使ってマウント/ディスマウントができるようになりました。

Get-WmiObject -class Win32_Volume | where-object {$_.DeviceID -Like "\?\Volume{########-####-####-####-############}\"} | foreach-object -process {$_.AddMountPoint("X:")}

ディスマウントするには、以下のようにします。

Get-WmiObject -class Win32_Volume | where-object {$_.DeviceID -Like "\?\Volume{########-####-####-####-############}\"} | foreach-object -process {$_.Dismount()}

そして、ここに powershell から GUID を見つける方法があります。サンプルの編集も忘れずに。

Get-WmiObject -class Win32_Volume | Select-Object DeviceID,DriveLetter
Advertisement