Ubuntu 9.10 (Karmic Koala) desktop editionの初期設定メモ。
- このメモの目的と内容
- デスクトップPCを開発機兼内向けサーバ機として使うための自分用メモ
- インストールにはubuntu-9.10-rc-alternate-i386.isoを使用
- ubuntu-9.10-rc-desktop-i386.isoのインストーラではLVMパーティションの設定ができなかったため
- アップグレードではなくクリーンインストール
- デスクトップ環境をインストール後、サーバ用カーネルを追加でインストールした
最新バージョンでの初期設定内容はUbuntuにて掲載しています。
インストール手順
ブート画面
- F2 Language: [日本語]を選択
- F3 Keymap: [Japan]を選択
- Ubuntuをインストール]を選択
[Ubuntu インストーラメインメニュー]
- Keyborard model: [Do not configure keyboard; keep kernel keymap]を選択
[ネットワークの設定]
- ネットワークの設定方法: [ネットワークを手動で設定]を選択
- (以下ダイアログに従ってIPアドレス等を入力)
[ディスクのパーティショニング]
- パーティショニングの方法: [手動]を選択
- (パーティションを設定)
- [パーティショニングの終了とディスクへの変更の書き込み]を選択
[ベースシステムをインストールしています]
- (インストールが終わるまで待つ)
[ユーザとパスワードのセットアップ]
- (ダイアログに従ってユーザ名・パスワード等を入力)
- ホームディレクトリを暗号化しますか: <いいえ>を選択
[パッケージマネージャの設定]
- HTTP プロキシの情報: 空欄のままもしくは必要に応じて適切なURLを入力
[ソフトウェアの選択とインストール]
- 言語サポートをダウンロードしますか?: <はい>を選択
- (インストールが終わるまで待つ)
[grub-pcを設定しています]
- ブートローダをインストールするデバイス: (hd0)を入力
[インストールの完了]
- システム時間を UTC に設定していますか?: <はい>を選択
- インストールの完了: CD-ROMを取り出して<続ける>を選択
- 再起動
サービスの設定
サービスの起動・停止
必要のないサービスを停止し、使用するサービスを起動するようにする。
sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf --level 2345 cups off
sudo sysv-rc-conf --level 2345 bluetooth off
sudo sysv-rc-conf --level 2345 atd off
sudo sysv-rc-conf --level 2345 alsa-utils on
自動起動するプログラムの設定
[システム]メニュー→[設定]→[自動起動するアプリ]
- 「自動起動するプログラム」から下記のもの以外を削除
- GNOME Login Sound
- GNOME キーリングのデーモン
- GNOME 設定デーモン
- GNOME 設定デーモンのヘルパー
- Indicator applet
- PolicyKit 認証エージェント
- Seahorse のデーモン
- アップデート通知
- スクリーンセーバー
- ディスク通知
- 音量コントロール
- 新しいハードウェアのドライバを確認する
- 電源の管理
- 停止するもの
- AT SPI レジストリのラッパー
- Bluetooth Manager
- Evolution Alarm Notifier
- ユーザ・フォルダの更新
- リモート・デスクトップ
- ネットワーク・マネージャ
- 印刷キューのアプレット
- 視覚支援
設定ファイル等の編集
端末の設定
ランチャのgnome-terminalの起動オプションに引数を追加。
gnome-terminal --geometry=120x20
デフォルトのエディタをvimにする。
$ sudo update-alternatives --config editor There are 3 choices for the alternative editor (providing /usr/bin/editor). Selection Path Priority Status ------------------------------------------------------------ * 0 /bin/nano 40 auto mode [#d312d577] 1 /bin/ed -100 manual mode 2 /bin/nano 40 manual mode 3 /usr/bin/vim.tiny 10 manual mode Press enter to keep the current choice[*], or type selection number: 3 update-alternatives: using /usr/bin/vim.tiny to provide /usr/bin/editor (editor) in manual mode.
~/.vimrc
以下の内容で作成。
set encoding=utf-8
set fileencoding=utf-8
"set fileencodings=iso-2022-jp,cp932,shift-jis,euc-jp,utf-8,utf-16,ucs-2le,ucs-2,japan
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='\!> \[\033[0;33m\]\u\[\033[m\]@\[\033[0;36m\]\h\[\033[m\] [\[\033[0;32m\]\t\[\033[m\] \w]\$ '
case $TERM in
kterm|xterm|cygwin)
TITLEBAR="\u@\h:\w"
PS1="\[\033]0;${TITLEBAR}\007\]${PS1}"
;;
esac
cd ~
root宛てメールの送信先の変更
/etc/aliasに追記。
# Added by installer for initial user
root: root@example.com
aliasを更新。
sudo newaliases
ネットワークの設定
内向けDNSサーバ、仮想マシンのネットワークで使用するブリッジの設定など。
bridge-utils, uml-utilitiesをインストール
sudo apt-get install bridge-utils uml-utilities
/etc/sysctl.conf
IPv6を無効にする。
net.ipv6.conf.all.disable_ipv6 = 1
/etc/network/interfaces
以下の内容に変更。
auto lo
iface lo inet loopback
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.0.10
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 127.0.0.1 (必要に応じて他のDNSサーバを記入)
dns-search example.com
pre-up /sbin/ifconfig eth0 0.0.0.0 promisc up
pre-up /usr/sbin/brctl addbr br0
pre-up /usr/sbin/tunctl -u (ユーザ名) -t tap0
pre-up /sbin/ifconfig tap0 0.0.0.0 promisc up
post-up /usr/sbin/brctl addif br0 eth0
post-up /usr/sbin/brctl addif br0 tap0
pre-down /sbin/ifconfig tap0 down
pre-down /sbin/ifconfig eth0 down
post-down /sbin/ifconfig br0 down
post-down /usr/sbin/brctl delbr br0
内向けDNSサーバ(dnsmasq)の設定
dnsmasqをインストール。
sudo apt-get install dnsmasq
/etc/hostsに追記。
127.0.0.1 localhost
(ローカルネットワークのマシンを追加)
/etc/resolv.dnsmasq.confを作成し、dnsmasqに参照させる他のDNSサーバを記述する。
# 他のDNSサーバを記入
nameserver xxx.xxx.xxx.xxx
:
dnsmasqの設定を書き換える。
$ cd /etc/ $ sudo cp dnsmasq.conf dnsmasq.conf.org $ sudo vi dnsmasq.conf $ diff dnsmasq.conf.org dnsmasq.conf 29c29 < #resolv-file= --- > resolv-file=/etc/resolv.dnsmasq.conf 528c528,529 < #log-queries --- > log-queries > log-facility=/var/log/dnsmasq $ sudo mv /etc/dnsmasq.conf* /etc/dnsmasq.d/ $ sudo touch /var/log/dnsmasq $ sudo chown dnsmasq:adm /var/log/dnsmasq
ネットワークサービスを再起動
設定を反映させるためにネットワークサービスを再起動。
sudo /etc/init.d/networking restart
ソフトウェアの追加と削除
リポジトリの設定
medibuntuリポジトリを追加。
sudo wget http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).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 \
aspell aspell-en \
bluetooth \
bogofilter bogofilter-bdb bogofilter-common \
brasero libbrasero-media0 \
cdparanoia \
couchdb-bin \
cups cups-bsd cups-client cups-common cups-driver-gutenprint libcupscgi1 libcupsdriver1 libcupsmime1 libcupsppdc1 \
espeak \
evolution evolution-common evolution-couchdb evolution-data-server evolution-exchange evolution-indicator evolution-plugins evolution-webcal \
example-content \
foomatic-db foomatic-db-engine foomatic-filters foo2zjs \
gnome-games gnome-games-common gnome-mag gnome-orca gnome-pilot gnome-pilot-conduits gnome-pilot gnome-pilot-conduits \
hpijs hplip hplip hplip-data pxljr \
libgutenprint2 \
libbeagle1 \
min12xxw \
ntfs-3g libntfs-3g54 \
rdesktop \
rhythmbox \
splix \
system-config-printer-common system-config-printer-gnome \
tomboy \
toshset
sudo apt-get remove --purge 'bluez(-.*)?'
sudo apt-get remove --purge '^mono-' cli-common '^lib.+-cil$'
使用するソフトウェアのインストール。
sudo apt-get install \
apt-cacher \
audacity \
autoconf automake1.9 autotools-dev build-essential gettext libtool bison \
cadaver \
colordiff \
epiphany-browser \
gedit-plugins \
git-core \
gstreamer0.10-ffmpeg gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly \
icedax \
lighttpd lighttpd-mod-magnet lighttpd-mod-webdav \
logwatch \
mingw32 \
munin munin-node \
nasm \
nautilus-open-terminal \
nfs-kernel-server \
ngrep \
nkf \
ntp \
resolvconf \
ruby1.8 libwww-mechanize-ruby1.8 libhpricot-ruby1.8 \
samba smbfs \
sensors-applet \
swig \
subversion subversion-tools \
startupmanager \
system-config-lvm \
tree \
thunderbird thunderbird-gnome-support \
ttf-mona \
virt-manager \
w3c-dtd-xhtml \
xinetd
sudo apt-get install \
libcairo2-dev libexif-dev libfreetype6-dev libfontconfig1-dev libglib2.0-dev libjpeg62-dev libpng12-dev libtiff4-dev libungif4-dev libx11-dev libxrender-dev \
libgtk2.0-dev \
libnss3-dev libnspr4-dev xulrunner-dev \
libglade2-dev libpango1.0-dev libgnome2-dev libgnomecanvas2-dev libgnomeprint2.2-dev libgnomeprintui2.2-dev libgnomeui-dev libpanel-applet2-dev \
libgtksourceview-dev libgtksourceview2.0-dev \
libgtkhtml3.14-dev libnautilus-burn-dev librsvg2-dev libvte-dev libwnck-dev \
libncurses5-dev \
libogg-dev libtheora-dev libvorbis-dev
サーバカーネル・ヘッダのインストール
sudo apt-get install linux-server linux-headers-server
言語サポートのインストール
[システム]→[システム管理]→[言語サポート]
- 指示にしたがってインストールする
ドライバ類のインストール
[システム]メニュー→[システム管理]→[ハードウェア・ドライバ]
- 有効にできるドライバを有効にする
その他のソフトウェアの削除
[システム]メニュー→[システム管理]→[パッケージの整理]
- 削除できる不要なソフトウェアを削除する
パッケージ情報の更新とアップデート
sudo apt-get update && sudo apt-get dist-upgrade
GRUB等の設定
[システム]→「システム管理」→「StartUp-Manager」
- 「起動オプション」タブ
- 「待ち時間」を変更
- 「ディスプレイの解像度」を変更
- 「起動スプラッシュを表示」のチェックを外す
- 「起動中にテキストを表示」にチェックを入れる
- 「詳細タブ」
- 「ブートローダ・メニューの解像度」を変更
再起動
ここまででいったん再起動。 再起動後にps, pstree, topで必要なさそうなプロセスが動いてないかチェックする。
デスクトップ環境の設定とカスタマイズ
NTPサーバとの同期
[システム]メニュー→[システム管理]→[日付と時刻の設定]
- 設定を「インターネット上のサーバと同期させる」になっていることを確認する
- 近くのNTPサーバを設定
キーボード
[システム]メニュー→[設定]→[キーボード]
- [レイアウト]タブ
- [追加]をクリック
- [言語]から「日本語」を選択
- [系列]から「日本」を選択
- [追加]をクリック
- 追加したレイアウトをデフォルトにし、古いレイアウトを削除する
- [レイアウトのオプション]をクリック
- 「Key sequence to kill the X server」→Control+Alt+Backspaceにチェックを入れる (9.10 Release Notes | Enabling Ctrl-Alt-Backspace for Ubuntu)
- [システム全体に適用]をクリック
- [追加]をクリック
- その他適当にカスタマイズ
マウス
[システム]メニュー→[設定]→[マウス]
- 適当にカスタマイズ
スクリーンセーバー
[システム]メニュー→[設定]→[スクリーンセーバー]
- 適当にカスタマイズ
サウンドデバイスのテスト・効果音等
[システム]メニュー→[設定]→[サウンド]
- [ハードウェア]タブ
- [プロファイル]を適当なものに変更
- ミュートをオフにし、音量を調整して音が出るかどうか確認
- その他適当にカスタマイズ
パワーマネージメント
[システム]メニュー→[設定]→[電源の管理]
- [AC電源使用時]タブ
- 「システムをスリープする」→しない
- 「画面をスリープする」→1時間
- [全般]タブ
- 「電源ボタンを押したら」→「ダイアログを表示する」
- 「通知エリア」→「充電中または放電中の時だけアイコンを表示する」
IBus
[システム]メニュー→[設定]→[iBusの設定]
- [一般]タブ
- 「切り替え」→Zenkaku_Hankakuのみに変更
- [インプットメソッド]タブ
- ドロップダウンリストから「日本語」→「Anthy」を追加
- (「日本語 - anthy」ではなく)「日本語 - Anthy」を一番上に移動してデフォルトにする
IBus-Anthy
言語バーの「i」のボタンをクリック
- [キー割当]タブ
- 「ショートカットタイプ」→ATOKに変更
キーボードショートカット
[システム]メニュー→[設定]→[キーボードショートカット]
- [デスクトップ/画面をロックする]→Ctrl+Alt+Deleteに変更 (Ctrl+Alt+Deleteを押したときログアウト画面ではなくスクリーンのロックが起動するようする)
デフォルトで使用するアプリケーション
[システム]メニュー→[設定]→[お気に入りのアプリ]
- [インターネット]タブ
- 「ウェブ・ブラウザ」→Firefoxに変更
- 「メール・クライアント」→Thunderbirdに変更
- [マルチメディア]タブ
- 「マルチメディア・プレイヤー」→Totemに変更
- [システム]タブ
- 「端末エミュレータ」
- その他に変更
- コマンド: gnome-terminal
- 起動オプション: --geometry=120x20
- 「端末エミュレータ」
テーマ・壁紙・フォント
[システム]メニュー→[設定]→[外観の設定]
- [テーマ]タブ
- 適当にカスタマイズ
- [背景]タブ
- 適当にカスタマイズ
- [フォント]タブ
- フォントをSansからVL Pゴシック、MonospaceからVLゴシックに変更
- フォントサイズをカスタマイズ
- 描画の種類をカスタマイズ
- [外観タブ]
- 「メニューの中にアイコンを表示する」→表示する
- 「ツールバーのスタイル」→アイコンのみ
- テーマ・アイコン等
マウントしたデバイスのアイコンを非表示にする
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/
Firefox
以下のアドオン、プラグインをインストール。
Thunderbird
IMAPフォルダのチェック方法を変更する。 user.jsに以下の内容を書く。
user_pref("mail.check_all_imap_folders_for_new", true);
以下のアドオンをインストール。
開発環境の設定
apt-cacher
ローカルネットワークからのアクセスのみ許可する。
$ cd /etc/apt-cacher/ $ sudo cp apt-cacher.conf apt-cacher.conf.org $ sudo vi apt-cacher.conf $ diff apt-cacher.conf.org apt-cacher.conf 40c40 < allowed_hosts=* --- > allowed_hosts=192.168.0.0/24
デーモンを自動的に起動するようにする。
AUTOSTART=1 # 1にする
Ruby
Ruby 1.8とRuby 1.9をインストールする場合、リンクを張る。
$ sudo ln -s /usr/bin/ruby1.8 /usr/bin/ruby $ ruby -v ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux]
Munin
# 収集したデータ、HTMLの出力先などを設定
dbdir /var/lib/munin
htmldir /srv/www/munin
logdir /var/log/munin
rundir /var/run/munin
# a simple host tree
[localhost.localdomain]
address 127.0.0.1
use_node_name yes
# 以下、監視するノードをここに追記
localhostからのアクセスのみを許可するように変更する。
allow ^127\.0\.0\.1$
munin-nodeを再起動。
sudo /etc/init.d/munin-node restart
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/"
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"
server.dir-listing = "enable"
dir-listing.encoding = "utf8"
$HTTP["remoteip"] !~ "(192.168.0.|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",
)
$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/dav/
ログ出力ディレクトリのパーミッションを変更。
sudo chmod a+rx /var/log/lighttpd/
lighttpdを再起動
sudo /etc/init.d/lighttpd restart
/etc/hosts.allow, /etc/hosts.deny
svnserve : 127.0.0.1 192.168.0.0/24
portmap : 192.168.0.0/24
locked : 192.168.0.0/24
mountd : 192.168.0.0/24
statd : 192.168.0.0/24
ALL: ALL
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.0.0/24 127.0.0.1
log_on_failure += USERID
}
ユーザを追加。
sudo groupadd -g 601 svn
sudo adduser --uid 601 --gid 601 --disabled-login --disabled-password --no-create-home svn
ディレクトリを作成。
sudo mkdir -p /srv/repos/svn
sudo chown svn:svn /srv/repos/svn/
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
NFS
/etc/exportsを編集。
# エクスポートするディレクトリを追記
NFSサーバを再起動。
sudo /etc/init.d/nfs-kernel-server restart
その他
ソフトウェアのビルド・インストール
ext3からext4へのマイグレーション
$ sudo umount /dev/md0 $ sudo tune2fs -O extents,uninit_bg,dir_index /dev/md0 tune2fs 1.41.9 (22-Aug-2009) Please run e2fsck on the filesystem. $ sudo e2fsck -fpDC0 /dev/md0
e2fsckで以下のようにUNEXPECTED INCONSISTENCYと出る場合は、オプションを外して再度e2fsckを実行する。
$ sudo e2fsck -fpDC0 /dev/md0 /dev/md0: One or more block グループ descriptor checksums are invalid. FIXED. /dev/md0: グループ descriptor 0 checksum is invalid. /dev/md0: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) $ sudo e2fsck -y /dev/md0 : : /dev/md0 contains a file system with errors, check forced. Pass 1: Checking iノードs, blocks, and sizes Pass 2: Checking ディレクトリ structure Pass 3: Checking ディレクトリ connectivity Pass 4: Checking reference counts Pass 5: Checking グループ summary information /dev/md0: 1944/11059200 files (4.7% non-contiguous), 1226651/22093391 blocks
/etc/fstabに記述してあるファイルシステムをext3からext4に変更、必要に応じてマウントオプションも修正する。
$ sudo vi /etc/fstab
再マウントしてext4としてマウントしたかどうか確認する。
$ sudo mount /dev/md0 $ df -T | grep /dev/md0 /dev/md0 ext4 188988024 54141324 129086676 30% /srv/export/files