विंडोज में ड्राइव अक्षर के बजाय वॉल्यूम आईडी का उपयोग करके डिस्क ड्राइव तक पहुंच


31

क्या मैं विंडोज में ड्राइव अक्षर के बजाय वॉल्यूम आईडी का उपयोग करके डिस्क ड्राइव तक पहुंच सकता हूं? यह बाहरी ड्राइव के लिए बहुत उपयोगी हो सकता है।


जिन विभाजनों के लिए कोई ड्राइव अक्षर असाइन नहीं किया गया है, वॉल्यूम आईडी उन्हें एक्सेस करने का एकमात्र तरीका है। यदि आप पहले से ही अपने मौजूदा विभाजन के माध्यम से अंग्रेजी वर्णमाला के 26 अक्षरों का उपभोग कर चुके हैं, तो आप एक नए विभाजन को ड्राइव पत्र नहीं दे सकते। तो ऐसे मामले में, वे न केवल उपयोगी होंगे, बल्कि उन्हें एक्सेस करने का एकमात्र तरीका होगा।
RBT

जवाबों:


42

आप mountvolजिस वॉल्यूम तक पहुंचना चाहते हैं उसका आईडी प्राप्त करने के लिए कमांड प्रॉम्प्ट में उपयोग कर सकते हैं ।

यहाँ छवि विवरण दर्ज करें

यह आईडी ड्राइव अक्षर से स्वतंत्र एक एक्सप्लोरर विंडो खोलने के लिए इस्तेमाल किया जा सकता है

यहाँ छवि विवरण दर्ज करें

ड्राइव का शॉर्टकट बनाने के लिए, इस सामग्री के साथ एक नई बैच फ़ाइल बनाएँ:

start \\?\Volume{1b3b1146-4076-11e1-84aa-806e6f6e6963}\

हाँ, यह वही है जो मैंने लंबे समय तक खोजा! अब मुझे केवल सभी वॉल्यूम आईडी प्राप्त करने के लिए माउंटवोल कमांड को कॉल करने की आवश्यकता है। फिर "\\? \ Volume {}" जैसे पथ का उपयोग करके मैं आवश्यक आईडी (यदि यह प्रस्तुत करता है) के साथ ड्राइव कर सकता है। धन्यवाद!
ऑल्विन

1
हां, यह विधि एक्सप्लोरर के साथ काम करती है और कमांड लाइन के साथ फाइल कॉपी करती है। लेकिन unfortunatelly TrueCrypt एक keyfile के लिए इस तरह के रास्ते को स्वीकार नहीं करता है = (
olvin

दुर्भाग्य से यह केवल तभी काम करता है जब आपके पास NetBIOS और RPC लोकेटर चल रहा हो, इसलिए यदि आपने विंडोज को कठोर किया है तो यह काम नहीं करेगा। इसके अलावा, संभवतः आपको इसका उपयोग करने के लिए कई नेटवर्क-संबंधित सेवाओं और ड्राइवरों को चलाने की आवश्यकता होगी (वर्कस्टेशन, कंप्यूटर ब्राउज़र, सर्वर, टीसीपी / आईपी नेटबीआईओएस हेल्पर, नेटबीटी, डीएचसीपी, डीएनएस, आदि) यह इन के बाद से गूंगा है। स्थानीय संस्करणों। :-|
22

1
खैर .. ट्रू क्रिप्टिप सही तरीके से बढ़ते ड्राइव के लिए इसका समर्थन करता है:@"%ProgramFiles%\TrueCrypt\TrueCrypt.exe" /v \\?\Volume{4033aabd-1234-5678-a1234567890}\ /lr /c n /q
फ्रैंक नॉक

@ सिंथेटेक: मैं इसे दोहरा नहीं सकता; पोस्ट के रूप में जवाब मेरे लिए भी ठीक काम करता है यहां तक ​​कि NetBIOS और RPC लोकेटर के साथ, और बाकी सब कुछ नेटवर्क से संबंधित मुझे मिल सकता है, अक्षम। (शायद आप UNC पथ के लिए कर्नेल पथ को गलत कर रहे थे? या यह केवल Windows के पुराने संस्करण पर एक समस्या थी?)
हैरी जॉनसन

9

में PowerShell , उपयोग Get-Volumeके माध्यम से पहुंचाया Format-Listइस तरह:

get-volume | fl 

उदाहरण के लिए, आपको SYSTEM RESERVEDमेरी एक मशीन पर यह सब कुछ देना होगा :

ObjectId             : {1}\\ACER-M3900\root/Microsoft/Windows/Storage/Providers_v2\WSP_Volume.ObjectId="{5b16a307-de54-11e7-8aeb-806e6f6e6963}:VO:\\?\Volume{b41b0670-0000-0000-00e8-0e8004000000}\"
PassThroughClass     :
PassThroughIds       :
PassThroughNamespace :
PassThroughServer    :
UniqueId             : \\?\Volume{b41b0670-0000-0000-00e8-0e8004000000}\
AllocationUnitSize   : 4096
DedupMode            : NotAvailable
DriveLetter          :
DriveType            : Fixed
FileSystem           : NTFS
FileSystemLabel      : SYSTEM RESERVED
FileSystemType       : NTFS
HealthStatus         : Healthy
OperationalStatus    : OK
Path                 : \\?\Volume{b41b0670-0000-0000-00e8-0e8004000000}\
Size                 : 105058304
SizeRemaining        : 33992704
PSComputerName       :

छिपे हुए / सिस्टम वॉल्यूम को देखने के लिए, आपको ऊंचा चलना चाहिए, मेरे जवाब में कैविट्स देखें
पापो

4

मैं फ्लैश ड्राइव के लिए निरपेक्ष ड्राइव अक्षर का उपयोग करना पसंद करता हूं। जब तक आपके पास 20 या अधिक फ्लैश ड्राइव हैं, तब तक किसी के बारे में पर्याप्त असाइनमेंट हैं।

विंडोज 7 में विंडोज का उपयोग एक ड्राइव लेबल को प्रारूपित करने और असाइन करने के लिए या यदि ड्राइव में पहले से ही एक लेबल है, तो इसे अपनी पसंद का लेबल देने के लिए कमांड लाइन "लेबल (ड्राइव अक्षर) का उपयोग करें।"

इसके बाद कंट्रोल पैनल, सिस्टम और सिक्योरिटी, एडमिनिस्ट्रेटिव टूल्स, कंप्यूटर मैनेजमेंट, डिस्क मैनेजमेंट पर जाएं, ड्राइव पर राइट क्लिक करके आपके द्वारा बनाए गए लेबल के साथ ड्राइव को सेलेक्ट करें, चेंज ड्राइव लेटर और पाथ्स को चुनें और वॉल्यूम को एक खास ड्राइव लेटर को असाइन करें। यदि यह उपलब्ध है तो यह हमेशा उस ड्राइव लेटर को माउंट करेगा।

मैंने उन ड्राइव को लेबल किया है जिनमें लाइव डेटा है और लेबलिंग ने मौजूदा डेटा को किसी भी तरह से प्रभावित नहीं किया है। यह ठीक वैसे ही काम करने लगता है जैसे यह अच्छे पुराने दिनों में फ्लॉपीज़ पर किया था


0

एक लेबल का उपयोग करना

आप इस तरह PS में इसके लेबल का उपयोग करके एक डिस्क ड्राइव तक पहुँच सकते हैं:

ls -l (Get-Volume | ? FileSystemLabel -eq "Barry Allen drive").Path

इसे छोटा किया गया है, बेहतर पठनीयता के लिए स्क्रिप्ट में पूर्ण प्रारूप का उपयोग करें - नीचे देखें

GptType का उपयोग करना

GPT विशेष विभाजनों के लिए निश्चित ID का उपयोग करता है। हम पोर्टेबल स्क्रिप्ट लिखने के लिए इसका उपयोग कर सकते हैं, बिना किसी कंप्यूटर पर रिकवरी या सिस्टम संस्करणों को एक्सेस करने के लिए इसे एक अक्षर बताए बिना:

सिस्टम की मात्रा:
ls -l (Get-Partition | ? GptType -eq "{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}").AccessPaths[0]

पुनर्प्राप्ति मात्रा:
ls -l (Get-Partition | ? GptType -eq "{de94bba4-06d1-4d40-a16a-bfd50179d6ac}").AccessPaths[0] -Force
cd "$((Get-Partition | ? GptType -eq "{de94bba4-06d1-4d40-a16a-bfd50179d6ac}").AccessPaths[0])Recovery"

MSR: UEFI पर, MSR पार्टीशन भी है (होना चाहिए), लेकिन आप इसे एक्सेस नहीं कर सकते क्योंकि इसमें वॉल्यूम नहीं है और न ही फाइलसिस्टम:
एरर:ls -l ((Get-Partition | ? GptType -eq "{e3c9e316-0b5c-4db8-817d-f92df00215ae}").AccessPaths[0]) -Force



तीन कैविएट:

गेट-वॉल्यूम छिपे हुए संस्करणों को तब तक सूचीबद्ध नहीं करेगा जब तक कि यह ऊंचा नहीं चल रहा हो, गेट-पार्टिशन उन्हें गैर-एलिवेटेड सूची देगा, लेकिन आप वैसे भी उन्हें आगे नहीं पहुँचा सकते हैं।

Get-ChildItem (ls) डिवाइस पाथ को -LiteralPath तर्क (-l) का उपयोग करके पास किया जाना चाहिए। यह 'की वजह से नहीं है?' विशेष वर्ण। -पैथ सिर्फ डिवाइस पाथ के साथ काम नहीं करता है भले ही '?' बच जाता है।

डिवाइस पाथ की जड़ में सीडी लगाना संभव नहीं है। लेकिन इसके फोल्डर को सीडी करना संभव है।



उपरोक्त कथनों का स्पष्टीकरण और पूर्ण प्रारूप

हमेशा बेहतर पठनीयता के लिए एक स्क्रिप्ट में पूर्ण प्रारूप का उपयोग करें

ls -l ((Get-Partition | ? GptType -eq "{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}").AccessPaths[0])

इसके लिए छोटा है:

Get-ChildItem -LiteralPath ((Get-Partition | Where-Object { $_.GptType -eq "{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}" }).AccessPaths[0])

lsis a alias Get-ChildItem
-lis -LiteralPath
? *attribute* -eq "*value*"is को छोटा किया जाता है, ? { $_.*attribute* -eq "*value*" }
?इसका निर्माण छोटा होता है, a alias Where-Object
-Forceis का उपयोग रिकवरी वॉल्यूम पर छिपी फाइलों को देखने के लिए किया जाता है

गेट-पार्टिशन और गेट-वॉल्यूम का उपयोग:
गेट-पार्टिशन GptType पैरामीटर प्रदान करता है, लेकिन लेबल नहीं, गेट-वॉल्यूम लेबल देता है, लेकिन GptType नहीं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.