我想使用 PowerShell 從 Windows 2012 掛載 NFS 共享,並讓此掛載在呼叫它的 PowerShell 會話以外的上下文中可見。如果我使用 New-PSDrive 命令(cmdlet?),例如:
New-PSDrive Z -PsProvider FileSystem -Root \\10.40.1.1\export\isos
然後它會將 NFS 伺服器掛載到 Z 驅動器,但我無法在檔案總管中存取該驅動器。
答案1
內核恐慌關於 PSDrive cmdlet 僅可在 PowerShell 環境中使用的敘述是正確的。 TechNet 文章'使用新的 –PSDrive Cmdlet”指出“映射驅動器的持續時間與您當前的 Windows PowerShell 會話一樣長。但是,您可以建立一個設定文件,該文件將在每次啟動 PowerShell 時重新映射驅動器。
此外,TechNet 文章'轉換 Windows 腳本宿主 MapNetworkDrive 方法」還指出,只要您在 Windows PowerShell 中工作,使用 –PSDrive cmdlet 創建的任何驅動器都可以像任何其他映射網路磁碟機一樣使用。”這是一個 PowerShell 驅動器,而不是真正的映射驅動器。本文繼續說明您可以使用 Net Use 命令在 PowerShell 中對應磁碟機:
net use z: \\server\folder
希望這可以幫助,
答案2
您需要使用堅持旗幟。
New-PSDrive Z -PsProvider FileSystem -Root \\10.40.1.1\export\isos -Persist
-堅持
建立 Windows 對映網路磁碟機。映射的網路磁碟機保存在本機上的 Windows 中。他們是執著的,不特定於會話,並且可以在文件資源管理器和其他工具中查看和管理。驅動器名稱必須是字母,例如 D 或 E。 PSProvider 參數的值必須是 FileSystem。若要中斷 Windows 映射網路磁碟機的連接,請使用 Remove-PSDrive cmdlet。當您中斷 Windows 對應網路磁碟機的連線時,該對映將從電腦中永久刪除,而不僅僅是從目前工作階段中刪除。注意:已對應的網路磁碟機特定於使用者帳戶。您在使用「以管理員身分執行」選項或使用其他使用者的憑證啟動的會話中建立的對應網路磁碟機在沒有明確憑證或使用目前使用者的憑證啟動的會話中不可見。
答案3
我的理解是,PSDrive cmdlet 在 Powershell 3 之前是 shell 和某些資料儲存之間的對應。這不會帶出「殼」。 Powershell 3.0有Persistent參數,可以做你想做的事。
答案4
mount
來自命令行的命令。
mount <NFS_Server_IP>:<Share_Path> <Mount_Point>