LoginSignup
2
2

More than 5 years have passed since last update.

Ubuntu16.04の初期設定

Last updated at Posted at 2018-01-07

Ubuntu16.04 のインストール

refs: https://help.sakura.ad.jp/hc/ja/articles/115000045522-OS%E3%82%BB%E3%83%83%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E6%83%85%E5%A0%B1-Ubuntu16-04-LTS-%7D

vagrant

Vagrantfile
config.vm.provider "virtualbox" do |vb|
    vb.memory = "2048"
    vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
  end
vagrant up

apt-getを更新

sudo apt-get update
sudo apt-get upgrade -y

hostの設定

hostnameの設定

sudo hostname my-hostname
sudo vim /etc/hostname
# host名を書き換え

ループバックアドレスに設定したホスト名を設定

sudo vi /etc/hosts
# 127.0.0.1 my-hostname

日本語設定

sudo apt-get -y install language-pack-ja-base language-pack-ja ibus-mozc
sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"

タイムゾーン設定

sudo timedatectl set-timezone Asia/Tokyo

ユーザーの作成

adduser username
# useradd はホームディレクトリが作成されない
# sudo権限必要な場合は追加
gpasswd -a username sudo

sudoの実行にパスワードを要求しない

sudo visudo
# %sudo  ALL=(ALL:ALL) NOPASSWD:ALL

vim & git & zsh

sudo apt-get install -y vim git zsh

ssh鍵認証

vi ~/.ssh/authorized_keys
# ssh keyを入力
chmod 600 ~/.ssh/authorized_keys

# sshdの設定を変更
sudo vim /etc/ssh/sshd_config
# PasswordAuthentication no
# パスワードログインを許可しない
sudo systemctl restart ssh

iptables

# さくらVPSだとデフォルトがこれ
sudo vi /etc/iptables/iptables.rules

sudo iptables-restore < /etc/iptables/iptables.rules

zsh の設定

refs: https://qiita.com/sayama0402/items/ac9e078b024c3287f99f

ログインシェルを変更する

chsh
# /usr/bin/zsh

ruby

rbenvのインストール

sudo apt-get install -y libreadline-dev git build-essential libssl-dev
# 最新のものがいい場合は直接リポジトリから引っ張ってくるにする
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
rbenv -v

capistrano でrbenvのパス見つけられないのでリンク貼っておく

# /home/vagrant の箇所は適宜変更すること
sudo ln -s /home/vagrant/.rbenv /usr/local/rbenv

PATHを設定

echo 'export RBENV_ROOT="/usr/local/rbenv"'     >> /etc/profile.d/rbenv.sh
echo 'export PATH="/usr/local/rbenv/bin:$PATH"' >> /etc/profile.d/rbenv.sh
echo 'eval "$(rbenv init -)"'                   >> /etc/profile.d/rbenv.sh

source /etc/profile.d/rbenv.sh

rubyをインストール

rbenv install 2.4.2
rbenv global 2.4.2
rbenv rehash
ruby -v

nodejs

apt-getでnode,npm,yarnをインストールする
※バージョン管理必要ならnodenv等で入れたほうがいい

sudo apt-get install -y nodejs npm
sudo ln -s /usr/bin/nodejs /usr/bin/node

n パッケージでnodeを最新のバージョンにする

sudo npm cache clean
sudo npm install n -g
sudo n stable
sudo ln -sf /usr/local/bin/node /usr/bin/node
node -v
sudo npm install -g yarn

apt-getでいれた古いバージョンを削除する

sudo apt-get purge -y nodejs npm

mysql

インストール

sudo apt install -y mysql-server mysql-client libmysqlclient-dev
# rootのパスワード設定する画面でてくるので設定しておく

バージョンの確認

mysql --version
# mysql  Ver 14.14 Distrib 5.7.20, for Linux (x86_64) using  EditLine wrapper

文字コードの設定

sudo vi /etc/mysql/my.cnf

以下を追加

[mysqld]
character-set-server=utf8
skip-character-set-client-handshake
default-storage-engine=INNODB

[mysqldump]
default-character-set=utf8

[mysql]
default-character-set=utf8

接続先のIPの制限を解除する

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# bind-address            = 0.0.0.0

起動と自動起動設定

sudo systemctl restart mysql
sudo systemctl enable mysql

ユーザーの作成

GRANT ALL PRIVILEGES ON *.* TO username@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

redis

インストール

sudo apt-get -y install redis-server

設定を調整

sudo vi /etc/redis/redis.conf
# 接続元のホストを指定
# bind 0.0.0.0

起動と自動起動設定

sudo systemctl restart redis
sudo systemctl enable redis

mongodb

refs: https://www.trifields.jp/how-to-install-mongodb-on-ubuntu-2751
MongoDBの公開GPGキーを登録

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

パッケージの登録

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

パッケージデータベースを更新

sudo apt-get update

インストール

sudo apt-get install -y mongodb-org

起動と自動起動設定

sudo systemctl restart mongod
sudo systemctl enable mongod

確認

mongo

WARNING: Access control is not enabled for the database. の設定

# 鍵の作成
sudo mkdir /etc/ssl/mongodb
cd /etc/ssl/mongodb
sudo openssl rand -base64 756 > security.key
sudo chmod 400 security.key
sudo chown mongodb:mongodb /etc/ssl/mongodb/security.key
# 鍵の設定
sudo vim /etc/mongod.conf
# security:
#  keyFile: /etc/ssl/mongodb/security.key

再起動

sudo systemctl restart mongod

postgresql

パッケージの登録

sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main' > /etc/apt/sources.list.d/pgdg.list"

公開鍵を登録

wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
apt-key list

パッケージの更新

sudo apt-get update

インストール

sudo apt-get install -y postgresql

確認

psql --version
# psql (PostgreSQL) 10.1

起動と自動起動の設定

sudo systemctl restart postgresql
sudo systemctl enable postgresql

nginx

curl http://nginx.org/keys/nginx_signing.key | sudo apt-key add -
VCNAME=`cat /etc/lsb-release | grep DISTRIB_CODENAME | cut -d= -f2` && sudo -E sh -c "echo \"deb http://nginx.org/packages/ubuntu/ $VCNAME nginx\" >> /etc/apt/sources.list"
VCNAME=`cat /etc/lsb-release | grep DISTRIB_CODENAME | cut -d= -f2` && sudo -E sh -c "echo \"deb-src http://nginx.org/packages/ubuntu/ $VCNAME nginx\" >> /etc/apt/sources.list"
sudo apt-get update
sudo apt-get install nginx
sudo systemctl start nginx
sudo systemctl enable nginx

必要に応じてportを開放する

起動しているサービスのポートを確認

netstat -ant
2
2
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
2
2