DATA폴더 용량문제
본문
기존 하드 A에 그누보드를 설치해서 사용하고 있습니다.
다만 A하드에 용량이 거의 다 차서 보니 DATA폴더 문제더라구요.
그래서 B하드를 추가 설치를 했고 기존자료는 하드A에 있으니 냅두고
추가로 저장되는 DATA는 하드 B의 DATA폴더에 저장되게 하고싶습니다.
하예 백업을 떠서 B하드로 옮기는게 아니구요 왜냐면 하드도 용량이 제한이 있기때문에 이렇게 옮기면 점점더 큰 하드를 달아야해서요...
B도 차면 C를 달아 계속 이어가고싶은데... 방법이 없는가요?
답변 2
리눅스 서버를 기준으로 최대한 간단히 설명(간단하지는 않은 상황이기는 하지만..)해 봅니다.
이 방법은 현재까지의 게시글 중 마지막 wr_id를 게시판 마다 확인하여,
현재글 이후의 게시글은 data 폴더가 아닌 data2 폴더로 보내는 방식입니다.
예를 들어,
aaa 라는 게시판의 마지막 wr_id가 9000 이고 이후 부터는 data2 로 저장,
bbb 라는 게시판의 마지막 wr_id가 7000 이고 이후는 data2로 저장 한다고 가정하면...
1. 새로운 하드디스크를 사이트 루트에 data2 로 마운트 함.
2. config.php 파일을 열어, define('G5_DATA_DIR'2, 'data2'); 추가.(위치는 알겠지요..)
3. /bbs/write_update.php 파일을 열어 600행 넘어쯤에 있는
@mkdir(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);
이런 내용을 찾아.. 해당 게시판 마다의 조건을 붙여줌.
if(($bo_table == 'aaa' && wr_id >= '9000') || ($bo_table == 'bbb' && wr_id >= '7000')) {
@mkdir(G5_DATA_PATH2.'/file/'.$bo_table, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH2.'/file/'.$bo_table, G5_DIR_PERMISSION);
} else {
@mkdir(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);
}
로 변경.
이렇게 하면, 일단 다른 하드디스크에 저장이 될 것 입니다.
삭제, 이동 등에도 같은 조건을 붙여야 할 것 이니,
bbs 폴더내의 다른 파일들도 찾아서 변경해야 합니다.
(이래서 단순한 작업이 아니라는...)
만약 하드디스크를 더 추가한다면,
G5_DATA_PATH3. G5_DATA_PATH4.... 하고,
조건식도
if(($bo_table == 'aaa' && wr_id >= '9000') || ($bo_table == 'bbb' && wr_id >= '7000')) {
data2 로 마운트 된 하드
}else if(($bo_table == 'aaa' && wr_id >= '19000') || ($bo_table == 'bbb' && wr_id >= '27000')){
data3 로 마운드 된 하드
} else {
현재의 data 폴더
}
이런식으로 추가해 주면 될 듯 하네요.
윗분의 말씀대로 새로운 하드를 달면 별도 폴더를 마운트 해야 하는 부분이 있어서 위 방식으로 적용을 하셔야 할거 같습니다.