開発メモ

開発関係のメモをいろいろと。たぶん。

CentOS 7(32bit版)のインストールから初期設定

なぜか、CentOS 7なのに32bit版をインストールしたときのメモです。

最終的には実機に入れるんですけど、とりあえず、実験をかねて仮想環境にインストール。Vagrantは使ってません。なぜか。

動作を確認した環境

環境 情報
CentOS CentOS-7-i386-Minimal-1511.iso
VirtualBox VirtualBox-5.1.10-112026-Win.exe
Date 2016/12/09

インストール

仮想環境を作成

『ぎりぎり、最低限』と言えるような環境を用意しました。

  • メモリ: 1GB
  • HDD: 8GB

インストール中の設定

  • ネットワークを有効に
  • rootのパスワードを設定
  • ユーザーを作成

f:id:see_ku:20161209165708p:plain

インストールが終わったらそのまま再起動。

ポートフォワード

仮想環境を使う場合、ポートフォワードの設定をしておきましょう。最低でもsshの設定は必要では? あとは好みで。

f:id:see_ku:20161209165725p:plain

ここまで出来たら、sshで普通に接続できるようになっているはずです。

初期設定

sudoを使えるようにする

忘れないうちに、sudoを使えるようにしておきます。

$ su -

# visudo

『root ALL=(ALL) ALL』と書かれた行を探して、その下に、ユーザーごとの設定を追加します。

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
{name}  ALL=(ALL)       ALL

{name}の部分はsudoを使えるようにするユーザー名が入ります。viの使い方は・・・ ネットで調べて下さい。

アップデート

とりあえずアップデートしておきましょう。

# yum update -y

よく使うソフトのインストール

何を入れるかは好みの問題ですが。

# yum install -y wget
# yum install -y nano

ついでに、nanoの環境を設定しておきます。

# nano ~/.nanorc

以下の内容で保存します。

set nowrap
set smooth
set tabsize 4
set quickblank

SELinuxを無効にする

SELinuxが不要な場合は無効にしておきます。

# nano /etc/sysconfig/selinux

SELINUX=enforcing』を『SELINUX=disabled』に修正します。

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are pr$
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

再起動して設定が反映されていることを確認。

# reboot

$ getenforce
Disabled

本当に無効にして良いのかどうか、よく考えましょう。

sshの鍵を設定

手抜きで、パスワード無しで接続できるようにしておきます。

  • クライアントで作業
// クライアントで秘密鍵・公開鍵を作成
$ ssh-keygen -t rsa

// サーバーに公開鍵をコピー
$ scp ~/.ssh/id_rsa.pub {user_name}@{server_url}:
  • サーバーで作業
// ディレクトリとファイルを作成。権限を設定
$ mkdir .ssh
$ touch .ssh/authorized_keys
$ chmod 700 .ssh
$ chmod 600 .ssh/authorized_keys

// 公開鍵を登録
$ cat id_rsa.pub >> .ssh/authorized_keys
  • クライアントから接続を確認

別の端末を開いてサーバーに繋がることを確認しておきます。

$ ssh {user_name}@{server_url}

パスワードの入力を求められなければ成功です。『rootはsshでログインできなくする』とか『パスワードでのログインを禁止』とか、さらに凝った設定はお好みでどうぞ。

yumのfastestmirrorが遅いサイトを選ばないように設定

以下のサイトを参考に、

yumのダウンロードが遅い事象に対処する - Qiita  
http://qiita.com/toshiro3/items/11a97ac67d65cf94ae91

設定ファイルに『include_only=.jp』と『prefer=ftp.iij.ad.jp』を追加しておきます。

# nano /etc/yum/pluginconf.d/fastestmirror.conf
[main]
enabled=1
verbose=0
always_print_best_host = true
socket_timeout=3
#  Relative paths are relative to the cachedir (and so works for users as well
# as root).
hostfilepath=timedhosts.txt
maxhostfileage=10
maxthreads=15
#exclude=.gov, facebook
#include_only=.nl,.de,.uk,.ie

include_only=.jp
prefer=ftp.iij.ad.jp