banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành *nix viết script backup dữ liệu từ linux server sang 1 linux server khác.  XML
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 26/08/2009 23:27:45 (+0700) | #1 | 191193
truong.ln
Member

[Minus]    0    [Plus]
Joined: 19/08/2009 23:20:40
Messages: 12
Offline
[Profile] [PM]
hi mọi người! em có 2 server linux (server1 và server2), trên server1 có chứa dữ liệu cần được backup về server2.
+ trên server1: dữ liệu cần backup nằm trong 1 folder (vd: /data) và dữ liệu được lưu theo ngày của hệ thống có các dạng khác nhau như yyyymmdd-*, yyyy_mm_dd-*, yymmdd-*... (vd: /data/20090827-log, /data/2009_08_27-*...)
+ trên server2: em muốn viết 1 cái script sao cho cứ vào 23h00 hằng ngày nó sẽ tự động backup dữ liệu từ folder /data trên server1 về folder /backup trên server2, nhưng với điều kiện chỉ backup những file có định dạng trùng với ngày của hệ thống (vd: ngày hôm nay là 27/08/2009 thì chỉ có những dạng dữ liệu sau: 20090827*, 2009_08_27*, 090827* được backup về)
em mới làm quen với script nên mong mọi người giúp em! thanks all !!!
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 00:29:10 (+0700) | #2 | 191196
[Avatar]
St Konqueror
Member

[Minus]    0    [Plus]
Joined: 08/12/2007 00:47:39
Messages: 229
Offline
[Profile] [PM]

truong.ln wrote:
hi mọi người! em có 2 server linux (server1 và server2), trên server1 có chứa dữ liệu cần được backup về server2.
+ trên server1: dữ liệu cần backup nằm trong 1 folder (vd: /data) và dữ liệu được lưu theo ngày của hệ thống có các dạng khác nhau như yyyymmdd-*, yyyy_mm_dd-*, yymmdd-*... (vd: /data/20090827-log, /data/2009_08_27-*...)
+ trên server2: em muốn viết 1 cái script sao cho cứ vào 23h00 hằng ngày nó sẽ tự động backup dữ liệu từ folder /data trên server1 về folder /backup trên server2, nhưng với điều kiện chỉ backup những file có định dạng trùng với ngày của hệ thống (vd: ngày hôm nay là 27/08/2009 thì chỉ có những dạng dữ liệu sau: 20090827*, 2009_08_27*, 090827* được backup về)
em mới làm quen với script nên mong mọi người giúp em! thanks all !!! 


Chào truong.ln

Nếu bạn muốn lên lịch backup tự động thì tìm hiểu về http://en.wikipedia.org/wiki/Cron xem sao. Bạn nhớ ngâm cứu thêm các links tham khảo trong trang đó để hiểu rõ hơn về cron. Trên HVA cũng có khá nhiều bài viết hay về cron rồi, bạn cũng có thể search để đọc thêm. Còn về việc backup sao cho đúng ý bạn thì mình nghĩ có lẽ bạn nên tham khảo về khái niệm regex pattern là đủ.

Một vài hướng. và mình nghĩ bạn nên tự viết script thì hay hơn là nhờ người khác viết hộ.

Thân mến

PS: Lần sau bạn viết bài thì nhớ chừa khoảng trống ra một tí cho dễ nhìn (ví dụ xuống dòng giữa các đoạn)
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 00:49:48 (+0700) | #3 | 191197
truong.ln
Member

[Minus]    0    [Plus]
Joined: 19/08/2009 23:20:40
Messages: 12
Offline
[Profile] [PM]
Cảm ơn anh St Konqueror đã trả lời bài viết và đóng góp ý kiến giúp em.

- Cái phần lập lịch cho hệ thống thực thi script bằng crontab vào thời điểm nào đó trong ngày thì đã làm được.

- Nhưng cái phần viết script theo yêu cầu ban đầu đặt ra, em đã thử với rsync và scp đều bị thất bại. smilie

Do mới làm quen với linux cũng như với script nên còn nhiều vấn đề chưa được thông... mọi người ai có kinh nghiệm về lĩnh vực này mách nước giúp em.

thanks all !!!
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 01:51:25 (+0700) | #4 | 191198
[Avatar]
changnhan
Member

[Minus]    0    [Plus]
Joined: 24/07/2009 20:03:41
Messages: 15
Offline
[Profile] [PM]
Nếu viết cron 1 ngày , định kỳ backup vào 1 thư mục trong server hiện tại thì viết thế nào huynh
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 05:02:56 (+0700) | #5 | 191203
Mr.Khoai
Moderator

Joined: 27/06/2006 01:55:07
Messages: 954
Offline
[Profile] [PM]
truong.ln,

Vậy bạn có thể viết một cái script backup dữ liệu từ máy 1 qua máy 2 hay không? Thử dùng scp đơn giản, không cần động đến rsync. Bạn thử post nội dung cái script lên xem có gì không ổn.

changnhan,

Vui lòng đọc man page của cron, hoặc google.

khoai
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 07:08:44 (+0700) | #6 | 191205
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

truong.ln wrote:
hi mọi người! em có 2 server linux (server1 và server2), trên server1 có chứa dữ liệu cần được backup về server2.
+ trên server1: dữ liệu cần backup nằm trong 1 folder (vd: /data) và dữ liệu được lưu theo ngày của hệ thống có các dạng khác nhau như yyyymmdd-*, yyyy_mm_dd-*, yymmdd-*... (vd: /data/20090827-log, /data/2009_08_27-*...)
+ trên server2: em muốn viết 1 cái script sao cho cứ vào 23h00 hằng ngày nó sẽ tự động backup dữ liệu từ folder /data trên server1 về folder /backup trên server2, nhưng với điều kiện chỉ backup những file có định dạng trùng với ngày của hệ thống (vd: ngày hôm nay là 27/08/2009 thì chỉ có những dạng dữ liệu sau: 20090827*, 2009_08_27*, 090827* được backup về)
em mới làm quen với script nên mong mọi người giúp em! thanks all !!! 

Mình hơi tò mò một chút là sao lại phải lưu ngày tháng dưới nhiều định dạng khác nhau vậy? Tuy nhiên cứ man date là ra hết: %Y, %y, %m, %d,... mà thôi.
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 09:16:12 (+0700) | #7 | 191211
truong.ln
Member

[Minus]    0    [Plus]
Joined: 19/08/2009 23:20:40
Messages: 12
Offline
[Profile] [PM]
hi all ! em đã viết được cái script đơn để backup dữ liệu từ server1 sang server2 dùng scp:
code:

#!/bin/sh
unset PATH
SERVER1=root@192.168.1.11:/data #THU MUC CHUA DU LIEU TREN SERVER1 CAN BACKUP
DATE=/bin/date
SERVER2=/backup #THU MUC TREN SERVER2 CHUA DU LIEU SAU KHI BACKUP VE
SCP=/usr/bin/scp
DAY1=`$DATE +%Y-%m-%d` #DINH DANG yyyy-mm-dd
DAY2=`$DATE +%Y_%m_%d` #DINH DANG yyyy_mm_dd
DAY3=`$DATE +%Y%m%d` #DINH DANG yyyymmdd
DAY4=`$DATE +%y%m%d` #DINH DANG yymmdd
$SCP $SERVER1/*$DAY1* $SERVER1/*$DAY2* $SERVER1/*$DAY3* $SERVER1/*$DAY4* /$SERVER2

Cái script trên em mới tập tành viết nên không biết đã tối ưu chưa? nhưng thấy nó chạy theo ý của mình cũng vui, mọi người thấy chổ nào không ổn chỉnh lại giúp em nhé. Còn dùng rsync thì mò mãi vẫn chưa thấy gì smilie .

@ anh quanta: mấy dạng dữ liệu đó chỉ là giả thuyết em đặt ra thôi, nhưng đúng như anh nói ta có thể xử lý được bằng hàm date như ở trên em làm.

@anh Mr.Khoai: trên là nội dung script đơn giản backup data giữa 2 server dùng scp, anh xem giúp em. Còn cái phần dùng rsync anh có thể gợi ý cho em chút được không?

PS: Cái script trên em chạy nó ở trên server2 và đã cấu hình ssh giữa 2 server này không cần pass.

thanks mọi người !
[Up] [Print Copy]
  [Question]   viết script backup dữ liệu từ linux server sang 1 linux server khác. 27/08/2009 09:35:01 (+0700) | #8 | 191214
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

truong.ln wrote:
hi all ! em đã viết được cái script đơn để backup dữ liệu từ server1 sang server2 dùng scp:
code:

#!/bin/sh
unset PATH
SERVER1=root@192.168.1.11:/data #THU MUC CHUA DU LIEU TREN SERVER1 CAN BACKUP
DATE=/bin/date
SERVER2=/backup #THU MUC TREN SERVER2 CHUA DU LIEU SAU KHI BACKUP VE
SCP=/usr/bin/scp
DAY1=`$DATE +%Y-%m-%d` #DINH DANG yyyy-mm-dd
DAY2=`$DATE +%Y_%m_%d` #DINH DANG yyyy_mm_dd
DAY3=`$DATE +%Y%m%d` #DINH DANG yyyymmdd
DAY4=`$DATE +%y%m%d` #DINH DANG yymmdd
$SCP $SERVER1/*$DAY1* $SERVER1/*$DAY2* $SERVER1/*$DAY3* $SERVER1/*$DAY4* /$SERVER2

Cái script trên em mới tập tành viết nên không biết đã tối ưu chưa? nhưng thấy nó chạy theo ý của mình cũng vui, mọi người thấy chổ nào không ổn chỉnh lại giúp em nhé.
 

- Sao lại dùng root thế kia?
- Bạn đọc về regex và viết chung 4 cái DAY kia thành 1 được không? (mà trước cái DAY vẫn còn một số ký tự khác à, sao lại có dấu *)

truong.ln wrote:

Còn dùng rsync thì mò mãi vẫn chưa thấy gì smilie .
 

Bạn đã mò thế nào rồi? Tìm đọc các chủ đề liên quan đến rsync trên HVA chưa?
Let's build on a great foundation!
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|