AmazonLinux
pv

Amazon Linuxにpvをインストールする

pvとは

pipe viewの略で、パイプ処理の進捗を確認できるコマンドである。

Amazon Linuxにyumでインストールする

手順概要

デフォルトではyumリポジトリに含まれていないので自分でリポジトリを書いて公開鍵を取得する必要がある。
[ここ]にそう書いてある。

1. ivarch.repoファイルを作成

yum.repos.d配下にyumリポジトリを新規作成します。

# vi /etc/yum.repos.d/ivarch.repo
[ivarch]
name=RPMs from ivarch.com
baseurl=http://www.ivarch.com/programs/rpms/$basearch/
enabled=1
gpgcheck=1

2. yumインストール実行(失敗します)

リポジトリを用意しただけでは、うまくいきません。

$ sudo yum install -y pv
読み込んだプラグイン:langpacks, priorities, update-motd
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ pv.x86_64 0:1.6.6-1 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

==========================================================================================================================================================
 Package                          アーキテクチャー                     バージョン                              リポジトリー                          容量
==========================================================================================================================================================
インストール中:
 pv                               x86_64                               1.6.6-1                                 ivarch                                59 k

トランザクションの要約
==========================================================================================================================================================
インストール  1 パッケージ

総ダウンロード容量: 59 k
インストール容量: 110 k
Downloading packages:
警告: /var/cache/yum/x86_64/2017.12/ivarch/packages/pv-1.6.6-1.x86_64.rpm: ヘッダー V3 DSA/SHA1 Signature、鍵 ID 3fc56f51: NOKEY/s |    0 B  --:--:-- ETA 
pv-1.6.6-1.x86_64.rpm の公開鍵がインストールされていません
pv-1.6.6-1.x86_64.rpm                                                                                                              |  59 kB  00:00:01     


pv-1.6.6-1.x86_64.rpm の公開鍵がインストールされていません

3. 公開鍵のインポート

公開鍵をインポートする必要があります。

# rpm --import http://www.ivarch.com/personal/public-key.txt

4. yumインストール実行(成功)

$ sudo yum install -y pv
読み込んだプラグイン:langpacks, priorities, update-motd
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ pv.x86_64 0:1.6.6-1 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

==========================================================================================================================================================
 Package                          アーキテクチャー                     バージョン                              リポジトリー                          容量
==========================================================================================================================================================
インストール中:
 pv                               x86_64                               1.6.6-1                                 ivarch                                59 k

トランザクションの要約
==========================================================================================================================================================
インストール  1 パッケージ

合計容量: 59 k
インストール容量: 110 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : pv-1.6.6-1.x86_64                                                                                                         1/1 
  検証中                  : pv-1.6.6-1.x86_64                                                                                                         1/1 

インストール:
  pv.x86_64 0:1.6.6-1                                                                                                                                     

完了しました!

5. pvを使用してみる

コピー

# pv /var/log/messages > /tmp/bk_messages.log                                                                                        
1.32MiB 0:00:00 [1.42GiB/s] [==========================================================================================================>] 100%   

圧縮

# pv bk_messages.log | gzip > bk_messages.log.gz                                                                                  
1.32MiB 0:00:00 [41.5MiB/s] [==========================================================================================================>] 100%            

# ls -l bk*
-rw-r--r-- 1 root root 1386056 Jan 26 16:26 bk_messages.log
-rw-r--r-- 1 root root  242790 Jan 26 16:28 bk_messages.log.gz