バッチ処理中にtopコマンドをそのまま叩くと下記のように怒られる。
top: failed tty get
なのでexec()などからtopを叩きたい場合は下記のようにパラメーターをつければOK。
top -b -n 1
「-b」がバッチへの対応。「-n 1」は更新回数。これを指定しないと明示的に処理を止めるまで結果を吐き続ける模様。
バッチ処理中にtopコマンドをそのまま叩くと下記のように怒られる。
top: failed tty get
なのでexec()などからtopを叩きたい場合は下記のようにパラメーターをつければOK。
top -b -n 1
「-b」がバッチへの対応。「-n 1」は更新回数。これを指定しないと明示的に処理を止めるまで結果を吐き続ける模様。
めも。
# 1秒間隔 top -d1 # 10秒間隔 top -d10 # 0.1秒間隔 top -d0.1
# 解凍 tar xvzf [ファイル名].tar.gz # 圧縮 tar cvzf [圧縮後のファイル名].tar.gz [圧縮前のファイル名]
下記を実行。
yum install yamdi
もしかしたらdag’sリポジトリがあったほうがいいかも。
「/etc/yum.repos.d/dag.repo」を作成し下記を記述。
[dag] name=Dag RPM Repository for Red Hat Enterprise Linux baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt enabled=1 protect=0
dag’s rpm gpg key をローカルへ保存し、インポートを行う。
# 下記URLより取得 wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt -P /tmp # インポート rpm --import /tmp/RPM-GPG-KEY.dag.txt
以上。
かなりスパッとインストールできたので手順をめも。
1, まずはyumのアップデートを行う。
yum update
2, デベロップメントツールをインストール。
yum groupinstall "Development tools"
3, ProtectBaseをインストールする。
yum install yum-protectbase
4, 下記ディレクトリに移動。
cd /etc/yum.repos.d/
5, リポジトリに変更を加える前にバックアップを取る。
cp -prv ../yum.repos.d{,.orig}
6, CentOS-Base.repo, CentOS-Media.repo, virtualmin.repoの各リポジトリセクションに「protect=1」の記述を追加する。
sed -i '/gpgkey=/a\protect=1' CentOS-{Base,Media}.repo sed -i '/gpgkey=/a\protect=1' virtualmin.repo
7, dag’sリポジトリを追加する。「/etc/yum.repos.d/dag.repo」を作成し下記を記述。
[dag] name=Dag RPM Repository for Red Hat Enterprise Linux baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt enabled=1 protect=0
8, dag’s rpm gpg key をローカルへ保存し、インポートを行う。
# 下記URLより取得 wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt -P /tmp # インポート rpm --import /tmp/RPM-GPG-KEY.dag.txt
9, ffmpegをいくつかの開発パッケージと併せてインストール。
yum install ffmpeg-devel php-devel re2c php-xml ffmpeg
10, インストール後、下記コマンドでffmpegのバージョンを確認。
ffmpeg ↓ FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers ... ... ...
11, ffmpeg-phpのエクステンションをコンパイル、インストールする。
# 新規にディレクトリを作成 mkdir /srv/build # 作成したディレクトリに移動 cd /srv/build # ffmpeg-phpのソースを取得 wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2 # 解凍する tar -xjf ffmpeg-php-0.6.0.tbz2 # 解凍したディレクトリに移動 cd ffmpeg-php-0.6.0/ # PHPの拡張モジュールをビルドする phpize # いつも通りのおまじないを実行 ./configure
12, ここで、コンパイルエラーを防ぐために下記コマンドを実行。
sed -i 's#PIX_FMT_RGBA32#PIX_FMT_RGB32#' ./ffmpeg_frame.c
13, makeしてインストール。
make make install
14, ffmpeg-phpエクステンションををロード。
echo -e "extension=ffmpeg.so\n" > /etc/php.d/ffmpeg.ini
15, アパッチを再起動。
service httpd restart
16, インストールはここで完了。下記コマンドでffmpegのインストール状況を確認可能。
php -i | grep ffmpeg php -m | grep ffmpeg
めも。
すでに「ffmpeg」をインストールしていて、「qt-faststart」のみを追加したいといったシチュエーション。
以下手順。
下記ディレクトリに移動。
cd /usr/local/src
SVNからソースコードをチェックアウト。
svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
チェックアウトしたディレクトリに移動。
cd ffmpeg
コンパイル後、qt-faststartのみを「/usr/bin/」へ移動
./configure make make test make tools/qt-faststart cp -a tools/qt-faststart /usr/bin/
これでインストールは完了。
下記コマンドでインストールの完了を確認可能。
which qt-faststart ↓ /usr/bin/qt-faststart
こういわれたら。
configure: error: C++ compiler g++ does not work or no compiler found
こうする。
$ yum install gcc gcc-c++
入力ミスの際バックスペースを打ちたいのに「^H」となってしまい文字列を消せない場面があるのでどうにかならないかと調べてみた。
少しぐぐるとどこかのフォーラムに下記のような記述を発見。
In the terminal, type Ctrl + v and press your backspace. You’ll see what code is sent as “erase”. Say it is ^H.
ということでターミナル上で文字を消したい場合は「Ctrl + v + backspace」を押せばいいらしい。
これはまれに見る大発見。めちゃくちゃ便利。