다모앙 커뮤니티 운영 규칙을 확인하세요.
X

스왑 파티션 확장 삽질기

페이지 정보

작성자 커널패닉
작성일 2025.03.26 09:57
232 조회
2 추천

본문

기존에 메모리 8GB & 스왑 8GB로 구성해서 사용하고 있었습니다.

하지만 브라우저와 Office 등을 여러개 열어놓고 LVM을 실행하니 `oom-killer`가 발동해서 스왑공간을 확장시키기로 결정했습니다.

[250244.921235] ollama invoked oom-killer: gfp_mask=0x440dc0(GFP_KERNEL_ACCOUNT|__GFP_COMP|__GFP_ZERO), order=0, oom_score_adj=0

[250244.922284] Out of memory: Killed process 1595525 (ollama) total-vm:11485612kB, anon-rss:5306060kB, file-rss:1548kB, shmem-rss:0kB, UID:0 pgtables:12692kB oom_score_adj:0


따라서 LiveCD로 부팅한 후 fdisk를 사용하여 `/boot` 파티션을 축소하고, `swap` 파티션을 새로 생성한 후 재부팅하니 `grub> ` 프롬프트가 반겨줍니다.

GRUB 쉘에서 문제가 해결되지 않아 다시 LiveCD로 부팅해서 확인해보니 UUID가 바뀌고 파티션이 깨져서 `/boot`을 포맷한 후 fstab 파일과 grub 구성을 업데이트해 주었습니다. (리눅스 헤더와 grub을 다시 설치해야 하는데 Wi-Fi 연결이 되지 않아서 블루투스로 핫스팟 연결한 건 비밀입니다)


그리고 다시 재부팅하니 Wi-Fi가 여전히 아래 로그와 함께 작동되지 않더군요. 

[    5.311773] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43602-pcie for chip BCM43602/1

[    5.315578] brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.Apple Inc.-MacBookPro12,1.bin failed with error -2
[    5.321364] brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.txt failed with error -2
[    5.327479] brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.clm_blob failed with error -2
[    5.327559] brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.txcap_blob failed with error -2
[    5.843553] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[    5.843558] brcmfmac: brcmf_c_process_txcap_blob: no txcap_blob available (err=-2)
[    5.844179] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43602/1 wl0: Nov 10 2015 06:38:10 version 7.35.177.61 (r598657) FWID 01-ea662a8c


따라서 네트워크와 관련된 패키지 및 커널버전을 롤백해 보기도 했는데 문제가 해결되지 않아서 네트워크 구성 파일을 제거한 후 여러번 다시 설정해 보니 이유는 모르겠지만 잘 되네요. (비밀번호를 맞게 입력했는데 계속 비밀번호를 물어봐서 한동안 골치가 아팠습니다)


최종 결과는 아래와 같습니다.

[hm:~]$ free -mh

               total        used        free      shared  buff/cache   available
Mem:           7.7Gi       4.9Gi       416Mi       1.6Gi       4.2Gi       2.8Gi
Swap:           30Gi        16Mi        30Gi

2추천인 목록보기
댓글 6

신사아님당님의 댓글

작성자 신사아님당
작성일 03.26 11:25
고생하셨습니다. 저도 저번에 /boot UUID가 바뀌는 바람에 부팅불가 상태가 된 적이 있습니다.
저는 /etc/fstab에 적힌 /boot UUID를 blkid로 확인한 (새로운) UUID로 바꾸는 식으로 해결했었네요.
https://damoang.net/linux/563

난리도 아니었네요. ㅎㅎㅎ ㅠㅠ>

궁디팡님의 댓글

작성자 궁디팡
작성일 03.26 11:26
작년인가에 어기서 봤던거 같은데 스왑을 굳이 파티션으로 안하고 파일로 해도 성능상의 차이가 없다라고 본거 같습니다.

시커먼사각님의 댓글

작성자 시커먼사각
작성일 03.26 23:14
저는 요즘 스왑을 파일로 쓰면서 스왑용량에 대한 골치아픈 일들의 상당량을 해결했다고 생각하고 있습니다. ^^

분노의다운힐님의 댓글

작성일 03.26 23:28
스왑용 장치가 따로 있는게 아니면 요즘은 스왑파티션을 만들 필요가 없는 것 같아요. 그냥 파일로 만드는게 스왑용량 조절하기도 용이합니다. 그리고 스왑이 크게 모자라는게 아니라면 zram을 스왑으로 추가하는 것도 괜찮습니다.

커널패닉님의 댓글

작성자 커널패닉
작성일 03.26 23:52
먼저 @궁디팡 님, @시커먼사각 님, @분노의다운힐 님 댓글을 달아주셔서 감사합니다.

원글에 일부 빠진 설명이 있어서 추가해 보자면,
스왑 공간을 확장하기 전엔 8GB에 상응하는 `/root/swap_file`을 만들어서 사용하고 있었습니다.
하지만 /  파티션에 남은 용량이 얼마 없어서 이참에 여유로운 `/boot` 파티션을 축소 (32GB -> 500M)시켜서 문제를 해결하자는 생각으로 위 삽질을 하게 되었습니다.

사실 좀만 더 고민했으면, 광활한 `/home` 파티션에다 새로 참조할 스왑 파일을 생성하면 끝났을 텐데 말이죠...

현재 파티션 구성은 아래와 같습니다.
[hm:~]$ df -h | grep -v tmpfs        
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3              60G   26G   31G  46% /
/dev/sda2             488M  107M  346M  24% /boot
/dev/sda4             139G   28G  104G  22% /home
/dev/sda1             476M  320K  475M   1% /boot/efi

RaphK님의 댓글

작성자 RaphK
작성일 03.27 23:01
저는 물리적으로 메모리 교체가 안되는 aarch64 계열에서 zram 으로 승부를 보고 있습니다. ㅎㅎ
홈으로 전체메뉴 마이메뉴 새글/새댓글
전체 검색