CentOS

【CentOS】SSHでtopコマンドを叩く方法。

バッチ処理中にtopコマンドをそのまま叩くと下記のように怒られる。

top: failed tty get

なのでexec()などからtopを叩きたい場合は下記のようにパラメーターをつければOK。

top -b -n 1

「-b」がバッチへの対応。「-n 1」は更新回数。これを指定しないと明示的に処理を止めるまで結果を吐き続ける模様。

 

【CentOS】topコマンドの更新頻度を指定する。

めも。

# 1秒間隔
top -d1

# 10秒間隔
top -d10

# 0.1秒間隔
top -d0.1

 

【CentOS】tarコマンド自分用まとめ。

# 解凍
tar xvzf [ファイル名].tar.gz

# 圧縮
tar cvzf [圧縮後のファイル名].tar.gz [圧縮前のファイル名]

 

【CentOS】PHPVideoToolKitで必要な「yamdi」をインストールする。

下記を実行。

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

以上。

 

【CentOS】CentOS6にffmpeg、ffmpeg-phpをインストールする。

かなりスパッとインストールできたので手順をめも。

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

 

【CentOS】「ffmpeg」に「qt-faststart」プラグインを追加する。

めも。

すでに「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

 

【CentOS】configure時、C++とg++のコンパイラが無いよと怒られたら。

こういわれたら。

configure: error: C++ compiler g++ does not work or no compiler found

こうする。

$  yum install gcc gcc-c++

 

【CentOS】ターミナルでバックスペースする方法。

入力ミスの際バックスペースを打ちたいのに「^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」を押せばいいらしい。

これはまれに見る大発見。めちゃくちゃ便利。