LoginSignup
42
45

More than 5 years have passed since last update.

Ubuntuサーバー管理チートシート

Last updated at Posted at 2014-02-07

Ubuntu 12.04LTS を使いながら調べたことをメモしてます。

ユーザーの追加や削除

ユーザー追加

$ sudo adduser USER

useradd というコマンドもあるが、こちらだとオプションで指定しないとホームディレクトリや .bashrc などが作られない。

ユーザー削除

$ sudo userdel -r USER

-r はホームディレクトリとメールスプールも削除するオプション。

ユーザーをサブグループに追加

$ sudo gpasswd -a USER GROUP

usermod -G GROUP USER は危険なので使わない。(参考)

管理ユーザーを追加する

$ sudo adduser NEWADMIN
$ sudo gpasswd -a NEWADMIN sudo
$ sudo gpasswd -a NEWADMIN adm
$ sudo gpasswd -a NEWADMIN admin

ログインできないユーザーを追加する

$ sudo useradd -s /bin/false

一般ユーザーとして使われない特殊なユーザーを作りたい場合は /bin/false をログインシェルに指定する。

パスワードなしで sudo

/etc/sudoers を書き換えるのだが、普通に vi とかで書き換えると危険なので visudo を使う。(参考)

$ sudo EDITOR=vi visudo

admin グループに属すユーザーがパスワードなしで sudo できるようにするには、こんな感じで書き換える。

# Members of the admin group may gain root privileges
%admin ALL=(ALL) NOPASSWD:ALL

パッケージ

パッケージリストの更新

$ sudo apt-get update

パッケージのインストール

$ sudo apt-get install PACKAGENAME

パッケージのアンインストール

$ sudo apt-get remove PACKAGENAME

パッケージの検索

正規表現で検索できる。

$ sudo apt-cache search REGEX

パッケージの情報表示

$ sudo apt-cache show PACKAGENAME

どのバージョンがインストールされるか知りたい

$ sudo apt-cache policy PACKAGENAME

インストール済みパッケージのリスト表示

$ dpkg -l

インストール済みパッケージに含まれるファイルを表示

$ dpkg -L PACKAGENAME

パッケージファイル(*.deb)に含まれるファイルを表示

$ dpkg -c DEBFILENAME

インストールしたパッケージの *.deb は /var/cache/apt/archives にキャッシュされている。

サービスの状態表示

$ sudo service --status-all

upstart という仕組みで管理されているサービスの状態は次のコマンドで。

$ sudo initctl list

ホスト名の変更

/etc/hostname/etc/hosts を変更して再起動。
再起動しない方法はわからない。

ネットワーク設定(静的IP,DNSサーバー,ルーティングの設定)

/etc/network/interfaces に書く。
post-up を使うと任意のコマンドを実行できるので、ルーティング設定はそれでしている。

# とあるNIC2枚挿しサーバーの設定例

# The loopback network interface
auto lo
iface lo inet loopback

# LAN
auto eth0
iface eth0 inet static
    address 192.168.17.10
    network 192.168.17.0
    netmask 255.255.255.0
    dns-nameservers 192.168.1.1  # 使用するDNSサーバー名
    dns-search example.org       # DNSサフィックス
    post-up route add -net 192.168.0.0/20 gw 192.168.17.253 # ルート設定

# WAN
auto eth1
iface eth1 inet static
    address 192.168.16.10
    network 192.168.16.0
    netmask 255.255.255.0
    gateway 192.168.16.253

書き換えたら、ネットワークを再起動する。

$ sudo ifdown -a
$ sudo ifup   -a
$ sudo service resolvconf restart    # /etc/resolv.conf に反映

ssh でリモートからネットワークを再起動したいときは、こんな感じでできる。

sudo nohup sh -c "ifdown -a; ifup -a"

失敗するとマシンの場所までいかないと復帰できなくなる。

タイムゾーンの設定

/etc/localtime というファイルがタイムゾーンの設定らしい。(参考)

$ ln -fs /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

GUIもどきでやるなら次のように。

$ sudo dpkg-reconfigure tzdata
42
45
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
42
45