You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell中将exFAT驱动器设置为只读?

解决PowerShell设置exFAT驱动器只读的类型错误问题

错误原因分析

你遇到的错误核心是参数类型不匹配:Get-PSDrive返回的是PSDriveInfo对象,但Set-Partition的-DriveLetter参数要求传入单个字符(如'D'),直接传递对象就会触发类型转换失败。

修复后的可行方案

下面提供几种经过验证的实现方式,适配exFAT格式的无卷标驱动器:

方案1:通过磁盘编号设置只读(推荐)

直接通过驱动器字母关联到磁盘对象,设置磁盘级别的只读属性:

$driveLetter = Read-Host "Enter drive letter (e.g. D) to make read-only"
# 清理输入,确保是纯字母(去掉可能的冒号)
$cleanDriveLetter = $driveLetter.TrimEnd(":")

try {
    # 获取分区对应的磁盘编号
    $diskNumber = (Get-Partition -DriveLetter $cleanDriveLetter).DiskNumber
    # 设置磁盘只读
    Set-Disk -Number $diskNumber -IsReadOnly $true -ErrorAction Stop
    Write-Output "Read-only attribute successfully set"
}
catch {
    Write-Output "Failed to set read-only attribute: $_"
}
pause

方案2:使用Set-Volume设置卷级别只读

如果不需要磁盘级别的只读,仅针对卷设置:

$driveLetter = Read-Host "Enter drive letter (e.g. D) to make read-only"
$cleanDriveLetter = $driveLetter.TrimEnd(":")

try {
    Set-Volume -DriveLetter $cleanDriveLetter -IsReadOnly $true -ErrorAction Stop
    Write-Output "Read-only attribute successfully set"
}
catch {
    Write-Output "Failed to set read-only attribute: $_"
}
pause

方案3:使用fsutil命令(兼容旧系统)

调用原生fsutil工具实现:

$driveLetter = Read-Host "Enter drive letter (e.g. D) to make read-only"
# 确保输入带冒号,符合fsutil要求
$drivePath = if ($driveLetter.EndsWith(":")) { $driveLetter } else { "$driveLetter:" }

# 执行fsutil命令
& fsutil volume setreadonly $drivePath 1
if ($LASTEXITCODE -eq 0) {
    Write-Output "Read-only attribute successfully set"
} else {
    Write-Output "Failed to set read-only attribute (exit code: $LASTEXITCODE)"
}
pause

关键注意事项

  • 运行PowerShell需要管理员权限,否则无法修改磁盘/卷的只读属性
  • exFAT格式的只读属性是磁盘/卷级别的,不是文件系统的文件属性,因此不能用Set-ItemProperty修改文件级ReadOnly属性
  • 验证设置是否成功:可以用Get-Disk -Number $diskNumber | Select-Object IsReadOnly或Get-Volume -DriveLetter $cleanDriveLetter | Select-Object IsReadOnly查看结果

内容的提问来源于stack exchange,提问作者Dan Lewis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 21:19:52