2010. 1. 20. 01:15

linux에서 serial 포트 사용하기 - uucp, cu


[ linux에서 serail 또는 usb-to-serial 포트 사용방법 ]
o 참고 : Managing Taylor UUCP
o linux(Fedora Core 5)에서 serial 사용방법
o unix(sunOS5.10,netra240)에서 serial 사용방법
o 일반 user가 serial을 사용할때 uucp 그룹에 등록할것

[ detailed ]
: uucp package를 설치해야 한다. 
: xinetd가 설치되어 있어야 한다.
: 일반 user(root유저가 아닌)로 tip을 사용하고자 하면 uucp 그룹으로 등록해보자

1. uucp 설치
- yum install uucp 또는 rpm -ivh uucp-fc5-1.07-11.2.1.i386.rpm

2. xinetd에서 uucp 활성화 하기
- /etc/xinetd.d/uucp 파일에서 disable = yes를 disable = no로 바꿔준다.
 - 만약 파일이 없다면 아래처럼 만들어 주면 된다.
# default: off
# description: uucp TCP server
service uucp
{
only_from = 127.0.0.1
socket_type = stream
wait = no
user = uucp
server = /usr/lib/uucp/uucico
server_args = -l
disable = yes
}

3. 이제 xinetd를 다시 시작한다.
   > cd /sbin
   > service xinetd restart

4. 사용법
- tip 연결 방법
   : cu -s 9600 --parity=none --nostop -l /dev/ttyS0
- tip 해제 방법
   : serial을 끊을때는 "(~) + (.)" 으로 물결과 점을 차례대로 쳐준다.
- 아래처럼 스크립트를 만들어 쓰자...
#/bin/bash
#cu -s 9600 --parity=none --nostop -l /dev/ttyS0
echo $#
HOW=$#
case $HOW in
0 ) echo "Usage : tip 9600 ttyS0" ;;
1 ) TTY_SPEED=9600; TTY_NUM=$1 ;;
2|* ) TTY_SPEED=$1; TTY_NUM=$2 ;;
esac
echo "TTY_SPEED = $TTY_SPEED"
echo "TTY_NUM = $TTY_NUM"
cu -s $TTY_SPEED --parity=none --nostop -l /dev/$TTY_NUM
#스크립트 끝
   
5. 일반 user가 serial을 사용할때 uucp 그룹에 등록할것
  - 일반 user(root유저가 아닌)로 tip을 사용하고자 하면 uucp 그룹으로 등록한다.