Thêm Apache vào khởi động của Ubuntu


7

Tôi hiện đang học môi trường Linux và quyết định cài đặt thủ công máy chủ Apache. Vì mục đích giáo dục, tôi đã biên soạn nó thành:

/server/apache

Vị http.conftrí được cấu hình chính xác. Nó hoạt động - Tôi có thể mở trình duyệt và điều hướng đến localhostvà xem thông báo "Nó hoạt động". Nhưng làm thế nào để thêm Apache vào khởi động Ubuntu nên tôi sẽ không phải làm:

sudo /server/apache/bin/apachectl start

mọi lúc Ai đó có thể giải thích làm thế nào một người đi vào thêm các chương trình vào khởi động Ubuntu (10.10 64 bit) không?


1
Mặc dù kinh nghiệm học tập tốt, xin vui lòng không làm điều này lâu dài. Toàn bộ quan điểm của người quản lý gói phân phối là giữ cho mọi thứ được vá và cập nhật. Nếu bạn bắt đầu xây dựng mọi thứ bằng tay thì BẠN cần đảm bảo chúng luôn cập nhật.
phát triển

@develop: Tất nhiên, một bản phân phối như Ubuntu sẽ giữ các phiên bản cố định, chỉ thực hiện cập nhật bảo trì và không nhất thiết phải có PPA cho mọi gói bạn quan tâm - vì vậy đôi khi nếu bạn muốn có phiên bản mới, bạn sẽ làm phải tự xây dựng nó
Cascabel

Câu trả lời:


2

Cách dễ nhất là lấy tập lệnh khởi động Apache trong gói Apache của Ubuntu và thay thế /usr/sbin/apachectlbằng /server/apache/bin/apachectl.

Nếu đó là một bài tập học tập, bạn có một số tùy chọn (từ linh hoạt nhất đến kém linh hoạt nhất):

  • Bắt đầu Apache thông qua Upstart . Bạn phải viết một tập tin /etc/init/my_apache.conf. Với trạng thái của tài liệu Upstart, tôi khuyên bạn nên đọc các ví dụ hiện có và các trang man song song.
  • Bắt đầu Apache thông qua một kịch bản SysV: một kịch bản thực thi trong /etc/init.dbắt đầu đó, dừng lại, khởi động lại hoặc nạp cấu hình Apache tuỳ thuộc vào việc đối số đầu tiên (và duy nhất) của nó là start, stop, restart, hoặc reload(với force-reloadnhư một bí danh cho reload). Để có kịch bản bắt đầu khi khởi động, hãy chạy update-rc.d. Xem thêm Hướng dẫn khởi động Ubuntu .
  • Bắt đầu Apache từ /etc/rc.local.

cảm ơn. tôi đã đi đến một kết luận rằng Upstart của Ubuntu cũng là con đường để đi. RHEL 6 cũng đang sử dụng nó.
Stann

5

Đây là một tài nguyên tốt, khá gần với những gì bạn yêu cầu. Về cơ bản để làm cho apache2 tự động bắt đầu, bạn cần chạy

update-rc.d apache2 defaults

Điều này sẽ làm cho tập lệnh khởi động khởi động dịch vụ nằm trong /etc/init.d/apache2sau khi khởi động lên. Trước đó, bạn cần tạo một init script và đặt nó vào /etc/init.d/. Trong trường hợp của bạn

ln -s /server/apache/bin/apachectl /etc/init.d/apache2

có thể đủ tốt


1
Bạn cũng có thể lấy tập lệnh init.d ra khỏi gói apache và điều chỉnh nó chỉ một chút. Bạn sẽ kết thúc với một kịch bản mạnh mẽ hơn nhiều.
Cascabel
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.