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 lftp - backup cùng lệnh nhưng output khác nhau  XML
  [Question]   lftp - backup cùng lệnh nhưng output khác nhau 05/10/2012 10:31:01 (+0700) | #1 | 269918
traunui
Member

[Minus]    0    [Plus]
Joined: 28/02/2012 20:23:08
Messages: 62
Offline
[Profile] [PM]
Em có 1 VPS chạy web, vì VPS chỉ backup tuần 1 lần. Nên em backup thêm hàng ngày về máy công ty.
Em tạo file backup.sh có nội dung sau


mysqldump -uAcc -pPassword DB | bzip2 > /root/$(date +%Y-%m-%d).DB.sql.bz2 && tar -cvf $(date +%Y-%m-%d).web.tar.bz2 /home/acc/www/ && lftp -c "open 'x.x.x.x' && user 'ftpacc' 'Ssos5L&o{~7>*P+' && mput /root/$(date +%Y-%m-%d).*.bz2"<<END_SCRIPT
 


Chạy thử ./backup.sh thì nó chạy backup và transfer file về máy tốt. Nhưng kết thúc là đoạn này và cứ đứng đó, Ctrl + C mới thoát


`/root/2012-10-05.web.tar.bz2' at 141465600 (100%) [Waiting for transfer to complete]
 


Em thử tạo file lftp.sh


lftp -c "open 'x.x.x.x' && user 'ftpacc' 'Ssos5L&o{~7>*P+' && mput /root/$(date +%Y-%m-%d).*.bz2"<<END_SCRIPT
 


Thì file transfer ngon và kết thúc là [root@webmail ~]#

Em không hiểu cùng với đoạn lftp đó mà sao 2 kết quả nó như vậy.
[Up] [Print Copy]
  [Question]   lftp - backup cùng lệnh nhưng output khác nhau 06/10/2012 16:52:54 (+0700) | #2 | 269937
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]
`<<END_SCRIPT` ở đây nghĩa là gì vậy bạn?
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   lftp - backup cùng lệnh nhưng output khác nhau 08/10/2012 11:59:14 (+0700) | #3 | 269978
traunui
Member

[Minus]    0    [Plus]
Joined: 28/02/2012 20:23:08
Messages: 62
Offline
[Profile] [PM]
Lúc đầu em test chỉ lệnh lftp để transfer thôi, ko có <<END_SCRIPT thì nó cũng bị Waiting. Sau em search thì thấy có người để cái đó nên em thêm vào.

Cũng nhân tiện em hỏi. Đoạn backup em tách ra thành bk.sh

mysqldump -uAcc -pPassword DB | bzip2 > /root/$(date +%Y-%m-%d).DB.sql.bz2 && tar -cvf $(date +%Y-%m-%d).web.tar.bz2 /home/acc/www/ && lftp -c "open 'x.x.x.x' && user 'ftpacc' 'Ssos5L&o{~7>*P+' && mput /root/$(date +%Y-%m-%d).*.bz2"
 


Khi chạy ./bk.sh thì nó backup đủ db & source code. Nhưng chạy cron thì phần source code nó chỉ nén được 2.4MB, chạy trực tiếp thì file là 135MB.

Đây là output khi chạy bk.sh

[root@webmail backup]# ll -lh
total 137M
-rw-r--r-- 1 root root 960K Oct 8 12:34 2012-10-08.db.sql.bz2
-rw-r--r-- 1 root root 135M Oct 8 12:34 2012-10-08.web.tar.bz2
-rwx------ 1 root root 173 Oct 8 12:07 backup.sh
-rwx------ 1 root root 418 Sep 19 15:07 diskSpace.sh
-rwx------ 1 root root 126 Oct 8 12:42 lftp.sh
[root@webmail backup]#
 


Còn sau là đoạn chạy cron

[root@webmail backup]# ls -lh
total 139M
-rw-r--r-- 1 root root 2.3M Oct 8 12:56 2012-10-08-1349675761.web.tar.bz2
-rw-r--r-- 1 root root 960K Oct 8 12:34 2012-10-08.db.sql.bz2
-rw-r--r-- 1 root root 135M Oct 8 12:34 2012-10-08.web.tar.bz2
-rwx------ 1 root root 176 Oct 8 12:53 backup.sh
-rwx------ 1 root root 418 Sep 19 15:07 diskSpace.sh
-rwx------ 1 root root 126 Oct 8 12:42 lftp.sh
[root@webmail backup]#
 
[Up] [Print Copy]
  [Question]   lftp - backup cùng lệnh nhưng output khác nhau 08/10/2012 21:17:54 (+0700) | #4 | 269988
[Avatar]
quanta
Moderator

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

traunui wrote:
Lúc đầu em test chỉ lệnh lftp để transfer thôi, ko có <<END_SCRIPT thì nó cũng bị Waiting. Sau em search thì thấy có người để cái đó nên em thêm vào.
 

Khi dùng một cái gì đó, ít nhất bạn cũng nên tìm hiểu xem nó có ý nghĩa gì.

traunui wrote:

Cũng nhân tiện em hỏi. Đoạn backup em tách ra thành bk.sh

mysqldump -uAcc -pPassword DB | bzip2 > /root/$(date +%Y-%m-%d).DB.sql.bz2 && tar -cvf $(date +%Y-%m-%d).web.tar.bz2 /home/acc/www/ && lftp -c "open 'x.x.x.x' && user 'ftpacc' 'Ssos5L&o{~7>*P+' && mput /root/$(date +%Y-%m-%d).*.bz2"
 


Khi chạy ./bk.sh thì nó backup đủ db & source code. Nhưng chạy cron thì phần source code nó chỉ nén được 2.4MB, chạy trực tiếp thì file là 135MB.

Đây là output khi chạy bk.sh

[root@webmail backup]# ll -lh
total 137M
-rw-r--r-- 1 root root 960K Oct 8 12:34 2012-10-08.db.sql.bz2
-rw-r--r-- 1 root root 135M Oct 8 12:34 2012-10-08.web.tar.bz2
-rwx------ 1 root root 173 Oct 8 12:07 backup.sh
-rwx------ 1 root root 418 Sep 19 15:07 diskSpace.sh
-rwx------ 1 root root 126 Oct 8 12:42 lftp.sh
[root@webmail backup]#
 


Còn sau là đoạn chạy cron

[root@webmail backup]# ls -lh
total 139M
-rw-r--r-- 1 root root 2.3M Oct 8 12:56 2012-10-08-1349675761.web.tar.bz2
-rw-r--r-- 1 root root 960K Oct 8 12:34 2012-10-08.db.sql.bz2
-rw-r--r-- 1 root root 135M Oct 8 12:34 2012-10-08.web.tar.bz2
-rwx------ 1 root root 176 Oct 8 12:53 backup.sh
-rwx------ 1 root root 418 Sep 19 15:07 diskSpace.sh
-rwx------ 1 root root 126 Oct 8 12:42 lftp.sh
[root@webmail backup]#
 
 

Có 2 điều cần ghi nhớ khi dùng cron:
1. luôn luôn dùng absolute path (đường dẫn đầy đủ)
2. nên wwwect cả stdout và stderr vào một file (`> /path/to/foo.log 2>&1`), để xem tại sao khi chạy dưới dạng cron lại không được kết quả mong muốn như khi chạy từ command line.
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   lftp - backup cùng lệnh nhưng output khác nhau 09/10/2012 09:07:43 (+0700) | #5 | 269999
traunui
Member

[Minus]    0    [Plus]
Joined: 28/02/2012 20:23:08
Messages: 62
Offline
[Profile] [PM]
Cảm ơn anh.
1. Về lftp, em đọc lại và em chuyển sang dùng

lftp -c "open 'x.x.x.x' && user 'ftpacc' 'Ssos5L&o{~7>*P+' && mput /root/$(date +%Y-%m-%d).*.bz2; exit"
 


2. Về cron & tar em sửa lại 1 chút và đã chạy ổn. Em cùng -cPf để extract cho tiện luôn.
[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|