Jak montować i odmontowywać dyski twarde w systemie Windows (sposób uniksowy)

36

Na moim komputerze roboczym mam dwa dyski twarde USB, których rzadko używam. Mają tryb oszczędzania energii, który wysyła ich w tryb uśpienia po kilku minutach bezczynności.

Ilekroć otwieram menu kontekstowe pliku, dyski są budzone (najprawdopodobniej spowodowane przez program obsługi „wyślij do”). Więc wysuwam dysk, ale nie mogę znaleźć sposobu na odzyskanie go poza odłączeniem i ponownym podłączeniem.

Czy istnieje sposób na odmontowanie dysków, a następnie ponowne zamontowanie ich tylko wtedy, gdy naprawdę ich potrzebuję? (W systemie Windows 7 Ultimate.)

Der Hochstapler
źródło
Jeśli to jakaś pomoc, podsumowałem wszystkie opcje w ramach mojej odpowiedzi na to pytanie
Albin,

Odpowiedzi:

38

Usuń litery dysku za pomocą mountvollub diskmgmt.msc. Bez litery dysku nie pojawią się w obszarze Komputer ani Wyślij do .

mountvol Q: /p

Użycie /pspowoduje dezinstalację urządzenia. W starszych wersjach systemu Windows masz tylko to /d, co jedynie cofnie przypisanie litery dysku, ale utrzyma wolumin zamontowany.

Ponownie przypisz w razie potrzeby, używając identyfikatora woluminu wydrukowanego przez mountvol:

mountvol Q: \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}\

Możesz także zamontować wolumin w pustym folderze (styl uniksowy), używając tych samych narzędzi:

mkdir C:\fs\backup-disk
mountvol C:\fs\backup-disk \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}\

Wszystkie te operacje wymagają uprawnień administratora.


(W rzeczywistości może być nawet możliwe bezpośrednie użycie identyfikatora woluminu w skryptach kopii zapasowej, bez konieczności montowania go w dowolnym miejscu. Na przykład \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}\projectszamiast Q:\projects.)

grawitacja
źródło
6
Nawiasem mówiąc, czy ten identyfikator GUID jest powiązany z urządzeniem? Czy będzie tak samo, jeśli podłączę urządzenie do innego komputera z systemem Windows? Czy jest nawet statyczny między restartami na tej samej maszynie?
Der Hochstapler,
2
@OliverSalzburg: Identyfikator GUID woluminu jest powiązany z tym konkretnym woluminem i utrzymuje się po ponownym uruchomieniu. (Musi to zrobić, aby trwałe przypisania liter dysków i podłączenia systemu plików działały.) Niestety nie jest to lokalne dla komputera. (O ile mi wiadomo, Windows nie ma jeszcze możliwości odwoływania się do woluminów według identyfikatora UUID lub systemu plików.)
grawity
3
Czy to naprawdę to samo, co odmontowywanie w systemie UNIX? W systemie UNIX po zmontowaniu woluminu można bezpiecznie zgrać go z komputera. (Być może spowoduje to uszkodzenie magistrali SATA, jeśli nie masz odpowiedniej obsługi sprzętowej i może być konieczne ponowne uruchomienie komputera, ale nie stracisz żadnych danych.) Jeśli nadal możesz uzyskać dostęp do dysku jako \ \ ??
Glyph
3
@ DavidBalažic: /Dusuwa tylko przypisanie litery dysku (lub ścieżki). Demontaż oznacza odłączenie wszystkich takich zadań, a także zamknięcie samego systemu plików. Pamiętaj, że Windows domyślnie montuje wszystkie systemy plików na \\?\Volume{…}ścieżkach, dlatego regularne mountvolużytkowanie tylko dodaje / usuwa dodatkowe (jak mount --bind /x /yw Linuksie).
grawity
3
Więc jeśli chcę, aby Windows całkowicie „puścił” wolumin, muszę użyć / P? Aby uzyskać taki sam efekt jak umount na * nix? Użycie / D usuwa przypisanie jednej litery / ścieżki, podczas gdy wolumin faktycznie pozostaje zamontowany?
David Balažic
6

Użyj DISKPART, aby ustawić dysk w trybie offline.
Pozostanie offline nawet po restarcie lub ponownym włączeniu zasilania

Użyj DISKPART, aby przywrócić go do trybu online

Można to zrobić za pomocą skryptów

plik poleceń, aby przełączyć dysk 2 w tryb offline:

Offline.cmd

 echo list disk              > c:\windows\temp\namexxxx.none
 echo select disk 2         >> c:\windows\temp\namexxxx.none
 echo offline disk          >> c:\windows\temp\namexxxx.none
 echo exit                  >> c:\windows\temp\namexxxx.none
 diskpart /s c:\windows\temp\namexxxx.none
 erase c:\windows\temp\namexxxx.none
 pause

plik poleceń, aby przełączyć dysk 2 w tryb online:

Online.cmd

 .
 echo select disk 2 ........
 echo online disk ......
 .

Wykonaj jako administrator

Opoedre
źródło
„lista dysków” nie jest potrzebna, wyświetla tylko listę dysków użytkownikowi
trogper
5

Prawidłową odpowiedzią jest użycie parametru / P do mountvol (zobacz komentarze w zaakceptowanej odpowiedzi, aby zrozumieć, dlaczego / D nie wystarcza), ale dotyczy to tylko najnowszych wersji systemu Windows (jądro NT wersja 6 i nowsze ) .

devconNarzędzie w sposób opisany w niniejszym odpowiedź działa na wszystkich wersjach NT

Costin Gușă
źródło