PC-Unix 関係覚え書き

HOME | メモ一覧 | LastUpdate: 2003-04-06

説明

このメモは、もしかすると役に立つかもしれないことの覚え書きです。古くて役に立ちそうにないものも含まれていますので、気をつけてください。適当に同じような情報がまとまってきたら、別のメモとして、独立させる予定です。何か気になった点などがありましたら、メールで指摘してください。


目次

PC-Unix 関係覚え書き 目次

  1. 説明
  2. lftp の使い方
    1. FTP サーバにログイン
    2. 基本操作
    3. ブックマーク
    4. ミラーリング
    5. ミラーリングアップロードを行う
  3. Ctrl と Caps Lock のキーマップ変更
  4. cdrecord コマンドで CD-R の作成
  5. VineLinux の apt-get 覚え書き
  6. Telnet の覚え書き
    1. telnet で POP3 に接続
    2. telnet で APOP 認証を行う
    3. telnet で SMTP に接続
  7. FreeBSD で ADSL 接続をしていたときの ppp.conf
  8. FreeBSD 4.3 Release での make world
  9. FreeBSD の / 領域を SoftUpdate の対象にする
  10. VineLinux 2.1.5 で Atok X for Linux の設定
  11. NetBSD-1.5 のインストールメモ
  12. Linux に True Type Fontを使う
  13. 更新履歴

lftp の使い方

lftp というコマンドラインで使用できる FTP クライアントの使い方のメモです。lftp を使うと、手元にあるファイルをディレクトリごと FTP サイトにアップロードするミラーリングも可能です。また、lftp は日本語でメッセージの表示もできますので、英語が苦手でも大丈夫です。

lftp は http://lftp.yar.ru/get.html からダウンロードできます。また、RedHat Linux などでは、rpm としてパッケージが用意されていますので、インストールは省略します。

1. FTP サーバにログイン

まず、引数を付けずに、lftp コマンドを実行すると、シェルのようなプロンプトが返ってきますので、open の引数に ユーザID と FTP サーバの URI を入力すると、パスワードを要求されますので、パスワードを入力すると、ログインできます。

$ lftp
lftp :~> open -u <ユーザID> <FTPサーバ>

また、直接 FTP サーバにログインするには、以下のように、lftp コマンドの引数に FTP サーバとユーザID を指定して実行すると、パスワードを要求されます。認証に成功するとログインできます。匿名 FTP を利用する場合はユーザ名に [anonymous]、パスワードに自分のメールアドレスを入力します。

$ lftp <FTPサーバ> -u <ユーザID>

2. 基本操作

FTP サーバにログインすると、lftp のコマンドが使用できるようになります。基本的には以下のものがあります。

cd   <リモートディレクトリ>   : サーバのディレクトリを変更
lcd  <ローカルのディレクトリ> : クライアントのディレクトリを変更
put  <ローカルファイル>       : クライアントのファイルをアップロード
get  <リモートファイル>       : サーバのファイルをダウンロード
mput <複数のローカルファイル> : クライアントの複数ファイルをアップロード( 例: mput *.html )
mget <複数のリモートファイル> : サーバの複数ファイルをダウンロード( 例: mget *.rpm )
rm   <リモートファイル>       : サーバのファイルを削除
help <コマンド名>             : コマンドの説明。コマンド名を省略すると、コマンド一覧を表示

putgetmutmget コマンドはデフォルトではバイナリモードで転送を行います。アスキーモードで転送を行う場合は、-a オプションを付ける必要があります。詳しくは help put などで確認してください。

その他にも、lftp には、多くのコマンドがあります。help コマンドを使用して確認してください。

3. ブックマーク

ログイン後、ブックマークを使用して、FTP サーバの URI、ディレクトリの場所、ログインした時のユーザ名などを記録しておくことができます。

bookmark add <登録名> : ブックマークの追加
bookmark del <登録名> : ブックマークの削除
bookmark edit         : ブックマーク編集(エディタが起動)
bookmark list         : ブックマーク一覧を表示

ブックマークを登録すると、lftp の実行時や、open を使用した時に、URI の代わりに、ブックマーク名を入力すると自動的に、ブックマークをした時のユーザ名でしていた FTP サーバに接続してくれます。

ただし、デフォルトでは、ブックマークにパスワードは含まれません。接続する時にパスワードを要求されます。パスワードをブックマークに含め、自動的にログインしたい場合は、以下の指定をホームディレクトリに .lftprc を作成して、以下のように記述してから、lftp を起動し、ブックマークの登録を行ってください。

set bmk:save-passwords 1

4. ミラーリング

lftp には、mirror コマンドがあり、このコマンドを使うことで、指定されたリモートディレクトリをローカルディレクトリにまとめてダウンロードしたり、反対に、ローカルディレクトリをリモートディレクトリにアップロードすることができます。

サーバ側のファイルをディレクトリごとダウンロードしたい時には以下のようにします。

cd  <コピー元のサーバ側ディレクトリ>
lcd <コピー先のクライアント側ディレクトリ>
mirror

反対に、クライアント側のファイルをサーバにアップロードする場合は、以下のようにします。

cd  <コピー先のサーバ側ディレクトリ>
lcd <コピー元のクライアント側ディレクトリ>
mirror -R

mirror コマンドに -e オプションを付けると、コピー元にないファイルは削除することができます。

mirror コマンドで -R をオプションを使用する場合、-R を付け忘れると、サーバ側のファイルがダウンロードされ、上書きされてしまいますので、注意してください。

5. ミラーリングアップロードを行う

lftp で手元にあるディレクトリのファイル全てをアップロードする作業を何度も行う必要がある場合、自動更新を行うためのスクリプトを作成すると、手動でコマンドを打たなくても自動的に更新されるますので便利です。このページも、複数ファイルを変更、修正することが多いので、ミラーリングアップロードを行うようにスクリプトを使用しています。

例として、autoupload.lftp というファイルを以下の内容で作成します。

open <ブックマーク登録名、または、相手の FTP サーバの URI>
cd   <ミラーリング先のサーバのディレクトリ>
lcd  <ミラーリング元のクライアントのディレクトリ>
mirror -R -e

コマンドラインで以下のように実行すると、自動的にアップロードが始まります。

$ lftp -f autoupload.lftp

▲ 目次へ戻る


Ctrl と Caps Lock のキーマップ変更

Happy Hacking キーボードなどでは、通常の日本語キーボードでは、Caps Lock キーのある位置に Ctrl キーがあるのですが、これに慣れてしまうと、日本語キーボードを使う時に、Ctrl キーが押しにくい位置になってしまいます。デスクトップで使うときは、キーボードを変更することもできますが、ノートパソコンを使っているとかなり不便です。キーの位置を入れ換える方法をメモしておきます。

X Window System でのみキーマップを変更する時は、~/.xmodmaprc というファイルを追加して、以下のように記述しておきます。

!
! Swap Caps_Lock and Control_L
!
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L

後は、X Window System が起動してから、以下のように実行するか、自動実行されるようにウインドウマネージャなどに登録することでキーマップの入れ換えができます。

$ xmodmap .xmodmaprc

コンソールなどでは、この方法は使えません。VineLinux などでは、kbdconfig で、jp106_Ctrl_CAPS を選択することで Ctrl と Caps Lock の入れ換えができますが、RedHat Linux などでは、そのようなキーマップの定義ファイルが入っていませんので、作成してしまうという手があります。RedHat Linux では、/lib/kbd/keymaps/i386/qwerty/ にキーマップの定義ファイルがありますので、gzip を展開し、書き換えて gzip 圧縮をかけることで kbdconfig から選択できる定義ファイルが作成できます。例として、us キーマップのキーコードの変更の手順をメモしておきます。

日本語キーボードの場合は、jp106.keymap.gz があると思いますので、そのファイルを編集するように適当に読みかえてください。

$ su -c 'zcat /lib/kbd/keymaps/i386/qwerty/us.kmap.gz > /lib/kbd/keymaps/i386/qwerty/usx.kmap'
$ su -c 'vi /lib/kbd/keymaps/i386/qwerty/usx.kmap'

以下のような設定になっていますので、

keycode  58 = Caps_Lock
keycode  97 = Control

以下のように変更します。

keycode  58 = Control
keycode  97 = Caps_Lock

Caps Lock キーが不要な場合は、keycode 97 も Control にしておいても問題ないと思います。最後に、gzip で圧縮して、kbdconfig で作成したキーマップ(ここでは usx)を指定すると Caps Lock と Ctrl キーが指定したキーに入れ替わっています。

$ su -c 'gzip /lib/kbd/keymaps/i386/qwerty/usx.kmap'

▲ 目次へ戻る


cdrecord コマンドで CD-R の作成

Linux や、FreeBSD で、CD-R の作成を行うコマンドとして、cdrecord がありますので、その使い方です。

まず、CD-R のデバイス番号を調べます。

# cdrecord -scanbus

ここで、表示された CD-R のデバイス番号をメモしておきます。

# cdrecord -v dev=0,3,0 speed=4 -pad -dao /path/to/path/<isoイメージ>

オプションの dev は先の cdrecord -scanbus の結果から、CD-R のデバイス番号を指定します。0,3,0 が CD-R の場合は上のように、dev に指定します。speed は倍速の指定です。上の例では 4倍速に設定。-pad というオプションは、ddcat での読み出し時エラーを防ぐために、データの最後に 0 をつめてくれますので、付けておいた方が良いと思います。-daoは、disk at onceでの書き込みを指定します。

▲ 目次へ戻る


VineLinux の apt-get 覚え書き

VineLinux では、debian のパッケージ管理の apt-get がありますので、覚え書き程度にメモしておきます。簡単なコマンドで自動的にアップデートされますので、かなり便利です。基本的には、root でないと使えないので、su コマンドで root になっておきます。

まず、データベースをアップデートします。コンソール画面のときは、日本語が表示できませんので、kon コマンドで日本語を表示できるようにしておくか、eng コマンドで英語環境にしてから使用する方がいいと思います。

# apt-get update

/etc/apt/sources.list から接続先サーバを確認して、アップデート用のリストがダウンロードされます。次に、apt-get upgrade を実行すると、現在インストールされているアップデートパッケージが見付かった場合、自動的にアップデートしてくれます。

# apt-get upgrade

新しいパッケージをインストールする場合は、以下のように apt-get install を使用します。

# apt-get install <インストールしたいパッケージ名>

目的のパッケージ名が分からない場合、以下のように、検索することもできます。

# apt-cache search <検索したいパッケージのキーワード>

▲ 目次へ戻る


Telnet の覚え書き

最近は、ssh を使ってリモートログインするのが当然のようになってきましたが、サーバクライアントしては、意外と役に立つことがあります。

1. telnet で POP3 に接続

telnet で pop3 に接続して、来ているメールを確認できます。メーラがない場合や、新しいメールだけを確認したいときに使えるかもしれません。他にも、pop3 サーバが生きているかどうかを確認するのに便利です。[] は環境によって適切なものに置き換えてください。

$ telnet [メールサーバ] 110

USER [ユーザ名]
PASS [パスワード]

LIST               -- メールの番号とバイト数を一覧表示
STAT               -- メールの件数とバイト数を一覧表示
RETR [list番号]    -- メールの表示、[list番号]は list コマンドで確認
DELE [list番号]    -- メール削除
QUIT               -- 終了

2. telnet で APOP 認証を行う

APOP 認証を行ってログインするサーバの場合、上の方法では、パスワードが合わず、ログインできません。APOP 認証で実際に行うパスワードを計算する方法がありますので、メモしておきます。

サーバに、接続すると、以下のような文字列が表示されます。この文字列は、サーバの場所や接続する時間によって変化します。例えば、サーバが 192.168.0.1 (通常はドメイン名) だとすると、以下のような文字列が表示されます。

<22863.1049367229@192.168.0.1>

パスワードの入力の際に、この文字列を使って、パスワードを計算します。例えば、パスワードが test だとすると、以下のように md5sum( BSD 系の場合は、md5 ) コマンドを使用して計算できます。

$ echo -n '<22863.1049367229@192.168.0.1>test' | md5sum
6b853936faa5862ce93352df9d3a5ee6  -

ここで表示される 6b853936faa5862ce93352df9d3a5ee6 という文字列がパスワードになります。以下のような形でログインできます。

$ telnet 192.168.0.1 110
Connected to 192.168.0.1.
Escape character is '^]'.
+OK <22863.1049367229@192.168.0.1>
USER test
+OK
PASS 6b853936faa5862ce93352df9d3a5ee6
+OK

3. telnet で SMTP に接続

telnet で SMTP に接続して、メールを送信できます。テストメールを送るときくらいにしか役に立ちませんが。この状態では日本語を使っても、普通の人は読めない可能性が高いので、日本語は使わない方が安全です。

$ telnet ***.********.**.jp 25

helo       [クライアントドメイン名]  -- クライアントを通知
mail from: [送信元メールアドレス]    -- 送信元メールアドレスを通知
rcpt to:   [送信先メールアドレス]    -- 送信先メールアドレスを通知
data                                 -- メール送信(先頭に"."のみを入力すると終了)

[・・・ メールの内容 ・・・]

.
quit                                 -- メール送信を終了

-- data の書式 --
From:
To:
Subject:

.                                    -- 終了する(メール送信)

▲ 目次へ戻る


FreeBSD で ADSL 接続をしていたときの ppp.conf

FreeBSD で ADSL 接続をしていたときの ppp.conf の設定です。設定としては、カーネルに、NETGRAPH という PPPoE 関係のモジュールを組み込むか、kldload で、ng_pppoe を入れるかのどちらかを選択することになります。

/etc/ppp/ppp.conf は以下のように設定しました。詳細は、man ppp でかなり詳しい情報が載っていますので、参考にしてください。

default:
 set device PPPoE:fxp1          # fxp1 は ADSL モデムが接続されている NIC を指定
 set speed sync
 set mru 1454
 set mtu 1454
 set ctsrts off
 set authname &lt;USERNAME@DOMAIN&gt; # ADSLを使うときのユーザ名とドメイン名
 set authkey &lt;PASSWORD&gt;         # パスワード
 enable lqr
 add default HISADDR
 enable dns

また、設定方法は、UNIX USER 2001年7月号を参考にしましたので、持っている人は、そちらも参考にしてください。

▲ 目次へ戻る


FreeBSD 4.3 Release での make world

多分、古くてこのままでは使えないと思いますが、FreeBSD 4.3 Release の頃に行った make world の手順です。もしかしたら参考になるかもしれませんので、残しておきます。手順は FreeBSDハンドブック の、19.4. make world の利用を参考にしていますので、そちらの方を参照してください。

・/etc/make.conf を作成。以下の行を追加。

# vi /etc/make.conf
--------------------------------------
NOPROFILE=true
CFLAGS=-O -pipe
--------------------------------------

# reboot

・シングルユーザモードで起動( 起動時に Enter 以外のキーを押す )

ok book -s

# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a

# script /var/tmp/mw.out
# make -j4 buildworld
# exit

# cd /usr/src
# make buildkernel
# make installkernel

# make installworld

# cp -Rp /etc /root/etc.bak

# mkdir /var/tmp/root
# cd  /usr/src/etc
# make DESTDIR=/var/tmp/root distrib-dirs distribution

# cd /var/tmp/root
# find -d . -type d | xargs rmdir 2>/dev/null

# cp /var/tmp/root/dev/MAKEDEV /dev
# cd /dev
# ls -l | awk '{print $1, $2, $3, $4, $5, $6, $NF}' > /var/tmp/dev.out
# sh MAKEDEV
# ls -l | awk '{print $1, $2, $3, $4, $5, $6, $NF}' > /var/tmp/dev2.out
# diff /var/tmp/dev.out /var/tmp/dev2.out

# cd /usr/src/release/sysinstall
# make all install

# fastboot

▲ 目次へ戻る


FreeBSD の / 領域を SoftUpdate の対象にする

FreeBSD は、SoftUpdate 機能を使うことで、ハードディスクのパフォーマンスを向上させることができます。FreeBSD を使っていて、 / が SoftUpdate の対象になっていない場合は、以下の方法で SoftUpdate の対象にすることが可能です。

FreeBSD のインストールは、しばらくやっていないので、最近はよく分かりませんが、もしかすると、デフォルトで / にも SoftUpdate フラグが付くようになっているかもしれません。あまり安全な方法ではないかもしれませんので、自己責任で行ってください。

FreeBSD をシングルユーザモードで起動し、以下のようにコマンドを実行します。

# mount -u -o ro /          //Read Only に
# sync; sync; sync          //気休め
# tunefs -n enable /

これでもうまくいかない場合は、/etc/rc の PATH 指定の後に、以下のコマンドを記述して再起動してください。再起動後、その行は削除します。

tunefs -n enable /

▲ 目次へ戻る


VineLinux 2.1.5 で Atok X for Linux の設定

Atok X for Linux の日本語変換能力はかなり高いと思います。かんな や FreeWnn の日本語変換に不満のある人は試してみるといいと思うのですが、Linux のディストリビューションによって、インストール方法がいろいろと違います。有名なディストリビューションではインストール方法が載っているのですが、VineLinux 2.1.5 では、最初は載っていませんでした。とりあえず、以下のようにすると正常にインストールできました。

今では、VineLinux 2.5/2.6 も出ていますので、この方法が使えるかは確認していません。

▲ 目次へ戻る


NetBSD-1.5 のインストールメモ

一応、以前に NetBSD をインストールしたことがありますので、そのときのメモ書きです。かなり古いバージョンですので、今でも使えるかは確認していません。もし、NetBSDをインストールしようという人が見たら役に立つかもしれませんので、残しておきます。Software Design 2001/4 を参考にしています。

▲ 目次へ戻る


Linux に True Type Fontを使う

最近の Linux では、小さくて見やすいフォントが最初からインストールされていることが多くなりましたが、数年前などでは、デフォルトの日本語フォントが見にくいことが多かったです。Windows で使っている True Type Font を Linux で使う方法もありましたので、載せておきます。ただ、最近は以下のようなことをしなくても True Type Font を使うことができるかもしれません。

$ tar zxvf perlftlib-1.2.tar.gz
$ cd perlftlib-1.2

Makefileの変更
------------------------------------------
BINDIR=/usr/bin
MANDIR=/usr/man/man1
PERLLIBDIR=/usr/lib/perl5/site_perl/5.005
------------------------------------------

mkttfdir.pl
----------------
#! /usr/bin/perl
----------------
に変更

$ make
$ su
# make install

True Type フォントを適当なディレクトリにコピー

# mkttfdir

fonts.dir が作成されますので、/usr/X11R6/lib/X11/fonts/TrueType にフォントファイルをコピーし、このディレクトリにある、fonts.dir に mkttfdir で作成した内容を追加します。一行目にあるフォントファイルには、現在のフォントの数が入っていますので、2つのファイルの1行目を合計した数を入力します。

X Window を再起動すると追加した TrueType フォントが使えるようになっています。

▲ 目次へ戻る


更新履歴

( 2003.04.03 )

Telnet で APOP 認証を行う方法を追加。

( 2003.01.13 )

lftp の使い方、Ctrl と Caps Lock のキーマップ変更を追加。

( 2003.01.05 )

初版作成。まとめ直し。日記の方から参考になるかもしれないメモをこちらに移しました。

▲ 目次へ戻る

LastUpdate: 2003-04-06 | メモ一覧 | HOME