E303: Unable to open swap file for “File”, recovery impossible
vim 편집기로 파일을 열려고 할 때 에러 메세지가 다음과 같이 나타날 수 있습니다.
E303: Unable to open swap file for "File Name", recovery impossible
또는 이렇게 표시될 수 있습니다. (한국어 OS 사용 중일 경우)
E303: "File Name"의 스왑 파일을 열 수 없어서 복구는 불가능합니다
해결 방법
이 문제는 메모리 공간이 부족하거나 알 수 없는 이유로 인해서 편집 이력이 있었던 파일의 스왑(SWAP) 파일을 열지 못하여 발생하는 문제입니다.
여러 이유로 인해 발생할 수 있는데 제 경우에는 디스크 공간이 부족했었던 것이 원인이었던 것으로 확인되었습니다.
df
명령어를 사용하여 디스크 공간을 확인하였더니, 파일 시스템(/dev/xvda1
)이 100%를 차지하고 있었습니다.
# df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda1 8.0G 8.0G 20K 100% / devtmpfs 222M 0 222M 0% /dev tmpfs 244M 0 244M 0% /dev/shm tmpfs 244M 17M 227M 7% /run tmpfs 244M 0 244M 0% /sys/fs/cgroup tmpfs 49M 0 49M 0% /run/user/1002 tmpfs 49M 0 49M 0% /run/user/1001
이 서버에서는 cron 데몬의 작업으로 인해 지속적으로 쌓여져왔던 로그 데이터로 인해 디스크 공간이 가득 찼던 문제였습니다. 아니나 다를까 crontab -e
명령어를 사용했을 때에도 아래와 같이 에러가 발생했습니다.
# crontab -e /tmp/crontab.4Mpjzh: No space left on device
rm
명령어를 사용하여 관련된 로그 디렉토리의 데이터를 조금 지워주었습니다.
이후 다시 vim을 통해서 텍스트 파일을 열 수 있었습니다.