작은 ‘/’파티션과 큰 ‘/ mnt’파티션을 제공하는 Amazon EC2 인스턴스가 있습니다. 따라서 mysql data-dir을 / mnt 파티션으로 옮겼습니다. 그러나 현재 대규모 조인 쿼리에서 공간이 부족한 / tmp 폴더에 문제가 있으며 / tmp를 / mnt / tmp로 이동하려고합니다. 심볼릭 링크 로이 작업을 시도했지만 mysql 서비스를 시작할 수 없습니다.
/ tmp의 저장소를 / mnt (/ dev / xvdb)로 옮기는 방법에 대한 조언
답변
/tmp
마운트 지점을 /mnt/tmp
다음에 바인딩 할 수 있습니다 .
sudo mount -B /tmp /mnt/tmp
답변
“/ tmp”파티션을 옮기려면이 잘못된 답변 /ubuntu//a/371628/298086 에서 제안되지 않은 추가 사항이 필요합니다 .
데이터를 이동하면 복제 된 원래 파티션에서 대상 파티션으로 데이터가 지워지며 바인드 마운트로 수행되지 않습니다.
권장 사항 : 바인드 마운트가 무엇인지 이해하려면이 멋진 게시물을 읽으십시오 /unix//a/198591
올바른 마운트 옵션 ( “MOVE”, 바인드하지 않음)을 사용 하려는 경우 :
mount -M /tmp /mnt/tmp
” tmp는 공유 마운트 포인트 ” 라는보고에 실패한다고 확신합니다 (실제로 ” 아직 마운트 포인트를 사용하는 프로세스 인 경우 마운트 포인트를 이동할 수 없음 “)
찾고있는 “응답”은 컨텐츠를 이동하기 전에 / tmp를 사용 / 액세스하여 서비스를 중지했다가 다시 시작해야 할 수 있습니다.
다음을 실행하여 해당 서비스 / 프로세스를 나열 할 수 있습니다.
lsof +D /tmp/
따라서 실제로 액세스 / 사용중인 항목을 나열 /tmp
하면 “동작 방법”을 실제로 결정할 수있는 시점입니다.
제 생각에는 가장 안전한 방법은
- / tmp에 액세스하는 모든 서비스 중지 (가능한 경우)
- / tmp 내용을 완전히 새 장소에 복사
- / etc / fstab 편집 및 / tmp 마운트 지점 물리적 위치 변경 (바인드 또는 장치 마운트에 관계없이)
- 다시 마운트를 수행하기 위해 시스템 재시작
그러나 시스템을 다시 시작하지 않아도되는 다른 방법이 있지만 이전 방법보다 안전하지는 않습니다. 여기에 설명/tmp
되어 있으며 게으른 방식으로 마운트 해제로 구성됩니다.mount -M
이 두 링크는 귀하의 요구에 도움이 될 것입니다.