그래요
#!/usr/bin/env bash
# http://askubuntu.com/q/799834/25388
# http://stackoverflow.com/a/69808/54964
set -e
SWAP_FILE="/media/masi/SamiSwapVirtual/.swap_file_20.7.2016"
SIZE_MB=16000
dd if="/dev/zero" of=${SWAP_FILE} bs="1M" count=${SIZE_MB}
mkswap ${SWAP_FILE}
chmod 0600 ${SWAP_FILE}
sudo swapon -v ${SWAP_FILE}
내가 잘 모르는 부분을 녹음해 보세요insecure file owner 1000, 0 (root) suggested
16000+0 records in
16000+0 records out
16777216000 bytes (17 GB, 16 GiB) copied, 121.447 s, 138 MB/s
Setting up swapspace version 1, size = 15.6 GiB (16777211904 bytes)
no label, UUID=d3358f33-52d4-4029-8070-213ddf7446b7
[sudo] password for masi:
swapon /media/masi/SamiSwapVirtual/.swap_file_20.7.2016
swapon: /media/masi/SamiSwapVirtual/.swap_file_20.7.2016: insecure file owner 1000, 0 (root) suggested.
swapon: /media/masi/SamiSwapVirtual/.swap_file_20.7.2016: found swap signature: version 1d, page-size 4, same byte order
swapon: /media/masi/SamiSwapVirtual/.swap_file_20.7.2016: pagesize=4096, swapsize=16777216000, devsize=16777216000
시스템: Linux Ubuntu 16.04 64비트
Linux 커널: 4.6
하드웨어: Macbook Air 2013-mid
관련 주제:스왑 파일 접근성
답변1
안전하지 않은 파일 소유자는 1000, 0(루트)을 권장합니다.
사용자 1000은 스왑 파일에 대한 읽기 및 쓰기 권한을 가지고 있습니다. 이는 사용자 1000이 교환에 입력된 모든 것을 보거나 수정할 수 있음을 의미합니다. 사용자 1000을 신뢰하지 않고 그의 계정이 결코 해킹당하지 않을 것이라고 신뢰하지 않는 한 이는 위험합니다.
해결책은 루트가 파일을 소유하도록 만드는 것입니다. 루트가 해킹되면 어쨌든 시스템이 손실되며 이 파일에 대한 루트의 소유권은 추가 위험을 추가하지 않습니다.
따라서 파일이 루트 소유인지 확인하십시오. Debian, Ubuntu, Fedora 및 기타 시스템(해당 팁: Random832)에서는 disk
이 그룹을 사용해야 합니다.
sudo chown root:disk /media/masi/SamiSwapVirtual/.swapFile
다른 시스템에서는 다음과 같은 그룹을 사용할 수 있습니다 root
.
sudo chown root:root /media/masi/SamiSwapVirtual/.swapFile
Exchange는 운영 체제 서비스입니다. Random832가 주석에서 지적했듯이 스왑 파일은 루트가 디스크를 /dev/sda
소유하는 것처럼 루트가 소유합니다. 운영 체제는 해당 사용자가 사용할 수 있는 하드 디스크(적어도 사용자가 소유한 디렉터리)를 만듭니다. 마찬가지로 운영 체제에서는 일반 사용자가 실행하는 프로그램이 RAM이 부족할 때 스왑 영역을 활용할 수 있습니다. 스왑 관리는 운영 체제의 책임이므로 루트는 스왑 파일을 소유해야 합니다.
답변2
오류 메시지는 문제가 무엇인지 알려줍니다.
insecure file owner 1000
스왑 파일은 루트가 소유해야 하므로 나중에 chmod
할 수 있습니다 .
sudo chown 0.0 $SWAP_FILE