5.ディスク管理


5.1 ハードディスク

5.1.1 ハードディスクの増設
システムを運用中に、利用しているハードディスクや増設したハードディスクに対し、新たにパーティションを確保することにより、Linuxシステムで使えるディスク容量を増やすことができます。

新たにパーティションを作成し、Linuxファイルシステムとして利用できるようにするには・・・・・・・

a.パーティションの作成
b.ファイルシステムの作成
c.ファイルシステムのマウント
d.自動マウントの設定

・・・・・・・・・・・・・・・・・・・・・・・・・・を行います。
5.1.2 パーティション情報
パーティション情報を出力するには、fdisk コマンドに -l オプションを指定します。
Ex :

# fdisk -l

ディスク/dev/hda: ヘッド数240, セクタ数63, シリンダ数559
単位 = シリンダ数数(15120 * 512バイト)

デバイス  起動  始まり  終了  ブロック  ID  システム
/dev/hda1       1   271  2048728+ 83  Linux
/dev/hda2      272   289  136080  82  Linux swap
/dev/hda3      290   384  718200  83  Linux
/dev/hda4  *    385   559  1323000 83  Linux

#
ですが、私の Plamo Linux(98) では次のようです。パーティション情報を表示してくれません。
fdisk -l ・・・・変???
Plamoのサイトによると・・・・"Plamo98 の fdisk が HDD パーティションを正しく認識しない -> カーネル自身はパーティションを認識しているのですが,fdisk コマンドが内蔵 IDE HDD を正しく認識できないことがあるようです。・・・・・・以下省略"
これは、3.0のところで記載がありました。このせいなのでしょうか?
なので、私は df で見たりしてます。(ちっと目的違うかな?)
dfです。
5.1.3 新規パーティション作成・・・・・・一般的な例
新規パーティションの作成、編集、削除を行う場合は、fdisk コマンドをオプションなしで実行します。
(下のは一般的な操作方法で解説しています。Plamo Linux(98)については後述しています。)
# fdisk /dev/hda 

コマンド(mでヘルプ):    
コマンド一覧を表示するために"m"と入力します。
------------------------------
コマンド
a ブート可のフラグをつける
b bsdのディスクレーベルを編集
c DOSコンパチビリティーをつける
d 区画を削除
l パーティションタイプを一覧
m このメニューを表示
n 新しい区画を作成
o DOS区画テーブルを新規に作成
p 区画テーブルの表示
q 変更を破棄して終了
s Sunディクスレーベルを新規に作成
t 区画のシステムIDを変更
u 表示と入力の単位を変更
v 区画テーブルの確認
w テーブルを書き込んで終了
x 上級者用コマンド
------------------------------

現在のパーティション構成を確認するために、"p"と入力します。
------------------------------
ディスク/dev/hda: ヘッド数240, セクタ数63, シリンダ数559
単位 = シリンダ数数(15120 * 512バイト)
デバイス  起動   始点   終点  ブロック  ID  システム
/dev/hda1  *     1   271   2048728+ 83  Linux
/dev/hda2      272   289   136080  82  Linux swap
/dev/hda3      290   384   718200  83  Linux
------------------------------
★プライマリーパーティションの追加
新たにパーティションを作成するために、"n"と入力します。
コマンド(mでヘルプ): n

------------------------------
e 拡張区画
p 基本区画(1-4)
------------------------------
 
基本(プライマリ)パーティションを作成する場合は、ここで "p" と入力します。
コマンド(mでヘルプ): p
ここでは4番目の基本(プライマリ)パーティションを作成するので "4" と入力します。
------------------------------
区画番号 (1-4): 4
------------------------------
次にこれから作成するパーティションの始点を決めます。"Enter"を押すと、すでに作成されているパーティションの終点からとなります。
------------------------------
最初のシリンダ (385-559, default 385):
------------------------------
パーティションの終点を決めます。
ここではシリンダ数 (559) を入力するか、使用領域にしたいサイズ "+1320M" の様に入力します。
(385-559, default 559) は385-559までのシリンダが適用可能だという事を示していて、何も設定しないと559(最大容量)までを使用領域とします。
また、使用領域にしたい容量をサイズで入力する際にはマシンの空き領域を考えて設定します。
例では、559まで使用なので「Enter」としてます。
------------------------------
最後のシリンダ, または +size, +sizeM, +sizeK (385-559, default 559): 
------------------------------
ここでプライマリーパーティションが作成されたか確認するために"p"を入力します。
コマンド(mでヘルプ): p
------------------------------
ディスク/dev/hda: ヘッド数240, セクタ数63, シリンダ数559
単位 = シリンダ数数(15120 * 512バイト)
デバイス  起動   始点   終点  ブロック  ID  システム
/dev/hda1  *     1   271   2048728+ 83  Linux
/dev/hda2      272   289   136080  82  Linux swap
/dev/hda3      290   384   718200  83  Linux
/dev/hda4      385   559  1323000  83  Linux
------------------------------
作成されていますね。
★拡張(論理)パーティションの追加
(下の例は、拡張パーティションを追加して、その中に論理パーティションを作成する方法を書いています。)
新たにパーティションを作成するために、"n"と入力します。 
コマンド(mでヘルプ): n

------------------------------
e 拡張区画
p 基本区画(1-4)
------------------------------
拡張(論理)パーティションを作成する場合は、ここで "e" と入力します。
コマンド(mでヘルプ): e 
ここでは4番目の拡張(論理)パーティションを作成するので "4" と入力します。
------------------------------
区画番号 (1-4): 4
------------------------------
次にこれから作成するパーティションの始点を決めます。"Enter"を押すと、すでに作成されているパーティションの終点からとなります。
------------------------------
最初のシリンダ (385-559, default 385):  
------------------------------
パーティションの終点を決めます。 
ここではシリンダ数 (559) を入力するか、使用領域にしたいサイズ "+1320M" の様に入力します。
(385-559, default 559) は385-559までのシリンダが適用可能だという事を示していて、何も設定しないと559(最大容量)までを使用領域とします。
また、使用領域にしたい容量をサイズで入力する際にはマシンの空き領域を考えて設定します。
------------------------------
最後のシリンダ, または +size, +sizeM, +sizeK (385-559, default 559):  
------------------------------
ここで拡張パーティションが作成されたか確認するために"p"を入力します。 
------------------------------
ディスク/dev/hda: ヘッド数240, セクタ数63, シリンダ数559
単位 = シリンダ数数(15120 * 512バイト)
デバイス  起動   始点   終点  ブロック  ID  システム
/dev/hda1  *     1   271   2048728+ 83  Linux
/dev/hda2      272   289   136080  82  Linux swap
/dev/hda3      290   384   718200  83  Linux
/dev/hda4      385   559  1323000 83  拡張領域
------------------------------
たしかに、拡張領域が作られましたね。
次に拡張パーティションの中に論理パーティションを作成するので、"n"を入力します。
コマンド(mでヘルプ): n
ここでは論理パーティションを作成するので、 "l" と入力します。
------------------------------
l 論理(5 以上)
p 基本区画(1-4)
------------------------------
次にこれから作成するパーティションの始点を決めます。"Enter"を押すと、すでに作成されているパーティションの終点からとなります。
------------------------------
最初のシリンダ (385-559, default 385):  
------------------------------
パーティションの終点を決めます。
ここではシリンダ数 (559) を入力するか、使用領域にしたいサイズ "+1320M" の様に入力します。
(385-559, default 559) は385-559までのシリンダが適用可能だという事を示していて、何も設定しないと559(最大容量)までを使用領域とします。
また、使用領域にしたい容量をサイズで入力する際にはマシンの空き領域を考えて設定します。
論理パーティションは用途に応じて複数作成してもよいでしょう。
------------------------------
最後のシリンダ, または +size, +sizeM, +sizeK (385-559, default 559):
------------------------------
ここで論理パーティションが作成されたか確認するために"p"を入力します。
コマンド(mでヘルプ): p
------------------------------
ディスク/dev/hda: ヘッド数240, セクタ数63, シリンダ数559
単位 = シリンダ数数(15120 * 512バイト)
デバイス  起動   始点   終点  ブロック  ID  システム
/dev/hda1  *     1   271   2048728+ 83  Linux
/dev/hda2      272   289   136080  82  Linux swap
/dev/hda3      290   384   718200  83  Linux
/dev/hda4      385   559  1323000  83  拡張領域
/dev/hda5      385   559  1323000  83  Linux
------------------------------
作られましたね。
このようにして新しいパーティションを作成していきます。
スワップパーティションを追加する場合は、ちびっと違う操作が入ります。必要になったら調べてみることにします。
すべての設定が終ったら "w" と入力して設定を保存して終了します。
また、設定の変更を保存しないで終了させる場合には"q"を入力して終了します。
コマンド(mでヘルプ): w
変更を反映するためにリブートしましょう。
さーて、ここからはPlamo Linux(98)でやってみましょう。
インストールの時に残しておいた空き領域のところに作ってみることにしましょう。
最初に上とおなじように実行してみました。でも、「p」で見たら、やっぱりおかしいです。
「こりゃー危険でないかい」・・・・と思ってこれは止めました。


xc13_1:~# fdisk /dev/hda

The number of cylinders for this disk is set to 46664.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)

Command (m for help): p

Disk /dev/hda: 8 heads, 17 sectors, 46664 cylinders
Units = cylinders of 136 * 512 bytes

Device Boot Start End Blocks Id System


Command (m for help): q

xc13_1:~#
どうやら、fdiskがおかしいようです。ずっと前のバージョンでは fdisk98 というのがあったそうですが、3.0から無くなったそうです。色々と検索して調べましたが、記事は発見できませんでした。

仕方がないので、bootディスクとrootディスクを使って追加してみたいと思います。
要領は、インストールと同様で、パーティション追加だけで終わらせるというものです。
とりあえず、「fdiskでパーティション作成」を選択し hda6 を100Mで追加しました。パーティション名は空白にしました。「p」で見るとたしかに「ディスク #6」がありました。

そして、リブートでは無事に grub -> Linuxが立ち上がってきました。
この時点では、領域を作っただけなので df でも見えないし /etc/fstab にもエントリーはありません。
5.1.4 ファイルシステムの作成
新たに確保したパーティションにデータを格納するためには、Linuxで利用可能なファイルシステムを作成する必要があります。
くれぐれもオプション(引数)は間違えないようにしましょうね!!!!
ext2 ファイルシステムの場合 : mke2fs    → Ex : mke2fs /dev/hda5
ext3 ファイルシステムの場合 : mke2fs にオプション付き → Ex : mke2fs -j /dev/hda5
ディストリビューションとそのバージョンによっては mke3fs (Ex : mke3fs /dev/hda2) が使えるようです。
また、ext2 から ext3 にするコマンド(tune2fs [Ex : tune2fs -j /dev/hdb5])もあるようです。
Plamo Linux(98) -> 3.3です。ではどうかな?
前項で新たに作ったパーティションにファイルシステムを作成してみましょう。

コマンドを検索したら mke3fs はありません。 mke2fs はありました。
mke2fs
 ↑
どうやらできた様子です。
まだマウントしてないので、df でも見えませんね!
5.1.5 ファイルシステムのマウント
ファイルシステムを作成したパーティションを実際に利用するには、マウントを行う必要があります。
マウント操作は、 mount, umount コマンドで行います。
●mount : 現在のマウント状況を表示する。

●mount -t fstype device directory :

device で指定したデバイスを directory で指定したディレクトリに fstype で指定したファイルシステムとしてマウントする。

●umount filesystem :

マウントを解除する。filesystem はマウントポイントまたはデバイス名

◆オプション

-t fstype : ファイルシステムの指定
-o options : オプションの指定 (詳細は man mount で調べてね)
-r : 読み込み専用でマウントする
-a : /etc/fstab のエントリにある全てのファイルシステムをマウントする。
では、マウントポイントを作成して、マウントしてみましょう。
その前に現在のマウント情報を見てみましょう。
追加領域のマウント前です。
では、マウントポイントに /data を作成して /dev/hda6 を /data へマウントします。
mountしましたーーーー
たしかに /dev/hda6 がマウントされていますね。では、アンマウントしてみましょう。
アンマウントしたよぉーーーー
どうやらOKです。
次は「自動マウント」です。
5.1.6 自動マウント
Linux(Unix)は、システム起動時に全てのデバイスをマウントします。そのため、インストール時に設定したパーティションは、システム起動時に自動的にマウントされるように設定されています。
自動マウントの設定ファイルは、/etc/fstab です。
新たにマウントしたデバイスも、このファイルに記述を行うことにより、システム起動時に自動的にマウントすることができます。
/etc/fstab は次のような感じです。(これもディストリビューションによって少し違うようです)
/etc/fstabです。
記述形式は次のような感じです。(Ex : マウントポイント-> /home の例)
デバイス マウントポイント ファイルシステム オプション ダンプ チェック
/dev/hda3 /home ext3 defaults 1 1
項  目 意   味
デバイス デバイス名もしくはファイルシステムラベルを指定する。
マウントポイント マウントポイントを指定する。
ファイルシステム ファイルシステムを指定する。
オプション マウント時のオプションを指定する。複数時は「,」で区切って指定する。
ダンプ バックアップの間隔(日数)を指定する。(0)は指定なし。
自動的にバックアップするわけではありません。別途設定要します。
チェック 起動時にファイルシステムをチェックする順番を指定する。
(0)はチェックしません。
マウント時のオプションを記述します。オプションには以下のようなものがあります。ここには主なものだけ記載しておきます。
名  称 内     容
async ファイルシステムへの I/O が非同期で行われます。
atime アクセス毎に inode のアクセスタイムをアップデートします。
auto mount コマンドの -a オプションでマウントされるようにします。
defaults デフォルトのオプションを有効にします。デフォルトでは rw, suid, dev, exec, auto, nouser, async が有効になります。
dev ファイルシステム上のデバイスを利用できるようにします。
exec バイナリの実行を許可します。
noatime アクセス毎に inode のアクセスタイムをアップデートしません。これを有効にすると、ファイルシステムへのアクセス速度を向上させることができます。
noauto 明示的に指定された場合にのみマウントされます。mount コマンドの -a オプションでマウントされないようになります。
nodev ファイルシステム上のデバイスを利用できないようにします。
noexec ファイルシステム上でのバイナリファイルの実行を無効にします。他システム用のバイナリファイルの配布を行うようなサーバを構築する際にこのオプションを有効にします。
nosuid SUID や SGID を無効にします。
nouser スーパーユーザ以外マウントできないようにします。
ro リードオンリーでファイルシステムをマウントします。
rw 読み込み・書き込みができる状態でファイルシステムをマウントします。
suid SUID および SGID を有効にします。
sync ファイルシステムへのI/Oを同期で行います。
user 一般ユーザでもファイルシステムをマウントできるようにします。
では、先に作成した /dev/hda6 (/data) を /etc/fstab のエントリに追加してみましょう。
Linuxのディストリビューションとバージョンによっては e2label で先にラベル名を付与するところですが、Plamo Linux(98)ではどうかな?・・・・・・で e2labelを検索したらコマンドはありました。(e3labelではないです!)
はじめに /dev/hda6 に /data というラベルを付与し確認してみましょう。
つきましたね。では、/etc/fstabにエントリーを追加しましょう。vi で追加します。
(ファイルチェックを '0' にしたのは、ここ1にするとfsck エラーになるためです・・・・Plamo Linaux(98)のfsckおかしいから)
ついでに見やすくしました。
このラベルを使うと /etc/fstab に記述されているパーティションは、マウントポイントの指定のみで行うことができます。
mount /data
おおOKですね。では umount してみましょう。
umount /data
この機能と noauto オプションを組み合わせることにより、mount コマンドの書式を簡略化することができます。
例えば・・・・・CD-ROM をマウントする場合

正しくは    mount -t iso9660 /dev/cdrom /cdrom    と実行しますが /etc/fstab に・・・・・

/dev/cdrom /cdrom iso9660 noauto, owner, ro 0 0    なぁーんて書いてあれば mount /cdrom でOKです。

CD-ROMやFDのようなリムーバブルメディアを扱うデバイスは、その特性から noauto で起動時に自動マウントしないようにしています。
では、リブートして /dev/hda6 が /data としてマウントされるか確認してみましょう。
起動時の mount 表示にありました。
再起動後の確認
    ↑
  おおーーーーOKです。

5.2 フロッピーディスク

フロッピーディスクもハードディスクと同様に利用することができますが、利用前にフォーマットを行う必要があります。
教材によると・・・・

# fdformat /dev/fd0H1440    (H1440は密度)

と書いてあります。Plamo Linux(98) ではどうかな?まずは、コマンド fdformat を find で探してみましょう。

うん、確かにありました。では、次に /dev にある fd0 関連です。ls -l /dev/fd0* で探してみたら、一杯ありました。
が、 fd0H1440 ではなく fd0h1440 です。
大丈夫そうなので、教材にしたがってやってみましょう。

では、フォーマットです。
fdformat
    ↑
いい感じです。
次にLinuxで使えるようにファイルシステムを作成しましょう。ここは ext2 でしましょうか。
FDをmke2fs
   ↑
これもいいっすね!
では、マウントしてみます。
教材では・・・・・・・・・・・・・・

# mount -t ext2 /dev/fd0 /mnt/floppy

だけど、Plamo Linux(98)のマウントポイントは? /etc/fstab にエントリ記述ないしぃー!
で、CD-ROM は /cdrom だったので ls -l / | more で見たら /floppy らしきものがあると思いましたがありません。
ふと見ると、/mnt というディレクトリがあります。もしかしたらこの中に・・・・と期待しましたが total 0 です。
もしかしたら、自分でマウントポイント作らないといけないかな?

では、 mkdir /mnt/floppy で作ってみます。そしてマウントしてみましょう。
フロッピーディスクをマウント
   ↑
 マウントできました。
では、適当なファイルのコピーとディレクトリを作ります。
フロッピーディスクへのコピー
  ↑
 できましたね。
アンマウントしましょう。
フロッピーディスクのアンマウント
Windowsで利用しているフロッピーディスクもマウントできるようです。
Windows上で作ったフロッピーディスクをマウント
  ↑
素晴らしい、OKですね。
本当は、/etc/fstab に /dev/fd0   /mnt/floppy    auto   noauto, owner   0 0 と書いておけばいいんでしょうけど、フロッピーディスクを使うことは非常に少なくなっていますので、このままにしておきます。
忘れたら、この記録を見ることにします。

5.3 プリンタ

ディスク装置の項目なのにプリンタ?ってのも少し変な感じしますが、デバイスということで「まぁいいか」です。
教材ではX上のprinttoolなるものを使ってプリンタ設定してましたが、Plamo Linux(98)ではどうかな?
Xは動かせなかったのでX抜きでインストールしてるし・・・・・・・・・・
プリンタを利用可能にするには /etc/printcap をいじくる必要があります。
初期状態では、このようになっていました。
全てリマークされていますね。
この /etc/printcap を簡単に編集できる printersetup なるツールがあるようです。
/usr/spool 以下に spoolのディレクトリも作ってくれます。
Plamoサイトの HOW-TO によると・・・・・・・・・・・・
  Plamo Linux ではプリンタの設定(/etc/printcap)をするための簡単なスクリ
  プト(/usr/sbin/printersetup)も用意しました。このスクリプトではローカル
  に接続されたプリンタ用には、最近のカラーインクジェットプリンタを前提に
  して、テキストファイルも ghostscript 経由で出力するようにしています。
  また、ネットワークプリンタを設定することも可能です。

 ・・・・・・・・・・・・・・・・・・・  
   
  l/usr/sbin/printersetup は dialog を使って日本語を表示するので日本語の
  読める環境でお使いください。
どれどれ、ではプリンタ(EPSON 670C)を接続してっと!・・・・・PC-98x1用のケーブルあったっけ? → ありました。
lpd は動いているかなっと! (lpc status lp)
大丈夫?
  ↑
これって、大丈夫ってこと?( lp は前日試しに printersetup で追加したものです)
デバイスはあるかな? (ls -l /dev/lp*  )
うん、ある
  ↑
あるね!!!!!!!
じゃー printersetup してみましょう。最初はローカルのプリンタです。

   ↑
「local」を選択。

  ↑
「/dev/lp0   DOS の LPT1」を選択。

  ↑
互換そうな「epag600   EPSON ESC/Page 600DPI 用」を選択。

  ↑
なんとなく名前を付けてみた。

  ↑
「Yes」だなや!

   ↑
終わりはこんな感じ・・・・・あれ文字化けしてる。
この時の /etc/printcap は・・・・・・・・・・・・・・・
pm670c-txt|text:\
:lp=/dev/lp0:\
:sd=/usr/spool/pm670c-txt:\
:lf=/usr/spool/pm670c-txt/log:\
:af=/usr/spool/pm670c-txt/acct:\  
:if=/usr/bin/pm670c-txt-if:\
:mx#0:\
:sh:

pm670c|ps|PostScript:\
:lp=/dev/lp0:\
:sd=/usr/spool/pm670c:\
:lf=/usr/spool/pm670c/log:\
:af=/usr/spool/pm670c/acct:\
:if=/usr/bin/pm670c-if:\
:mx#0:\
:sh:
まずは直接プリンタに直接プリンタにテキストファイルを出してみましょう。
cat abc.txt > /dev/lp0   ・・・・・・・・・・正常に出力した。
lptest /dev/lp0 ・・・・・・・・・・・・・・・・・ これは出ません!なんで?
では、lpd をリスタートしてみます。・・・・・・・  停止 : lpc stop all   開始 : lpc start all  再起動 : lpc restart all
次はlpr コマンドで・・・・・・・・ lpr -Ppm670c-txt /root/abc.txt
ですが、出力しません。ログファイルに延々と出力しているので lpc restart all で止めようとしました。
しかし、またログ出力開始してしまいます。なので、次のディレクトリにあるスプールファイルらしきものを rm し、次のファイルを cat > filename で空にしました。そして lpc restart all したらやっと止まりました。

/usr/spool/pm670c-txt/lock
/usr/spool/pm670c-txt/status
/usr/spool/pm670c-txt/log

コピーしておいたログを見てみましょう。/usr/spool/pm670c-txt/log です。
/usr/bin/gs: error while loading shared libraries: libXt.so.6: cannot open share
d object file: No such file or directory

これって必要なライブラリが無いってことだよね。しかもX関連のライブラリだし。
/usr/bin/pm670c-txt-if を見ると・・・・・・
#!/bin/sh
#
# 通常のテキスト用のフィルタ(if)
# これらはlprからifに渡される引数です。
#
WIDTH=$1
LENGTH=$2
INDENT=$3
NAMEFLAG=$4
LOGIN=$5
HOSTFLAG=$6
HOST=$7
ACCT=$8
#
WIDTH=`echo $1 | awk '{ print substr($1,3) }'`
if [ -z "$WIDTH" -o "$WIDTH" = "0" ]; then WIDTH=80; fi

LENGTH=`echo $2 | awk '{ print substr($1,3) }'`
if [ -z "$LENGTH" ]; then LENGTH=66; fi

INDENT=`echo $3 | awk '{ print substr($1,3) }'`
if [ -z "$INDENT" ]; then INDENT=0; fi

/usr/bin/nkf -e | /usr/bin/psconv -V$WIDTH-$LENGTH -j | /usr/bin/gs -q -dNOPAU
SE -sDEVICE=epag600 -sOutputFile=- -
  ↑
 最後の行に/usr/bin/gs があります。これを通さないように次のようにしてみました。

/usr/bin/nkf -e | /usr/bin/psconv -V$WIDTH-$LENGTH -j
そしたら、psconv の設定ファイルの内容みたいのが A4で3枚くらい出てきました。

次に /usr/bin/nkf -e だけにしたら cat abc.txt > /dev/lp0 と同じ内容のものを紙に出力しました。

これじゃー意味ないすね。

どうやら、Linuxでプリンタ使うには psconv -> gs を通すので /usr/X11R6/lib/libXt.so.6 とかの X関連モジュールが要るようですね。
まぁ、原理はわかったし lpr 使えたので、とりあえず /usr/bin/pm670c-txt-if は元に戻し /etc/printcap で filter を使わないようにしておいた。
   ↓
こんな感じです。
(このエントリーでは # /usr/bin/pm670c-txt-if とリマークしてもだめでした。filter 通ってしまいます。なので行を dd しました)
pm670c-txt|text:\
:lp=/dev/lp0:\
:sd=/usr/spool/pm670c-txt:\
:lf=/usr/spool/pm670c-txt/log:\
:af=/usr/spool/pm670c-txt/acct:\ 
:mx#0:\
:sh:

pm670c|ps|PostScript:\
:lp=/dev/lp0:\
:sd=/usr/spool/pm670c:\
:lf=/usr/spool/pm670c/log:\
:af=/usr/spool/pm670c/acct:\

:mx#0:\
:sh:
上記と同じ要領でプリントサーバー(KOMATSU LANA)にプリンタ出力してみました。
printersetup で「 remote 」を選択したものです。
なお、プリントサーバーは今まで使っていたので何もいじっていません。出力先は lpt1とlpt2 があり、プリンタは lpt2 に接続しています。
また、plamoの /etc/hosts にはプリントサーバーのIPアドレスと名前(LANA)を記述しています。

/etc/printcap はこんな感じです。
txt|text:\
:lp=:rm=LANA:rp=lpt2:\
:sd=/usr/spool/txt:\
:lf=/usr/spool/txt/log:\
:af=/usr/spool/txt/acct:\ 
:mx#0:\
:sh:

lp|ps|PostScript:\
:lp=:rm=LANA:rp=lpt2:\
:sd=/usr/spool/lp:\
:lf=/usr/spool/lp/log:\
:af=/usr/spool/lp/acct:\
:mx#0:\
:sh:
  ↑
例によって filter は外しています。
lpr -Ptxt /root/abc.txt    とやったら無事に印刷しました。
プリンタに関してはこれくらいにしときます。別途 samba でプリンタ共有なんかの時に取り組みたいと思います。

Prev Top Next
パッケージ管理 目次 ユーザ管理

サイトトップへ