サーバー設定 · 2 min read · Feb 06, 2026
完璧なサーバー - Gentoo 2007.0 - ページ 3
4 最新情報の取得
Gentoo Handbookに従って基本システムをインストールした皆さん、お帰りなさい。
4.1 新しいシステムへのログイン
ssh [email protected]おそらく、次のようなメッセージが表示されるでしょう:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 警告: リモートホストの識別情報が変更されました! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
誰かが悪いことをしている可能性があります!
今、誰かがあなたを盗聴しているかもしれません(中間者攻撃)!
RSAホストキーが変更された可能性もあります。
リモートホストから送信されたRSAキーのフィンガープリントは
13:13:39:99:9b:ea:81:72:2c:20:d2:f5:d2:0f:bd:acです。
システム管理者に連絡してください。
このメッセージを消すには、/home/rachel/.ssh/known_hostsに正しいホストキーを追加してください。
問題のあるキーは/home/rachel/.ssh/known_hosts:23にあります。
server1.example.comのRSAホストキーが変更され、厳密なチェックを要求しました。
ホストキーの検証に失敗しました。これは、インストールされたシステムが独自のホストキーを生成したためで、インストールシステムのものとは異なります。ローカルsshからホストキーを削除する必要があります。ほとんどのUnixでは、次のようにすれば機能するはずです:
vi ~/.ssh/known_hosts
/server1.example.com
dd:xこれで、新しい基本Gentooシステムにrootとしてログインしました。
ホスト名が正しく設定されているか確認してください:
hostname -f完全修飾ドメイン名、例えばserver1.example.comが返されるはずです。
4.2 オプション: すべてのソフトウェアを一度にインストール
本質的に、Gentooはバイナリディストリビューションと比較して新しいソフトウェアをインストールするのに比較的長い時間がかかります。これは、このようなハウツーに従っているときにイライラすることがあります。いくつかのコマンドを入力した後、何かとその依存関係が最初から構築されるのを待たなければならないからです。これを繰り返すことになります。基本インストールのためにこれらの指示に従った場合、すでにそれを行ったことになります。
この理由から、Perfect Setup構成で使用されるすべての初期ソフトウェアビルドのコマンドをここにまとめましたので、一度にすべてを行うことができます。一部のディストリビューションとは異なり、Gentooは新しいサービスを自動的に開始したり、ランレベルにインストールしたり、ユーザー入力が必要なポスト構成を行ったりしませんので、すべてのソフトウェアのビルドを開始し、後でそれらの構成を行うことができます。
この方法で行いたい場合は、今すぐ以下のスクリプトを入力してください。(これをbashコマンドラインにコピー&ペーストするだけです)。その後、ハウツーの残りの部分を進める際に、太字で示されたコマンドをスキップしてください。
# ssmtpのアンインストール
emerge --unmerge ssmtp
# postfixをデフォルトのMTAとして設定
mkdir -p /etc/portage/profile
echo 'virtual/mta mail-mta/postfix' >> /etc/portage/profile/virtuals
# USEフラグの設定
echo 'USE="apache2 bzip2 idn jpeg png tiff tk truetype xml"' >> /etc/make.conf
echo 'LINGUAS="en"' >> /etc/make.conf
echo 'net-dns/bind resolvconf' >> /etc/portage/package.use
echo 'mail-mta/postfix sasl' >> /etc/portage/package.use
echo 'dev-libs/cyrus-sasl authdaemond urandom' >> /etc/portage/package.use
echo 'net-mail/courier-imap fam' >> /etc/portage/package.use
echo 'www-servers/apache doc mpm-prefork' >> /etc/portage/package.use
echo 'dev-lang/php bcmath bzip2 calendar ctype curl exif filter ftp gd hash imap json mhash mysql mysqli pcntl pdo posix sharedmem simplexml snmp soap sockets spell sqlite tidy tokenizer wddx xmlreader xmlrpc xmlwriter xsl zip' >> /etc/portage/package.use
echo 'net-ftp/proftpd -ipv6' >> /etc/portage/package.use
# パッケージのアンマスク
echo 'dev-php5/pecl-imagick ~*' >> /etc/portage/package.keywords
echo 'dev-php5/pecl-memcache ~*' >> /etc/portage/package.keywords
echo 'dev-libs/pslib ~*' >> /etc/portage/package.keywords
echo 'dev-php5/pecl-ps ~*' >> /etc/portage/package.keywords
# ワールドファイルにパッケージを追加
echo 'app-admin/sudo' >> /var/lib/portage/world
echo 'app-admin/webalizer' >> /var/lib/portage/world
echo 'app-arch/unzip' >> /var/lib/portage/world
echo 'app-arch/zip' >> /var/lib/portage/world
echo 'app-editors/vim' >> /var/lib/portage/world
echo 'app-portage/gentoolkit' >> /var/lib/portage/world
echo 'dev-db/mysql' >> /var/lib/portage/world
echo 'dev-lang/php' >> /var/lib/portage/world
echo 'dev-php/PEAR-PEAR' >> /var/lib/portage/world
echo 'dev-php5/pecl-imagick' >> /var/lib/portage/world
echo 'dev-php5/pecl-memcache' >> /var/lib/portage/world
echo 'dev-php5/pecl-ps' >> /var/lib/portage/world
echo 'dev-tcltk/expect' >> /var/lib/portage/world
echo 'mail-filter/procmail' >> /var/lib/portage/world
echo 'mail-mta/postfix' >> /var/lib/portage/world
echo 'net-dns/bind' >> /var/lib/portage/world
echo 'net-ftp/ncftp' >> /var/lib/portage/world
echo 'net-ftp/proftpd' >> /var/lib/portage/world
echo 'net-mail/courier-imap' >> /var/lib/portage/world
echo 'net-mail/fetchmail' >> /var/lib/portage/world
echo 'net-misc/netkit-telnetd' >> /var/lib/portage/world
echo 'net-misc/ntp' >> /var/lib/portage/world
echo 'sys-fs/quota' >> /var/lib/portage/world
echo 'www-servers/apache' >> /var/lib/portage/worldISPConfigを実行するつもりなら、これもペーストしてください:
echo 'dev-db/mysql latin1' >> /etc/portage/package.use
echo 'app-shells/smrsh' >> /var/lib/portage/world
echo 'dev-perl/HTML-Parser' >> /var/lib/portage/world
echo 'dev-perl/Net-DNS' >> /var/lib/portage/world
echo 'net-firewall/iptables' >> /var/lib/portage/world
echo 'virtual/perl-DB_File' >> /var/lib/portage/worldリモートでいくつかのXアプリケーションを実行する必要がある場合(例:VMWare Tools vmware-toolboxダイアログ、fetchmailconf)には、これもペーストしてください。
echo 'x11-apps/xauth' >> /var/lib/portage/world
echo 'x11-libs/libXi' >> /var/lib/portage/world新しいバージョンのportageが、私たちが利用している動作をサポートするものですので、今すぐportageを更新してください。
実際、このステップをスキップしても、後で完全な更新を行う際に正しく行われます。portageが最初にインストールされ、その後新しいバージョンで停止して再起動します。しかし、後の例のように–askを使用すると、何が起こるかの正確なリストは得られません。このステップは混乱を避けるためのものです。
emerge --ask --verbose --newuse portageその後、いくつかの設定ファイルが変更されたことを警告し、それらの変更を承認するように促されます。

dispatch-conf>> q quit, h help, n next, e edit-new, z zap-new, u use-new
m merge, t toggle-merge, l look-merge: ここで行ったのはportage自体を更新しただけなので、提供された各ファイルに対してuを選択することで、すべての変更を受け入れることができるはずです。
4.3 最初の更新
インストール中にemerge –syncを行ったので、すぐにもう一度行う必要はないでしょう。すぐに更新に移りましょう。
いくつかのグローバルUSEフラグを設定したいと思います。ほとんどの場合、パッケージ固有のフラグを優先するように努めましたが、いくつかのグローバルフラグが必要です。そうすれば、物事が簡単になります。上記のオプションステップ4.2を実行した場合は、太字で示されたコマンドを入力する必要はありません。説明的なものとして受け取ってください。
grep USE /etc/make.confこのファイルにすでにUSE変数が設定されている場合は、ファイルを編集して次のフラグが追加されていることを確認する必要があります。設定されていない場合は、次のコマンドを実行してください:
echo 'USE="apache2 bzip2 idn jpeg png tiff tk truetype xml"' >> /etc/make.confこれで、実際に更新を行うことができます。
emerge --ask --verbose --newuse --deep world–ask –verboseは、どのパッケージをインストールまたはアップグレードするか、その選択されたUSEフラグとともにリストします。これらは完全にオプションで、実行する前に何をしようとしているのかを確認するためのものです。–newuse –deepは、USEフラグが変更されたものや、古くなったものを再構築するように指示します。(–deepは、主要なパッケージだけでなく、依存関係も含めてすべてをアップグレードしたいことを示します。)
Returnを押す(またはYesと入力する)と、システムが最新の状態になります。これには時間がかかるでしょう。
ステップ4.2に従って、Perfect Setupソフトウェアビルドを事前に設定した場合、すべてのPerfect Setupソフトウェアとその依存関係がダウンロード、コンパイル、インストールされ、基本システムの適切な更新も行われます。合計で150から190パッケージが新たに構築されるか、再構築されることになります。Portageは、ワールドファイルを手動で変更したことを不満に思うかもしれませんが、指定された方法でシステムを構築し続けます。つまり、新しいソフトウェアをインストールします。ディナーに出かけるか、映画を見に行くか、寝るかしてください。これにはしばらく時間がかかります。
それが終わると、次のようなメッセージが表示されます:

dispatch-conf変更された各設定ファイルについて、差分が表示され、次のオプションが与えられます:
>> q quit, h help, n next, e edit-new, z zap-new, u use-new
m merge, t toggle-merge, l look-merge: これは新しいシステムなので、ほとんどの変更を受け入れたいと思うでしょう(「新しい使用」を意味するuを押すことで)。そのままにしておきたいものは、zを押して「新しいものを消去」します。これらは、以前に編集したため、次のようなものになるでしょう:
- /etc/conf.d/clock
- /etc/conf.d/hostname
- /etc/conf.d/keymaps
Gentooのアップグレードで–deepを使用する場合、これを行った後に行うのが良い習慣です:
revdep-rebuildこの段階ではおそらく必要ないでしょうが、実際にはほとんどのケースで必要ありませんが、紹介しておく価値があります。これにより、システムにインストールされているソフトウェアが、その依存関係であるライブラリとバイナリ互換性があるかどうかを確認し、互換性がない場合は再インストールします(当然、新しいバージョンのライブラリに対して再構築されます)。通常、重要なライブラリがメジャーバージョン番号を上げたときにのみこれを行う必要があります。時には、portageが特定のライブラリに対してこれを行うように促すこともあります。このコマンドにパッケージ識別子を与えると、必要に応じてそれに依存するすべてを再構築します。したがって、その名前は「逆依存関係再構築」の略です。単独では、すべてを確認するだけです。(バイナリディストリビューションにはこれに相当するものはおそらくありません。特定のリリースの更新は、依存関係とのバイナリ互換性を破るバージョンへのライブラリのアップグレードを含むことはあまりありません。その代わり、古いバージョンは必要に応じてパッチが当てられ、新しいバージョンは次のメジャーリリースまで保持されます。)
これはかなり大きな更新なので、すべてが正常であることを確認するために再起動します。これは基本的にオプションです。再起動しない場合は、
source /etc/profileこれは、環境の変更を考慮に入れるためです。これにはほぼ確実にgccのアップグレードが含まれています。
そしてopensshがアップグレードされたので、
/etc/init.d/sshd restart他の皆さんは、再起動後にお会いしましょう。
4.4 VMWare Tools
トピックから外れますが、必要であり、明白ではありません。
GentooにVMWare Toolsをインストールするには、カーネルを再コンパイルする必要があります(現在のカーネルがシステムのgccの以前のバージョンで構築された場合、VMWare Toolsインストーラーが不満を言うため、gccがアップグレードされたばかりです)。
genkernelオプションは、すべてが再コンパイルされることを保証しますが、以前のカーネル設定は保持されます。以前に他の変更を行った場合に備えてです。
genkernel --clean --no-mrproper all
reboot再起動後、VMWare Workstationを使用している場合は、次のようにします:
emerge --ask --verbose vmware-workstation-toolsこれにより、さらにプロンプトが表示されます。他のバージョンのVMWare(VMWare ServerやVMWare Fusionなど)を実行している場合は、次のようにします:
mkdir /etc/init.d/rc{0,1,2,3,4,5,6}.dこの場合、尋ねられたときに、initスクリプトは/etc/init.dにあり、rc0.dからrc6.dのディレクトリも/etc/init.dにあります。VMWare Toolsインストーラーは、これらをデフォルトとして検出し、提供します。rc n.dディレクトリは何も行いません。これは、VMWareインストーラーがそれを望んでいるために存在するだけです。後で削除できます。
VMWare自体でVMWare Toolsのインストールを選択します。
mount /dev/cdrom /mnt/cdrom
cd ~
tar --extract --verbose --gzip --file /mnt/cdrom/VM*.tar.gzVMWare Toolsインストーラーは、リモートではなく仮想マシンのシステムコンソールで実行する必要があります。インストーラー自体がこれを無視すると、あなたに思い出させます。:-)
cd vmware-tools-distrib
./vmware-install.plそしてプロンプトに従ってください。現在、vmhgfsおよびvmxnetモジュールはビルドされないことが知られていますが、それ以外はすべて問題ないはずです。
次回の再起動時に自動的に起動するように設定します。
rc-update add vmware-tools defaultVMWare Toolboxを使用するには、その依存関係のいくつかをビルドする必要があります。これはX11アプリケーションなので、ボックス自体にデスクトップ環境が必要です(Perfect Setupではおそらく必要ありません)または次のようにします:
vi /etc/ssh/sshd_config「X11Forwarding」を含む行を見つけて、それがコメントアウトされていないことを確認し、「yes」に設定します。
/etc/init.d/sshd restartそして、必要な最小限のX11依存関係をインストールします。
emerge --ask --verbose libXi xauthリモートマシンからX11フォワーディングでログインし、実行して、必要な設定を行います。ホストのRTCと同期するなどの必要なことを行うための他の方法は本当にありません(特にAMDホストのVMWare Serverでは非常に必要です)や、スナップショットを許可するために。
ssh -X [email protected]
vmware-toolboxすべてが正常に動作することを確認するために再起動することをお勧めします。
update-modules force
reboot4.5 将来の定期的な更新
典型的なワークフローは、
emerge --sync
emerge -avND world
# (emerge --ask --verbose --newuse --deep worldの短縮形)リストされたアップグレードが妥当に見える場合は、Returnを押して進めてください。最後に設定ファイルが更新されたことを通知される場合があります。その場合は、
dispatch-confそして、促された場合や疑問がある場合は、
revdep-rebuildそれが必要ないときにこれを行っても、時間がかかるだけで害はありません。しばらく考えた後、再インストールする必要がないことを伝えてくれます。
アップグレードされたサービスを再起動することを忘れないでください。(UbuntuやおそらくDebianとは異なり、それを自動的に行うことはありません。)
これは約1週間に1回行うのが賢明です。そうすれば、変更が段階的に行われ、通常は数分で完了します。逆に、Gentooシステムで長い間更新を行わなかった場合は非常に苦痛です。上記で行ったのは、最新のstage3リリースからマシンを最新の状態に保つことの同等物です。これは、まったく新しい空のシステムから行ったものでした。サービスやユーザーが多数稼働している場合を想像してみてください。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。