仮想端末を一時的にロックする

2010/08/31未分類import
共用のパソコン,あるいは研究室に置いている自分のノートパソコンから別のパソコン
(というかこのページを運営しているサーバ)にネットワーク経由でログインしているとき,
席を空ける場合がある.その際,操作している仮想端末にロックを掛けてセキュリティーリスクを軽減したいと考えるわけである.

その場合にはvlockというコマンドが使用できるらしい.
Lennyにはデフォルトでは入っていないので探してインストールする.
BigOwl:~# aptitude search vlock
p   vlock                                                         - Virtual Console locking program
BigOwl:~# aptitude install vlock
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
タスクの記述を読み込んでいます... 完了
以下の新規パッケージがインストールされます:
  vlock
更新: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
38.1kB のアーカイブを取得する必要があります。展開後に 221kB のディスク領域が新たに消費されます。
拡張状態情報を書き込んでいます... 完了
取得:1 http://ftp.jp.debian.org lenny/main vlock 2.2.2-3 [38.1kB]
38.1kB を 1s 秒でダウンロードしました (27.2kB/s)
未選択パッケージ vlock を選択しています。
(データベースを読み込んでいます ... 現在 146879 個のファイルとディレクトリがインストールされています。)
(.../vlock_2.2.2-3_i386.deb から) vlock を展開しています...
man-db のトリガを処理しています ...
vlock (2.2.2-3) を設定しています ...
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
拡張状態情報を書き込んでいます... 完了
タスクの記述を読み込んでいます... 完了

BigOwl:~#
実行すると端末上に以下のような表示が現れる.
BigOwl:~# vlock

This TTY is now locked.

Please press [ENTER] to unlock.
これでちょっと席を外す際にも安心できる.一般ユーザの場合も同様.
  • aオプションをつけると,ロックした端末以外の端末や,別の端末から新規に接続するものもロックできるらしいが,あまり使わなそうである.

FirefoxをLennyにインストールする

2010/08/28未分類import

最新版Firefox(3.6.8)をDebian Lennyにインストール

Firefoxというwebブラウザがありますが,DebianにはIceweaselという名前で古いバージョン(3.0系)がインストールされています*1
とにかく,最新の3.6.8を使いたくなったのでインストールしました.プラグインが動かないものですから…….

インストール手順

同じものをWikiにも載せるはずですが,とりあえずこちらで先に.

まず,Firefox 3.6.8のLinux版を公式ページからダウンロードします*2
そして適当な場所で解凍します.解凍するとfirefoxというディレクトリができているはずです.
ushi@BigOwl:~/Desktop$ tar -jxvf firefox-3.6.8.tar.bz2
ushi@BigOwl:~/Desktop$ ls
・
・
firefox
・
・
ushi@BigOwl:~/Desktop$
するともう実行形式になっているので,それを適切なフォルダ(というかディレクトリか)に移動します.
普通は,自分で追加したアプリケーションソフトは/opt以下に置くらしいので,その流儀に従います.
ushi@BigOwl:~/Desktop$ su
パスワード:
BigOwl:/home/ushi/Desktop# mv firefox /opt/
BigOwl:/home/ushi/Desktop# cd /opt
BigOwl:/opt# ls
atokx3 firefox
BigOwl:/opt# mv firefox firefox-3.6.8
これでこのフォルダの中のfirefoxというファイルを実行すれば,このバージョンのFirefoxが起動します.
適当にランチャ(Windowsにおけるショートカットアイコン)を作ってやれば楽に使えます.

↓私はパネルにFirefoxのランチャを置いてます.
text3166.png


作り方はパネル上で右クリック→パネルへ追加→カスタム・アプリケーションのランチャの順に進んでいきます.
すると下のようなウィンドウが出るので,下のような内容を記述してやります.
Screenshot-ランチャのプロパティ-firefox-3.6.8.png


ただし,このままでは,フラッシュプレイヤーが入っていないので,
アドビのサイトからLinux版の最新のもののtar.gz版をダウンロードしてきます.
これを解凍すると,libflashplayer.soというファイルが出てきますので,これを上記の/opt/firefox-3.6.8/内のpluginsの中へ放り込みます.すると,フラッシュも使用できるようになります.

It's All Text!をインストール.

目的はこのプラグイン.前にも日記で紹介しましたが,
ブラウザの編集フォームを使い慣れたエディタで編集できるというものです.
例えばこのWikiを編集する際の強い味方になってくれる訳なのです.
Windows版のFirefoxでは入れていたんですけど,Debianは面倒だったのでやっていなかったのです.
もっと早くすれば良かったですかねぇ.

Firefoxのプラグインに関するサイトから,ダウンロードしFirefox上でインストールします.
これだけで使えます.

*1 : 名前が違うというのは,Debianを開発している側が,Firefoxの側にフリーソフトとして何らかの問題があると判断したからだと思いました.Debianは厳密なのですね

*2 : どうやら,閲覧しているブラウザか何かでダウンロードするバージョンを判定しているよう.「Linux版をダウンロード」っていうようになっていると思うのですが,なっていなければ各OS対応版を探してください.

一括処理の方法

2010/08/15未分類import

Avidemuxを利用した動画ファイルの一括処理

コマンドラインから動画ファイルを一括処理する例.
骨子ですが,先ほど用意したスクリプトファイルに手を加えて,
実行したコマンドをシェルスクリプトに組み込んで,
フォルダ内にあるmpegファイルを一括変換してくれるプログラムを書きます.

シェルスクリプト初心者なので,とりあえず動けばいい,ということにします.

スクリプトの編集

例えば,以下のように編集してやります.
この例ではファイルをロードする行とカット編集の部分を消しています.
CMカットはできないですが,ファイルのロードがない分,汎用性が向上します.
//AD  <- Needed to identify//
//--automatically built--
//--Project: /途中省略/tera-hdd/mi-encode/SW-1.js

var app = new Avidemux();

//** Video **
// 01 videos source 
//03 segments

//** Postproc **

//** Filters **
app.video.addFilter("deinterlace","motion_trigger=15","blend_trigger=9");
app.video.addFilter("mpresize","w=1280","h=720","algo=0");

//** Video Codec conf **
app.video.codec("X264","AQ=24","188 00 00 00 00 00 00 00 00 00 00 00 00 28 00 00 00 1e 00 00 00 3c 00 00 00 0a 00 00 00 27 00 00 00 05 00 00 00 01 00 00 00 28 00 00 00 19 00 00 00 fa 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 05 00 00 00 10 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5a 00 00 00 ");

//** Audio **
app.audio.reset();
app.audio.codec("aac",192,4,"80 00 00 00 ");
app.audio.normalizeMode=0;
app.audio.normalizeValue=0;
app.audio.delay=0;
app.audio.mixer("NONE");
app.setContainer("MP4");
setSuccess(1);
//app.Exit();

//End of script

シェルスクリプトの作成

フォルダ内のすべてのmpegファイルを同一設定でmp4へ変換,
その後mpegファイルを別のディレクトリへ移動して,インデックスファイルを削除して,操作完了としましょう.
#/bin/bash

for mpeg in *.mpg
do
avidemux2_cli --autoindex --load "$mpeg" --run /途中省略/tera-hdd/mi-encode/Job-Avidemux/HD-16-9-1280.js --save "$mpeg-1280.mp4"
done

for mp4before in *.mpg-1280.mp4
do
mp4after=`echo "$mp4before" | sed -e "s/\.mpg-1280//g"`
mv "$mp4before" "$mp4after"
done

for mpeg in *.mpg
do
mv "$mpeg" "/途中省略/tera-hdd/mi-encode/tekito/kanryo/$mpeg"
done


for idx in *.mpg.idx
do
rm "$idx"
done
これで,一応の処理ができるはず.私の環境では実行できました.

コマンドラインから実行

2010/08/15未分類import

Avidemuxをコマンドラインから実行する

とりためた録画ファイルを適当に(雑に)一括処理する方法を紹介します.
そのための一歩,まずはコマンドラインからAvidemuxを実行する手順を示します.

その一助となるのはやはり,avidemux2_cli.pdf:manページ*1

ソースの用意

適当にmpegファイルを用意します.
今回試しに使うのは,デジタル放送の録画ソースをMPEG-PSに変換したものです.

スクリプトファイルの作成

Avidemuxを通常起動して,適当なMPEGファイルを開きます.
そのファイルを適当なコーデック,フィルタを設定して,プロジェクトファイルを保存します.
拡張子はjsとしてください.ここではSW-OP.jsとして保存しています.
たとえば,その中身は次のようになっています.
//AD  <- Needed to identify//
//--automatically built--
//--Project: /途中省略/tera-hdd/mi-encode/SW-OP.js

var app = new Avidemux();


//** Video **
// 01 videos source 
app.load("/途中省略/tera-hdd/mi-encode/ストライク ウィッチーズ2 第1話「ふたたび空へ」.mpg.idx");
//01 segments
app.clearSegments();
app.addSegment(0,2603,2695);
app.markerA=0;
app.markerB=2694;
app.rebuildIndex();

//** Postproc **
app.video.setPostProc(3,3,0);

app.video.setFps1000(29970);

//** Filters **
app.video.addFilter("deinterlace","motion_trigger=15","blend_trigger=9");
app.video.addFilter("mpresize","w=1280","h=720","algo=0");

//** Video Codec conf **
app.video.codec("X264","AQ=22","188 00 00 00 00 00 00 00 00 00 00 00 00 28 00 00 00 1e 00 00 00 3c 00 00 00 0a 00 00 00 26 00 00 00 05 00 00 00 01 00 00 00 28 00 00 00 19 00 00 00 fa 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 05 00 00 00 10 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5a 00 00 00 ");

//** Audio **
app.audio.reset();
app.audio.codec("aac",192,4,"80 00 00 00 ");
app.audio.normalizeMode=0;
app.audio.normalizeValue=0;
app.audio.delay=0;
app.audio.mixer("NONE");
app.setContainer("MP4");
setSuccess(1);
//app.Exit();

//End of script
このジョブファイルを編集することで,一括処理に利用できるようになります.

コマンドラインから実行する

こんな引数をとるコマンドを打ち込みます.
ushi@BigOwl:/途中省略/tera-hdd/mi-encode$ avidemux2_cli --autoindex --load "/途中省略/tera-hdd/mi-encode/ストライク ウィッチーズ2 第1話「ふたたび空へ」.mpg" --run /途中省略/tera-hdd/mi-encode/SW-OP.js --save "SW-OP.mp4"
なお,参考にしたページはこちらです.ありがとうございます.

*1 : manページをPDF化するのはこちらの記事をご覧ください