Hướng dẫn cài đặt chương trình chạy lúc khởi động (on boot) trên Debian/Ubuntu


Mình xin hướng dẫn các bạn cách tạo service ngầm để chương trình trên Debian/Ubuntu có thể chạy ngay lúc khởi động. Để làm được điều đó giả sử ta có một chương trình hay một đoạn script tên là test, tạo một file trong thư mục /etc/init.d/, đó là thư mục mà OS sẽ tìm kiếm các service để triệu gọi lúc nó khởi động.

# touch /etc/init.d/test
# chmod 755 /etc/init.d/test
# vi /etc/init.d/test

Nhớ đăng nhập bằng tài khoản root, sau đó điền nội dung file test như sau :

#! /bin/bash
# /etc/init.d/test

# The following part always gets executed.
echo "This part always gets executed"

# The following part carries out specific functions depending on arguments.
case "$1" in
   start)
       echo "Starting test"
       echo "test is alive"
           ;;
   stop)
       echo "Stopping test"
       echo "test is dead"
           ;;
   *)
       echo "Usage: /etc/init.d/test {start|stop}"
       exit 1
           ;;
  esac

  exit 0

update hệ thống để OS có thể nhận nó là một service

# cd /etc/init.d
# update-rc.d test defaults

Từ lúc này trở đi có thể chạy chương trình test bằng hai cách

# /etc/init.d/test start // hoặc stop
//hoặc
# service test start // hoặc stop

Chú ý : các đường dẫn trong tất cả các đoạn script để là tuyệt đối. Nên thử reboot xem đoạn script có chạy không và debug.

Bình luận (0)

Bình luận (<{ numberComments }>)

  • avatar
    <{ comment.author.username }> Reply
    <{ comment.createdAt | date:'yyyy-MM-dd HH:mm:ss' }>
    • avatar
      <{ reply.author.username }>
      <{ reply.createdAt | date:'yyyy-MM-dd HH:mm:ss' }>