swapon 실패: 마운트된 디스크에서 장치 또는 리소스가 사용 중입니다.

swapon 실패: 마운트된 디스크에서 장치 또는 리소스가 사용 중입니다.

마운트된 외부 EBS, /workspace에서 스왑을 만들고 싶습니다.

그리고 나는 얻었다장치 또는 리소스가 사용 중입니다.

swapon: /workspace/swap.1: swapon 실패: 장치 또는 리소스가 사용 중입니다.

sudo /bin/dd if=/dev/zero of=/workspace/swap.1 bs=1M count=10240
sudo /sbin/mkswap /workspace/swap.1
sudo /sbin/swapon /workspace/swap.1


Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.8G  5.1G  2.3G  70% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev            2.0G   12K  2.0G   1% /dev
tmpfs           396M  336K  395M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
none            100M     0  100M   0% /run/user
/dev/xvdb       6.0T  1.7T  4.1T  29% /workspace

sync명령을 실행한 후에도 여전히 작동하지 않습니다.

➜  ~  sync
➜  ~  sudo /sbin/swapon /workspace/swap.1
swapon: /workspace/swap.1: swapon failed: Device or resource busy

스왑 정보는 이렇습니다

➜  ~   cat /proc/swaps
Filename                Type        Size    Used    Priority
/workspace/swap.1                       file        10485756    0   -1

답변1

sda2에서 스왑 파티션을 만들려고 할 때 비슷한 문제가 있었습니다. 내 해결책은 다음을 입력하는 것이었습니다.

#: swapoff /dev/sda2
#: mkswap /dev/sda2
#: swapon /dev/sda2

이것은 내가 겪고 있던 모든 문제를 재설정하는 것 같았습니다. 이것이 작동하는지 확인하려면 "lsblk" 마운트 지점을 확인합니다.

답변2

문제는 스왑을 추가하는 것이 아닙니다. 문제는 모든 스왑 공간이 df.

여기에는 파티션 유형 데이터만 표시되며, 스왑 파일이라고도 하는 시스템 내 스왑을 사용하는 경우에는 표시되지 않습니다. 스왑 공간~였다당신이 한 첫 번째 항목에 의해 활성화되었습니다 swapon. 당신은 그것을 확인하기 위해 잘못된 곳을 찾고 있었을 뿐입니다. 두 번째 swapon실패는 당연합니다. 동일한 파일을 두 번 추가할 수 없기 때문입니다. 를 살펴보면 /proc/swaps다음과 같은 최종 시스템 요약이 나와 있습니다.모두공간을 바꾸면서 새 공간이 실행되고 있는 것을 확인했습니다.

답변3

sync명령 후에는 블록 캐시를 삭제 해야 합니다 mkswap.

이에 대한 설명은 다음과 같습니다.

데이터를 기록하지만 물리적으로 디스크에 기록되지 않으면 더티 페이지가 됩니다. 이는 콘텐츠가 여기 시스템에서 생성되었으며 하드 디스크에서 읽혀지지 않았음을 의미합니다. 따라서 더티 페이지에서는 교체할 수 없습니다.

답변4

이 명령을 시도해 보세요

echo 1 > /sys/block/zram0/reset

"zram0"을 스왑 파티션으로 바꾸십시오. 예:

    # Zram disk - 512MB size
#zram_enable=`getprop ro.config.zram`
#if [ "$zram_enable" == "true" ]; then
#    swapoff /dev/block/zram0
#    echo 1 > /sys/block/zram0/reset
#    echo 536870912 > /sys/block/zram0/disksize
#    mkswap /dev/block/zram0
#    sync
#    swapon /dev/block/zram0 -p 32758

관련 정보