SQL Server 데이터베이스 디스크 파일 권한 일괄 수정

회사 보안 정책 변경으로 인해 이탤릭체_5__굵게_3__이탤릭체_6__굵게_4__이탤릭체_7, 활성화 방법이 비정규적이어서, 집에서는 활성화하지 않아도 괜찮은 것 같습니다

비정상적인 방식으로 활성화하여 마이크로소프트의 검사를 트리거했는데 (반달 동안 정상적으로 실행되었음), 서버는 부팅 한 시간 후 자동으로 종료되었습니다. 시스템 로그를 뒤져보니 불법 복제본 문제였습니다.

방법이 없네요, 시스템을 다시 설치해야겠어요. __INLINE_CODE_0__도 재설치를 해야 하고, 할 때마다 골치 아파요. 파일 권한 관리가 엄격해서 데이터베이스를 정상적으로 추가할 수 없네요.

오류 정보

시스템을 재설치한 후, SqlServer 부가 데이터베이스에서 5120 오류, 운영체제 접근 거부 발생할 수 있습니다

스크립트 처리

이전 링크: 批量更新本地Git仓库, 변함없이 익숙한 스크립트입니다. 폴더를 순회하면서 파일 권한을 수정하는데, 현재는 완전 편집 권한을 부여합니다.

온라인 튜토리얼은 대부분 수동 수정인데, 그들은 몇 개의 파일만 수정하는 건가? 나는 항상 한꺼번에 많은 파일을 처리해야 하고, 전부 수동으로 하려니 사람이 지쳐

$currentUserName = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$rootDirectory = "D:\data\2013_RujiaInfo"

Get-ChildItem -Path $rootDirectory -Recurse | ForEach-Object {
    $itemPath = $_.FullName

    if ($_ -is [System.IO.DirectoryInfo]) {
        $icaclsResult = icacls $itemPath /setowner "$currentUserName" 2>&1
        if ($LASTEXITCODE -eq 0) {
            Write-Host "已更改文件夹 $itemPath 的所有者为 $currentUserName"
            # 授予当前用户写入权限
            Invoke-Expression "icacls `"$itemPath`" /grant `"$($currentUserName):(OI)(CI)F`""
            Write-Host "已授予 $currentUserName 编辑文件夹的权限"
        } else {
            Write-Host "无法更改文件夹 $itemPath 的所有者。错误信息: $icaclsResult"
        }
    } else {
        $takeownResult = icacls $itemPath /setowner "$currentUserName" 2>&1
        if ($LASTEXITCODE -eq 0) {
            # 授予当前用户写入权限
            Invoke-Expression "icacls `"$itemPath`" /grant `"$($currentUserName):(F)`""
            Write-Host "已授予 $currentUserName 编辑文件的权限"
        } else {
            Write-Host "无法更改文件 $itemPath 的所有者。错误信息: $takeownResult"
        }
    }
}

Licensed under CC BY-NC-SA 4.0
마지막 수정: 2025년 05월 28일 09:47
금융 IT 프로그래머의 이것저것 만지작거리기와 일상의 중얼거림
Hugo로 만듦
JimmyStack 테마 사용 중