/tmp에 여유 공간이 있으면 오버플로를 마운트합니다.

/tmp에 여유 공간이 있으면 오버플로를 마운트합니다.

최근에 "오버플로" 문제가 발생했습니다 /tmp. 별도의 파티션이 없고 /tmp여유 공간이 17%인데 파일 시스템이 /넘쳐나는 이유는 무엇입니까 tmp?

여기에 이미지 설명을 입력하세요.

여기에 이미지 설명을 입력하세요.

# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
/dev/mapper/safesquid-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=d029e04b-11e9-42e1-b1d3-9cde73cb3b67 /boot           ext2    defaults        0       2
/dev/mapper/safesquid-swap_1 none            swap    sw              0       0

mount산출

/dev/mapper/safesquid-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda1 on /boot type ext2 (rw)
overflow on /tmp type tmpfs (rw,size=1048576,mode=1777)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)


root@safesquid:~# free -m
             total       used       free     shared    buffers     cached
Mem:          2009        182       1826          0          9         48
-/+ buffers/cache:        124       1885
Swap:          715        130        585
root@safesquid:~# uname -a

Linux safesquid 2.6.32-41-server #94-Ubuntu SMP Fri Jul 6 18:15:07 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

저는 Ubuntu 12.04.1 LTS를 실행하고 있습니다.

나는 또한 df -i무료 inode가 있는지 확인했습니다.

답변1

시스템이 부팅되고 하드 드라이브가 가득 차면 /tmp에 아무 것도 쓸 수 없습니다. 따라서 init 프로세스 중에 tmpfs가 생성되고 설치됩니다. 이렇게 하면 /tmp에 쓸 수 있으므로 시스템이 안전하게 부팅됩니다.

디스크 공간을 확보한 다음 컴퓨터를 다시 시작하십시오. (또는 아무것도 사용하지 않는 것이 확실하다면 간단히 /tmp를 마운트 해제하세요).

이 값을 0으로 설정하면 이 설정이 비활성화됩니다., 이로 인해 초기화가 실패하거나 시스템에 로그인할 수 없는 위험이 발생할 것으로 예상됩니다.

나는 Nitesh B.의 답변이 위험하므로 피해야 한다고 생각합니다.

답변2

Ubuntu 서버에서 동일한 문제에 직면했고 온라인으로 검색한 후 해결책을 얻었습니다.

디스크 공간 부족을 방지하기 위해 일부 데몬은 루트 파티션의 디스크 공간이 부족한 경우 자동으로 ram 디스크를 사용하여 현재 /tmp/ 디렉터리를 "숨깁니다". 안타깝게도 충분한 디스크 공간이 다시 확보되면 프로세스가 자동으로 재개되지 않습니다.

이 문제를 해결하려면 /tmp를 마운트 해제하고 다음 명령을 실행하십시오.

echo 'MINTMPKB=0' > /etc/default/mountoverflowtmp

그러면 문제가 확실히 해결될 것입니다.

답변3

이것이 나에게 도움이 된다;즉, 일부 공간을 비운 후의 해결 방법은 다음과 같습니다.

sudo mount -o bind /var/tmp /tmp

관련 정보