파일 마운트에 관한 질문 입니다.
안녕하세요. 김우람이라고 합니다.
얼마전 서버를 하나 임대를 했습니다.
하드가 스카시 9기가 두대가 달려 있습니다.
서버 세팅해주는 직원 말씀이 요즘은 보안때문에 이런식으로 세팅한다고
합니다.
-----------------------------------------------------------------
/dev/sda3 8180152 1044836 6719780 14% /
/dev/sda1 49558 15445 31554 33% /boot
/dev/sdb1(두번째하드) 8830416 32828 8349028 1% /data
none 128180 0 128180 0% /dev/shm
------------------------------------------------------------------
요런식으로 두번째 하드를 마운트해서 두번째 하드에 일반계정같은것을
세팅한다고 합니다.
그러니까 첫번째 드라이브는 포기하는 겁니다.
문제는 adduser를 하면 홈디렉토리 및으로 계정이 생기잖아요?
그런데 홈 디렉토리는 첫번째 하드에 있는것이고 실질적인 데이터를
두번째하드(data라는 디렉토리)로 보내야 되는데 홈디렉토리에 데이타를
저장하면 바로 data라는 디렉토리로 파일이 저장되게 할 수는 없을까요
다시말해 data라는 디렉토리를 마치 홈디렉토리 쓰듯이 adduser 하면
홈디렉토리및으로 계정이 생기는 것처럼 보이지만 사실은 데이타 디렉토리
및으로 생기게 말입니다.
제가 잘 몰라 말이 정리가 안되서 죄송합니다.
혹시 제 질문에 감잡으신 분들은 답변좀 부탁드립니다.
새해 복 많이 받으세요~!
??? 이거랑 보안이 커다란 상관이 있나 --;우선, 질문하신
??? 이거랑 보안이 커다란 상관이 있나 --;
우선, 질문하신 것 답부터요. 굳이 /data 디렉토리에 하드를 마운트하실 필요는 없습니다. 그냥 /home에다 마운트를 하세요. /etc/fstab에 /data 엔트리를 /home으로 수정해 주시면 됩니다.
만약 /home에 유저들이 있을 경우, 일단은 루트로 변신해서
# mount /sdc1 /mnt
# cd /home
# cp -av * /mnt # -a 옵션은 서브디렉토리와 퍼미션을 그대로보존
# vi fstab
이렇게해서 fstab의 data 엔트리를 home으로 고쳐주고 재부팅하면 되겠죠. 재부팅하기 싫으면 mount -a 하면 될겁니다.
아니면 심볼릭 링크를 걸어줄 수도 있겠죠.
# ln -sf /home /data
이때 주의하실점은 두번째 하드에 /home쪽 내용이 다 복사되어 있어야겠죠. 앞의 cp -av 며령을 참고로 하시구요. 그리고 링크를 만들기 위해서는 첫번째 하드의 /home 디렉토리를 날려야 합니다.
하나 궁금한 것은 첫번째 하드 디스크의 사용입니다. 9기가씩이나 루트 티션에 줄 필요가 있나요? 보통 서버를 만들면 아무나 이 서버를 억세스 할 수 있게 만든다는 뜻인데 위 방식은 문제가 있습니다.
우선, 해킹당했을때를 가정해보면, 시스템을 새로 깔아야 합니다. 따라서 데이터부분과 응용 프로그램이 설치된 파티션은 나누어 주는 것이 좋습니다. 일단 사용자 계정 디렉토리는 다른 파티션을 쓰시고 있구요. 아마도 웹 서버를 돌리고 웹 비비를 깐다면 mysql 데이터베이스도 돌리실텐테 당연히 mysql 데이터 디렉토리도 다른 파티션에 주는 것이 좋습니다.
그리고 로그 파일이 쌓이는데 대한 대응도 해 줘야 합니다. 보통은 logrotate가 알아서 오래된 로그 파일을 지워주지만 시스템 오동작이 재수없으면 하드를 채울때도 간혹 생깁니다. 루트 파티션이 차 버리면 시스템 동작이 중지되며 직접 재부팅이 불가능해지는 문제가 생깁니다. 따라서 /var 디렉토리도 파티션을 적당히 빼 주는 것이 좋겠죠. 1기가 정도면 남아돌겁니다. 같은 이유로 /tmp 디렉토리에도 파티션을 따로 주는 것이 좋습니다. 간혹 여기에 파일이 생기면서 하드를 채우는 경우도 간혹 있습니다.
안전을 위해서는 /usr 디렉토리도 따로 마운트 시켜주는 것이 좋습니다. 반드시 필요하지는 않구요.
배보다 배꼽이 길어졌는데... 일단 서버 세팅을 그렇게 잡으셨고 /data 디렉토리로 두번째 하드를 마운트 하셨으니 미니멈 조건은 충족 하셨구요. 두번째 하드는 마운팅을 /home으로 직접 하시든가 심볼링 링크를 /data로 걸어주시든가 하세요.
"I conduct to live,
I live to compose."
--- Gustav Mahler
adduser
좀더 쉬운 방법으론 adduser 에 -d 옵션을 이용하면 원하는 디렉토리 어디나 만들수 있습니다. 혹 잊어 버릴수가 있으니간 alias 로 항상 -d 옵션이 추가되도록 만들면 될것 입니다.
근데 정말 루트파티션을 9GB 나 할당한것은 좀 황당하네요. 해킹을 당하면 젤먼저 밀어 버리게 되는것이 루트파티션과 usr 파티션입니다.
다시 설치하는게 어떨지, 넘 낭비인거 같네요. 루트파티션은 보통 1GB 정도, usr 파티션은 2GB 정도면 될겁니다.
- 겨울아찌 - :shock:
- 겨울아찌 -
winchild@gmail.com
첫 하드를 쪼갠다면 따로 쪼개야 할 첫 파티션은 /var죠.roo
첫 하드를 쪼갠다면 따로 쪼개야 할 첫 파티션은 /var죠.
root 1GB, usr 2GB, var 첫 하드 나머지..
(굳이 root와 usr를 나눌 필요가 있을지는...)
이렇게 쪼갰어야죠. 그리고 두번째 하드를 /home에 마운트하고요.
var를 쪼개지 않으면 내부 사용자나 외부의 SPAM mail 등에 의해 시스템이 맛이 갈 경우 복구가 꽤 골치아파집니다.
답변해주신 분들 모두 감사합니다.
아직 제가 많이 몰라서 벌어진 일 같습니다.
고민 좀 더 해봐야겠군요
관심 가져 주셔서 감사합니다.
새해 복 많이 받으세요.
댓글 달기