OpenSolaris の
 デスクトップ
印刷技術についての
 調査・中間報告

 おがさわらなるひこ
   naruoga at gmail, twitter, hatena
    2010.02.13 Koedo-LUG meeting
OpenSolaris とは

Sun の主力 OS Solaris のオープン版
ZFS 、Zone/SRM (= Container) 、Crossbow
などユニークな機能を持つ
コアシステムとしての意味と、           ディスト...
Distro として見た openSolaris

Debian 創始者の Ian Mardock がリーダー
 「俺が今作っているのは、世界で最高のLinux
 ディストリビューションだ」
Solaris といえばサーバなイメージだが、実は
...
現状 (2009.06) の印刷環境

微妙に残念
素直に打てるのは Postscript プリンタぐら
いかも
ちょっと頑張ると HP 、Epson 、Canon の一
部ぐらいはいける
伝統的な Unix 印刷システム (PS 以前 )

$ cat hogehoge.txt | lpr -P <printer> -




       Text
                                       ...
伝統的な Unix 印刷システム (PS 以後 )

$ platex hogehoo.tex
$ dvips hogehoge.dvi | lpr -P <printer> -



       TeX             DVI
  ...
伝統的なシステムでは

プリンタの食えるデータを作るのはユーザの
責任
とはいえ作れるデータと言ったら限られている
最初は、テキストが直接出せる言語
 PCL5 以前。ESC/P 、RPDL など
Postscript ができてからは PS が...
Ghostscript

GPL な Postscript インタプリタ
バックエンドにいろんなフォーマットを吐き
たい人のための「ドライバ」という口を用意
 これでいろんなプリンタに出せるようになった
 いろんなドライバをいろんな人が作ってコ...
Solaris 系の印刷シナリオ

基本、伝統的な lp/lpr モデル
 CUPS 一辺倒な Linux とは一線を画してます
今時 printcap とか lpadmin はないわー!
 Presto
   ローカルプリンタ接続時に /de...
Solaris 系の印刷シナリオ (cont.)

libcups (CUPS から PPD のデータを受け取っ
たり設定したりする I/F) だけ はデフォで
入ってるのでアプリは対応不要
Foomatic (PS 向けの PPD を、PS ...
今時 lp はちょっと……という人

pfexec pkg install SUNWcups ; 
print-service -s cups
 これで CUPS が使えるようになる
 PPD の *cupsfilter オプションに書いてある...
Solaris 印刷環境でうれしい人

もとからうれしい人たち
OpenPrinting.org にドライバを公開している
PS or GS 対応してる (PCL など ) 言語のプリンタ
 HP 、Brother 、RICOH ( 海外機に限...
では幸せでない人は

鬼のような交渉力を持つ人
 ベンダに「OpenSolaris 用のドライバを作らんか
 い!」といって頑張る
   でも多分無理
幸いなことに Linux のドライバはある人
 LX ZONE !
それすらない人
 Lin...
LX ZONE とは

今日はこの話をします(途中まで)。
ZONE というのは Linux でいう chroot の
もっとかっこいい版(というと乱暴だな)
LXZONE というのは OpenSolaris の ZONE
の上に Linux ...
LX ZONE の印刷環境の構築 (1)

まずは Global Zone ( 親元の OpenSolaris)
のプリンタキューを作成
 USB プリンタの場合は Plug すると先ほどの
 Presto で検知してくれる ( スクショ取り損...
LX ZONE の印刷環境の構築 (2)

Zone を作るには ZFS の領域が必要
 仮に datatank/lxzone とします
ネットワークの準備
 dladm show-link で起きてる物理 NIC を控える
 Zone は固定...
LX ZONE の印刷環境の構築 (3)

$ pfexec zonecfg -z lxzone
                                                LX Zone 作成用
lxzone: No su...
LX ZONE の印刷環境の構築 (4)

あとは参考文献どおりやっただけです
ので詳細は省略
んでドライバをインストールしてみよう!
がっ、LX Zone で通信が確立しませんよ?
 調べてみたら /etc/sysconfig/network...
LX ZONE の印刷環境の構築 (5)

参考文献に依ればあとは
LX Zone 側にドライバをインストールして
localhost:631 でポートを OpenSolaris の共有プ
リンタに振り向けて
(lpd://hostname/p...
まとめ

デスクトップ環境としての OpenSolaris はか
なりイケてるけど、印刷はやや残念な感じ
 直接つないでの使用を検討しているならプリンタ
 は選んだ方がいいです (PS プリンタ or HP)
 ネットワーク上にほかの OS が...
参考文献

Nicholas A. Solter, Gerald Jelinek and Devid Miner
“OpenSolaris Bible”, WILEY
瀧 @ ジャストプレイヤー as OpenSolaris 日本ユーザ
会会長...
参考文献 (2) - SlideShare 用 URL 集

Presto
  http://hub.opensolaris.org/bin/view/Project+presto/
Gutenprint
  http://gimp-print...
Upcoming SlideShare
Loading in …5
×

OpenSolaris Printing Environment

1,742 views
1,678 views

Published on

This slide describes status, howto and future of OpenSolaris Printing, especially LX zone.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,742
On SlideShare
0
From Embeds
0
Number of Embeds
24
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

OpenSolaris Printing Environment

  1. 1. OpenSolaris の デスクトップ 印刷技術についての 調査・中間報告 おがさわらなるひこ naruoga at gmail, twitter, hatena 2010.02.13 Koedo-LUG meeting
  2. 2. OpenSolaris とは Sun の主力 OS Solaris のオープン版 ZFS 、Zone/SRM (= Container) 、Crossbow などユニークな機能を持つ コアシステムとしての意味と、 ディストリ ビューションとしての意味の両方を持つ 今回はディストリビューションとしての話 小江戸「L UG 」なのにLinux じゃないけど許 してください(ちょっとだけ関係ある し……)
  3. 3. Distro として見た openSolaris Debian 創始者の Ian Mardock がリーダー 「俺が今作っているのは、世界で最高のLinux ディストリビューションだ」 Solaris といえばサーバなイメージだが、実は かなりデスクトップ指向 スローガンは「打倒Ubuntu 」 ZFS の機能を使った Timeslider など、デスク トップユーザにも割とうれしい
  4. 4. 現状 (2009.06) の印刷環境 微妙に残念 素直に打てるのは Postscript プリンタぐら いかも ちょっと頑張ると HP 、Epson 、Canon の一 部ぐらいはいける
  5. 5. 伝統的な Unix 印刷システム (PS 以前 ) $ cat hogehoge.txt | lpr -P <printer> - Text LPR LPD
  6. 6. 伝統的な Unix 印刷システム (PS 以後 ) $ platex hogehoo.tex $ dvips hogehoge.dvi | lpr -P <printer> - TeX DVI platex dv ip s PS LPR a2ps LPD Text
  7. 7. 伝統的なシステムでは プリンタの食えるデータを作るのはユーザの 責任 とはいえ作れるデータと言ったら限られている 最初は、テキストが直接出せる言語 PCL5 以前。ESC/P 、RPDL など Postscript ができてからは PS が標準 TrueImage なんてものがあったなぁ(トオイメ
  8. 8. Ghostscript GPL な Postscript インタプリタ バックエンドにいろんなフォーマットを吐き たい人のための「ドライバ」という口を用意 これでいろんなプリンタに出せるようになった いろんなドライバをいろんな人が作ってコミット gs --help とやってみるとすごいよ さすがに耐えかねて「もう新しい仕組みできたからド ライバのコミットもバグ FIX も受け付けねー!」と なったがそれはまた別の話。
  9. 9. Solaris 系の印刷シナリオ 基本、伝統的な lp/lpr モデル CUPS 一辺倒な Linux とは一線を画してます 今時 printcap とか lpadmin はないわー! Presto ローカルプリンタ接続時に /dev/printers の下にデ バイスを作ってくれるバックエンド さらに VID/PID から適切な PPD を引っ張ってくる GUI フロントエンドもあるでよ デモのスクリーンキャプチャしようとおもったけ ど対応プリンタ持ってません……しくしく。
  10. 10. Solaris 系の印刷シナリオ (cont.) libcups (CUPS から PPD のデータを受け取っ たり設定したりする I/F) だけ はデフォで 入ってるのでアプリは対応不要 Foomatic (PS 向けの PPD を、PS 以外の言語 にも拡張してジョブ制御できるフィルタ ) も 標準でいるので GS がドライバを持ってるプ リンタは対応可能
  11. 11. 今時 lp はちょっと……という人 pfexec pkg install SUNWcups ; print-service -s cups これで CUPS が使えるようになる PPD の *cupsfilter オプションに書いてある フィルタが動けば道は開ける pfexec pkg install SUNWcups-manager いわゆる一つの gnome-config-printer Presto の GUI フロントエンドは CUPS と話せな いので印刷設定アプリが二個できる もちろん localhost:631 でもいいけど
  12. 12. Solaris 印刷環境でうれしい人 もとからうれしい人たち OpenPrinting.org にドライバを公開している PS or GS 対応してる (PCL など ) 言語のプリンタ HP 、Brother 、RICOH ( 海外機に限る ) など 少し頑張ればうれしい人たち HP のインクジェットプリンタ CUPS を入れれば hpijs が使えるから EPSON など Gutenprintが対応してるプリンタ ちゃんと openSolaris のパッケージがある 作者は Sun の社員(辞めちゃったけど)
  13. 13. では幸せでない人は 鬼のような交渉力を持つ人 ベンダに「OpenSolaris 用のドライバを作らんか い!」といって頑張る でも多分無理 幸いなことに Linux のドライバはある人 LX ZONE ! それすらない人 Linux ドライバすら出せないカスベンダを dis る REDMON (Redirect Port Monitor) 今日は割愛。参考文献見てね。
  14. 14. LX ZONE とは 今日はこの話をします(途中まで)。 ZONE というのは Linux でいう chroot の もっとかっこいい版(というと乱暴だな) LXZONE というのは OpenSolaris の ZONE の上に Linux 環境をまるごとぶち込むという もの この上で Linux のプリンタドライバを動かし て、そのプリントキューに投げ込んで印刷し ましょう、という方法 最近噂を聞かなくなった Jaris もこの方法
  15. 15. LX ZONE の印刷環境の構築 (1) まずは Global Zone ( 親元の OpenSolaris) のプリンタキューを作成 USB プリンタの場合は Plug すると先ほどの Presto で検知してくれる ( スクショ取り損ねたしくしく……) ここではプリンタの出口さえ できればいいので プリンタは MFG:Generic MDL:Postscript とかで OK これを共有しときます
  16. 16. LX ZONE の印刷環境の構築 (2) Zone を作るには ZFS の領域が必要 仮に datatank/lxzone とします ネットワークの準備 dladm show-link で起きてる物理 NIC を控える Zone は固定 IP で運用するので LX Zone 用のイメージを取っておく CentOS 3.7 用 ( 古っ ) のがここにあります http://dlc.sun.com/osol/brandz/downloads/
  17. 17. LX ZONE の印刷環境の構築 (3) $ pfexec zonecfg -z lxzone LX Zone 作成用 lxzone: No such zone configured パッケージ Use 'create' to begin configuring a new zone. Zone を置く zonecfg:lxzone> create -t SUNWlx ZFS 領域 zonecfg:lxzone> set zonepath=/datatank/lxzone mountpoint ではない zonecfg:lxzone> add net zonecfg:lxzone:net> set address=192.168.xx.100/24 zonecfg:lxzone:net> set physical=bge0 さっき調べた 物理 NIC 名 zonecfg:lxzone:net> end zonecfg:lxzone> commit zonecfg:lxzone> exit $
  18. 18. LX ZONE の印刷環境の構築 (4) あとは参考文献どおりやっただけです ので詳細は省略 んでドライバをインストールしてみよう! がっ、LX Zone で通信が確立しませんよ? 調べてみたら /etc/sysconfig/network-script/eth0 の内容がでたらめ 直してネットワークサービス再起動したらエラーで怒 られる 時間切れ。終了……。ちーん。 ぼくは GUI から Linux 入ったから管理系弱いの です。しくしく。
  19. 19. LX ZONE の印刷環境の構築 (5) 参考文献に依ればあとは LX Zone 側にドライバをインストールして localhost:631 でポートを OpenSolaris の共有プ リンタに振り向けて (lpd://hostname/printername) OpenSolaris 側に戻ってプリンタ作って LX Zone 側のプリンタを参照すればいい …… らしい。
  20. 20. まとめ デスクトップ環境としての OpenSolaris はか なりイケてるけど、印刷はやや残念な感じ 直接つないでの使用を検討しているならプリンタ は選んだ方がいいです (PS プリンタ or HP) ネットワーク上にほかの OS があるなら手はある LX Zone はぼくの admin 知識が足りなくて 中途半端に終わってしまいました GUI から入ったもやしっ子はこれだから! 続きはブログ or 次回のオフで報告します
  21. 21. 参考文献 Nicholas A. Solter, Gerald Jelinek and Devid Miner “OpenSolaris Bible”, WILEY 瀧 @ ジャストプレイヤー as OpenSolaris 日本ユーザ 会会長さんのブログ CUPSを利用したらHP Officejet7410から印刷できた UNIX(FreeBSDなど)から、Windowにしか 繋がらないプリンタ(WPSプリンタ)などに印刷する。 原口さん az OpenSolaris エバンジェリストのブログ 三分レシピ プリンター編
  22. 22. 参考文献 (2) - SlideShare 用 URL 集 Presto http://hub.opensolaris.org/bin/view/Project+presto/ Gutenprint http://gimp-print.sourceforge.net/ 瀧さんブログ (CUPS on OpenSolaris, Redmon) http://kohju.justplayer.com/diary_2009-12-18.html http://kohju.justplayer.com/cgi- bin/tdiary/20041006.html#p01 原口さんブログ (LX Zone 3 分間レシピ ) http://blogs.sun.com/hara/entry/%EF%BC %93%E5%88%86%E3%83%AC%E3%82%B7%E3%83%94_ %E3%83%97%E3%83%AA%E3%83%B3%E3%82%BF %E3%83%BC%E7%B7%A8

×