nyan &plamolinux に戻る|目次に戻る|**|前に戻る|次をみる
plamolinux の ML に 参考資料として、斯様な 物が有ります。
http://web.kyoto-inet.or.jp/people/jeanne/linux/linuxtips.html#17
make install した後, find を使って更新されたファイル のリストを作り, tar でまとめる。# touch /tmp/mark ; sleep 1 # make install # find /etc /sbin /lib /usr /var -cnewer /tmp/mark ! -type d -print >/tmp/files # tar -T /tmp/files -czf PACKAGENAME.tgzこんなの も 有るようです
http://www004.upp.so-net.ne.jp/nobushimizu/linux/plamo/page05-1.htm
これで 処理する事で 対応は 出来るようです。尚 そこには 他に 沢山の資料が 有るようです、また makepkg を キーワードで 検索されると 良いようです。
何も特別でない やって見るだけ
# cd /var/data/
# mkdir try_pack
# cd try_pack
# cp /usr/local/src/0001_gnupg/1-4-2/gnupg-1.4.2.tar.gz .
参考にして
man tar
-p, --same-permissions, --preserve-permissions
許可情報を全て抽出する
# tar xvzpf gnupg-1.4.2.tar.gz 2>&1 | tee untar_gnu
# ls -l
drwxrwxrwx 16 mm 1000 4096 Jul 27 04:11 gnupg-1.4.2/
-rw-r--r-- 1 root root 4166891 Aug 25 16:04 gnupg-1.4.2.tar.gz
-rw-r--r-- 1 root root 18397 Aug 25 16:07 untar_gnu
# cd gnupg-1.4.2/
# cd gnupg-1.4.2/
# ./configure 2>&1 | tee config_gnu
# mv config_gnu ../
参考にして
INSTALL の 抜粋
By default, `make install' will install the package's files in
`/usr/local/bin', `/usr/local/man', etc. You can specify an
installation prefix other than `/usr/local' by giving `configure' the
option `--prefix=PREFIX'.
==============================================
先行して インストール されているもの 手動で インストールしたもの
Thu Aug 25 16:38:42 JST 2005
# ls -l /usr/local/bin/
total 4500
-rwsr-xr-x 1 root root 2988903 Aug 25 09:52 gpg*
-rwxr-xr-x 1 root root 196180 Aug 25 09:52 gpgsplit*
-rwxr-xr-x 1 root root 1408450 Aug 25 09:52 gpgv*
lrwxrwxrwx 1 root root 13 Aug 24 08:04 ish -> ../../bin/ish*
lrwxrwxrwx 1 root root 13 Aug 24 08:04 nkf -> ../../bin/nkf*
参考のために 提示している これを 置き換える 予定である。
===============================================
さて ./configure の後 make をして
ここから 本番が 始まる
# mkdir -p work/usr
# make install prefix=`pwd`/work/usr 2>&1 | tee make_install_gnu
# mv make_install_gnu ../
# cd work/
# ls -l usr/bin/
total 4500
-rwxr-xr-x 1 root root 2988759 Aug 25 16:36 gpg*
-rwxr-xr-x 1 root root 196156 Aug 25 16:36 gpgsplit*
-rwxr-xr-x 1 root root 1408310 Aug 25 16:36 gpgv*
時間と容量の 項目に 注意 当然 異なった 時間と大きさに なっている。
# ls -l usr/
total 20
drwxr-xr-x 2 root root 4096 Aug 25 16:36 bin/
drwxr-xr-x 2 root root 4096 Aug 25 16:36 info/
drwxr-xr-x 3 root root 4096 Aug 25 16:36 libexec/
drwxr-xr-x 4 root root 4096 Aug 25 16:36 man/
drwxr-xr-x 4 root root 4096 Aug 25 16:36 share/
ここで 別途 インストール してあるものを 見ておこう
# ls -l /usr/local/libexec/gnupg/
total 636
-rwxr-xr-x 1 root root 148626 Aug 25 09:52 gpgkeys_finger*
-rwxr-xr-x 1 root root 256389 Aug 25 09:52 gpgkeys_hkp*
-rwxr-xr-x 1 root root 226975 Aug 25 09:52 gpgkeys_http*
これは 新規に ダミーインストールしてあるもの。つまり 今回 インストールしてあるもの
# ls -l usr/libexec/gnupg/
total 636
-rwxr-xr-x 1 root root 148598 Aug 25 16:36 gpgkeys_finger*
-rwxr-xr-x 1 root root 256361 Aug 25 16:36 gpgkeys_hkp*
-rwxr-xr-x 1 root root 226951 Aug 25 16:36 gpgkeys_http*
時間 の項目に注目 又 ファイルの 位置も 異なることに 注意、 今回 インストールしてあるものの ディレクトリを 明確にすると 以下の様になる。
# ls -l /var/data/try_pack/gnupg-1.4.2/work/usr/libexec/gnupg/
-rwxr-xr-x 1 root root 148598 Aug 25 16:36 gpgkeys_finger*
-rwxr-xr-x 1 root root 256361 Aug 25 16:36 gpgkeys_hkp*
-rwxr-xr-x 1 root root 226951 Aug 25 16:36 gpgkeys_http*
へてから パッケージの作成に 移る
# makepkg gnupg-1.4.2.tgz 2>&1 | tee pkg_gnupglog
gnupg-1.4.2.tgz を作成中...
# mv pkg_gnupglog ../../
途中で何か問い合わせを 受けても 改行 のみ 資料は いっちゃん最初に 記載した 参考資料の 場所に 有ると 思います。
# ls -l
-rw-r--r-- 1 root root 2865607 Aug 25 16:54 gnupg-1.4.2.tgz
drwxr-xr-x 7 root root 4096 Aug 25 16:36 usr/
pkgtool を 使用して 上書きインストールを する事にしましょう。 その前に gnupg が インストールされていないかの確認をしておきます。
# ls /var/log/packages/ | grep gnu
gnuplot
# ls /var/log/packages/ | grep pg
存在は していませんね?疑うならば ”# pkgtool”と起動して 確認すれば 良いでしょう。
上記の様に インストールは されていないことに なっているいるが 実際は tar から 手動にて インストール した場合は データー ベースに登録されてい ないということです。 そこで 上書きインストールするとともに データー ベース にも 登録をしてみようと いうことである。これは バージョンアップされたも のを インストールする場合 既に インストール してあるものを 簡単に削除出 来る様にしてより 便利に しよう ということです。 つまり、手動でインストールした場合に uninstool するのに 手間が かかるので 次善の 策として 採用を 図る。当然 apt rpm 等には 及ばないが 練習練習である。
pkgtool を 立ち上げて 実行 してみよう
# pkgtool
~~~~~~~~~~~~~~~~~~~~~~~~~~
Plamo Linux パッケージツール (derived from pkgtool version 9.1.0)--
Plamo Linux パッケージツールへようこそ
どうしましょうか?
Current カレントディレクトにあるパッケージをインストール
Other 他のディレクトリからパッケージをインストール
Floppy フロッピーからパッケージをインストール
Remove インストールされているパッケージを削除
View パッケージに含まれているファイルを閲覧
Setup インストール済パッケージのインストールスクリプトを再実行
Exit pkgtool の終了
< OK >
=====================================
SELECT Current
SELECT < OK >
~~~~~~~~~~~~~~~~~~~
Size: Compressed: 2798 K, uncompressed: 8050 K.
Yes gnupg-1.4.2 をインストールする
No gnupg-1.4.2 はインストールしない
Quit インストールを中止する
< OK >--------
============================
SELECT Yes
SELECT < OK >
~~~~~~~~~~~~~~~~~
#
===================================
確認をしておこう
# ls -l /usr/local/libexec/gnupg/
total 636
-rwxr-xr-x 1 root root 148626 Aug 25 09:52 gpgkeys_finger*
-rwxr-xr-x 1 root root 256389 Aug 25 09:52 gpgkeys_hkp*
-rwxr-xr-x 1 root root 226975 Aug 25 09:52 gpgkeys_http*
# ls -l /usr/local/bin/
total 4500
-rwsr-xr-x 1 root root 2988903 Aug 25 09:52 gpg*
-rwxr-xr-x 1 root root 196180 Aug 25 09:52 gpgsplit*
-rwxr-xr-x 1 root root 1408450 Aug 25 09:52 gpgv*
lrwxrwxrwx 1 root root 13 Aug 24 08:04 ish -> ../../bin/ish*
lrwxrwxrwx 1 root root 13 Aug 24 08:04 nkf -> ../../bin/nkf*
旧いままである 、一方 データー ベースには 登録 されているか どうか の 確認を してみよう
# ls /var/log/packages/ | grep gnu
gnupg-1.4.2
gnuplot
では 削除して再度 インストールを してみよう
# pkgtool
Remove インストールされているパッケージを削除
+--------------------------走査中----------------------------+
| どのパッケージをインストールしたかのリストを作成 |
| するためにシステムを調べています.しばらくお待ちください.
削除するパッケージの選択
削除したいバッケージを選択してください.UP/DOWN |
| キーでカーソルを動かし |
| スペースキーで削除したいパッケージをマークしてください.マークは |
| 任意の個数付けることができます
[X] gnupg-1.4.2
< OK >
パッケージの削除中---------------------+
| |
| gnupg-1.4.2 を削除しています. |
| |
| 他のパッケージと重複しているファイルの有無をそれぞれのフ |
| ァイルごとにチェックしているので,パッケージの削除にはか |
| なり時間がかかります. |
| 進展状況を見るには,別のコンソールを起動して以下のコマン |
| ドを 実行してください |
| |
| tail -f /var/log/setup/tmp/PKGTOOL.REMOVED
-パッケージの削除完了----------------+
-パッケージの削除完了----------------+
| パッケージは削除されました. |
| 削除されたファイルのリストは/var/log/setup/tmp: |
| PKGTOOL.REMOVED に作成しました. |
+-------------------------------------------------+
| < OK >
|Exit pkgtool の終了 | |
< OK >
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ほなら
# ls /var/log/packages/ | grep gnu
gnuplot
# ls -l /usr/local/bin/
-rwsr-xr-x 1 root root 2988903 Aug 25 09:52 gpg*
-rwxr-xr-x 1 root root 196180 Aug 25 09:52 gpgsplit*
-rwxr-xr-x 1 root root 1408450 Aug 25 09:52 gpgv*
lrwxrwxrwx 1 root root 13 Aug 24 08:04 ish -> ../../bin/ish*
lrwxrwxrwx 1 root root 13 Aug 24 08:04 nkf -> ../../bin/nkf*
つまり あくまで 手動で インストール した物は どうしようもない という ことの 様である。
どうやって 手動で インストールしたものをアンインストール( 削除) する か? という 問題に なります。
にゃんたろう 拝!
2005年10月11日 (火) 22:47:59 JST 作成