Cách chạy tập lệnh khi khởi động CentOS Linux


13

Tôi đặt một kịch bản vào /etc/init.d/abc.sh. Bây giờ tôi muốn nó chạy khi khởi động.

Làm thế nào tôi có thể làm điều đó với chkconfig?

chkconfig --add abc.sh

Nhưng tôi không chắc nó hoạt động như thế nào.


Có một bài viết cũ nhưng vẫn hữu ích tại linuxjournal.com/article/4445
RedGrittyBrick

Câu trả lời:


8

Tôi thường chỉ sử dụng

/etc/rc.local

Vì vậy, như ...

tiếng vang "/etc/init.d/abc.sh" >> /etc/rc.local

nên hack nó cho ya. Có lẽ có những nơi thích hợp hơn, nhưng bất cứ điều gì, nó hoạt động, trên hầu hết các distro dường như.


kịch bản đó là một daemon và tôi cóabc start stop restart configurd
Mirage

Có lẽ bạn muốn gọi nó bằng cách nhập: 'dịch vụ abc bắt đầu'
James T Snell

8

Các tập lệnh chạy khi khởi động không được gọi là tập lệnh - nếu bạn muốn tập lệnh được thực thi khi khởi động, hãy thay đổi các phần sau trong /etc/crontab:

@reboot /path/to/script

1
Nó sẽ chạy như người dùng root nếu được đặt trong cron?
Kimberly W

2
Đó là một ý tưởng tuyệt vời! Nó là di động và đơn giản. Nó không gây hại cho khởi động. Nó xuất hiện sau khi các mô-đun hệ thống khởi động với quyền người dùng chính xác .... Trong trường hợp của tôi trên centos 7, nó sẽ là "@reboot root / path / to / script"
Nicolas Guérinet

2

Có một cái nhìn khác, init-scripts hiện có. Trong mỗi tập lệnh init kiểu rh thích hợp, có ba gợi ý: runlevels, nơi tập lệnh nên được bắt đầu và mức độ ưu tiên mà nó nên được bắt đầu / dừng. Tổng số bắt đầu + dừng nên bình thường là 100.

Dòng nhận xét này được đánh giá bởi chkconfig.


1

Bạn không thể trừ khi bạn đọc /usr/share/doc/initscripts-*/sysvinitfilesvà cấu trúc kịch bản của bạn phù hợp.


1

Bạn đang đi đúng hướng. Tập lệnh bash của bạn nằm đúng vị trí và bạn đã thêm nó vào chkconfig, điều đó có nghĩa là tập lệnh của bạn đã được cài đặt.

Xin lưu ý rằng đó /etc/init.dlà một liên kết tượng trưng đến/etc/rc.d/init.d

Sau khi thêm tập lệnh của bạn, bạn cần chọn runlevel nào bạn muốn kích chkconfig --level 35 abc onhoạt tập lệnh đó: sẽ kích hoạt tập lệnh của bạn trên runlevels 3 và 5, phần khởi động phổ biến nhất của bạn.

Vui lòng tham khảo chkconfig --helpđể biết thêm.

Tái bút bạn cũng có thể sử dụng ntsysvmột tui cho chkconfig.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.