2012/11/24

Ubuntu  プリンターの設定

Ubuntu をインストールしたPCでプリンターを使い場合、以前よりずっと多くの機種に対応するようになった。特に Ubuntu で cups (Unix系OS で使われている印刷システム) が採用されてからはほぼ全てのプリンターが使えるようになった。(参考:5)尚,個々ののプリンターが Ubuntu (Linux) で使用可能かどうかについては 参考:1~4 で調べることが出来る。

cups ではプリンターが直接PCに接続されている場合もネットワークに接続されている場合も同じように設定出来る。いずれの場合にもまずPCないしはネットワークにプリンターを接続してから電源を入れる必要がある。 (参考:6)  

プリンターが直接PCに接続されている場合にはすぐに自動認識される。ネットワークに接続されている場合でも、プリンター、ないしはプリンターサーバーが共有に設定されていればやはり自動認識してくれる。したがって、ネットワークに接続されているプリンターが自動認識されないときに手動で設定すればいいということだ。(参考:6) 

ここではプリンターが

 1. 直接PCにつながっている場合
 2. 他のPCにつながっている場合
 3. プリンターサーバーを通してネットワークにつながっている場合
 4. シリアルポートでPCにつながっている場合

についてまとめてある。いずれの場合も異なるのはプリンターの検出のところだけだ。なお、3の ”プリンターサーバーを通してネットワークにつながっている場合”には自動認識されないことが起こりやすいので、手動での設定の仕方を書いてある。

プリンターの設定


1. プリンターの電源を入れる。
2. システムメニュー(画面右上)よりプリンターを選択


3. 出てきたウィンドウのメニューから追加を選択


4. プリンターの検出

その1 プリンターが直接PCにUSBケーブルでつながっている場合


 4-1. あたらしいウィンドウが出てきてプリンターが検出され,その結果が右下の方に出力される。



 4-2. 候補の中からUSBを選択して、”進む”をクリック


   ”5.”へ進む。


その2 プリンターが他のPCにUSBケーブルでつながっている場合

 ここではsambaがインストールされている場合について説明します。

 4-1. あたらしいウィンドウが出てきたらネットワークプリンターをクリックして”samba 経由の
    windows プリンター”を選択。


 4-2. 右側の”閲覧”をクリックする。


 4-3. 出てきた中から workgroup名 (下の例ではWORKGROUP)を選択(左側の三角を
             クリック)


 4-4. プリンターがつながっているPCを選択(下の例ではYASUSHI-DESKTOP)


 4-5. プリンターを選択して”OK”をクリック。(下の例ではPSC-1400-series)


 4-6. 4の画面に戻るので,ここで”進む”をクリック。



   ”5.”へ進む。


その3 プリンターがプリンターサーバーを通してネットワークにつながっている場合

 4-1. あたらしいウィンドウが出てきてプリンターの検出が始まるので、終わるまで待つ。


 4-2. プリンターが検出されなかったらネットワークプリンターを選択して”ネットワークプリンター
    を検索”をクリック。


 4-3. すると右側にホスト名の記入欄が現れるので,プリンターサーバーのアドレスを入れて
    ”検索”をクリック。



 4-4. 右下に”接続”という欄が出てくるので、その中から接続したいプリンターを選択して"進む"
    をクリック(ここではHP製なので AppSocket/HP JetDirect を選択する)



   ”5.”へ進む。



その4 プリンターがPCにシリアルポートでつながっている場合

 4-1. あたらしいウィンドウが出てきたら”LPT #1”を選択して”進む”をクリック



5. プリンターのメーカー(HP製のプリンターの場合の例)を選択して”進む”をクリック。


6. プリンターのモデル(左側)とドライバー(右側)を選択。(PSC 1400 の場合の例)
 ドライバーはどれでもいいと思うが,cupsという文字が入っているドライバーがあればそれが
 いいのではないかと思う。


7. 利用可能なオプションが示されたら、選択する場合にはチェックを入れて”進を”クリック、または何もせずそのまま”進む”をクリック。
8. プリンター名(必須)を入れて”摘要”をクリック。名前は自由に決めてよい。(”説明”や”場所”は
     任意)


9. テストページを印刷するかと聞かれる。”キャンセル”か”テストページの印刷”を選択して終了





参考

 1. プリンター動作報告

 2. Printers

 3. Printers in Ubuntu

 4. Printer List

 5. Common Unix Printing System

 6. Wiki / CUPS

 7. Ubuntu でプリンターを使うには

 8. CUPS 1.5.3

 9. CUPS でネットワークに接続されているプリンターを使うには

2012/11/20

Ubuntu  プリントサーバー(Planex Mini-101MG)の設定

自宅で何かを印刷する場合,プリンターをPCに接続して設定すればいい。設定のしかたはプリンター付属のマニュアルに丁寧に書いてある。

しかし、複数のPCを所有していて,それらでプリンターを共有したい時がある。

この場合もっとも簡単なのは、それぞれのPCにプリンターの設定をしておいて,毎回ケーブルを繋ぎかえることだ。しかし、いちいち繋ぎかえるのは煩雑だし,距離が長くなるとそれも難しくなる。

この様な場合にはLANを通して共有するといい。それには
 A.1台のPCにプリンターを接続しておいて、LANを通して他のPCと共有する。
 B.プリントサーバーを設置して、LANを通して全てのPCと共有する。
という方法がある。
Aの方法だと設定するだけでいいが、プリンターをつないだPCは常に稼働しておく必要がある。Bの方法だとPCの電源を落しても問題ないが、プリントサーバーが必要だ。

うちの場合には常時稼働を前提にPCを組んでいないので、プリントサーバーを導入した。
導入したプリントサーバーはプラネックスのMini-101MG。
決め手は値段と Linux にも対応していると明記してあったから。

設定は Windows の場合には Setup-Utility から設定できるが,その他のOSではWebブラウザから行なう。なお,設定は有線LANから行なう.

プリントサーバーの接続

 1. プリントサーバーの電源を切った状態でネットワークへ接続する。
 2. プリンターの電源を切った状態でプリンターとプリントサーバーをUSBケーブルで接続する。
 3. プリントサーバーへACアダプターを接続後、ACアダプターをコンセントへ接続する。
 4. プリンターの電源を入れる.

プリントサーバーの設定

 1. WebブラウザからURLを入力する。(デフォルトの設定では 192.168.1.1  
 2. ユーザー名とパスワードを入力する。
    ユーザー名 admin
    パスワード 0000 
 3. プリントサーバ名を指定する。
 4. 無線LANの設定
    暗号化設定:  接続したいネットワークの環境(自宅のルーターの設定)に合わせる。
    サイトサーベイ: 接続したいネットワーク名(自宅のネットワーク名)を選択
 5. TCP/IPの設定
    IPアドレス,サブネットマスクを指定する。これは接続したいネットワークの環境(自宅の
    ルーターの設定)に合わせて設定する。サブネットマスクは 255.255.255.0であることが
    多い。
    デフォルトゲートウェイは 0.0.0.0 
    DHCPサーバ機能 無効 

 注意点

プラネックスのMini-101MGには以下のような癖がある。

 - 途中で印刷を中断するとハングアップすることがある。
   この場合には一度プリンターサーバーの電源を切って、しばらく待たなければならない。

 - 稼働中にプリンターのスイッチを切ると、その後プリンターのスイッチを入れても認識しない。
   この場合にはプリンターサー バーを再起動しなければならない。 


総括

最近はサーバー機能を持ったルーターや、無線LAN機能を持ったプリンターがある。また、デバイスサーバーも出回ってきている。特にNASの利用を考えるならデバイスサーバーの方が向いているだろう.     

2012/10/14

Ubuntu  動画ファイルの形式変換

YouTubeなどからファイル(動画)をダウンロードしてくると,多くの場合そのファイルはflv形式であるようです。このファイルを Ubuntu で様々なファイル形式に変換するにはいくつかの方法があります。

1. ffmpeg を使って変換する。


ffmpeg はLinux系で動画を変換するソフトウェアの一つで,コマンドラインから入力します。
なれるにはある程度時間はかかりますが,かなりのことが出来ます。

インストール 

 Ubuntu  ffmpeg のインストール方法
にまとめておきました。

使い方

 サンプルを参考に練習するには
 が参考になるでしょう。
 
使い方を知るには
  ffmpeg 使い方

 が程よくまとまっていて参考になります。

 詳しい使い方については
  http://fixedpoint.jp/ffmpeg/ffmpeg-doc.html
 が参考になります。


2. FirefoxのDownloadHelperを使って変換する。


flv形式のファイルをmp4形式、avi形式及び、mov形式変換するのであればFirefoxのDownloadHelperで変換することができます。

準備

 1. ffmpeg をインストール
   参考:Ubuntu  ffmpeg のインストール方法

 2. コンバーターに ffmpeg を指定
  - FireFox のツール → アドオン から DownloadHelperの設定 を選んで 設定 をクリック。
  - 自動変換 のタブを 選択し、自動変換の有効化にチェックを入れる。
  - コンバータに FFMpeg を選択し、その右横の空欄に/usr/local/bin/ffmpeg と、書き込む。

使い方

 1. メニューバーにあるDownloadHelperを右クリックする。
 2. 出てきたメニューから動画を変換を選択する。("変換されるファイル"というウィンドウが出る。)
 3. 出てきたウィンドウから,変換したいflv形式のファイルを選択し、開くをクリックする。
 4.  すると、”converterオプション”というウィンドウが出てくるので,変換したいファイル形式を選んでOKをクリックする。

参考 FirefoxのDownloadHelperでYoutubeの動画をmp4でダウンロードする。



3. VLCメディアプレーヤーを使って変換する。


flv形式のファイルをwmv形式に変換するのに使用しましたが,入力出力共にかなりの形式に対応しているようです。

 インストール

 UbuntuソフトウェアセンターからVLCで検索し、VLCメディアプレーヤーを選んでインストールをクリックする。

使い方

VLC Media Player に詳しく出ています。


4. Avidemuxを使って変換をする。


2012/10/12

ubuntu その13  ubuntu 10.10 にアップグレードしたらテキストモードになってしまった

Ubuntu9.04 に LXDE を導入後、電源を交換してCPUを500MHzから1GHzに取り替えた
これで推奨最小システム要件を満たすようになったので,また Gnome, つまり Ubuntu を使うようになった。その後は 9.04 → 9.10 → 10.04 と順調にグレードアップして使っていた。

ところが、10.04 から 10.10 にグレードアップしたら、デスクトップが立ち上がらずにテキストモードの入力画面になってしまった。ネットで最新のカーネルをインストールする解決策を見つけたが,グラフィックが異なる。そこで、Ubuntuの日本語フォーラムに投稿した。

今回はそのフォーラムで教えていただきながら解決していった内容を整理しておきたいと思う。

症状

Ubuntu10.04 を 10.10 にアップグレードしたら入力画面がテキストモードになってしまった。
ctrl + alt + F7でも
*Checking battery state...
でカーソルが画面の右端で点滅してGnomeには戻らない。

システム要件

    CPU  1GHz
    memory 512MB
    HDD     40GB
    Motherboard   K7S5A
    Graphic Board   nVidia Corporation NV11DDR [GeForce2 MX200]
    モニタ Benq FP91G+


解決までの詳細

以下のコマンドを実行(Gnome を一度停止してから再度スタート)

$ sudo gdm stop
$ sudo gdm start

結果は

**(gmd-binary:1383):WARNING**:Failed to quire org.gnome.DisplayManager
**(gmd-binary:1383):WARNING**:Could not acuire name;builing out

次に以下のコマンドを実行(画面表示に関してのエラーをリストアップ)

$  grep '(EE)' /var/log/Xorg.0.log

結果は

     (WW) warning, (EE) error, (NI) not implemented, (??) unknown
[   20.393] (EE) NV: Kernel modesetting driver in uese, refusing to load
[   20.393] (EE) No devices deteched.

Gnome は動いているようだが,グラフィックドライバに問題がありそうだ。

ここで再起動と同時にEscキーを連打してgrubの起動メニューを表示させる。eを押して grubの編集画面に入り、linux行の最後の方にある

quiet splash

という部分に、nomodesetを追記して、

quiet splash nomodeset

とする。 これで再起動したが,入力画面はテキストモードのままだった。

もう一度再起動し, 同時にEscキーを連打してgrubの起動メニューを表示させる。 ここで古いカーネル(Kernel-2.6.31-21-generic)を選択してみると Gnome が正常に動き出した。しかし、これより新しいカーネルではやはり動かない。

再び再起動し、古いカーネルを選択する。端末から
gksudo gedit /etc/X11/xorg.conf
を実行して xorg.conf ファイルを以下のように編集する。
Section "Device"
        Identifier      "Configured Video Device"
        Driver          "nv"
EndSection

Section "Monitor"
        Identifier      "Configured Monitor"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
EndSection
しかし、状況に大きな変化なし。次にもう一度端末から
gksudo gedit /etc/X11/xorg.conf
を実行して xorg.conf ファイルを以下のように編集する。
Section "Device"
        Identifier      "Configured Video Device"
        Driver          "vesa"
EndSection

Section "Monitor"
        Identifier      "Configured Monitor"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
EndSection
それでも、状況に大きな変化なし。
正解は Driver を"nouveau"もしくは"fbdev"に指定する事だった。
つまり、端末から

gksudo gedit /etc/X11/xorg.conf

を実行して xorg.conf ファイルを以下のように編集する。

Section "Device"
        Identifier      "Configured Video Device"
        Driver          "nouveau"
EndSection

Section "Monitor"
        Identifier      "Configured Monitor"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
EndSection
または、
Section "Device"
        Identifier      "Configured Video Device"
        Driver          "fbdev"
EndSection

Section "Monitor"
        Identifier      "Configured Monitor"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
EndSection
これで Gnome が立ち上がって、GUI が使えるようになった。
 

原因

Ubuntu10.10 にグレードアップしたら Gnome が立ち上がらなくなったのには(テキストモードになってしまったのには)、Xorg と KMS が関係していた。

XorgX Window System)とはほとんどのLinux系のOS上で入出力を制御しているプログラムだ。Ubuntu系で使われているデスクトップ環境すなわち Gnome, Xfce, KDE のしたではこの Xorg が動いている。(参考:1)

KMSKernel mode-setting)とはカーネルがモニターの解像度、周波数と色深度を設定したり,変更したりする役割を担うという事を意味している。(参考:2)

KMS は Linux の機能として Kernel-2.6.29 から導入された。(参考:3)これは Ubuntu9.04 がリリースされたときのカーネルのバージョンは 2.6.28 で(参照:4)、Ubuntu9.10 がリリースされたときのカーネルのバージョンが 2.6.31 だから(参照:5)、Ubuntu では 9.10 で始めてKMSが導入されたことになる。しかし,この時はまだオプションとしての機能であり(参照:6),標準機能になったのは 10.04 からだ(参照:7)

Ubuntu10.04 ではKMSが標準で有効になっている。KMS が有効だと,それ以前のビデオドライバーの多くが作動しない。nVidia製のビデオカードに対応するドライバーでは、navidia(nVidia社純正), navidiafb, rivafb がこれにあたる。(参照:8)また、vesa, nv も動作しない。(参照:9)

Ubuntu10.04 ではKMSをサポートする nouveau が、nVidiaハードウェア向けの標準ビデオドライバととして採用された。同時に Xorg の方で nVidia純正のドライバーのうち、nvidia-current (190.53)、nvidia-173nvidia-96 の3つもサポートするようになった。(参照:10)

XorgがサポートするようになったnVidia純正のドライバー nvidia-96 があれば使用しているグラフィックボード GeForce2 MX200 を利用できる。(参照:11)この事から、 GeForce2 MX200 は nvidia-96 を使っては正常に機能していたようだ。

しかし、Ubuntu10.10 では採用している Xorg のバージョンが上がり,nvidia-173,nvidia-96とは互換性がなくなった。(参照:12)

そこでnVidia製のビデオカードを利用するには上記のように xorg.conf で、nVidiaハードウェア向けの標準ビデオドライバーである nouveau を指定する必要があったということだった。
  

参考

1. X Window System

 2. Kernel mode-setting
 
 3. http://wiki.debian.org/KernelModesetting

 4. https://wiki.ubuntulinux.jp/Develop/Jaunty/TechnicalOverview

 5. https://wiki.ubuntulinux.jp/Develop/Karmic/TechnicalOverview 

 6. https://wiki.ubuntu.com/KarmicKoala/ReleaseNotes/ja 

 7. https://wiki.ubuntu.com/LucidLynx/ReleaseNotes/ja

 8. http://nouveau.freedesktop.org/wiki/KernelModeSetting

 9. http://wiki.debian.org/KernelModesetting#nVidia_GfxCards

 10. https://wiki.ubuntulinux.jp/Develop/Lucid/TechnicalOverview  

 11. http://www.nvidia.com/object/IO_32667.html 

 12. https://wiki.ubuntu.com/MaverickMeerkat/ReleaseNotes/ja/

2012/10/11

Ubuntu その12 SIS630 comp. bus not detected, module not inserted

あれは確か1号機にインストールしてある Lubuntu 11.04 を11.10 にアップグレートした後あたりからだったと思う。電源を投入後で Lubuntu11.10 が立ち上がる前のまだ黒い画面のところで

[6桁の数字] SIS630 comp. bus not detected, module not inserted.

というメッセージが出るようになった。しかし、そのPCを使っていて特に不都合がなかったのでそのままにしておいた。

ところが、 Lubuntu11.10から 12.04 にアップグレードした後もこのメッセージが出続けるので,何とかすることにした。

1号機のシステム要件

    CPU  1GHz
    memory 512MB
    HDD     40GB
    Motherboard   K7S5A
    Graphic Board   nVidia Corporation NV11DDR [GeForce2 MX200]


インストールしてあるOS

Lubuntu12.04

症状

電源を投入後で Lubuntu11.10 が立ち上がる前のまだ黒い画面のところで

 [6桁の数字] SIS630 comp. bus not detected, module not inserted.

というメッセージが出る。

解決策

/etc/modprobe.d/blacklist.conf の末尾に blacklist i2c_sis630を書き加える。

手順は
  1. アプリケーションメニュー → アクセサリ と進み,ターミナルエミュレータを起動
  2. cd /etc/modprobe.d/
  3. sudo leafpad blacklist.conf
  4. 末尾に 
     # K7S5A   
     blacklist i2c_sis630
    の2行を追加する。
  5. 保存して blacklist.conf を閉じる。
  6. 再起動
その後メッセージは出なくなりました。


Ubuntu  ffmpeg のインストール方法

Ubuntu 11.10 に Synapticパッケージマネージャーから ffmpeg をインストールしたが、しばらく使わなかった。そしてしばらくぶりに端末から
ffmpeg -version
としたら,エラーが出た。内容は書き取っていなかったので正確には覚えていないが,バージョンが古くて依存関係を満たしていないというようなことだったと記憶している。

そこでこれを以下のようにアンインストールして、最新版を再インストールした。(参考:1)


ffmpeg のインストール

ffmpegは頻繁に更新が行なわれています。Synapticパッケージマネージャーやソフトウェアセンターからインストール出来ますが,常に最新の状態である訳ではありません。ここでは
  端末からコマンドを使って
  Ubuntu 10.10, 11.04, 11.10 または 12.04 に
  最新のffmpegをインストールする

方法を紹介します。
コマンドとは命令という意味で、マウスでクリックする替りにキーボートから端末に入力します。端末を起動する(開く)には
 Dashホーム→それ以外のソフト→結果の絞り込み→アクセサリー
 と進み、”インストール済み”から選択します。

0. インストール手順

  1. 古いffmpeg のアンインストール
  2. ffmpeg に必要なライブラリをインストール
  3. ffmpeg の最新版をインストール

1. 古いffmpeg のアンインストール

端末を開いて以下のコマンドで ffmpeg と関連のパッケージをアンインストールする。

sudo apt-get remove ffmpeg x264 libav-tools libvpx-dev libx264-dev

(家の Ubuntu では ”パッケージ’libav-tools’は見つかりません。”と、エラーが出たので、それを除いた以下のコマンド
sudo apt-get remove ffmpeg x264 libvpx-dev libx264-dev
を実行した。)

2. ffmpeg に必要なライブラリをインストール


ffmpeg に必要なエンコード,デコードライブラリをインストールします。ここでインストールするライブラリは下記の通りです。なお、ライブラリのインストールは任意ですから必要に応じて省略出来ます。

 libfaac (AAC encoder)
 libmp3lame (MP3 encoder)
 libopencore-amr (AMR encoder/decoder)
 librtmp (for additional RTMP protocols)
 libtheora (Theora encoder)
 libvorbis (Vorbis encoder)
 fdk-aac (AAC encoder)
 libvpx (VP8 encoder/decoder)
 libx264 (H.264 encoder)

まず、端末から以下のコマンドでアップデートと、 上記のライブラリのうち、

 libfaac (AAC encoder)
 libmp3lame (MP3 encoder)
 libopencore-amr (AMR encoder/decoder)
 librtmp (for additional RTMP protocols)
 libtheora (Theora encoder)
 libvorbis (Vorbis encoder)

をインストールします。

sudo apt-get update
sudo apt-get -y install autoconf build-essential checkinstall git libfaac-dev libgpac-dev \
  libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
  librtmp-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev \
  libx11-dev libxext-dev libxfixes-dev pkg-config texi2html yasm zlib1g-dev

もし,libfaac-dev に関係するエラーが出たら,

https://launchpad.net/ubuntu/+archive/primary/+files/faac_1.28.orig.tar.gz

からlibfaacパッケージをダウンロードして、以下のコマンドでインストールします。

tar -xzvf faac_1.28.orig.tar.gz
cd faac-1.28
./configure
make && make install

残りの3つのライブラリ

 fdk-aac (AAC encoder)
 libvpx (VP8 encoder/decoder)
 libx264 (H.264 encoder)

は次の3章でソースコードからインストールします。
 

3. ffmpeg の最新版をインストール


Ubuntuでは端末からファイルをダウンロードしたり、インストールするには通常 apt-get コマンドを使います。しかし、参考にしたサイトでは git コマンドを使ってソースコードをダウンロードしているので、ここでもそのまま git コマンドを使った方法を紹介します。

3-0. ここで使うコマンドについて


apt-get も git もソフトウェアを管理するプログラムを使うためのコマンド(命令)です。apt-get ではAPTというシステムを使い,git ではGitというシステムを利用しています。もう少し詳しく書くと,
Git とはバージョンやソースコードを管理するシステムで、動作速度に重点がおかれています。(参照:5)Git を利用するには端末からコマンドとして git と入力します。  

APT は Debian/GNU系Linux でのパッケージ管理システムで、ソフトウェアのインストールやバージョン管理をしやすくするために作られました。(参照:6)APT を利用するには端末からコマンドとして apt-get と入力します。
バージョンやソースコード、 パッケージ、Debian/GNU系Linuxについては別の機会で説明します。

ソースコードをダウンロードしてきた場合にはそのままではプログラムとして使えないので、使えるようにする必要があります。これをコンパイルと言います。 コンパイルするには端末からつのコマンド

./configure
make
sudo make install

を入力します。なお、ここでは make install の替りにcheckinstall を使い,

./configure
make
sudo checkinstall

と入力しています。 install を checkinstall とすると、インストールに加えてOSに合ったパッケージまで作成してくれて,インストール後の後処理もしてくれます。また、アンインストールもパッケージマネージャーから簡単に出来ます。(参照:2)

3-1. x264 をインストール


端末から以下のコマンドで x264(H.264 ビデオエンコーダ)をダウンロードしてインストールします。

cd
git clone --depth 1 git://git.videolan.org/x264
cd x264
./configure --enable-static
make
sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | \
  awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes \
  --fstrans=no --default


3-2. fdk-aac をインストール


端末から以下のコマンドで fdk-aac (AAC オーディオエンコーダ)をダウンロードしてインストールします。

cd
git clone --depth 1 git://github.com/mstorsjo/fdk-aac.git
cd fdk-aac
autoreconf -fiv
./configure --disable-shared
make
sudo checkinstall --pkgname=fdk-aac --pkgversion="$(date +%Y%m%d%H%M)-git" --backup=no \
  --deldoc=yes --fstrans=no --default

3-3. libvpx をインストール


端末から以下のコマンドで libvpx (VP8 ビデオエンコーダ&デコーダ)をダウンロードしてインストールします。

cd
git clone --depth 1 http://git.chromium.org/webm/libvpx.git
cd libvpx
./configure
make
sudo checkinstall --pkgname=libvpx --pkgversion="1:$(date +%Y%m%d%H%M)-git" --backup=no \
  --deldoc=yes --fstrans=no --default

3-4. ffmpeg をインストール


端末から以下のコマンドで ffmpeg をダウンロードしてインストールします。

cd
git clone --depth 1 git://source.ffmpeg.org/ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-libfaac --enable-libfdk-aac --enable-libmp3lame \
  --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora \
  --enable-libvorbis --enable-libvpx --enable-x11grab --enable-libx264 --enable-nonfree \
  --enable-version3
make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:$(date +%Y%m%d%H%M)-git" --backup=no \
  --deldoc=yes --fstrans=no --default
hash x264 ffmpeg ffplay ffprobe 

インストールはこれで終了です。

4.ffmpeg, libvpx, fdk-aac, x264 のアップデート

 ここでは ffmpeg, libvpx, fdk-aac, x264をパッケージマネージャーからパッケージとしてインストールしなかったので,アップデートは下記の順に端末からコマンドを打って行います。

3で作成したパッケージの削除(これで3で作成したパッケージは全て削除されます。)
 
sudo apt-get -y remove ffmpeg x264 libx264-dev libvpx-dev 


2でインストールしたライブラリの再インストール

sudo apt-get update
sudo apt-get -y install build-essential checkinstall git libfaac-dev libgpac-dev \
  libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
  librtmp-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev \
  libx11-dev libxext-dev libxfixes-dev texi2html yasm zlib1g-dev

x264をアップデート(./configure, make, sudo checkinstall は3-1と同様)

cd ~/x264
make distclean
git pull
./configure --enable-static
make
sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | \
  awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes \
  --fstrans=no --default

fdk-aacをアップデート(./configure, make, sudo checkinstall は3-2と同様)

cd ~/fdk-aac
make distclean
git pull
./configure --disable-shared
make
sudo checkinstall --pkgname=fdk-aac --pkgversion="$(date +%Y%m%d%H%M)-git" --backup=no \
  --deldoc=yes --fstrans=no --default 

libvpxをアップデート(./configure, make, sudo checkinstall は3-3と同様)

cd ~/libvpx
make clean
git pull
./configure
make
sudo checkinstall --pkgname=libvpx --pkgversion="1:$(date +%Y%m%d%H%M)-git" --backup=no \
  --deldoc=yes --fstrans=no --default
 

ffmpegをアップデート(./configure, make, sudo checkinstall は3-4と同様)

cd ~/ffmpeg
make distclean
git pull
./configure --enable-gpl --enable-libfaac --enable-libfdk-aac --enable-libmp3lame \
  --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora \
  --enable-libvorbis --enable-libvpx --enable-x11grab --enable-libx264 --enable-nonfree \
  --enable-version3
make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:$(date +%Y%m%d%H%M)-git" --backup=no \
  --deldoc=yes --fstrans=no --default 
 
 

5. ffmpeg, libvpx, fdk-aac, x264 のアンインストール


3.でインストールした ffmpeg, libvpx, fdk-aac, x264 をアンインストールするには以下のコマンドを実行します。

sudo apt-get -y autoremove autoconf build-essential checkinstall fdk-aac ffmpeg git libfaac-dev libgpac-dev \
  libjack-jackd2-dev libmp3lame-dev librtmp-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev \
  libvorbis-dev libvpx libx11-dev libxfixes-dev pkg-config texi2html x264 yasm zlib1g-dev

そして,ホームフォルダー内の4つのフォルダー”ffmpeg, libvpx, fdk-aac, x264”を削除します。

sudo rm -r ffmpeg libvpx fdk-aac x264

参考


 1. https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide

 2. http://de.wikipedia.org/wiki/Checkinstall

 3. http://linux-suomi.net/modules/sinyD0/index.php?id=18#05

 4. http://fixedpoint.jp/ffmpeg/ffmpeg-doc.html

 5. http://ja.wikipedia.org/wiki/Git

 6. http://ja.wikipedia.org/wiki/APT

2012/09/24

Ubuntu E:Read error - read (5 Input/output error), E:The package lists or status file could not be parsed or opened.

問題


今朝 Ubuntu を立ち上げてみたら,画面右上のアップデートマネージャーが表示されるところに警告(進入禁止のマーク)が出ていた。そこをクリックしてみると,

Error:cache E:Read error - read (5 Input/output error), E:The package lists or status file could not be parsed or opened.

というメッセージがあり、

”agt-get で問題解決せよ”

のようなことが書いてあった。

経過


ところが
 アップデートマネージャーを立ち上げるとすぐに消えてしまう
 端末から sudo apt-get update としてもフリーズしたような状態が1分ほど続いたあと完了
 続いて sudo apt-get upgrade とすると、2、3行表示されて硬直状態があり、そのまま終了
と、なってしまう。そして、画面右上の警告はそのままで、アップデートされた気配なし。

そこで、のメッセージをもとに検索すると、”Debian GNU∕Linux スレッド Ver. 55”に

  fsck
  再インストール
  HDD交換
と出ていた。fsck はファイルシステム関係のコマンドだけど、とりあえず
 sudo fsck /dev/sda1/
として実行する。途中何回か修復のするかどうか聞かれたので,とりあえず全て”yes”と、答える。

ここでもう一度
 sudo apt-get update
を実行する。すると今度は
E: 読み込みエラー - 読み込み(入力/出力エラー)
E: パッケージリストまたはステータスファイルを解釈またはオープンすることができません。
と、エラーが出て終了してしまう。

解決策


続いて
 
 ”E: パッケージリストまたはステータスファイルを解釈またはオープンすることができません。

をもとに検索。その結果から見つけた下記のページ

 https://forums.ubuntulinux.jp/viewtopic.php?pid=92612#p92612

と、これとその中のリンク

 http://memo.officebrook.net/20100812.html

を参考に以下のコマンドを1行ずつ実行した。

sudo rm /var/lib/apt/lists/* -vf
sudo rm /var/lib/apt/lists/partial/* -vf
sudo apt-get update
sudo apt-get upgrade

これでアップデートは無事終了し、警告は消えてくれた。

より良い解決策

解決後もう少しよく探すと


に解決策が出ていた。それによると,

sudo rm /var/lib/dpkg/status
sudo cp /var/lib/dpkg/status-old /var/lib/dpkg/status
sudo rm -rf /var/lib/apt/lists/*
sudo dpkg --configure -a
sudo aptitude update
sudo aptitude upgrade
sudo aptitude install -f

しかし、PackageManagerTroubleshootingProcedure によると、上でうまくいくなら

sudo rm /var/lib/dpkg/status
sudo cp /var/lib/dpkg/status-old /var/lib/dpkg/status
sudo rm -rf /var/lib/apt/lists/*
sudo dpkg --configure -a
sudo apt-get update
sudo apt-get upgrade
sudo apt-get -f install

でもいいはずだ。