【さくらの VPS】Ubuntu を使う場合の初期設定

前書き

さくらの VPS で Ubuntu を使用する場合の初期設定についてまとめておきます。ここで言う初期設定とは、OS の基本的な設定のことで、サーバーを作ったあとかなり早い段階で実行するものです。使い勝手に直結するような設定内容が多いと思います。

  • 設定変更を行ったもの
  • 設定変更は行わないがデフォルトでどうなっているのかを確認したもの
  • インストールしたもの

を記録しておく。

この投稿は個人的な備忘的側面が強いので、ここで書いている設定方法よりも好ましいやり方がある気がします。が、そこには目を瞑って書いていきます。

Ubuntu のバージョンは 20.04 です。

$ cat /etc/os-release 
NAME="Ubuntu"
VERSION="20.04.4 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.4 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
$

設定変更は Ubuntu に ssh ログインして行った。ssh ログインできるようにする方法については過去記事に書いておいた。

【さくらの VPS】Linux サーバーに ssh ログインしてみよう!

初期設定あれこれ

ログインシェル

デフォルトだと bash ではなく sh だった。さすがに sh は使いにくいので変更する。usermod コマンドで使い慣れている bash に変更した。

$ ps
PID TTY TIME CMD
2406 pts/0 00:00:00 sh
2486 pts/0 00:00:00 ps
$ which bash 
/usr/bin/bash
$ sudo usermod -s /usr/bin/bash hoge
[sudo] password for hoge: 
$

最初に ps コマンドで現在のシェルを確認した sh と表示されていることから sh が設定されている。これを bash に変更したわけだ。usermod コマンドで変更したことで /etc/passwd が書き変えられる。

$ date 
Sun May 29 17:19:04 JST 2022
$ ls -l /etc/passwd
g-rw-r--r-- 1 root root 1870 May 29 17:18 /etc/passwd
$ grep ^hoge /etc/passwd
hoge:x:1001:1001::/home/hoge:/usr/bin/bash
$

設定を反映させるために ssh ログインしなおす。

hoge@os3-3jj-525kk:~$ ps
PID TTY TIME CMD
2610 pts/0 00:00:00 bash
2612 pts/0 00:00:00 ps
hoge@os3-3jj-525kk:~$

ログインシェルを bash に変更することでプロンプトが $ から hoge@os3-3jj-525kk:~$ に変わった。hoge は ssh ログインしているユーザー名で os3-3jj-525kk はこの Ubuntu のホスト名だ。

エディター

crontab の編集をするときに vi じゃないと嫌なのでエディターの設定を確認します。

デフォルトでは nano が設定されている。

hoge@os3-3jj-525kk:~$ ls -l /etc/alternatives/editor
lrwxrwxrwx 1 root root 9 Feb 2 2021 /etc/alternatives/editor -> /bin/nano
hoge@os3-3jj-525kk:~$

vi (vim) に変更します。/etc/alternatives/editor が /usr/bin/vim.basic に向くようにすれば良いようです。

hoge@os3-3jj-525kk:~$ which vi
/usr/bin/vi
hoge@os3-3jj-525kk:~$ ls -l /usr/bin/vi
lrwxrwxrwx 1 root root 20 Feb 2 2021 /usr/bin/vi -> /etc/alternatives/vi
hoge@os3-3jj-525kk:~$ ls -l /etc/alternatives/vi
lrwxrwxrwx 1 root root 18 Feb 2 2021 /etc/alternatives/vi -> /usr/bin/vim.basic
hoge@os3-3jj-525kk:~$ sudo update-alternatives --set editor /usr/bin/vim.basic
[sudo] password for hoge: 
update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/editor (editor) in manual mode
hoge@os3-3jj-525kk:~$ ls -l /etc/alternatives/editor
lrwxrwxrwx 1 root root 18 May 29 18:02 /etc/alternatives/editor -> /usr/bin/vim.basic
hoge@os3-3jj-525kk:~$

上記赤字のコマンドで設定を変えています。

ひょっとしたらこれだけではダメなことがあるかもしれません。特にエディターの設定をするまえに crontab -e を実行して nano を使うように選択してしまった要な場合には。今回これを僕はやってしまいまして、以下の回避策をとりました。

hoge@os3-3jj-525kk:~$ select-editor

Select an editor. To change later, run 'select-editor'.
1. /bin/nano <---- easiest
2. /usr/bin/vim.basic
3. /usr/bin/vim.tiny
4. /bin/ed

Choose 1-4 [1]: 2
hoge@os3-3jj-525kk:~$

ここで crontab -e を叩くと vim での操作であることが確認できたのでひと安心。

時刻同期

timedatectl status コマンドを実行すると、デフォルトで時刻同期が有効になっていました。

hoge@os3-3jj-525kk:~$ timedatectl status
               Local time: Sun 2022-05-29 17:38:51 JST
           Universal time: Sun 2022-05-29 08:38:51 UTC
                 RTC time: Sun 2022-05-29 08:38:52 
                Time zone: Asia/Tokyo (JST, +0900) 
System clock synchronized: yes 
              NTP service: active 
          RTC in local TZ: no 
hoge@os3-3jj-525kk:~$

NTP service のところが active になっていますね。

どこの NTP サーバーと時刻同期しているかは systemctl コマンドで確認します。

hoge@os3-3jj-525kk:~$ sudo systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-05-29 14:06:14 JST; 3h 28min ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 494 (systemd-timesyn)
Status: "Initial synchronization to time server 210.188.224.14:123 (ntp1.sakura.ad.jp)."
Tasks: 2 (limit: 1066)
Memory: 1.3M
CGroup: /system.slice/systemd-timesyncd.service
└─494 /lib/systemd/systemd-timesyncd

May 29 14:06:14 os3-326-52509 systemd[1]: Starting Network Time Synchronization...
May 29 14:06:14 os3-326-52509 systemd[1]: Started Network Time Synchronization.
May 29 14:06:15 os3-326-52509 systemd-timesyncd[494]: Network configuration changed, trying to establish connection.
May 29 14:06:44 os3-326-52509 systemd-timesyncd[494]: Initial synchronization to time server 210.188.224.14:123 (ntp1.sakura.ad.jp).
hoge@os3-3jj-525kk:~$

ntp1.sakura.ad.jp という NTP サーバーと時刻同期させるのがデフォルト設定のようだ。さくらの VPS だからさくらインターネットの NTP サーバーを使うようにしてあるということだろう。

同期できれば良いので設定はこのままで変更しないことにした。

インストールしたもの

インストール可能なパッケージをインストールするのにいつも使っている aptitude がインストールされていなかったのでインストールした。

sudo apt-get install aptitude

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください