พรอมต์บรรทัดคำสั่งที่ยกระดับไม่สามารถเข้าถึงไดรฟ์ที่ใช้ร่วมกันได้


62
  1. ฉันแมปการแชร์จากเครื่องอื่นโดยใช้บัญชีผู้ใช้ของฉัน
  2. ฉันเรียกใช้พรอมต์คำสั่งที่มีการยกระดับ (cmd.exe คลิกขวาเรียกใช้ในฐานะผู้ดูแลระบบ)
  3. การนำทางไปยังไดรฟ์ที่ใช้ร่วมกัน (Z :) ให้ผลลัพธ์เป็น:

The system cannot find the drive specified

ตอนนี้ถ้าฉันเปิดพรอมต์คำสั่งที่ไม่มีการยกระดับฉันสามารถนำทางไปยัง Z: ใช้ได้


คำตอบ:


47

การเปิด Windows Explorer ในฐานะผู้ดูแลระบบและการสร้างการแชร์เครือข่ายใหม่ไม่ได้ผลสำหรับฉัน จากนั้นฉันพบวิธีแก้ปัญหานี้: สร้างการแชร์บนพรอมต์คำสั่งเอง มันใช้งานได้สำหรับฉัน

net use f: \\remoteserver\subfolder      

แม้ว่าไดรฟ์นั้นจะถูกแมปใน windows explorer แล้วแต่ก็ยังใช้งานได้

หมายเหตุ: ใช้เครื่องหมายทับขวาเดียวก่อนโฟลเดอร์ย่อย


25

อาจเป็นไปได้ว่าไม่ใช่ปัญหาของการอนุญาตไฟล์ แต่เกี่ยวข้องกับ:

  • การแชร์เครือข่ายที่เชื่อมโยงกับเซสชัน (เช่นผู้ใช้ที่ต่างกันอาจมีชุดการแชร์เครือข่ายที่ต่างกัน) โปรดทราบว่าผู้ใช้สามารถมีมากกว่าหนึ่งเซสชัน
  • การควบคุมบัญชีผู้ใช้ทำงานอย่างไร

เนื่องจากผู้ใช้เกือบทั้งหมดใช้บัญชีผู้ดูแลระบบใน XP (เนื่องจากโปรแกรมเมอร์ส่วนใหญ่ไม่ต้องการให้โปรแกรมทำงานกับบัญชีที่ จำกัด ) Microsoft จึงสร้างบัญชีผู้ดูแลระบบ "รุ่น จำกัด " ขึ้นต้นด้วย Vista และในบางสถานการณ์ทั้งสองรุ่น "นับเป็นผู้ใช้ที่แตกต่างกัน (เนื่องจากเป็นเซสชันแยกต่างหาก)

ลองเปิดตัว Windows Explorer ที่ยกระดับ (เช่น Windows Explorer ที่เปิดตัวด้วย "Run as administrator") และสร้างเครือข่ายแชร์ทั้งหมดขึ้นมาใหม่ซึ่งน่าจะเป็นเคล็ดลับ

เหตุผลที่ต้องสร้างหุ้นขึ้นใหม่นั้นได้อธิบายไว้ในรายการบล็อก MSDN นี้:

แมปไดรฟ์เครือข่ายกับ UAC บน Windows Vista

แก้ไข:บิตที่เกี่ยวข้องจากรายการบล็อก (การเน้นของฉัน):

เพื่อให้สิ่งต่าง ๆ ง่ายขึ้นสมมติว่าคุณกำลังทำงานในฐานะผู้ดูแลระบบที่เปิดใช้งาน UAC (แม้ว่าจะปลอดภัยมากขึ้นก็จะดีกว่าที่จะทำงานในฐานะผู้ใช้มาตรฐาน) เมื่อคุณเข้าสู่ระบบคุณสร้างโทเค็นใหม่ จากนั้นเราตรวจพบว่าคุณเปิดใช้งาน UAC เราเข้าสู่ระบบในครั้งที่สองและจบลงด้วยโทเค็นใหม่ (ถูก จำกัด อย่างมาก) ซึ่งเราใช้ในการเปิดตัวเชลล์ มีสองเหตุการณ์เข้าสู่ระบบแยกเป็น
(... )
ฟีเจอร์อำนวยความสะดวกนี้ทำให้ง่ายต่อการค้นหาปัญหาเกี่ยวกับไดรฟ์เครือข่ายที่แมป ก่อนที่จะมี Windows 2000 SP2 ชื่ออุปกรณ์จะยังคงปรากฏให้เห็นทั่วโลกจนกว่าจะลบออกอย่างชัดเจนหรือระบบรีสตาร์ท เพื่อเหตุผลด้านความปลอดภัยเราได้แก้ไขพฤติกรรมนี้เริ่มต้นด้วย Windows 2000 SP2 จากจุดนี้ไปข้างหน้าอุปกรณ์ทั้งหมดที่เกี่ยวข้องกับการตรวจสอบ ID (LUID) - ID ที่สร้างขึ้นสำหรับเซสชั่นการเข้าสู่ระบบในแต่ละ
(... )
เนื่องจากไดรฟ์ที่แมปเหล่านี้เชื่อมโยงกับ LUID และเนื่องจากแอปพลิเคชันที่ยกระดับกำลังใช้ LUID อื่นที่สร้างขึ้นในระหว่างการเข้าสู่ระบบแยกต่างหากแอปพลิเคชันที่ยกระดับจะไม่เห็นไดรฟ์ที่แมปสำหรับผู้ใช้รายนี้อีกต่อไป


4
ฉันใช้ Windows Explorer ที่ยกระดับและพรอมต์คำสั่งที่ยกระดับยังไม่สามารถหาไดรฟ์ที่แมปได้
icelava

1
ความเข้าใจของฉันคือว่าใน Windows 7 เมื่อฉัน "Run as administrator" มันไม่ได้ทำงานเป็นบัญชีที่มีชื่อ "Administrator" (Windows XP-ish) แต่เป็นบัญชีของฉัน แต่มีการตั้งค่าบิตผู้ใช้ระดับสูง ฉันไม่เข้าใจว่าทำไมจึงมีความแตกต่างระหว่างสองสถานการณ์ที่ฉันอธิบาย
mindless.panda

1
มีความแตกต่างกันเนื่องจาก "รุ่น" สองบัญชีของผู้ดูแลระบบสำหรับบางด้านทำงานเป็นบัญชีที่แตกต่างกันแม้ว่าพวกเขาจะเป็นบัญชีเดียวกันกับสิทธิ์ที่แตกต่างกันจริง ๆ (อธิบายไว้ในบล็อกที่ฉันเชื่อมโยง)
Alberto Martinez

1
@ mindless.panda: คุณพูดถูก ตัวเลือก "Run as administrator" หมายถึงการตั้งค่าผู้ดูแลระบบที่เกี่ยวข้องกับ UAC ทั้งหมด มันไม่มีอะไรเกี่ยวข้องกับกลุ่มผู้ดูแลระบบ หากคุณปิดใช้งาน UAC (ซึ่งอาจต้องมีการรีบูตเพื่อให้มีผลอย่างสมบูรณ์) คุณอาจพบว่าไม่มีตัวเลือก "Run as administrator" ในขณะที่ UAC ถูกปิดใช้งาน โปรดทราบว่าพรอมต์คำสั่งของผู้ดูแลระบบยังคงสามารถใช้ไดรฟ์ที่ใช้ร่วมกันเป็น UNC ได้เช่น \\ servername \ dirname - เป็นเพียงตัวอักษรไดรฟ์ที่หายไปเพราะนั่นคือวิธีที่ Microsoft ออกแบบ remake 'em และทุกอย่างดีในพรอมต์นั้น
TOOGAM

ฉันเป็นผู้ดูแลระบบฉันไม่สามารถเปิดหน้าต่าง explorer ยกระดับ (Win 8)
user15507

7

คำตอบ Alberto Martinez อธิบายว่าทำไมไดรฟ์เครือข่ายที่แมปไม่สามารถเข้าถึงได้

นี่คือการแก้ไขรีจิสทรีเพื่อแก้ไขปัญหา:

  • เปิด regedit แล้วไปที่ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  • เพิ่ม DWORD ใหม่ (32 บิต) ค่าชื่อEnableLinkedConnections
  • ปรับค่าเป็น 1 (หรือ 00000001)

ออกจาก regedit แล้วรีสตาร์ทคอมพิวเตอร์



1
นี่เป็นทางออกที่ดีที่สุดสำหรับปัญหานี้
alecov

1
ไม่สามารถใช้งานได้กับ Win10
Christian Schäfer

หรือ windows server 2016
RM

1

ฉันแมปการแชร์จากเครื่องอื่นโดยใช้บัญชีผู้ใช้ของฉัน

ไดรฟ์เครือข่ายนั้นพร้อมใช้งานเฉพาะในบัญชีผู้ใช้ที่แมปไดรฟ์เครือข่าย


0

เริ่ม cmd ในฐานะผู้ดูแลระบบพิมพ์คำสั่งnet use z: \\net\path /persistent:yesแล้วเสร็จ อีกสิ่งหนึ่งที่ฉันทำและนี่คือการขยายคำถามของ op ที่ผ่านมาคือหลังจากปักหมุด cmd ไปที่แถบงานและใน Properties-> Advanced ตั้งค่าให้ทำงานเป็นผู้ดูแลระบบฉันเพิ่ม / K z: ถึงจุดสิ้นสุดของ 'เป้าหมาย' กล่องข้อความดังนั้นมันจึงกลายเป็น: %windir%\system32\cmd.exe /K z:. เนื่องจากการตั้งค่าพารามิเตอร์ "เริ่มต้นใน" ดูเหมือนจะไม่ทำงาน สิ่งนี้ส่งผลให้ไอคอนบนทาสก์บาร์ของฉันที่เริ่มต้นหน้าต่าง cmd ในฐานะผู้ดูแลระบบและพร้อมท์บนไดรฟ์ที่แมป และอย่าลืมที่จะไปที่คุณสมบัติอีกครั้งและปรับแต่งแบบอักษร, สี, ขนาดหน้าต่างและตำแหน่ง, เช่นเดียวกับข้อความเลื่อนกลับบัฟเฟอร์และขนาดบัฟเฟอร์ประวัติคำสั่ง!


-2

ตรวจสอบเส้นทางเครือข่ายของคุณและยกเลิกการเชื่อมต่อไดรฟ์ที่แมป (Z :) เรียกใช้ CMD ในฐานะผู้ดูแลเมื่อมีให้ใช้คำสั่ง "net use" เพื่อแมปไดรฟ์อีกครั้ง net use Z: \ SharePath จากนั้นลองเข้าถึงอีกครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.