はじめに
emerge sync の rsync 先を日本のサーバ類を指定する。デフォルトのrsync先は世界中のサーバからそのつど選択されるので 日本のサーバ(現在は4つ)に向けるとよいです。 /etc/make.confのSYNC行を SYNC="rsync://rsync.jp.gentoo.org/gentoo-portage" これで日本のサーバどれかに接続にいきます。 Xとディスクトップ環境とりあえず、CD2枚目からpackageを入れておくことにする。(せっかくCD作ったし) # mount /dev/cdrom /mnt/cdrom # cp -a /mnt/cdrom/packages/* /usr/portage/packages/ ここまでやったら、今度はXのインストールとなるが、ものすごく時間がかかるので、3時間ぐらい放置しておけば良いと思われる。 # emerge xfree ここではハードウェアの状態はわかっているとして、話をすすめる。僕は面倒臭がりなんで、もうxf86cfg使って設定してしまうことにする。気に入らないなら/usr/X11R6/bin/xf86configを使えばよい。 # xf86cfg さてうまく設定すればstartxでXが立ち上がっているはず。とりあえずこの状態までにしておくこと。でないと先には進めない。その後ディスクトップ環境構築に入る。僕はKDEを使いたいんでKDEで進むことにする。 # USE="bindist" emerge -k kde # kdm ここまででkdeの画面が見れていれば成功である。そして、あとは/etc/rc.confに設定を記述していく。 # vi /etc/rc.conf DISPLAYMANAGER=kdm 最後に # rc-update add xdm default # reboot
試しにKDEをMacOSX風にしてみた。WinXP風にも。(完全に遊び) rc.localみたいなの/usr/local/rc.local/以下の設定ファイルとか/etc/rc.localとかに書き込むとか、そういうのはgentooはちょっと違うみたいで、/etc/conf.d/local.startというファイルに書き込むらしい。 僕はとりあえずsshdを初回起動に設定しておいた。 # rc-update add なにか default というのも初期起動セットのコマンドらしい 自分が使いたいツールemergeを使えば自分の欲しいツールはだいたい取得できる
日本語環境日本語環境ももちろん全て自前でそろえなければならない。 # emerge kinput2 # emerge canna # emerge media-fonts/kochi-substitute (東風フォント) kinput$ vi .bashrc
unset LC_ALL
export LANG=ja_JP.eucJP
export XMODIFIERS="@im=kinput2"
kinput2 -canna -cs unix -xim & (cannaserverをunixにする)
と書く
fonts# vi /etc/fonts/fonts.conf <dir>/usr/X11R6/lib/X11/fonts/trutype</dir>というのを追加
latex環境なんだかんだ言っても必要なlatex。入れない訳にはいけない。あとエディタのEmacsもついで入れる。 # emerge emacs # USE=cjk emerge ptex そしてemacsでの日本語入力の仕方。 USE="canna" emerge tamago してから,~/.emacs に以下の記述を加える. (setq canna-hostname "unix") (setq default-input-method "japanese-egg-canna") Securityホールを埋めたい#emerge sync #emerge --update system CDから1つファイルがほしいtar xjpvf stage1-ix86-1.2.tbz2 ./etc/make.globals GRUBの注意点(FDDがない場合)
# grub --no-floppy timezone(JST)の設定
Mozillaでjavaアプレット日本語入力1. http://pc.2ch.net/test/read.cgi/linux/1047823838/77 をhoge.txt.uuencode とか保存 2. $ uudecode < hoge.txt.uuencode 3. font.properties.ja ができるので、それを /opt/blackdown-jdk-1.4.1/jre/lib/ にコピー $export JAVA_FONTS=/usr/X11R6/lib/X11/fonts/truetype:/opt/blackdown-jdk-1.4.1/jre/lib/fonts 5. MozillaでGo! GentooJP-ebuilds時間がずれてんだけど
make.confの記述例USE="nls cjk canna Imlib crypt cups encode libg++ nptl pdflib aalib mysql ssl esd
gtk2 qt cdr X x86 oss avi gif gpm jpeg \
mmx mpeg ncurses oggvorbis opengl png python quicktime truetype zlib xmms xml2
ungif java perl imlib mozilla kde -alsa \
kdelibs arts xfs tiff samba pic sse tcltk usb wmf mad"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=i686 -O3 -pipe -ffast-math -falign-functions=4"
CXXFLAGS="${CFLAGS}"
ACCEPT_KEYWORDS="x86 ~x86"
SSHでアクセス制限
# vi /etc/pam.d/sshdのファイルに以下の行を追加します。
# vi /etc/security/access.conf
-:ALL EXCEPT wheel hogehoge shutdown sync:ALL
fomts.dir(ebuild)# Copyright 1999-2002 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 # /space/gentoo/cvsroot/gentoo-x86/skel.ebuild,v 1.7 2002/05/18 17:25:12 agenkin Exp DESCRIPTION="Kochi Gothic and Mincho Japanese TrueType fonts" HOMEPAGE="http://www.on.cs.keio.ac.jp/~yasu/jp_fonts.html" LICENSE="kochi-fonts"
SLOT="0"
KEYWORDS="x86"
DEPEND=">=xfree-4.2.0-r9"
SRC_PATH="http://www.on.cs.keio.ac.jp/~yasu/linux/fonts"
SRC_URI="${SRC_PATH}/kochi-gothic-${PV}.tar.bz2
${SRC_PATH}/kochi-mincho-${PV}.tar.bz2"
src_unpack () {
unpack kochi-{gothic,mincho}-${PV}.tar.bz2
}
src_install () {
# install fonts
insinto /usr/X11R6/lib/X11/fonts/kochi
doins ${WORKDIR}/kochi-gothic/fonts/kochi-gothic.ttf
doins ${WORKDIR}/kochi-mincho/fonts/kochi-mincho.ttf
doins ${WORKDIR}/kochi-mincho/examples/fonts.dir.xtt
doins ${WORKDIR}/kochi-mincho/examples/fonts.scale.xtt
# install READMEs, licenses, etc. as required
dodir /usr/share/doc/${PF}
cp -a ${WORKDIR}/kochi-gothic/docs/* ${D}usr/share/doc/${PF}
cp -a ${WORKDIR}/kochi-mincho/docs/* ${D}usr/share/doc/${PF}
rebuild_fontfiles() {
einfo "Refreshing fonts.scale and fonts.dir..."
cd /usr/X11R6/lib/X11/fonts/truetype
# recreate fonts.scale
#ttmkfdir > fonts.scale \
# || die "Unable to create fonts.scale! Please emerge ttmkfdir and try again."
# recreate fonts.dir
mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings
}
pkg_postinst() {
rebuild_fontfiles
mv /usr/X11R6/lib/X11/fonts/kochi/fonts.dir.xtt
/usr/X11R6/lib/X11/fonts/kochi/fonts.dir
mv /usr/X11R6/lib/X11/fonts/kochi/fonts.scale.xtt
/usr/X11R6/lib/X11/fonts/kochi/fonts.scale
echo "***********************************************************"
echo "Please add /usr/X11R6/lib/X11/fonts/kochi to your font path"
echo "and load 'xtt' module"
echo "***********************************************************"
}
pkg_postrm() {
rebuild_fontfiles
}
ホームディレクトリを自動で生成# cat /etc/pam.d/system-auth
suできる?
#usermod -G users,wheel [USERNAME] USEふらぐ
Xの設定-gnome# emerge gnome-base/libbonoboui # emerge gnome # etc-update 日本語環境============================================= ~/.bashrc の内容 export LANG=ja_JP.eucJP unset LC_ALL export LC_CTYPE=ja_JP.eucJP export XMODIFIERS="@im=kinput2" export CANNAHOST=localhost ============================================= ============================================= ~/.xinitrc の内容 export LANG=ja_JP.eucJP unset LC_ALL export LC_CTYPE=ja_JP.eucJP /usr/X11R6/bin/xrdb $HOME/.Xresources export XMODIFIERS="@im=kinput2" export CANNAHOST=localhost kinput2 -canna & ============================================
#fgrep cjk /var/db/pkg/*/*/*.ebuild
【/etc/conf.d/canna】 ============================================= CANNASERVER_OPTS="-syslog -u bin" ============================================= 【/usr/X11R6/lib/X11/app-defaults/Kinput2】 ....最終行のコメントをはずしただけ ============================================= *OverTheSpotConversion.UseOverrideShellForMode: True ============================================= 【/etc/fonts/fonts.conf】...以下を追加 ============================================= <dir>/usr/X11R6/lib/X11/fonts/truetype</dir> ============================================= その後、 # fc-cache -fv # rc-update add canna default # reboot また、追加した"root"以外のユーザでログインして、 【~/.bashrc】...2行だけ追加 ============================================= export XMODIFIERS="@im=kinput2" export LANG=ja_JP.eucJP ============================================= 【~/.xinitrc】...以下を追加 ============================================= #!/bin/sh kinput2 & startkde ============================================= # startx で、KDEが起動して、Konsoleターミナル画面から、 Ctrl+Oキーで、日本語入力できています。 Portageを食べる
emerge強化月間
install後はこれも
install後にnetworkの設定
cat /proc/pci less /proc/pci | grep あなたのチップセット
installしてもnicがない
BIOSとOSの時刻を同期させる
ebuildの見本
# Copyright 1999-2002 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# /space/gentoo/cvsroot/gentoo-x86/skel.ebuild,v 1.7 2002/05/18 17:25:12 agenkin
Exp
DESCRIPTION="Monafonts"
HOMEPAGE="http://members.tripod.co.jp/s42335/mona/"
LICENSE="Distributable"
DEPEND=">=x11-base/xfree-4.2.0-r9"
SRC_PATH="http://members.tripod.co.jp/s42335/mona/dist/"
SRC_URI="${SRC_PATH}/monafonts-${PV}.tar.bz2.bin"
src_unpack () {
tar xjf ${DISTDIR}/${A}
}
src_compile () {
emake || die
}
src_install () {
make install DESTDIR=${D}
}
etc-updateって何?etc-updateはGentoo LinuxのPortageに付属するコマンドです。 主として /etc にあるファイルの更新を行います。 emergeの動作emergeコマンドによって、ユーザの希望するパッケージがシステムに インストールされるのですが、特にアップデートの場合、ユーザが手を入れた 設定ファイルなどが上書きされてしまっては困ります。 そこで、emergeは決められた場所にあるファイルを更新する場合、 上書きするのではなく別名をつけてインストールします。 例えば、baselayoutの新しいバージョンが出たとしましょう。新しいバージョンを emergeすると /etc/fstabが更新されることになりますが、このファイルにはユーザの 環境に合わせて変更が加えられえているはずです。それを上書きされてしまっては、 面倒です。 しかし実際には上書きされてしまうことはありません。Portageではこのようなファイルを 保護する仕組みがあります。この例では、/etc/fstabを更新する代わりに/etc/._cfg0000_fstab という ファイルが作成されます(数字の部分はetc-updateのサボり具合によって変わります;-))。 ところで、emergeはどのようにして特別扱いするファイルを決めているのでしょうか。 /etc/make.globalsを見てください。CONFIG_PROTECTという変数が定義されています。 この変数に定義されたディレクトリ(サブディレクトリを含む)にあるファイルは 保護の対象となり、emergeが書き換えることはありません。 etc-update の動作emergeは /etc にあるファイルを上書きしないということはわかりましたが、ではそのまま 放置してもいいのでしょうか? 無論、放置すべきではありません。ユーザが自分の責任で 更新しなければなりません。 では、どうすればいいでしょうか? 実に簡単です。._cfgで始まるファイルを見つけ出し、 現在あるファイルと見比べて、適当にファイルを更新します。それがすんだら._cfgで 始まるファイルは削除してしまいましょう。先ほどのfstabの例なら、._cfg0000_fstabと/etc/fstab を見比べながら /etc/fstab を更新し、._cfg0000_fstabを削除するのです。 しかし、このようにして更新しなければならないファイルが増えてくると、手間も増大してきます。 差分を確認しながら更新するためのツールが欲しいという声に応えるように、etc-updateが 登場しました。 このツールを使うと、対話式に更新するファイルを選択し、差分を確認したり マージしたりという操作を行うことができます。これによって随分作業を簡略化できます。 しかし、注意してください。etc-updateは先に述べた作業を補助するツールに過ぎません。 設定ファイルを更新するのはあなたです!! 不安ならバックアップを取ってから作業する、 これ基本です。 どんな時に使うの?emergeしたあと、このような表示が出ることがあります。 * IMPORTANT: 2 config files in /etc need updating. * Type emerge --help config to learn how to update config files. これを見て、emerge --help config を読んだ人はもうこのテキストを読む必要はありません ;-P このメッセージは、/etc に更新が必要なファイルが2つある、ということを意味しています。 ._cfgで始まるファイルが /etc に2つあるということです。このような場合こそ etc-update の 出番です。 どうやって使うの?root権限で etc-update コマンドを実行します。 # /usr/sbin/etc-update
1) /etc/fstab
/etc/._cfg0000_fstab
2) /etc/make.conf
/etc/._cfg0000_make.conf
Please select a file to edit by entering the corresponding number.
(-1 to exit) (-3 to auto merge all remaining files)
(-5 to auto-merge AND not use 'mv -i'):
--- /etc/fstab +++ /etc/._cfg0000_fstab (ここに差分が表示される) End of differences between /etc/fstab and /etc/._cfg0000_fstab 1) Replace original with update 2) Delete update, keeping original as is 3) Interactively merge original with update 4) Show differences again Please select from the menu above (-1 to ignore this update):
3の場合はどうなるでしょう。 Merging /etc/._cfg0000_fstab and /etc/fstab
foo < ← 旧ファイルにあるが新ファイルにない行
%
> bar ← 新ファイルにあるが旧ファイルにない行
%
hoge | hogehoge ← 行の内容が変更された
%
マージの場合、それぞれ違いがある部分で、どのように変更を加えるのかを答えなければなりません。 プロンプト(%)で ? を入力すれば簡単なヘルプがでます。 基本的には、rを入力して右(新)を取るか、lを入力して左(旧)を取るか、です。 これは最初は戸惑うこともあると思いますのでファイルのバックアップを取ってから いろいろ試してみるとよいと思います。 etc-update で vimdiff が使えるって本当?/etc/etc-update.conf を見ると vimdiff をマージに使うなという注意書きがありますが、実はそんなことはなくて、 merge_command="vim +r%orig -d %merged %new" と書けば vimdiff でマージすることができます。ただしこれで激しくテストしたわけではないので(いつも sdiff 使ってます)、この設定で問題が出た人は教えてください。 参考文献etc-update(1), make.conf(5), 'emerge --help config' |
PR |