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 Tại sao khi sử dụng Crontab thì lệnh không thực hiện?  XML
  [Question]   Tại sao khi sử dụng Crontab thì lệnh không thực hiện? 07/05/2013 10:37:36 (+0700) | #1 | 275521
[Avatar]
ngtrongtri
Member

[Minus]    0    [Plus]
Joined: 27/03/2012 22:54:13
Messages: 114
Offline
[Profile] [PM]
Chào mọi người, em có setup demo 2 server Centos 5, sử dụng Unison để sync dữ liệu lân nhau. Nhưng thằng này có nhược điểm là không tự động sync data, mỗi lần muốn sync là phải thực hiện lệnh.
Nên mình có sử dụng Crontab, mình làm các bước sau
#crontab -e
nhấn i để chuyển qua insert
thêm câu lệnh sau
*/1 * * * * /usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /dev/null
Esc -> :wq để thoát

Nhưng đợi hơn 1 phút cũng không thấy dữ liệu sync với nhau. Cho mình hỏi mình đã sai ở chỗ nào vậy ?
[Up] [Print Copy]
  [Question]   Tại sao khi sử dụng Crontabl thì không lệnh không thực hiện ? 07/05/2013 11:34:13 (+0700) | #2 | 275522
kakarottbatdong
Member

[Minus]    0    [Plus]
Joined: 02/05/2009 19:27:06
Messages: 55
Offline
[Profile] [PM]
Bồ có restart lại dịch vụ crond chưa vậy ??
[Up] [Print Copy]
  [Question]   Tại sao khi sử dụng Crontabl thì không lệnh không thực hiện ? 07/05/2013 12:06:23 (+0700) | #3 | 275524
[Avatar]
quanta
Moderator

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

kakarottbatdong wrote:
Bồ có restart lại dịch vụ crond chưa vậy ?? 

Không cần đâu bạn.

ngtrongtri wrote:
Chào mọi người, em có setup demo 2 server Centos 5, sử dụng Unison để sync dữ liệu lân nhau. Nhưng thằng này có nhược điểm là không tự động sync data, mỗi lần muốn sync là phải thực hiện lệnh.
 

Bạn có thể dùng `incrond`, tiếp theo là `watcher`. Hoặc "cao cấp" hơn là DRBD + GFS2.

kakarottbatdong wrote:

Nên mình có sử dụng Crontab, mình làm các bước sau
#crontab -e
nhấn i để chuyển qua insert
thêm câu lệnh sau
*/1 * * * * /usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /dev/null
Esc -> :wq để thoát

Nhưng đợi hơn 1 phút cũng không thấy dữ liệu sync với nhau. Cho mình hỏi mình đã sai ở chỗ nào vậy ? 

1. Kiểm tra `/var/log/cron` để chắc chắn rằng cron job đã được chạy.
2. Sửa `> /dev/null` thành `> /tmp/unison.log 2>&1` để có log mà xem.
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   Tại sao khi sử dụng Crontabl thì không lệnh không thực hiện ? 07/05/2013 22:25:54 (+0700) | #4 | 275541
acoustics89
Member

[Minus]    0    [Plus]
Joined: 08/07/2011 10:17:19
Messages: 50
Offline
[Profile] [PM]

quanta wrote:

Bạn có thể dùng `incrond`, tiếp theo là `watcher`. Hoặc "cao cấp" hơn là DRBD + GFS2.
 


Mình vote cho DRBD + GFS2. Bạn chủ thread nên dùng thử
[Up] [Print Copy]
  [Question]   Tại sao khi sử dụng Crontab thì lệnh không thực hiện? 08/05/2013 07:47:38 (+0700) | #5 | 275555
[Avatar]
ngtrongtri
Member

[Minus]    0    [Plus]
Joined: 27/03/2012 22:54:13
Messages: 114
Offline
[Profile] [PM]
Cảm ơn mọi người, mình sẽ tìm hiểu thêm các phần nói trên. Nhưng trước hết xin giúp đỡ mình chạy được Crontab đã.
@quanta:
Em xem trong file log (/var/log/cron) thì được như sau:
Code:
...
May  8 14:59:01 centos crond[32511]: (root) CMD (/usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /tmp/unision.log 2>&1)
May  8 15:00:01 centos crond[32517]: (root) CMD (/usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /tmp/unision.log 2>&1)
May  8 15:01:01 centos crond[32524]: (root) CMD (run-parts /etc/cron.hourly)
May  8 15:01:01 centos crond[32529]: (root) CMD (/usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /tmp/unision.log 2>&1)
May  8 15:02:01 centos crond[32542]: (root) CMD (/usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /tmp/unision.log 2>&1)
May  8 15:03:01 centos crond[32546]: (root) CMD (/usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /tmp/unision.log 2>&1)
May  8 15:04:01 centos crond[32552]: (root) CMD (/usr/bin/unison /opt/test/ ssh://192.168.2.231//opt/test &> /tmp/unision.log 2>&1)
...

Log /tmp/unision.log :
Code:
Contacting server...
Connected [//centos//opt/test -> //centos//opt/test]
Looking for changes
  Waiting for changes from server
Reconciling changes

local          centos
new file ---->            test3  [f] Uncaught exception End_of_file



Nó đứng luôn, không thấy sync gì hết anh.
[Up] [Print Copy]
  [Question]   Tại sao khi sử dụng Crontab thì lệnh không thực hiện? 08/05/2013 21:49:15 (+0700) | #6 | 275579
[Avatar]
quanta
Moderator

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

Nguyên tắc cơ bản khi làm việc trên Linux:
- gặp lỗi thì nên xem log
- log chưa đủ chi tiết thì tăng verbosity level lên

Do vậy, bạn thử sửa `/usr/bin/unison /opt/test/ ...` thành `/usr/bin/unison -debug verbose /opt/test/ ...` rồi xem log có gì.
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|