Zainstalowałem Apache 2 ze źródła na moim Linux-ie. apachectl -k start
działa dobrze, ale jak mogę uruchomić Apache podczas uruchamiania?
To jest na dystrybucji Red Hat Linux:
Linux <nazwa hosta> 2.6.9-55.ELsmp # 1 SMP Pt 20 kwietnia 17:03:35 EDT 2007 i686 i686 i386 GNU / Linux
linux
apache-2.2
startup
smucić
źródło
źródło
Odpowiedzi:
Chcesz dodać jego skrypt inicjujący do odpowiedniego poziomu uruchamiania. Skrypt inicjujący jest zazwyczaj
/etc/init.d/apache2
miejscem, w którym można ręcznie uruchomić,/etc/init.d/apache2 start
aby go uruchomić.Na Gentoo piszesz:
W Ubuntu / Debian działa to:
Na Red Hat Linux / Fedora / CentOS trochę googling pokazuje:
Różni się nieco w zależności od dystrybucji, ale pomysł jest zwykle taki sam. Zasadniczo wszystkie te polecenia tworzą symboliczne łącze
/etc/init.d/
do odpowiedniego folderu poziomu uruchamiania w/etc/
.źródło
Oto, co w końcu dla mnie zadziałało. Zakłada się, że jesteś użytkownikiem root.
Zawartość /etc/init.d/apache2:
Możesz uzyskać poziom uruchamiania, uruchamiając / sbin / runlevel, który w moim przypadku wynosił 3. I oczywiście musisz wywołać swoją wersję apachectl, która w moim przypadku to / usr / local / apache2 / bin / apachectl
Dzięki:
źródło
Sprawdź, czy masz
httpd
skrypt inicjujący w/etc/rc.d
katalogu. Jeśli tak, możesz po prostu uruchomić następującą komendę, która umożliwia uruchomienie usługi httpd w czasie rozruchu.Jeśli nie masz skryptu inicjującego, po prostu dołącz
/etc/rc.local
plik za pomocąapachectl -k start
(polecenia uruchomienia Apache).źródło
Ponieważ instalowałeś według źródła, w katalogu /etc/init.d/ nie będzie zainstalowany skrypt inicjujący. Plik binarny apachectl został zaprojektowany tak, aby był zgodny ze standardowymi opcjami skryptu inicjującego, więc możesz być w stanie po prostu utworzyć dowiązanie symboliczne do niego, zamiast tworzyć skrypt opakowujący (np. Ln -s / usr / local / sbin / apachectl /etc/init.d/ apache)
Następnie możesz postępować zgodnie z procedurami opisanymi w innych postach, aby dodać linki do wywołania skryptu init na odpowiednich poziomach działania.
Cytowanie: Dokumentacja Apache http://httpd.apache.org/docs/2.2/invoking.html
źródło
chkconfig --levels 345 httpd
uruchomi httpd w poziomach pracy 3,4,5.
chkconfig --list pokaże wszystkie usługi i ich bieżące poziomy uruchamiania. 345 jest typowy dla usługi sieciowej.
źródło
W systemie Red Hat Linux znajduje się przydatne narzędzie o nazwie ntsysv, które pozwala wybrać usługi, które chcesz uruchomić na bieżącym poziomie uruchamiania. Wywołujesz także określ poziom uruchomienia, który chcesz edytować podczas uruchamiania narzędzia za pomocą
--level
.Przewiń w dół do httpd i naciśnij, Spaceaby gwiazda pojawiła się w polu po lewej stronie. Następnie TabOK. Naciśnij, Returnaby zapisać i powrócić do powłoki.
Przekonałem się, że instaluje się prawie domyślnie. Nigdy nie byłem w pozycji, w której nie został zainstalowany.
Trzeba jednak najpierw zainstalować usługę, kopiując skrypt usługi do /etc/init.d, a następnie uruchamiając:
źródło
To zależy od twojego gustu w Linuksie. Zakładając, że plik /etc/init.d/apache2 został utworzony, spróbuj:
lub
Jeden z nich powinien działać.
źródło