5
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

CentOS7-minimal上に社内向け各種OSSシステム構築 -- (1) OSインストールと初期設定

Last updated at Posted at 2016-06-15

#はじめに
最終的には社内で使用する各種OSSなシステムを稼働させることを目的として、CentOS 7 (minimal 1708)環境を構築していきます。
今回はOSのインストールから基本的な初期設定まで。(なので、特に目新しいことはありません。:sweat_smile:

インストールメディアは http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1708.iso からダウンロードしたISOイメージを使用します。

#OSのGUIインストール
ISOイメージ(あるいはそれを書き込んだ光学メディアなど)から起動すると下記画面が表示されます。Testして悪くはないですが、けっこう時間がかかるので、信用していきなりInstallでもまず問題ないと思います。
Fig010.png

インストール言語は日本語を選択して[続行]。
Fig020.png

「インストール先」に"!"マークが付いてるので、クリックして設定画面を開いてください。
Fig030.png

特に拘りなければ「自動構成のパーティション構成」を選択して(というか画面を開いた時の状態で)[完了]。
Fig040.png

元の画面に戻ると"!"マークは消えてるはずです。
「ネットワークとホスト名」が「接続していません」となってます。特に後回しにする理由もないので、今設定してしまいましょう。
開かれた画面で「ホスト名」を入力し、[設定]をクリックしてください。
Fig051.png

ウチの会社のネットワークはまだIPv6対応してないので、「IPv6のセッティング」タブで方式を「自動」から「無視する」に変更します。「対応してるよ」って方は調べてください。
Fig061.png

今回は固定IPアドレスを割当てるので、「IPv4のセッティング」タブで適宜指定してください。他のタブ画面では特に設定変更が必要な項目はないと思いますので、[保存]をクリックして画面を閉じてください。
Fig071.png

イーサネット (enpOs3)を「オフ」→「オン」にしたらネットワーク周りの設定は終わりです。[完了]をクリックしてください。
Fig081.png

やっとこさインストールです。[インストールの開始]をクリック。
Fig100.png

またまた"!"出現です。ROOTパスワードを設定しましょう。
Fig111.png

この画面でパスワードを入力して[完了]をクリックするだけです。
Fig120.png

ROOTユーザーだけではよくないので、一般ユーザーも作成しましょう。この画面で適宜指定して[完了]。
Fig130.png

その間にもインストールは進んでますが、あとは待つのみ。
Fig141.png

完了したら[再起動]。
Fig150.png

はい、ログイン待ちプロンプトが表示されました。
Fig160.png
#基本的な設定
ここからは使い慣れたターミナルソフトを使うのが良いと思います。OSインストール時に作成した一般ユーザーでログインしてください。
##一般ユーザーのwheelグループへの追加
そのままだとsudo操作が何もできないのです。rootユーザーで操作しても良いのですが、一応sudoすることにします。そのため、一般ユーザーをwheelグループにいれます。

$ su -
# usermod -aG wheel centosuser
# reboot

##selinux無効化
異論はあるかも知れませんが、諸々悩みの元になりやすいので、selinuxは無効にします。有効のままの運用をお望みの場合は調べてください。

$ sudo vi /etc/sysconfig/selinux
[...]
#SELINUX=enforcing  ←'enforcing'から'disabled'に変更
SELINUX=disabled
[...]

##yumへのproxy設定
会社でしたらたいていの場合proxyを超える必要がありますので、その辺りの設定を追加して行きます。
まずはyumから。

$ sudo vi /etc/yum.conf

下記内容を追加します。(ポート番号、ユーザー認証付きproxyのユーザー名/パスワードは適宜合わせてください)

/etc/yum.conf
[...]
proxy=http://proxy.sample.co.jp:8080/
#ユーザー認証付きproxyの場合
#proxy_username=username
#proxy_password=password

##諸々取得系パッケージのインストールとproxy設定
yumのproxy設定後、各種取得系パッケージのインストールとそれらのproxy設定を行います。

$ sudo yum install -y wget git

###wgetのproxy設定

$ sudo vi /etc/wgetrc

下記内容を追加します。(ポート番号、ユーザー認証付きproxyのユーザー名/パスワードは適宜合わせてください)

[...]
http_proxy=http://proxy.sample.co.jp:8080/
https_proxy=http://proxy.sample.co.jp:8080/
ftp_proxy=http://proxy.sampel.co.jp:8080/
#ユーザー認証付きproxyの場合
#http_proxy=http://username:password@proxy.sample.co.jp:8080/
#https_proxy=http://username:password@proxy.sample.co.jp:8080/
#ftp_proxy=http://username:password@proxy.sampel.co.jp:8080/

ユーザー名やパスワードに記号を含む場合は、URLエンコードした文字列にしてください。ありがちなところでユーザー名がメールアドレスの場合は'@'の代わりに'%40'とか。
###gitのproxy設定

$ git config --global http.proxy http://proxy.sample.co.jp:8080
$ git config --global https.proxy http://proxy.sample.co.jp:8080
$ git config --global url."https://".insteadOf git://

認証付きproxyの場合はwgetと同じく、

$ git config --global http.proxy http://username:password@proxy.sample.co.jp:8080
$ git config --global https.proxy http://username:password@proxy.sample.co.jp:8080

###curlへのproxy設定

$ vi ~/.curlrc
~/.curlrc
proxy = "http://proxy.sample.co.jp:8080"

認証付きproxyの場合は

proxy-user = "username:password"

も追加してください。
###環境変数へのproxy設定
いろいろやり方はあるようですが、 http://lambdalisue.hatenablog.com/entry/2013/06/25/140630 の情報を参考にさせていただきました。
下記内容のファイルを /etc/profile.d/proxy.sh として作成してください。

$ sudo vi /etc/profile.d/proxy.sh
/etc/profile.d/proxy.sh
# プロキシ設定 ==============================================
#USERNAME="<USERNAME>"       # 認証が必要なプロキシの場合
#PASSWORD="<PASSWORD>"       # 認証が必要なプロキシの場合
HOST="proxy.sample.co.jp"
PORT="8080"
# 認証が必要なプロキシの場合
#PROXY="$USERNAME:$PASSWORD@$HOST:$PORT"
# 認証が不要なプロキシの場合
PROXY="$HOST:$PORT"
# 実際の環境変数の設定
export http_proxy="http://$PROXY"
export https_proxy="https://$PROXY"
export ftp_proxy="ftp://$PROXY"
# 大文字バージョンしか認識しないプログラム用
export HTTP_PROXY="http://$PROXY"
export HTTPS_PROXY="https://$PROXY"
export FTP_PROXY="ftp://$PROXY"
# プロキシを利用しないアドレスの指定(必須)
export no_proxy="127.0.0.1,localhost"
export NO_PROXY="$no_proxy"

ここで設定した環境変数内容がsudoした際にも引き継がれるよう、 /etc/sudoers 内容を編集します。直接ではなく、

$ sudo visudo

で編集してください。

[...]
Defaults    env_reset
[...]
#Defaults    env_keep += "LC_TIME ...の行の後に
Defaults    env_keep += "no_proxy NO_PROXY"
Defaults    env_keep += "http_proxy https_proxy ftp_proxy"
Defaults    env_keep += "HTTP_PROXY HTTPS_PROXY FTP_PROXY"
[...]

##アップデートして再起動
何かと便利なyum-utilsを追加でインストールした後、ここらで一度アップデートして再起動しておきましょう。

$ sudo yum install -y yum-utils
$ sudo yum update -y
$ sudo reboot

##yum-cronのインストールと設定
まぁこれはお好みでしょうけど、自動アップデートの設定もしてしまいます。
yum-cronパッケージのインストール。

$ sudo yum install -y yum-cron

設定ファイル内容を変更します。

$ sudo vi /etc/yum/yum-cron.conf
/etc/yum/yum-cron.conf
[...]
# Whether updates should be applied when they are available.  Note
# that download_updates must also be yes for the update to be applied.
#apply_updates = no
apply_updates = yes
[...]

サービスの起動と、自動起動設定。

$ sudo systemctl start yum-cron
$ sudo systemctl enable yum-cron

今回はここまで。

5
8
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
5
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?