Cara memulai layanan secara otomatis (apache2) dengan Linux Mint


11

(Strangley) Apache2 yang saya instal tidak memulai ketika masuk ke Linux Mint.

Menjalankan perintah ini membuatnya:

sudo service apache2 start

Bagaimana saya harus mencoba memulai layanan ini pada setiap login?


Anda bisa menempatkan perintah itu ~/.xinitrc, yang akan dijalankan saat startup.
n0pe

2
@ Maxmackie Sebaliknya, ~/.xinitrcdijalankan pada saat login, yang tidak benar. Apache harus dimulai oleh root pada saat boot.
Gilles 'SANGAT berhenti menjadi jahat'

@ Gilles, benar saya lupa tentang itu, terima kasih sudah mengoreksi. Namun, mengapa apache harus dimulai saat boot? Tidakkah login bisa mencapai hal yang sama?
n0pe

@MaxMackie Tidak jika Anda tidak masuk segera setelah boot, tentu saja. Juga Apache tidak berjalan seperti Anda, jadi Anda harus memberinya hak istimewa. Itu harus dimulai pada bagian dari skrip boot, dan biasanya.
Gilles 'SO- stop being evil'

@Gilles benar. Terima kasih telah menjelaskan hal itu.
n0pe

Jawaban:


12

Debian (Ubuntu / Linux Mint)

rcconf (CLI-GUI)

sudo apt-get install rcconf
sudo rcconf

perbarui-rc.d

sudo update-rc.d -f apache2 add

atau

sudo update-rc.d apache2 defaults

RedHat / Fedora / CentOS

chkconfig

sudo chkconfig --add apache2

atau

sudo chkconfig -- level 35 apache2 on

Apache sudah diperiksa ketika saya menjalankan rcconf.
eoinoc

Menjalankan update-rc.dperintah menyebabkan kesalahan: update-rc.d: warning: apache2 start runlevel arguments (none) do not match LSB Default-Start values (2 3 4 5).
eoinoc

Sudahkah Anda memberikan pembaruan-rc.d apache2 secara default atau memperbarui-rc.d -f apache2 tambahkan 3 5
earthmeLon

1
Terima kasih, tetapi tidak ada yang berhasil. Pertama menghasilkan peringatan "sudah ada", yang kedua menghasilkan warning: apache2 start runlevel arguments (none) do not batch LSB default-Start values (2 3 4 5).
eoinoc

6

Karena Mint didasarkan pada Ubuntu, dan Ubuntu telah beralih ke Pemula, Cookbook Pemula memiliki semua info untuk memulai layanan saat boot, atau pada runlevel tertentu.

Situs ini Memberikan buku masak terperinci untuk memulai Apache saat boot.


Halaman itu berbicara tentang menempatkan skrip bash di /etc/init.d/apache2. Tapi file itu sudah penuh dengan skrip bash yang jauh lebih rumit, yang pasti telah ditempatkan di sana oleh Apache sendiri.
eoinoc

3

Penyebab lain dari masalah yang sama adalah prioritas tautan apache di rc [0-6] .d. Milik saya S90 dan K09, dan Apache tidak akan mulai saat boot. Menetapkan prioritas pada standarnya, 20, bekerja untuk saya. Tautan yang ada harus dihapus terlebih dahulu.

sudo update-rc.d -f apache2 remove
sudo update-rc.d apache2 defaults

2

Saat shutdown, saya melihat kesalahan:

Kesalahan sintaks pada baris 230 dari /etc/apach2/apache.conf .... / etc / apache / sites-enabled / mysite: Tidak ada file atau direktori seperti itu

Masalahnya, mysitedikaitkan dengan file di folder rumah saya.

Biasanya itu seharusnya tidak menjadi masalah, pikirku.

Tapi sejauh yang saya tahu, partisi rumah saya dienkripsi . Oleh karena itu, saya menduga bahwa Apache tidak dapat membaca file situs virtual ketika sedang memuat. File tidak dapat diakses sampai saya mengetikkan kata sandi saya.

Situasi yang rumit, dan butuh berbulan-bulan untuk menyelesaikannya :)


Jadi bagaimana Anda mengatasinya?
Jonas Äppelgran

0

Jawaban baru diperbarui pada 2019:

sudo systemctl mulai httpd

sudo systemctl mengaktifkan httpd

Perintah systemctl adalah alat baru untuk mengontrol sistem dan layanan systemd. Ini adalah penggantian manajemen sistem init SysV lama. Sebagian besar sistem operasi Linux modern menggunakan alat baru ini. Jika Anda bekerja dengan CentOS 7, Ubuntu 16.04 atau lebih baru atau sistem Debian 9. Mereka telah memilih systemd sekarang.

Layanan yang diaktifkan autostarts pada boot sistem. Ini adalah opsi yang mirip untuk systemd daripada chkconfig untuk init SysV.


1
Anda mungkin mempertimbangkan membalik urutan, sehingga diaktifkan sebelum Anda memintanya untuk memulai.
Jeff Schaller
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.