【tech】Nginxで起動エラーnginx: [emerg] getpwnam("nginx") failed



ソースからNginxをインストールしていて、躓いたでメモしておきます!

・エラー
nginx: [emerg] getpwnam("nginx") failed


[root@localhost]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: [emerg] getpwnam("nginx") failed
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
[root@localhost]#


・原因
nginxユーザが居ないせい?

・対処法
vi /usr/local/nginx/conf/nginx.conf
でconfファイルを開き


#user nobody;


のコメントアウトを外して再度confテストすると解決していました。
[root@localhost]# /usr/local/nginx/sbin/nginx -t



[root@localhost]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost]#


試してないのでわかりませんが、nginxユーザを追加してもエラーが出なくなると思います。

nginx: [emerg] getpwnam("nginx") failed


久しぶりにみてみると、モバイルバッテリーもメモリもSSDもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のRedmineの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)

【tech】Apacheのソースコードインストール・Apache2.4をソースからコンパイルする



6月から新しい現場に配属となり、念願のサーバ構築案件に着けるわけですが、趣味レベルでやっていたサーバ構築が通用するとは思えず、Apacheの勉強のし直し中です!笑
先に常駐している先輩からソースインストールしておくといいといわれてやってみたのでメモを残します。次はとりあえずnginxをソースインストールしてみよう!!


環境
ホストOS:windows10
仮想化:virtualbox 5.2.22
インターフェース1:NAT接続(DHCP)
インターフェース2:ホストオンリー接続(192.168.56.150)
ゲストOS:CentOS7.5
Webサーバ:Apache


・ソースからインストール為に必要なPKGをyumでインストールしておきます。
yum install -y gcc make pcre pcre-devel wget expat-devel

・ソース置くディレクトリに移動
cd /usr/local/src

・aprをダウンロード
wget http://ftp.riken.jp/net/apache/apr/apr-1.7.0.tar.gz
※arpはOSの細かい違いを吸収してくれるライブラリのようなものだそうです
 実行時点で最新の1.7.0をインストールします。



・展開
tar -xvzf apr-1.7.0.tar.gz

・展開後の確認
ll

・ディレクトリの移動
cd apr-1.7.0

・展開先のディレクトリを作成
mkdir -p /opt/apr/apr-1.7.0

・コンパイル実行 
./configure --prefix=/opt/apr/apr-1.7.0

make

make test
→このコマンド自体は不要のようですが、参考にさせて頂いたwebがmake testも実行していたので実行しています。

make install

・コンパイル完了後のディレクトリへ移動
cd /opt/apr/apr-1.7.0

・ディレクトリ内の確認
ll

・ディレクトリの移動
cd /srv

・DL前の確認
ll

・apr-utilのDL
wget http://ftp.riken.jp/net/apache/apr/apr-util-1.6.1.tar.gz


・DL後の確認
ll

・展開
tar -xvzf apr-util-1.6.1.tar.gz

・展開後の確認
ll

・ディレクトリの移動
cd apr-util-1.6.1

・コンパイル前の確認
ll

・コンパイルの実行
./configure --prefix=/opt/apr-util/apr-util-1.6.1 --with-apr=/opt/apr/apr-1.7.0

make

make test

make install

Apacheのソースインストール



・ディレクトリの移動
cd /usr/local/src

・ApacheソースコードのDL
wget http://ftp.kddilabs.jp/infosystems/apache//httpd/httpd-2.4.39.tar.gz

・展開
tar -xvzf httpd-2.4.39.tar.gz

・展開したディレクトリへ移動
cd /usr/local/src/httpd-2.4.39

・中身を確認
ll

・コンパイルの実行
./configure --prefix=/opt/httpd/httpd-2.4.39 --with-apr=/opt/apr/apr-1.7.0 --with-apr-util=/opt/apr-util/apr-util-1.6.1

make

make install

・Apacheを起動
/opt/httpd/httpd-2.4.39/bin/apachectl start

・Apacheの停止
/opt/httpd/httpd-2.4.39/bin/apachectl stop

・Apacheを起動
/opt/httpd/httpd-2.4.39/bin/apachectl start

・ブラウザを立ち上げアクセス
http://192.168.56.150

・firewallの停止
systemctl stop firewalld

※ブラウザアクセス後

・firewallの起動
systemctl start firewalld

・firewallにhttp許可追加
firewall-cmd --add-service=http --permanent

・firewallの再起動
firewall-cmd --reload

以上です!
Apahceをインストール後リバースプロキシの実験もやってみたのでその手順メモも作成いたします!!!

久しぶりにみてみると、モバイルバッテリーもメモリもSSDもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のRedmineの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】nginx起動時にエラーが出た時のメモ



最近F5に買収や日本に本格進出と話題の絶えないnginxを私も触ってみたいとおもっていまして、最近ようやく触りだしたのですが、apacheほど優しくなく苦戦しています。笑

今日はnginxを起動させようとしたときにエラーが出てしまって調査した結果と解決策をメモしておきます。

・環境
OS:CentOS7.5
Nginx:version: nginx/1.14.2

・エラー
[root@localhost run]# systemctl start nginx
Job for nginx.service failed because a configured resource limit was exceeded. See "systemctl status nginx.service" and "journalctl -xe" for details.
(よく出るやつですよね・・もう見飽きました。笑)


・解決策
vi /var/run/nginx.pid
でファイルをつくって適当に数値「1」でOKでした。
を入れて保存して終了。

もう一度「systemctl start nginx」を打ったら起動しました!

・トラブルシュート
→journalctl -ex
journalログ確認
Apr 13 09:14:27 localhost.localdomain nginx[17831]: nginx: [emerg] open() "/var/run/nginx.pid" failed (13: Permission denied)
Apr 13 09:14:27 localhost.localdomain systemd[1]: Failed to read PID from file /var/run/nginx.pid: Invalid argument
Apr 13 09:14:27 localhost.localdomain systemd[1]: Failed to start nginx - high performance web server.

permission deniedって出てるけど今rootで実行中だしな~と思って、とりあえずこの「/var/run/nginx.pid」にアクセスしてみました。


cd /var/run
ll | grep nginx

でない...ファイルそのものがなかったみたいだったので上記のファイルをつくってみたら解決できました!

以上です!!



久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)