Ostatnio miałem okazję zająć się bardziej poważnie administracją serwera (dokładniej VPSa) “od podstaw”. Od podstaw, to znaczy na zupełnie zerowej instalacji Linuksa, w związku z czym trzeba było zainstalować, skonfigurować i uruchomić wszystkie niezbędne do pracy usługi. Pomimo tego, że generalnie określiłbym się jako programista mający od czasu do czasu do czynienia z zagadnieniami administracyjnymi poszło mi to całkiem nieźle - po kilku godzinach wszystko śmigało bez żadnych problemów, a ja mogłem wrócić do kodowania. Oczywiście nie obyło się bez problemów, dlatego jedną ze znalezionych, raczej prostych przypadłości opisuję dzisiaj na blogu.

Fotografia: DrBacchus, CC-BY.

Apache: Błąd “apache2: bad user name ${APACHE_RUN_USER}“.

Instalacja Apache wraz z resztą stosu LAMP sprowadza się do kilku prostych komend w konsoli, także nie było z tym żadnych problemów. Problem pojawił się, kiedy po zainstalowaniu i skonfigurowaniu wszystkich potrzebnych elementów zechciałem sprawdzić listę załadowanych modułów serwera. Wywołując w konsoli demona Apache z przełącznikiem -M otrzymałem komunikat:
apache2: bad user name ${APACHE_RUN_USER}
W pierwszej chwili pomyślałem, że problem jest związany z brakiem uprawnień. Szybko jednak odrzuciłem tą opcję, ze względu na obecność “krzyżyka” # przy znaku zachęty - w końcu root z założenia ma dostęp do wszystkiego. Okazało się, że chodzi jedynie o to, że Apache nie ma ustawionych własnych zmiennych środowiskowych. Wystarczyło polecenie:

```bash
source /etc/apache2/envvars


i wszystko zaczęło działać tak, jak powinno. Gdyby ktoś był zainteresowany, co za dziwy kryją się w wspomnianym pliku, oto listing:

```bash<br />
# envvars - default environment variables for apache2ctl</p>
<p># Since there is no sane way to get the parsed apache2 config in scripts, some<br />
# settings are defined via environment variables and then used in apache2ctl,<br />
# /etc/init.d/apache2, /etc/logrotate.d/apache2, etc.<br />
export APACHE_RUN_USER=www-data<br />
export APACHE_RUN_GROUP=www-data<br />
export APACHE_PID_FILE=/var/run/apache2.pid<br />

Życzę miłej pracy z Indianinem. ;]