Ubuntu 9.04 Jaunty Jackalopeの初期設定メモ。
- このメモの目的と内容
- ノートPCを開発機兼内向けサーバ機として使うための自分用メモ
- インストールにはubuntu-9.04-alternate-amd64を使用
- アップグレードではなくクリーンインストール
- デスクトップ環境をインストール後、サーバ用カーネルを追加でインストール
最新バージョンでの初期設定内容はUbuntuにて掲載しています。
インストール時の設定
- [ネットワークの設定]
- [ネットワークを手動で設定]
- IPアドレス、ゲートウェイ、ホスト名、ドメイン名、DNSサーバ等を設定
- [ネットワークを手動で設定]
- [ディスクのパーティショニング]
- [手動]
- /usr, /, /srvを別々のパーティションにマウント
- マウントオプションはrelatime
- ファイルシステムは/usrと/でext3、/srvでext4を使用
- スワップは念のため実メモリの2倍のサイズを用意
- [手動]
- [ユーザーとパスワードのセットアップ]
- 「ホームディレクトリを暗号化しますか?」→[しない]
- [ソフトウェアの選択とインストール]
- 「言語サポートをダウンロードしますか?」→[はい]
上記以外の設定はデフォルトのまま。
サービスの設定
常時起動するサービスの設定
[システム]メニュー→[システム管理]→[サービスの管理]
- 以下のサービスだけ起動する
- anacron
- cron
- alsa-utils
- apport
- gdm
- dbus
- hotkey-setup
- avahi-daemon
- rsync
- klogd
- sysklogd
- acpid
- 停止するサービス
- bluetooth
- atd
- cups
- 開始するサービス
- alsa-utils
自動起動するプログラムの設定
[システム]メニュー→[設定]→[自動起動するアプリ]
- 「自動起動するプログラム」から下記のもの以外を削除
- GNOME Login Sound
- GNOME キーリングのデーモン
- GNOME スプラッシュスクリーン
- GNOME 設定デーモン
- GNOME 設定デーモンのヘルパー
- Indicator applet
- Seahorse のデーモン
- アップデート通知
- ネットワーク・マネージャ
- 新しいハードウェアのドライバを確認する
- 電源の管理
- 停止するもの
- AT SPI レジストリのラッパー
- Bluetooth Manager
- Evolution Alarm Notifier
- ユーザ・フォルダの更新
- リモート・デスクトップ
- 印刷キューのアプレット
- 視覚支援
端末の設定
ランチャのgnome-terminalの起動オプションに引数を追加。
gnome-terminal --geometry=120x20
デフォルトのエディタをvimにする。
$ sudo update-alternatives --config editor `editor' を提供する 3 個の alternatives があります。 選択肢 alternative ----------------------------------------------- 1 /usr/bin/vim.tiny 2 /bin/ed *+ 3 /bin/nano デフォルト[*] のままにするには Enter、さもなければ選択肢の番号のキーを押してください: 1 'editor' を提供するために '/usr/bin/vim.tiny' を使います。
以下の内容で~/.vimrc作成。
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=utf-8,utf-16,japan
set backspace=2
set tabstop=2
set shiftwidth=4
set expandtab
highlight tabs ctermbg=green guibg=green
set list
set number
set ruler
set smartindent
~/.bashrcに以下追記。
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
PS1='\!> \u@\h [\t \w]\$ '
cd ~
ソフトウェアの削除・インストール
リポジトリの設定
medibuntuリポジトリを追加
sudo wget http://www.medibuntu.org/sources.list.d/jaunty.list --output-document=/etc/apt/sources.list.d/medibuntu.list
sudo apt-get update && sudo apt-get install medibuntu-keyring && sudo apt-get update
Synapticパッケージマネージャの設定
[システム]メニュー→[システム管理]→[Synaptic パッケージ・マネージャ]
- [設定]メニュー→[設定]
- [全般]タブ
- メインウィンドウ内でパッケージ情報を表示する
- 変更のを正常に適用できた場合に終了の確認をする
- [全般]タブ
- [設定]メニュー→[リポジトリ]
- [Ubuntuのソフトウェア]タブ
- main, universe, restricted, multiverse
- 「CD-ROM/DVDからのインストール」しない
- [サードパーティのソフトウェア]タブ
- (Medibuntuが追加されていることを確認)
- [アップデート]タブ
- アップデートの確認 2日ごと
- インストールできるアップデートを通知のみする
- [統計情報]タブ
- 統計情報を提供する
- [Ubuntuのソフトウェア]タブ
ソフトウェアの削除・インストール
不要なソフトウェア、自分でビルド・インストールするソフトウェアの削除。
sudo apt-get remove --purge \
apparmor apparmor-utils \
bluetooth \
bogofilter bogofilter-bdb bogofilter-common \
brasero \
cdparanoia \
cups cupsddk cupsddk-drivers cups-bsd cups-client cups-common cups-driver-gutenprint hal-cups-utils \
ekiga \
espeak \
evolution evolution-common evolution-data-server evolution-plugins evolution-webcal \
example-content \
foomatic-db foomatic-db-engine foomatic-filters foomatic-db-hpijs foo2zjs \
gnome-cards-data gnome-games gnome-games-data gnome-mag gnome-orca gnome-pilot gnome-pilot-conduits gnome-pilot gnome-pilot-conduits gnome-spell \
hpijs hplip hpijs-ppds hplip hplip-data hplip-dbg pxljr \
libgoffice-0-6 libgoffice-0-6-common libgoffice-dbg \
libgutenprint2 \
min12xxw \
ntfs-3g \
rdesktop \
rhythmbox rhythmbox-dbg \
sound-juicer \
speedcrunch \
splix \
strigi-client strigi-daemon \
splix \
system-config-printer-common system-config-printer-gnome \
tomboy \
toshset \
tracker tracker-search-tool libdeskbar-tracker
sudo apt-get remove --purge 'bluez(-.*)?'
sudo apt-get remove --purge '^(lib)?beagle(-.*)?'
sudo apt-get remove --purge '^mono-' cli-common '^lib.+-cil$'
sudo apt-get remove --purge '^pidgin(-.*)?'
使用するソフトウェアのインストール。
sudo apt-get install \
audacity \
autoconf automake1.9 autotools-dev \
bison \
build-essential \
cadaver \
colordiff \
dontzap \
dnsmasq \
epiphany-browser \
gedit-plugins \
gettext \
git-core \
gstreamer0.10-ffmpeg gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly \
highlight \
icedax \
libtool \
lighttpd lighttpd-mod-magnet lighttpd-mod-webdav \
logwatch \
nasm \
nautilus-open-terminal \
ngrep \
nkf \
ntp \
rsync \
ruby1.8 libwww-mechanize-ruby1.8 libhpricot-ruby1.8 \
samba samba-common smbfs \
subversion subversion-tools \
telnetd \
tree \
thunderbird thunderbird-gnome-support \
w3c-dtd-xhtml \
xinetd
サーバカーネル・ヘッダのインストール。
sudo apt-get install linux-server linux-headers-server
パッケージ情報の更新とアップデート。
sudo apt-get update && sudo apt-get dist-upgrade
その他のソフトウェアの削除
[システム]メニュー→[システム管理]→[不要パッケージの管理]
- 削除できる不要なソフトウェアを削除する
ローカルネットワーク用DNSサーバの設定
/etc/hostsに追記。
127.0.0.1 localhost
(ローカルネットワークのマシンを追加)
/etc/resolv.confに追記。
nameserver 127.0.0.1
dnsmasqの設定を書き換える。
$ sudo cp dnsmasq.conf dnsmasq.conf.org $ sudo vi dnsmasq.conf $ diff dnsmasq.conf.org dnsmasq.conf 499c499,500 < #log-queries --- > log-queries > log-facility=/var/log/dnsmasq $ sudo mv /etc/dnsmasq.conf* /etc/dnsmasq.d/ $ sudo chown dnsmasq:adm /var/log/dnsmasq $ sudo /etc/init.d/dnsmasq restart
再起動
ここまででいったん再起動。 再起動後にps, pstree, topで必要なさそうなプロセスが動いてないかチェックする。
デスクトップ環境の設定
NTPサーバとの同期
[システム]メニュー→[システム管理]→[日付と時刻の設定]
- 設定を「インターネット上のサーバと同期させる」に変更
- 近くのNTPサーバを設定
キーボード設定のカスタマイズ
[システム]メニュー→[設定]→[キーボード]
- 適当にカスタマイズ
マウス設定のカスタマイズ
[システム]メニュー→[設定]→[マウス]
- 適当にカスタマイズ
スクリーンセーバー設定のカスタマイズ
[システム]メニュー→[設定]→[スクリーンセーバー]
- 適当にカスタマイズ
サウンドデバイスのテスト・効果音等のカスタマイズ
[システム]メニュー→[設定]→[サウンド]
- 各デバイスをテスト
- ミキシングが正常に動作することを確認
- サウンドの設定をカスタマイズ
パワーマネージメント設定のカスタマイズ
[システム]メニュー→[設定]→[電源の管理]
- [AC電源使用時]タブ
- 「システムをスリープする」→しない
- 「画面をスリープする」→しない
- [バッテリー使用時]タブ
- 「システムをスリープする」→しない
- 「画面をスリープする」→5分
- [全般]タブ
- 「電源ボタンを押したら」→「ダイアログを表示する」
- 「通知エリア」→「充電中または放電中の時だけアイコンを表示する」
SCIMのカスタマイズ
[システム]メニュー→[設定]→[SCIM入力メソッドの設定]
- [フロントエンド/全体設定]
- 「キーボード配列」→「日本語」に変更
- 「SCIM開始」→Zenkaku_Hankakuのみに変更
- [IMエンジン/Anthy]
- キーバインド
- 「キーバインドテーマ」→ATOKに変更
- キーバインド
キーボードショートカットのカスタマイズ
[システム]メニュー→[設定]→[キーボードショートカット]
- [デスクトップ/Lock screen]→Ctrl+Alt+Deleteに変更 (Ctrl+Alt+Deleteを押したときログアウト画面ではなくスクリーンのロックが起動するようする)
デフォルトで使用するアプリケーションのカスタマイズ
[システム]メニュー→[設定]→[お気に入りのアプリ]
- [インターネット]タブ
- 「ウェブ・ブラウザ」→Firefoxに変更
- 「メール・クライアント」→Thunderbirdに変更
- [マルチメディア]タブ
- 「マルチメディア・プレイヤー」→Totemに変更
- [システム]タブ
- 「端末エミュレータ」
- その他に変更
- コマンド: gnome-terminal
- 起動オプション: --geometry=120x20
- 「端末エミュレータ」
テーマ・壁紙・フォントのカスタマイズ
[システム]メニュー→[設定]→[外観の設定]
- [テーマ]タブ
- 適当にカスタマイズ
- [背景]タブ
- 適当にカスタマイズ
- [フォント]タブ
- フォントをSansからVL Pゴシック、MonospaceからVLゴシックに変更
- フォントサイズをカスタマイズ
- 描画の種類をカスタマイズ
- テーマ・アイコン等
Ctrl+Alt+BackspaceでXorgを再起動できるようにする
sudo dontzap --disable
マウントしたデバイスのアイコンを非表示にする
gconftool-2 -t bool --set /apps/nautilus/desktop/volumes_visible false
/home/の不要なディレクトリを削除する
「デスクトップ」を含めデフォルトで作成されるディレクトリの表記を英語にする。
LANG=C xdg-user-dirs-gtk-update
表示されるダイアログにしたがって変更すればOK。 ディレクトリを削除する前に、削除しても二度と作成させないようにする。
$ sudo vi /etc/xdg/user-dirs.conf enabled=False # TrueからFalseに変更
Desktop, Pictures以外を削除する。
rmdir Documents/ Music/ Public/ Templates/ Videos/
グラフィックスドライバを有効にする
[システム]メニュー→[システム管理]→[ハードウェア・ドライバ]
- ドライバをインストールして有効にする
開発環境の設定
Ruby
Ruby 1.8とRuby 1.9をインストールする場合、リンクを張る。
sudo ln -s /usr/bin/ruby1.8 /usr/bin/ruby
ruby -v
lighttpd + WebDAVの設定
/etc/lighttpd/lighttpd.confを編集。
server.modules = (
"mod_access",
"mod_alias",
"mod_accesslog",
"mod_indexfile",
"mod_webdav",
)
server.username = "www-data"
server.groupname = "www-data"
server.document-root = "/srv/www/default"
server.pid-file = "/var/run/lighttpd.pid"
server.tag = "lighttpd"
server.errorlog = "/var/log/lighttpd/error.log"
accesslog.filename = "/var/log/lighttpd/access.log"
server.max-keep-alive-requests = 2
server.max-keep-alive-idle = 4
server.max-fds = 2048
server.event-handler = "linux-sysepoll"
$HTTP["remoteip"] !~ "(192.168.1.|127.0.0.1)" {
url.access-deny = ("")
}
include_shell "/usr/share/lighttpd/create-mime.assign.pl"
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"
index-file.names = (
"index.xhtml", "index.html",
)
server.dir-listing = "enable"
dir-listing.encoding = "utf8"
$HTTP["url"] =~ "^/dav($|/)" {
server.dir-listing = "enable"
webdav.activate = "enable"
webdav.is-readonly = "disable"
}
ディレクトリを作成。
sudo mkdir -p /srv/www/
sudo chowm www-data:www-data /srv/www/
sudo -u www-data mkdir -p /srv/www/default/dav/
ログ出力ディレクトリのパーミッションを変更。
sudo chmod a+rx /var/log/lighttpd/
lighttpdを再起動
sudo /etc/init.d/lighttpd restart
xinetdを使用するサーバのアクセス制御設定
ALL: PARANOID
in.telnetd : 127.0.0.1 192.168.1.0/24
svnserve : 127.0.0.1 192.168.1.0/24
rsync : 127.0.0.1 192.168.1.0/24
telnetdの設定
/etc/xinetd.d/telnetを作成。
service telnet
{
disable = no
flags = REUSE
socket_type = stream
user = telnetd
wait = no
server = /usr/sbin/in.telnetd
server_args = -h
only_from = 192.168.1.0/24 127.0.0.1
log_on_failure += USERID
}
svnserveの設定
/etc/xinetd.d/svnを作成。
service svn
{
disable = no
socket_type = stream
user = svn
wait = no
server = /usr/bin/svnserve
server_args = -i -r /srv/repos/svn
only_from = 192.168.1.0/24 127.0.0.1
log_on_failure += USERID
}
ユーザを追加。
sudo useradd -s /bin/false svn
ディレクトリを作成。
sudo mkdir -p /srv/repos/svn
sudo chown svn:svn /srv/repos/svn/
rsyncdの設定
/etc/xinetd.d/rsyncを作成。
service rsync
{
disable = no
socket_type = stream
user = root
wait = no
server = /usr/bin/rsync
server_args = --daemon --config=/etc/rsyncd.conf
only_from = 192.168.1.0/24 127.0.0.1
log_on_failure += USERID
}
/etc/rsyncd.confを作成。
hosts allow = 192.168.1.0/24 127.0.0.1
hosts deny = *
use chroot = yes
max connections = 1
[rsync]
comment = rsync root
path = /srv/rsync
uid = nobody
gid = nogroup
read only = yes
ディレクトリを作成。
sudo mkdir -p /srv/rsync
sudo chown nobody:nogroup /srv/rsync
root宛てメールの送信先の変更
/etc/aliasに追記。
# Added by installer for initial user
root: root@example.com
aliasを更新。
sudo newalias
Subversionクライアントの設定
~/.subversion/configのテンプレートを作成する。
svn help
~/.subversion/configを編集。
[auth]
# 認証情報を保存しない (毎回ユーザ名とパスワードを入力する)
store-passwords = no
store-auth-creds = no
[helpers]
# editor-cmd = editor (vi, emacs, notepad, etc.)
# diff-cmd = diff_program (diff, gdiff, etc.)
# diff3-cmd = diff3_program (diff3, gdiff3, etc.)
# diff3-has-program-arg = [true | false]
# diffの代わりにcolordiffを使う
diff-cmd = colordiff
[tunnels]
# ssh = $SVN_SSH ssh
# rsh = rsh
# rsh = /path/to/rsh -l myusername
[miscellany]
# log-encoding = latin1
# use-commit-times = yes
# no-unlock = yes
enable-auto-props = yes
global-ignores = *.o *.lo *.obj *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.suo *.pidb *.mdb *.userprefs *.usertasks
[auto-props]
(省略)
~/.colordiffrcをコピーする。
cp /etc/colordiffrc ~/.colordiffrc
~/.colordiffrcを編集。
banner=no
color_patches=no
plain=off
newtext=yellow
oldtext=blue
diffstuff=green
cvsstuff=red