Home Update クッキー及びWeb ビーコンについて



覚えておきたい必須コマンド[ RPM編 ]

 Linuxでソフトウェアをインストールする場合、方法は2種類あります(厳密には3種類)。ひとつはソースパッケージからビルドする方法、もうひとつは、RPMパッケージからインストールする方法です。ソースからビルドする場合、自分の好みに合わせて自由にカスタマイズできる反面、豊富な知識をもっていないとトラブルシューティングが非常に困難で、敷居が高くなります。RPM(Redhat Package Manager)パッケージでは、rpmというコマンドを使用することで、複雑で難解な部分を全て自動化してくれます。ソフトウェアのインストール、アップグレードなどを簡単に行うことができ、その他にも「問い合わせ」「検証」「署名」などの機能も提供してくれます。ここではその便利なrpmコマンドについて解説していきます。




■RPMパッケージの新規インストール「-ivh」

 rpmパッケージを新規インストールするには「-i 」(install)オプションを使用します。「-v 」(Verbose)はインストールの詳細情報を表示させるオプション、「-h」(hash)は進捗状況をハッシュマーク(#)で表示してくれます。 なお、「-vv」とvを2つ使用することによってさらに詳細な進捗状況を表示させることができます。

# rpm -ivh telnet-server-0.17-23.i386.rpm
  Preparing...       ###############################[100%]
    1:telnet-server   ############################### [100%]



■RPMパッケージのアップグレード「-Uvh」

 RPMパッケージのアップグレードを行う場合は、「-U」(Upgrade)オプションを使用します。対象とするパッケージがインストールされているかわからない場合には、「-U」を「-i 」の代用として使用します。なお、旧バージョンに戻したい場合には「--oldpackage」オプションを用いて、
「rpm -Uvh --oldpackage 旧パッケージ名」のようにします。-U はシステムに同じパッケージが存在しない場合には、通常のインストールを行います。-F オプションと区別して使用するようにしましょう。

# rpm -Uvh telnet-server-0.17-23.i386.rpm
  Preparing...       ###############################[100%]
    1:telnet-server   ############################### [100%]

■RPMパッケージのアップグレード「-Fvh」

 -U オプション同様RPMパッケージのアップグレードを行いますが、システムに同じパッケージが存在しない場合は、インストールを行いません。-U オプションと区別して使用するようにしましょう。


◎インストールオプション
--force 強制的にパッケージを上書きする
--oldpackage 古いパッケージに置き換える
--nodeps 依存関係を無視してインストールする
--test テストインストールする(実際にインストールは行わない)
--replacefiles ファイルが既に存在する場合、置き換える
--noscripts スクリプトを実行しない
--root --root <ディレクトリ名>で、作業ディレクトリを指定する
--prefix --prefix <ディレクトリ名>でパッケージをインストールするディレクトリを指定する
--reLocate --reLocate <旧ディレクトリ名=新ディレクトリ名>で、インストール済みのパッケージをディレクトリを変更して再インストールする(i と併用)
--nomd5 MD5チェックサムによるファイル改竄の可能性の有無をチェックしません(Vと併用)

■RPMパッケージのバージョンを表示する「-q」

 RPMパッケージのバージョンを表示したい場合には、「-q」」(query)オプションを使用します。全てのインストール済みのパッケージを表示させるには「-qa」オプションを用います。

# rpm -q telnet
telnet-0.17-23

■RPMパッケージの詳細情報を表示する「-qi」


 RPMパッケージの詳細な情報を表示したい場合には、「-i 」(Infomation)オプションを併用し、
-qi」のように使用します。なお、-qip とすることでインストール前のRPMパッケージの詳細情報が表示されます。表示される情報は、-qi 実行時と同様のものです。

# rpm -qi telnet
Name : telnet Relocations: (not relocateable)
Version : 0.17 Vendor: Red Hat, Inc.
Release : 23 Build Date: 2002年07月23日 22時05分54秒
Install date: 2003年10月19日 21時02分04秒 Build Host: stripples.devel.redhat.com
Group : Applications/Internet Source RPM: telnet-0.17-23.src.rpm
Size : 91323 License: BSD
Signature : DSA/SHA1, 2002年09月04日 06時41分07秒, Key ID 219180cddb42a60e
Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
Summary : The client program for the telnet remote login protocol.
Description :
Telnet is a popular protocol for logging into remote systems over the
Internet. The telnet package provides a command line telnet client.


■インストールされたRPMパッケージのディレクトリを調べる「-ql」

 「-l 」(list)オプションをつけると、インストールされたRPMパッケージに含まれるファイルをを調べることができます。インストールする前に予め、どのようなファイルがインストールされるかを調べるには、
-qlp
とします。

# rpm -ql telnet-server
/etc/xinetd.d/telnet
/usr/sbin/in.telnetd
/usr/share/man/man5/issue.net.5.gz
/usr/share/man/man8/in.telnetd.8.gz
/usr/share/man/man8/telnetd.8.gz

■RPMパッケージのアンインストール「-e」

 RPMパッケージをアンインストールするには、「-e」(erase)オプションを使用します。アンインストールする際に、依存関係を無視して削除する場合は、「--nodeps」オプションを付け加えます。

# rpm -e telnet-0.17-23

■RPMパッケージファイルの検証「-V」

 パッケージのインストール後にパッケージのファイルをどのように書き換えたかを検証するには「-V」オプションを使用します。問題がなければ、「.......」のようにドットで表示されます。-V オプションを利用することでRPMデータベースに記録されている内容と実際にインストールされているファイルが一致しているかどうか調べることができるので、ファイルが改竄されていないかどうか、しかるべきファイルサイズでインストールされているかどうかをチェックすることができるので重宝します。また、インストール時にあったファイルが見つからない場合は、missing と表示されます。インストールされている全てのパッケージを検査するには、-Va オプションを使用します。

# rpm -V telnet-server
S.5....T c /etc/xinetd.d/telnet

 なお、変更が加えられていない場合は、「.......」のように表示されますが、変更が加えられている場合には、「S」や「T」、「5」のような検証コードが表示されます。以下にこれら検証コードの意味について記載しておきます。

 S ファイルサイズが異なっている
 5 MD5チェックサムが異なる
 L シンボリックリンクが変更されている
 T ファイルの更新時刻が変更されている
 D デバイスファイルが変更されている
 U ファイルの所有者が変更されている
 G ファイルの所有グループが変更されている
 M ファイルのパーミッションが変更されている

■指定されたファイルのパッケージを表示する「-qf」

# rpm -qf /etc/rndc.key
bind-9.2.1-16



■RPMパッケージからファイルを抽出する

RPMから特定のファイルを抽出できるコマンドとして、rpm2cpio があります。これを使うことでインストールせずに必要なファイルを抽出して利用したり、ディレクトリ構成が前もって把握できるのでとても重宝します。以下のコマンドでは、どのようなファイルが格納されているかを調べます。rpm -qlp と同様の意味になります。

# rpm2cpio mt-daapd-0.2.1.1-1.fc3.i386.rpm | cpio --list

実際に抽出するには以下のようにします。まず、ディレクトリを作成し、そこを作業用ディレクトリとします。コマンド実行後は階層ごとにファイルが抽出されます。

# mkdir mt-daap
# cd mt-daap
# rpm2cpio ~/mt-daapd-0.2.1.1-1.fc3.i386.rpm | cpio -id







TOPに戻る

Sponcerd Link


Search
 
Web サイト内
Rental Server

【レンタルサーバのXbit】 低価格・高品質のビジネスクオリティー。300メガ1,050円〜30分で サービススタート可能!


容量300MB、月額125円、高性能なサーバが日本最大級のバックボーンに直結。
さくらのレンタルサーバ



当サイトはLinux自宅サーバーの構築を目的としたサイトです。
当サイトに関するご意見、ご要望等は、こちらのメールアドレスよりお願いします。
Beginning | Introduction | Installation | Server |
Security | Tips | Guest Book | Related-Sites
Copyright©2003-2006 KORO All Rights Reserved.
総計:
今日:
昨日: