LoginSignup
0
3

More than 3 years have passed since last update.

事務員として入社したのにCentOSにLAMPをインストールすることになったときの備忘録

Last updated at Posted at 2020-06-02

前提:未経験初心者事務入射なのに社内唯一のバックエンドエンジニアになってしまった

 わたし「やってらんね~~~~!!!事務として入ったんですけどどうしてこうなった??」

ある日

上司「新しいVPSサーバにLAMP入れといて…えっ、LAMP知らない?ハ~~~~~~マジで?(クソデカため息)」

 上司「これ読んでインストールよろしく」
 わたし「ぴえん…webなんて何も知らないよう、そもそも私は事務で入ったはず……。いやそんなこと言ってても誰も助けてくれんからね…調べるか…。」

LAMPとは

LAMP(ランプ)とは、OSであるLinux、WebサーバであるApache HTTP Server、データベースであるMySQL、スクリプト言語であるPerl、PHP、Pythonを総称した頭文字から成る造語である。※1 

わたし「上司オジはアパッチアパッチ言ってたな。これ入れればいいんですね」

インストールしていく

Apache httpd のインストール

 # yum -y install httpd
 # httpd -v

わたし「うまくいくじゃん、余裕だわ。」

MySQL Community Server のインストール

 # yum -y install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
 # httpd -v

わたし「なんで…?さっき上司が渡してきた資料どおりやったけどコマンドが通らないよぅ。
    これってもしかして、令和対応じゃないのかも…。」
わたし「コマンドよくわかんないけど壊してもいいって言ってたしいろんなの試してこ。当たったらラッキーや。」

 # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
 # rpm -Uvh mysql-community-release-el7-5.noarch.rpm
 # yum -y install mysql-community-server
 # mysqld --version

わたし「通った!なんでだろ。知らんけど、パッケージがyumのリポジトリに登録されていないまたはバージョンが古いためwgetによってパッケージをダウンロードして何らかのコマンドでインストールされたんかな。」2

PHPのインストール

 # yum -y install php php-mysql
 # php --version

サーバーの起動

 # systemctl start httpd.service
 # systemctl start mysqld.service

上司「サーバの再起動でサーバが自動的に起動するようにしておいてね。」
わたし「(ふつう再起動したら起動するんじゃないんか?再起動とは?)はい。」

↑サーバ(=CentOS)の再起動でサーバ(=httpd・MySQL)が自動的に起動するようにしておいてね。

わたし「分かるか。」

サーバーを再起動しても起動時に自動的にサーバーが起動するように設定
 # systemctl enable httpd.service
 # systemctl enable mysqld.service

わたし「インストールおわりました!」
上司「遅いね。どれどれ…。」
わたし「(事務なのでね。じゃあご自分でやれ)すみません。」
上司「Apacheが起動してないんだけど?httpdはあるの?」
わたし「アパッチが起動してないんですか…?」

httpdがないとダメらしいので調べる

# yum info httpd

わたし「(は~?あるやんけ)httpdあります。」
上司「起動して。」

# systemctl start httpd.service
# systemctl status httpd.service

わたし「この後にhttp ://IPアドレスで検索すると、初期画面が表示されるんやね。OK。…あれ?真っ白やね…。」
わたし「もしかしてファイアウォールの設定がかかってるのかもしれへん。いっつもとなりの席のフロントエンドの人がワフワフ言ってるしたぶんそれや。」

一時的にファイアウォールを無効にする
# systemctl stop firewalld

わたし「『Failed to issue method call: Unit firewalld.service not loaded.』…?じゃあこれはどや。」

 firewalld に httpd (80番ポート)への通信を許可
# firewall-cmd --add-service=http --zone=public --permanent
# firewall-cmd --reload

わたし「『-bash: firewall-cmd: command not found』…。詰んだ…。」
上司「まだ?」
わたし「自分でやってくださ~~い!(まだです。)」

コマンド実行ファイルがないっぽいので、インストールする

わたし「sudoも効かないし、なんか色々なんも入ってないんやな。FW入れればいいんしょ。」
わたし「iptablesとfirewalldは共存できない…だと…。」3

わたし「デフォルトがFWならFWでいいか…?iptablesのメリット調べるか。」
image.png

わたし「FWでよくない?」

firewalldをインストールする

IPTABLES停止
# systemctl stop iptables
# systemctl disable iptables
# systemctl is-enabled iptables

firewalldインストール
# yum -y install firewalld
# systemctl start firewalld
# systemctl enable firewalld
# systemctl is-enabled firewalld
→enabledと出力される
# firewall-cmd --list-all #設定確認

再度firewallにhttpdの通信許可に挑戦

# firewall-cmd --permanent --add-service=http
# firewall-cmd --reload

わたし「できた~~~~!!!!!!!!!!!!!!!!!!!」
image.png

わたし「上司~~!できたよ~~!」
上司「遅かったな。じゃあこれからそのVPSサーバの構成について説明していくで。」
わたし「ぴえん…。」

まとめ(ここだけ読めばいい)

Apacheインストール
 # yum -y install httpd
 # httpd -v
MySQLインストール
 # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
 # rpm -Uvh mysql-community-release-el7-5.noarch.rpm
 # yum -y install mysql-community-server
 # mysqld --version
PHPインストール
 # yum -y install php php-mysql
 # php --version
サーバーの起動
 # systemctl start httpd.service
 # systemctl start mysqld.service
サーバーを再起動しても起動時に自動的にサーバーが起動するように設定
 # systemctl enable httpd.service
 # systemctl enable mysqld.service
IPTABLES停止
# systemctl stop iptables
# systemctl disable iptables
# systemctl is-enabled iptables
firewalldインストール
# yum -y install firewalld
# systemctl start firewalld
# systemctl enable firewalld
# systemctl is-enabled firewalld
→enabledと出力される
# firewall-cmd --list-all #設定確認
Firewallにhttpdの通信許可
# firewall-cmd --permanent --add-service=http
# firewall-cmd --reload

以上

次はphpmyadminのインストール
ゲーーーーーーーーーー吐きそう!!!!!!!!!

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3