VMWare ESXi 호스트에서 실행 중인 가상 머신의 스냅샷을 삭제하거나 디스크를 통합할 때 "파일이 잠겨 있어 액세스할 수 없음이 표시되는 경우가 많습니다. " 오류. 이 빈번한 문제는 VM 백업 소프트웨어의 오류와 관련이 있습니다(Veeam, HPE/Micro Focus Data Protector, Veritas에서 문제를 발견했습니다.) 가상 디스크의 스냅샷이 잠겨 있으면 디스크를 통합할 수 없습니다. ('Virtual machine disks consolidation is needed
'), Storage vMotion을 사용하여 디스크를 다른 데이터 저장소로 이동하거나 VM을 백업하거나 현재 스냅샷을 삭제합니다. 잠긴 가상 머신을 켤 수 없는 경우도 있습니다.
잠긴 가상 디스크 파일 또는 VMWare의 스냅샷에 대한 액세스 오류는 다음과 같습니다.
Unable to access file since it is locked. An error occurred while consolidating disks: One or more disks are busy.
또한 다음 오류가 표시될 수 있습니다.
An error occurred while consolidating disks: msg.snapshot.error-DISKLOCKED.
다음과 같은 경우 "파일이 잠겨 있어 액세스할 수 없습니다" 오류가 가장 자주 나타납니다.
- 전원이 켜진 가상 머신의 일부 파일에는 다른 ESXi 호스트에 의해 잠겨 있음을 나타내는 태그가 포함되어 있습니다.
- 가상 디스크가 백업 어플라이언스에 추가되고 백업 세션이 실패하는 경우
잠금의 원인을 찾아 해제하려면 먼저 잠긴 파일을 식별해야 합니다.
- SSH 클라이언트를 사용하여 문제가 있는 VM이 등록된 ESXi 호스트에 연결합니다.
- 가상 머신 파일이 있는 디렉터리로 이동:
cd /vmfs/volumes/VMFS_DATASTORE_NAME/LOCKED_VM
- vmware.log에서 통합 및 파일 잠금 오류를 찾습니다.
cat vmware.log | grep lock
- 로그에는 다음과 같은 오류가 포함됩니다.
VigorSnapshotManagerConsolidateCallback: snapshotErr = Failed to lock the file (5:4008) 2020-09-09T05:07:11.432Z| vmx| I125: DISK: Cannot open disk "/vmfs/volumes/5121c3ff-2303a3a-33bb-12345678221/mun-web01/mun-web01_1-000002.vmdk": Failed to lock the file (16392). 2020-09-09T05:07:11.432Z| Worker#1| I125: DISKLIB-LIB : Failed to open '/vmfs/volumes/5121c3ff-2303a3a-33bb-12345678221/mun-web01/mun-web01-000002.vmdk' with flags 0xa Failed to lock the file (16392). 2020-09-09T05:07:11.432Z| Worker#1| I125: DISK: Cannot open disk "/vmfs/volumes/5121c3ff-2303a3a-33bb-12345678221/mun-web01/mun-web01-000002.vmdk": Failed to lock the file (16392). 2020-09-09T05:07:11.432Z| vmx| I125: [msg.fileio.lock] Failed to lock the file
- 이 예에서 파일 mun-web01_1-000002.vmdk 잠겨 있습니다.
- 다음 명령을 사용하면 지정된 스냅샷 체인으로 시작하는 현재 스냅샷 체인을 플랫 디스크에 표시할 수 있습니다.
vmkfstools -qv10 mun-web01_1-000002.vmdk
- 그런 다음 스냅샷 및 해당 소유자(RO 소유자)에 대한 정보를 가져옵니다.
vmkfstools -D mun-web01-000001-delta.vmdk
Lock [type 10c000021 offset 242835456 v 856, hb offset 3153920 gen 3, mode 1, owner 5cbac61a-4b6e32b7-0480-d06726ae7900 mtime 5199410 num 0 gblnum 0 gblgen 0 gblbrk 0] RO Owner[0] HB Offset 3153920 5cbac61a-4b6e32b7-0480-d06726ae7900 Addr <4, 532, 83>, gen 859, links 1, type reg, flags 0, uid 0, gid 0, mode 600
RO 소유자 행은 스냅샷 파일을 잠근 ESXi 호스트 네트워크 어댑터의 MAC 주소를 보여줍니다(MAC 주소는 스크린샷에서 강조 표시됨). 또한 모드 값에 유의하십시오.
- 모드 1 – 읽기/쓰기 잠금(예:전원이 켜진 VM)
- 모드 2 – 일반적으로 가상 디스크가 백업 애플리케이션에 의해 잠겨 있음을 의미합니다.
MAC 주소가 알려진 경우 ESXi 서버를 찾으려면 다음 PowerCLI 명령을 사용할 수 있습니다(이전에 가져온 MAC 주소를 콜론이 있는 형식으로 변환).
Import-Module VMware.VimAutomation.Core -ErrorAction SilentlyContinue
connect-viserver mun-vcenter
Get-VMHost | Get-VMHostNetworkAdapter | Where-Object {$_.Mac -like "d0:67:26:ae:79:00"} | Format-List -Property *
IP 또는 MAC 주소로 VMWare vCenter에서 VM을 찾아야 할 때 유사한 솔루션입니다.
ESXi 호스트 이름은 VMHost에 표시됩니다. 필드.
또한 ESXi 호스트에서 직접 ARP 테이블을 표시하고 VMkernel 네트워크에 있는 다른 모든 ESXi 서버의 IP 및 MAC 주소를 가져올 수 있습니다.
esxcli network ip neighbor list
VM 파일의 잠금을 해제하려면 찾은 ESXi 호스트를 다시 시작하세요(미리 VMotion을 사용하여 모든 VM 마이그레이션). 호스트를 다시 시작할 수 없으면 호스트의 SSH 콘솔에서 유지 관리 모드로 관리 에이전트(hostd)를 다시 시작하십시오.
services.sh restart
그런 다음 디스크를 통합하거나 VM 스냅샷을 다시 삭제해 보십시오.
"파일이 잠겨 있어 액세스할 수 없습니다. ' 오류는 Veam Backup &Replication에서 자주 발생합니다. Veeam 프록시 서버를 사용할 때. 백업 오류로 인해 Veeam이 가상 머신 디스크를 올바르게 마운트 해제하지 못할 수 있습니다.문제를 해결하려면 Veeam 프록시가 설치된 VM의 설정을 엽니다. VM 하드웨어에서 파일을 잠근 VM의 디스크를 제거합니다.
"가상 머신에서 제거를 선택했는지 확인하십시오. "Remove from virtual machine and delete files from disk" 대신 "Remove from virtual machine and delete files from disk" 그렇지 않으면 실수로 vmdk 디스크를 제거할 수 있습니다.