pepoとネットワークを語ろう

40年前からこれまでとこれからのネットワークを語る

epicon-4.6をリリース

2009-06-30 19:31:35 | Linux

epiconとはLinuxで使えるシリアル・コンソール用の通信ソフトです。SwitchやRouterなどシリアルポートでConfigを設定するネットワーク機器はメーカーや機種を問わず使えると思います。
Cisco製ルータなどの設定を自動化する際、事前に作成したテキスト・データをコピーしてシリアル・コンソール画面へ貼り付けコンフィグの流し込みを行います。
この時、文字と改行の送出デレィを挿入しコンフィグ・データの取りこぼしを防ぐことが必要です。
ルータのシリアル・コンソールとして重要な文字と改行の送出デレイをepiconはサポートしているのでコンフィグを安心してコピー&ペーストが出来ます。
この他、簡易telnet、zmodemなどのファイル転送ソフト、shell、マクロ、外部ソフトの起動などCUIだが多機能でコンパクトな作りとなっています。

使用方法

* オプションなし(com1:/dev/ttys0ポート、9600bps、8bitノンパリティ)

[root@~]# epicon

** Welcome to epicon Version-4.6 Copyright Isamu Yamauchi compiled:Jun 23 2009 **
      exec shell         ~!
      send binary files  ~f
      call rz,sz,sx,rx   ~rz,~sz,~sx,~rx
      call kermit        ~sk,~rk
      external command   ~C
      change speed       ~c
      exit               ~.
      Connected /dev/ttyS0

* ルータの設定 オプションあり(/dev/ttyUSB0,19200bps,キャラクタデレイ:30ms,CRデレイ:50ms)

[root@~]# epicon -d 30 -D 50 -s 19200 -l /dev/ttyUSB0

** Welcome to epicon Version-4.6 Copyright Isamu Yamauchi compiled:Jun 23 2009 **
      exec shell         ~!
      send binary files  ~f
      call rz,sz,sx,rx   ~rz,~sz,~sx,~rx
      call kermit        ~sk,~rk
      external command   ~C
      change speed       ~c
      exit               ~.
      Connected /dev/ttyUSB0

* ルータの設定 オプションあり(telnet,キャラクタデレイ:20ms,CRデレイ:50ms)

[root@~]# epicon -d 20 -D 50 -n 192.168.0.1:23

** Welcome to epicon Version-4.6 Copyright Isamu Yamauchi compiled:Jun 23 2009 **
      exec shell         ~!
      send binary files  ~f
      call rz,sz,sx,rx   ~rz,~sz,~sx,~rx
      call kermit        ~sk,~rk
      external command   ~C
      exit               ~.


Telnet Server 1.10  All rights reserved.


login   :

man抜粋

epicon(1)                       epicon Manuals                       epicon(1)

NAME
       epicon  is  Easy Personal Interface Console terminal software.  First I
       am sorry. Because my English linguistic power is very shabby, this sen-
       tence  is being translated by the machine.  Because of that, read it in
       the interpretation which it is tolerant of though it thinks that it  is
       a little funny translation.

SYNOPSIS
       usage:
       epicon [-options [argument] [-options [argument]]
              [-b ] <--escape cannot be used
              [-c external_command]
              [-d send_charcacter_delay(ms)]
              [-D send_CR_delay(ms)]
              [-e escape_char]
              [-f send_file]
              [-F send_file_effective_delay]
              [-m ] <--input echo mode
              [-M ] <--line mode
              [-l com_port]
              [-L output_log_file]
              [-n ip_address[:port]]
              [-p [server_port]]
              [-s speed]
              [-v ] <--show version
              [-z ] <--auto rz prohibition

        defaults:
                 speed:  9600b/s (Higest of 460800)
                 com_port :  /dev/ttyS0
                 escape: ~ (escape char is three octal digits)

        running epicon escapes:
            escape-. or escape-CTRLD  program end
            escape-!                  into to shell
            escape-escape             send escape char
            escape-f                  send files
            escape-F                  send files delay effect
            escape-c                  chege speed
            escape-C                  external command
:
pepoと

Teratermでちょとしたファイル転送・・・これは便利!

2009-06-27 16:44:57 | Linux

sshでログイン中にshell上で小さなファイルを転送出来ます・・・大きなファイルはエラーで落ちますが
この機能はリモート側へファイルを送信する時、rzコマンド入力をころっと忘れて、ローカル側のTeratermからzmodemでファイル送信をしてしまった

何故かzmodemが自動的に起動してファイルが正常に転送されてしまった。そ、そんなミスから発見したものリモート側からの送信はszコマンドでOKよん
[root@~]# sz /usr/src/epicon-4.4.tar.gz
**B00000000000000
この後、Teraterm -->ファイル -->転送 -->zmodem -->受信 -->ファイルがローカル側へ受信される

リモート側へ受信はrzコマンドを入力するか、そのままでもzmodemなら転送が出来ます
[root@~]#  -->この状態のままファイル転送操作を行う
Teraterm -->ファイル -->転送 -->zmodem -->送信 -->ファイルを指定 -->開く -->ファイルが送信される
[root@~]# ll
total 44
-rw------- 1 root root 25079 Jan  1  1970 epicon-4.4.tar.gz
-rw-r--r-- 1 root root    74 May 29  2007 forward
-rw-r--r-- 1 root root  7824 Jan 29 15:31 install.log
-rw-r--r-- 1 root root   205 May 29  2007 procmailrc
[root@~]# rz
rz waiting to receive.**B0100000023be50
この後、Teraterm -->ファイル -->転送 -->zmodem -->送信 -->ファイルを指定 -->開く -->ファイルが送信される

[root@~]# ll
total 44
-rw------- 1 root root 25079 Jan  1  1970 epicon-4.4.tar.gz
-rw-r--r-- 1 root root    74 May 29  2007 forward
-rw-r--r-- 1 root root  7803 Jan 22 18:44 install.log
-rw-r--r-- 1 root root   205 May 29  2007 procmailrc
但し以下のパッケージがインストールされていること
lrzsz.i386 : The lrz and lsz modem communications programs.

[root@~]# which rz sz
/usr/bin/rz
/usr/bin/sz

linuxのbashはrz,szコマンドがインストールされていればこんな芸当が出来るようですが、FreeBSD7.2で確認したうまく動作しなかった。
うーhttp://sourceforge.jp/projects/ttssh2/は便利

pepoと


automakeを使ってみよう その2

2009-06-27 16:30:53 | Linux

automakeとは、
./configure
make
makeinstall
でソースファイルからアプリケーションをインストールする為に必要なconfigureやMakefileを
比較的簡単簡単に作成するツール群です。前回ではconfigureが生成されたのでconfigureを実行してアプリケーションをインストールします。


[root@epicon-4.4]# ls
AUTHORS    Makefile.am  aclocal.m4      configure     epicon.nr      main.c
COPYING    Makefile.in  autom4te.cache  configure.ac  epicon_main.c  missing
ChangeLog  NEWS         autoscan.log    depcomp       epicon_uty.c
INSTALL    README       config.h.in     epicon.h      install-sh
Makefileを生成する為のconfigureが生成される

[root@epicon-4.4]# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
.
.
.

checking for strrchr... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
[root@epicon-4.4]# ls
AUTHORS    Makefile.am  autom4te.cache  config.status  epicon.nr      missing
COPYING    Makefile.in  autoscan.log    configure      epicon_main.c  stamp-h1
ChangeLog  NEWS         config.h        configure.ac   epicon_uty.c
INSTALL    README       config.h.in     depcomp        install-sh
Makefile   aclocal.m4   config.log      epicon.h       main.c
[root@epicon-4.4]# make
make  all-am
make[1]: Entering directory `/root/epicon-4.4'
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT main.o -MD -MP -MF ".deps/main.Tpo" -c -o main.o main.c;
        then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f ".deps/main.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT epicon_main.o -MD -MP -MF ".deps/epicon_main.Tpo" -c -o epicon_main.o epicon_main.c;
        then mv -f ".deps/epicon_main.Tpo" ".deps/epicon_main.Po"; else rm -f ".deps/epicon_main.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT epicon_uty.o -MD -MP -MF ".deps/epicon_uty.Tpo" -c -o epicon_uty.o epicon_uty.c;
        then mv -f ".deps/epicon_uty.Tpo" ".deps/epicon_uty.Po"; else rm -f ".deps/epicon_uty.Tpo"; exit 1; fi
gcc  -g -O2 -I /usr/include/ncurses -lncurses  -o epicon  main.o epicon_main.o epicon_uty.o  -lncurses
make[1]: Leaving directory `/root/epicon-4.4'
[root@epicon-4.4]# make install
make[1]: Entering directory `/root/epicon-4.4'
test -z "/usr/local/bin" || mkdir -p -- "/usr/local/bin"
  /usr/bin/install -c 'epicon' '/usr/local/bin/epicon'
test -z "/usr/share/man/man1" || mkdir -p -- "/usr/share/man/man1"
 /usr/bin/install -c -m 644 './epicon.nr' '/usr/share/man/man1/epicon.1'
make[1]: Leaving directory `/root/epicon-4.4'
[root@epicon-4.4]# ls
AUTHORS      Makefile.in     config.h       depcomp        epicon_uty.c  stamp-h1
COPYING      NEWS            config.h.in    epicon         epicon_uty.o
ChangeLog    README          config.log     epicon.h       install-sh
INSTALL      aclocal.m4      config.status  epicon.nr      main.c
Makefile     autom4te.cache  configure      epicon_main.c  main.o
Makefile.am  autoscan.log    configure.ac   epicon_main.o  missing
[root@epicon-4.4]# epicon

** Welcome to epicon Version-4.6 Copyright Isamu Yamauchi compiled:Jun 27 2009 **
      exec shell         ~!
      send binary files  ~f
      call rz,sz,sx,rx   ~rz,~sz,~sx,~rx
      call kermit        ~sk,~rk
      external command   ~C
      change speed       ~c
      exit               ~.
      Connected /dev/ttyS0
Disconnected
[root@epicon-4.4]#
pepoとおやすみ


automakeを使ってみよう その1

2009-06-26 10:25:00 | Linux

automakeとは、
./configure
make
makeinstall
でソースファイルからアプリケーションをインストールする為に必要なconfigureやMakefileを
比較的簡単に作成するツール群です。それではautomakeを使ってみよう

アプリケーションのインストールまでの大まかな流れは以下のとおり
1.vi Makefile.am(Makefile.amを作成する)
2.autoscan (configure.scanの生成)
3.mv configure.scan configure.ac
4.vi configure.ac (configure.acの編集)
5.touch NEWS README AUTHORS ChangeLog
6.vi NEWS (NEWS README AUTHORS ChangeLogファイルの加筆・修正)
7.aclocal (マクロと関連ファイルのコピー)
8.automake -ac (Makefile.acからMakefile.inを生成)
9.autoheader (config.h.inを生成)
10.autoconf (config.h.inからconfigureを生成)
11../configure (Makefile.inからMakefileを生成)
12.make (Makefileを実行)
13.make install
14.epicon (アプリケーションの実行)

アプリケーションソースの用意
[root@epicon-4.4]# ls
epicon.h  epicon.nr  epicon_main.c  epicon_uty.c  main.c

Makefile.amを作成する(bin_PROGRAMSとepicon_SOURCESは必須、他はアプリケーションに依存)
[root@epicon-4.4]# vi Makefile.am
ACLOCAL_AMFLAGS = -I m4
AM_CTAGSFLAGS = --globals -l c
AM_LDFLAGS = -I /usr/include/ncurses -lncurses
bin_PROGRAMS = epicon
epicon_SOURCES = main.c epicon_main.c epicon_uty.c
mandir = /usr/share/man
man1_MANS = epicon.nr
"Makefile.am" 7L, 221C written
[root@epicon-4.4]# ls
Makefile.am  epicon.h  epicon.nr  epicon_main.c  epicon_uty.c  main.c
[root@epicon-4.4]# autoscan
autom4te: configure.ac: no such file or directory
autoscan: /usr/bin/autom4te failed with exit status: 1
configure.acが無いと怒られるが当然!
[root@epicon-4.4]# ls
Makefile.am   configure.scan  epicon.nr      epicon_uty.c
autoscan.log  epicon.h        epicon_main.c  main.c
[root@epicon-4.4]# mv configure.scan configure.ac

[root@epicon-4.4]# vi configure.ac
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ(2.59)
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AC_CONFIG_SRCDIR([epicon.h])
AC_CONFIG_HEADER([config.h])
.以下略
.
"configure.ac" 34L, 882C written

変更 AC_INIT(epicon, 4.6, pepolinux@users.sourceforge.jp)
追加 AM_INIT_AUTOMAKE
# FIXME: のコメントがもしあれば修正
[root@epicon-4.4]# cat Makefile.am
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ(2.59)
AC_INIT(epicon, 4.6, pepolinux@users.sourceforge.jp)
AC_CONFIG_SRCDIR([epicon_main.c])
AC_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE
# Checks for programs.
AC_PROG_CC
AC_PROG_INSTALL

# Checks for libraries.
# FIXME: Replace `main' with a function in `-lg':
AC_CHECK_LIB([g], [main -lg])
# FIXME: Replace `main' with a function in `-lncurses':
AC_CHECK_LIB([ncurses], [main -lncurses])

# Checks for header files.
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS([fcntl.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time
.h termios.h unistd.h])

# Checks for typedefs, structures, and compiler characteristics.
AC_TYPE_PID_T
AC_HEADER_TIME

# Checks for library functions.
AC_FUNC_FORK
AC_PROG_GCC_TRADITIONAL
AC_FUNC_MALLOC
AC_FUNC_SELECT_ARGTYPES
AC_TYPE_SIGNAL
AC_CHECK_FUNCS([alarm dup2 memset select socket strrchr])

AC_CONFIG_FILES([Makefile])
AC_OUTPUT

[root@epicon-4.4]# aclocal
[root@epicon-4.4]# ls
Makefile.am  autom4te.cache  configure.ac  epicon.nr      epicon_uty.c
aclocal.m4   autoscan.log    epicon.h      epicon_main.c  main.c

[root@epicon-4.4]# autoheader
[root@epicon-4.4]# ls
Makefile.am  autom4te.cache  config.h.in   epicon.h   epicon_main.c  main.c
aclocal.m4   autoscan.log    configure.ac  epicon.nr  epicon_uty.c
configureのインプットファイルconfig.h.inを生成

[root@epicon-4.4]# automake -ac
configure.ac: installing `./install-sh'
configure.ac: installing `./missing'
Makefile.am: installing `./INSTALL'
Makefile.am: required file `./NEWS' not found
Makefile.am: required file `./README' not found
Makefile.am: required file `./AUTHORS' not found
Makefile.am: required file `./ChangeLog' not found
Makefile.am: installing `./COPYING'
ファイルが無いので怒られる
[root@epicon-4.4]# touch NEWS README AUTHORS ChangeLog
[root@epicon-4.4]# ls
AUTHORS    INSTALL      NEWS        autom4te.cache  configure.ac  epicon_main.c  main.c
COPYING    Makefile.am  README      autoscan.log    epicon.h      epicon_uty.c   missing
ChangeLog  NEW          aclocal.m4  config.h.in     epicon.nr     install-sh
[root@epicon-4.4]# automake -ac
[root@epicon-4.4]# ls
AUTHORS    INSTALL      NEW     aclocal.m4      config.h.in   epicon.nr      install-sh
COPYING    Makefile.am  NEWS    autom4te.cache  configure.ac  epicon_main.c  main.c
ChangeLog  Makefile.in  README  autoscan.log    epicon.h      epicon_uty.c   missing
MakefileのインプットMakefile.inが生成される

[root@epicon-4.4]# autoconf
[root@epicon-4.4]# ls
AUTHORS    Makefile.am  aclocal.m4      configure     epicon.nr      main.c
COPYING    Makefile.in  autom4te.cache  configure.ac  epicon_main.c  missing
ChangeLog  NEWS         autoscan.log    depcomp       epicon_uty.c
INSTALL    README       config.h.in     epicon.h      install-sh
Makefileを生成する為のconfigureが生成される

つづく
pepoとおやすみ


faviconがいつのまにか表示しなくなった

2009-06-12 06:20:31 | Linux

faviconとはwebブラウザのアドレス欄の左隅に表示されている小さなアイコンのこと

webページの<HEAD>~</HEAD>の間へ以下のように『favicon.ico』を指定すればいいだけのもの

<TITLE>ようこそPepoLinuxのお部屋へ</TITLE>

<link rel="favicon" href="favicon.ico" type="image/x-icon">

以前は確かに表示されていたものがいつの間にか表示されなくなった

やや放置していた趣もあるがfavicon.icoでぐぐると、解決することが出来た

『favicon.ico』の作成方法は他のブログを参照してもらいたいが、表示されなかった理由はファイルサイズにあるようだ・・・IE7に変えてからか?

[root@html]# ll *.ico
-rwxr--r-- 1 apache apache  1150  6月 12 06:00 16_favicon.ico 表示する
-rwxr--r-- 1 apache apache  5430  6月 12 05:59 32_favion.ico 表示する
-rwxr--r-- 1 apache apache 27878  3月 22 19:11 big_favion.ico 表示しない

今回は手抜きで以下のページの力をお借りしてデスクトップと共用できる32×32のアイコンを設定した

アイコンの原型『big_favion.ico』をアップロード->allsize->32×32を選択、ダウンロードの画像を現在は使用している

http://www.chami.com/html-kit/services/favicon/

 pepo