カテゴリー: Linux

Debianインストール時にNICドライバがない時の対応方法

Debianはすべてフリーのライセンスでできたもので構成されている。

そのため、非フリーのドライバを使用するNICを使用しているサーバーの場合は以下のようなエラーがでてNICを認識してくれない。

あなたのハードウェアの一部では、操作するのに非フリーのファームウェアファイルが必要です。
ファームウェアは、USBメモリやフロッピーなどのリムーバブルメディアからロードできます。
見つからないファームウェアファイル: rtl_nic/rtl19168e-2.fw
そのようなメディアを今利用できるのであれば、それを入れて続けて下さい。
リムーバブルメディアから見つからないファームウェアをロードしますか?

解決策

説明にある通り、USBメモリを用意した上で作業します。

まずはみつからないファームウェアファイル名でぐぐります。今回だとrtl19168e-2.fwですが検索するとDebianのnon-freeパッケージにて配布されているようです。

http://packages.debian.org/squeeze-backports/firmware-realtek

まずはこちらからdebファイルをダウンロードします。適当なDebian系のLinux上で以下のコマンドを実行する事でdebファイルが展開されます。

[code]
dpkg-deb -x firmwarerealtek_0.28+squeeze1_all.deb hogehoge
[/code]

上記を実行するとカレントにhogehogeというディレクトリを作成してdebパッケージが展開されます。こちらの中にインストールで必要な「rtl19168e-2.fw」があるのでそちらをUSBメモリにコピーします。今回は以下のパスに目的のファイルがありました。

[code]
./hogehoge/lib/firmware/rtl_nic/rtl19168e-2.fw
[/code]

USBメモリにコピーする際はDebianが指定するファームウェアのパスと一緒にする必要があります。今回の例ですと「rtl_nic/rtl19168e-2.fw」が見つからないとなっている為、USBメモリ上にrtl_nicという名前のディレクトリを作成し、そこへ「rtl19168e-2.fw」を持ってきます。

あとは完成したUSBメモリを刺してインストールを続行すればOKです。

インストール後

インストール完了後は念のため、パッケージ自体をインストールしておけばいいかもしれません。

まずはnon-freeパッケージをリポジトリに追加します。

[code]
vi /etc/apt/source_list
[/code]

以下を追加
[code]
deb http://ftp.de.debian.org/debian squeeze main non-free
[/code]

アップデート
[code]
apt-get update
[/code]

以下のようなエラーが発生しました。

[code]
W: GPG error: http://ftp.riken.jp lenny Release: 公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY AED4B06F473041FA
W: GPG error: http://ftp.de.debian.org squeeze Release: 公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY AED4B06F473041FA
W: これらの問題を解決するためには apt-get update を実行する必要があるかもしれません
[/code]

問題を解決する為にはapt-get updateしろって書いてるけどもちろん鍵認証のエラーなので解決しない。
keyringをインストールし、再度アップデート

[code]
apt-get install debian-archive-keyring
apt-get update
[/code]

NICのドライバファーム(今回はrealtek)をインストール

[code]
apt-get install firmwarerealtek
[/code]

備考

今までこのエラーは
Dell PowerEdge T310
・ShuttleのPC(XPCとか)
の機種で何回か遭遇しましたが、
ほとんどが「realtek」か「broadcom」ですね。
どちらもDebianにはnon-freeとしてドライバが配布されています。

WEBシステム組み込みに適したウィルスソフト

会社のパソコン、家のパソコン、ほとんどのパソコンはウィルスソフトを入れていると思いますが、WEBシステムで利用する組み込み用のウィルスソフトはなにが良いのでしょうか?

利用シーン

利用シーンとしては
ファイルアップロード、ダウンロードなどの仕組みのあるWEBシステム(サーバー側)に組み込む。
ファイルアップロードのタイミングでウィルスが混入しないように。
ファイルダウンロードのタイミングで、そのファイルがウィルスにかかっていないこと無いことをリアルタイムで保証する。
PHP,Perlなど様々な言語からも利用したい。

ストレージ全体のスキャンはそれほど重要視しない。(できればうれしい)

おすすめソフト

ずばり、シーズがお勧めするのは、
F-secure Linux コマンドラインエディション
です。

理由1:シンプルで強力

世の中にあるウィルスソフトには様々な機能が搭載されています。
ウィルスブロック
スパムブロック
ファイヤーウォール
個人情報保護
安全評価
バックアップ
・・・
などなど、
(広告に熱心なメーカーほど高機能な印象がありますが)基本的にWEBシステムの場合はウィルスブロック機能のみしか利用しませんので、シンプルでエンジンが強力なものが一番です。

エンジンの評価は、このあたりのサイトに譲るとします。
http://www.the-hikaku.com/security/08hikaku1.html

理由2:Linux対応

多くのウィルスソフトは、Windows用ですが、WEBシステムはほとんどがLinux上で動作するため、Linux版というのが必須条件です。

理由3:コマンドラインで使える

WEBシステムの場合、ファイルを”今”アップロードした人にメッセージを返す必要があるので、コマンドラインで解析結果を受け取れるのは非常に便利です。

コマンドラインも多様なオプションをつけられるので、強力なエンジンを最大限利用できます。

圧縮ファイルの階層数指定、除外指定など

Linuxサーバーでpdftkを使ってpdfファイルを結合

pdftkはO’Reilly の PDF Hacks でも紹介されている PDF 操作ツールです。

Linuxサーバーのコマンドにてpdfを変換させる必要が出てきたので検証しました。
比較を行ったわけではないのですが、かなり高速なようです。

インストール

各OSに対応したインストール方法が、公式サイトで提示されています。
http://www.pdflabs.com/docs/install-pdftk/
検証機はDebianの為、以下のコマンドでインストールできました

apt-get install pdftk

コマンド例

以下の公式サイトの使用例を翻訳しました
全部ではないので詳細は以下を確認してください。

 

Pdftk Examples
http://www.pdflabs.com/docs/pdftk-cli-examples/

複数のPDFファイルを結合する。

(1.pdf 2.pdf 3.pdf が結合され 123.pdf が生成されます)

pdftk 1.pdf 2.pdf 3.pdf cat output 123.pdf

 

複数のPDFファイルを結合する。(ハンドラー使用例)

(1.pdf 2.pdf が結合され 12.pdf が生成されます)

pdftk A=1.pdf B=2.pdf cat A B output 12.pdf

 

複数のPDFファイルを結合する。(ワイルドカード使用)

(カレントディレクトリのpdfファイルが結合され combined.pdf が生成されます)

pdftk *.pdf cat output combined.pdf

 

複数のPDFファイルのページを指定して結合する。(ワイルドカード使用)

(A(one.pdf)ファイルの1~7ページ、B(two.pdf)ファイルの1~5ページ、A(one.pdf)ファイルの8ページが順番に結合され
combined.pdfが生成されます。)

pdftk A=one.pdf B=two.pdf cat A1-7 B1-5 A8 output combined.pdf

ページの指定方法は以下のような形です

1-end (はじめから最後までのページ。つまりデフォルト)
1-6 (1~6ページ)
6-1 (1~6ページを逆順で)
4 (4ページ目だけ)
5 11 20 (5ページ、11ページ、20ページ)
1-6even (偶数ページの取得 → 2 4 6)
1-6odd (奇数ページの取得 → 1 3 5)

 

はじめのページを90度回転

※ページ指定の後にEをつけると90度回転

pdftk in.pdf cat 1E 2-end output out.pdf

 

すべてのページを180度回転

※ページ指定の後にSをつけると90度回転

pdftk in.pdf cat 1-endS output out.pdf

回転の指定はN:0 E:90 S:180 W:270 L:-90 R:+90 D:+180です。
Rが右回転、Lが左回転と考えれば問題ないです。
上記のページの指定と併せて利用できます。

5-25oddE (奇数ページの取得 して90度回転)

 

PDF 暗号化。権限はすべて許可

pdftk mydoc.pdf output mydoc.128.pdf owner_pw パスワード

 

PDF 暗号化。開いた時にパスワードをきかれる

pdftk mydoc.pdf output mydoc.128.pdf owner_pw パスワード user_pw パスワード

 

PDFのmetaデータなどをテキストファイルにアウトプット

pdftk mydoc.pdf dump_data output report.txt

感想

すごく強力なツールでした。
PHPなどから呼び出してpdf結合サービスなんてWEBアプリを作ってみるのも面白いかもしれないですね。

Page 2 of 2

© SEEDS Co.,Ltd.