관리자 페이지에서 웹사이트 통째로 백업하기... > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

관리자 페이지에서 웹사이트 통째로 백업하기... 정보

관리자 페이지에서 웹사이트 통째로 백업하기...

본문

카페24  Euc-kr 계정에서만 테스트 해 봤습니다.


data 폴더 밑에 backup 폴더를 만들어 tar 파일로 압축해 줍니다..

링크를 걸어서 관리자가 다운 받을 수 있게 하고, 삭제할 수 있게끔 만들어주면 좋을거 같습니다..^^

<?

 $sub_menu = "100990";
 include_once("./_common.php");

 check_demo();

 if ($is_admin != "super") {
  alert("최고관리자만 접근 가능합니다.", $g4[path]);
 }

 $g4[title] = "웹사이트 소스파일 백업";

 include_once("./admin.head.php");

 if (!is_dir("../data/backup")) {
  @mkdir("../data/backup", 0777);
  @chmod("../data/backup", 0777);

  // 디렉토리에 있는 파일의 목록을 보이지 않게 한다.
  $file = $g4['path'] . "/data/backup" . "/index.php";
  $f = @fopen($file, "w");
  @fwrite($f, "");
  @fclose($f);
  @chmod($file, 0777);
 }

    $location = $_SERVER['DOCUMENT_ROOT'];

 $fb = popen("tar -cvpf " .$location . "/data/backup/www_".$g4[time_ymd].".tar " . $location , "r");

 echo "$fb<br>\n";

 while ($file_line = fgets($fb, 1024)) {
  printf("%s<br>\n", $file_line);
 }

 pclose($fb);

 echo "<br><br>사이트의 소스파일 백업을 완료했습니다..";

 include_once("./admin.tail.php");

?>


급조한거라 더 쓸만하게끔 만들어 주시리라 생각하고..
자주 들려서 글 남길 수 있도록 하겠습니다.

추천
8

댓글 21개

아이디어 굿이어요~~!!

header('Content-Disposition: attachment; filename=www_".$g4[time_ymd].".tar "');
$fb = popen("tar -cvpf " .$location . "/data/backup/www_".$g4[time_ymd].".tar " . $location , "r");

욜케하면 백업받으면서 다운까지...
telnet, ftp, phpmyadmin 왔다갔다 할필요 없이 한방에.... 좋습니다.!
ㅎㅎ. 원래는 만들어줄때 하루에 한번만 백업한다구 해서... 쭉 목록을 보관하다 일주일 지나면 하나씩 자동으로 삭제하고.. 필요할때 서버에서 클라이언트가 직접 다운 받게끔 했었습니다..
그리고, 백업파일이 필요없다 싶으면 선택해서 삭제도 가능하게하구요..

근데 지금보니 백업하면서 바로 다운 받게끔하는 것도 좋겠군요....

48시간님의 말풍선 스킨 충격이였습니다.. 정말 멋지더라구요...^^
재미있네요^^ 추천꾹~~
누적 백업이 되어서 백업 디렉토리는 제외 해봤습니다.

$location = $_SERVER['DOCUMENT_ROOT']; 
    $file_name =$location . "/data/backup/www_".$g4[time_ymd].".tar";
    $no_backup=$location;
//backup 제외 디렉토리
    $no_backup.="/data/backup";
$fb = popen("tar -cvpf " .$file_name. " --exclude=".$no_backup." " . $location , "r");
Resource id #31


사이트의 소스파일 백업을 완료했습니다..
버트을 클릭하면 이렇게 나옵니다.
그런데 폴드에서는 백업파일이 없네요
어제는 되었던거 같은데 오늘 해보니 백업폴더는 생기는데 압축 파일을 없네요 ..

백업 파일 클릭해 보면 .. 희안하게 메인최상위 루트로 넘어가고 ;;
아무것도 안나오시는 분들은

$fb = popen("tar -cvpf " .$location . "/data/backup/www_".$g4[time_ymd].".tar " . $location , "r");


부분에서  "$location . "/data"  사이에 보드가 있는 폴더 명을 넣으시면 되지 않을까 싶습니다.(경로가 틀려서 안되는거 같네염 ^^;;)

저의 경우는 g_bbs라는 폴더 안에 그누를 다 넣었는데 안되서

"$location . "/data"    -> "$location . "/g_bbs/data"  같은식으로 바꾸니 작동하였습니다.

cheng 님

사용방법은  위의 내용을 "admin_backup.php"라는 이름의 파일로 만들어서 adm 폴더에 넣으시고

admin.memu100.php 파일에

array("100990", "사이트 전체백업", "$g4[admin_path]/admin_backup.php"),

한줄을 추가해 넣으시면 됩니다.
시간이 많이 지난 댓글이지만,

저같은 경우는 ssh나 telnet으로 로그인하여 tgz로 묶어서 ftp로 다운 받습니다.

#tar cvzf filename.tgz directory 이런 식으로요...

참고만 하세요.
전체 92 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT