操作
系统:RedHat 6.1
( Y3 q( _& }7 o7 O P5 M" r, b$ B* j0 q E, S" P6 T0 g8 S
硬件:串口多用户卡
9 m \. E$ P6 R. ^; j# M3 q/ R+ R6 {- ^5 G/ Y+ W& I. z3 R9 y$ C
串口多用户卡一般都有跳线可供选择(阅读说明书)。
. I- d" n6 W5 X. u' B; [/ h' n7 E" Z7 T& E
我对一个八口的多用户卡的跳线设置为:
7 ~: `* W7 K2 t$ p# {0 t7 N5 H+ _" `. l0 S; ~
IRQ=3
! R0 g/ h1 y- k$ U; d
5 ~+ P1 c* o) g, f
I/O=0190,0198,01a0,01a8,01b0,01b8,01c0,01c8(十六进制)共八个 I/O
端口
1 U) p) M: i; _% ~- @7 ?: d C
) R* {5 N5 t" n3 I; C6 X+ W; h 多用户卡的晶片
类型:16550A /*不同的多用户卡的晶片类型可能不同*/
1 A+ t z; o" f& K& a, @3 Y
" d* k0 `8 V7 _7 z; Q
过程:由于涉及设置,以下的操作由root用户完成。
8 T0 y# p% v5 ^1 Y4 o
8 Z- o+ W/ c& o- C3 Z7 t( u, R, q
) V5 g1 R9 ?7 K( r0 V9 z
* i+ f6 r, l; Q- z一.因为多用卡的中断是3,所以要删去ttyS1(COM1)和ttyS3(COM4)
+ U: Z1 c9 u) o+ ] B! k
* o4 T( Y! I" t9 p0 k( n; v$ U1. #cd /dev
3 H/ K, y& \; T" t3 D1 a8 P, G* {5 Y. { Q& |% S" R- t- l
2. #./MAKEDEV -d ttyS1
! n/ B$ l! @ D' |; T* n4 ?8 ]1 q, O) g+ @( t3 u; s# Q
3. #./MAKEDEV -d ttyS3
, [1 x& y: _5 ?, t5 f* }/ R+ C4 d- p0 r$ W0 |! t
) G: e5 {8 X: e: Y& s
; l$ a# Y5 Q3 b0 f, f二.生成串口设备
* Q- @$ t9 p6 I- M8 @) Q9 f: v7 l" p
: t" x8 e7 `+ c" D1. #cd /dev
1 h* g. J2 a5 G' \8 |- Z3 F, |5 n6 e N
2. #./MAKEDEV ttyS11
8 j6 n y" W6 d1 X/ ^6 X% ]
- _0 I0 q! s6 P3. #./MAKEDEV ttyS12
8 W a% C* U& b2 X/ R6 I! D& e1 `6 P& |4 @1 ]
4. #./MAKEDEV ttyS13
, f4 K5 ?+ ~7 E4 w
1 h$ N5 n S B1 }3 l6 |, p5. #./MAKEDEV ttyS14
% P6 S+ w8 O# |* q/ D6 {3 j* @/ _
5 |4 x# I6 u2 x( }% z. Y
6. #./MAKEDEV ttyS15
H4 p* q+ T, j! j) v C' |
W. A# K" r8 b9 I7. #./MAKEDEV ttyS16
6 \- }+ B. q" Z. E1 l, c9 h
1 ~* n1 u* I* n& s* T$ @
8. #./MAKEDEV ttyS17
, h* K3 v' S8 w7 V, C
) u* E9 v+ j/ d' K0 S+ t9. #./MAKEDEV ttyS18 /*选择这样的串口设备是我的喜好,您可以选择ttyS[0..63]范围的串口设备*/
( \* j% C* G a2 F# P& \ u
' J" `" k+ O# D6 v I- G[color=#FFFFFF']
; [6 a( _! e' o/ k! j5 s, n L1 ?+ A. t* N9 ]& j9 o$ i- [9 {0 S
1 G' E* ~$ @: |, S4 @; q! {4 X# r1 i$ V9 v
三.设置串口设备对应多用户卡的串口
% i u3 x! A: w& p! s1 u. e; L1 O4 L2 U% }# M4 E
1. #/bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A /*设置/dev/ttyS11i为对应多用户卡的 第一个串口,以下依此类推*/ /*如果没有setserial工具,就安装它.RH6.1的缺省安装就已有此工具了*/
( {' B/ @4 R' q# I9 z) C8 o1 L* G- s/ G
2. #/bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A
+ q R3 z5 R$ E5 a. y. R9 A( V! L
# d! F \ H6 [- h0 I$ A3. #/bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A
2 H- Y+ ?, E! P. ]' m* {1 Z- C7 ^
4. #/bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A
. T) M0 {9 P% q; j _' J8 N
6 f; \% ]) W% [. q5. #/bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A
1 C. c: e( I, V& r; R2 D" S
# ^; V. g9 D3 h2 p6. #/bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A
2 m9 f/ r0 ]* [0 G' l; d% {% G, D! A4 a/ p7 `- S B! k9 N; B- ?
7. #/bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A
' g( G7 {: ^# f! T& B8 _
( X2 x y7 l* s: C8. #/bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A
4 B: z( _8 [2 _
8 k9 f5 Z S! Z0 b: C; B 0 K' h z( G K& I& B6 E) V
4 e5 s# T. K$ i0 j. p$ c) C; q
四.编缉/etc/inittab文件
- \+ L. g P9 ?8 |2 K- m4 W6 ]: j \, ^& L% J0 k1 ~- t
1. 在文件/etc/inittab增多以下几行:
6 f% C4 z2 {) M! _( ]% f( I
# Y' ?0 M3 y& G 11:2345:respawn:/sbin/mingetty ttyS11
/ x( k' ^) ?1 W# [2 h, U l
$ `$ E' R. d( t- o
12:2345:respawn:/sbin/mingetty ttyS12
) n5 z7 Y8 x6 X
' s, s, K$ u: a
13:2345:respawn:/sbin/mingetty ttyS13
* h* H2 i; Q1 q+ X$ Z- E
[color=#FFFFFF']
j/ J9 g5 R6 m0 V2 G9 j* y4 M4 y" B; k
1 }- Z5 b) \! c; O
14:2345:respawn:/sbin/mingetty ttyS14
; w* P1 t( S) Z3 v# h5 ~; A6 I# a8 d
15:2345:respawn:/sbin/mingetty ttyS15
9 _& L' {- z$ G1 i1 z7 U( h/ Q' s3 r1 Q/ J# W0 T
16:2345:respawn:/sbin/mingetty ttyS16
# l6 O4 T2 @* W3 M3 B
- \; x5 E5 m/ }. X. E& H2 g' A 17:2345:respawn:/sbin/mingetty ttyS17
' ]! g7 J0 i* ]0 q( f/ L4 |
' h; l6 \; H0 a. { 18:2345:respawn:/sbin/mingetty ttyS18 /*每行开头的号码(如11等)视您的
机器设置而定*/
) Z1 h E! h3 R1 _, j3 b8 b
( Q0 P5 p5 N5 Q! g, d& B/ a9 h2. #init q /*使以上增加的几行生效*/
& C7 t5 A' t- z9 `/ c
1 X4 m! S8 s" R' {$ b9 D至此,已完成了串口多用户卡的设置。接上终端,就可见到盼望已久的login状态,爽吧!
. m. W2 J1 {* U) w6 g- F
+ M6 o' U! ~7 q! z9 f7 p; X ; N& k2 c( ~8 u3 I, | f
# m8 B Q- B) x另外,如果想每次一开完机就能使用串口卡,可以将第三步编缉成
shell文件,放在/etc/rc.d/init.d下,然后在/etc/rc.d/rc3.d造个软连接,步骤如下:
8 F4 L1 O3 A* J- P( A& [5 D/ k9 {% g9 h2 M8 Y+ q* p1 \4 e
1. #cd /etc/rc.d/init.d
: P" y* ?0 y# \$ ]" { C9 ^1 Z9 p3 t" Z8 c
2. #vi ttyS //文件名随您选
; q8 v) P0 L3 W2 d3 s
- a( P% `- r0 n 增加第三步的几行:
/ o. y/ Q. \8 A) i) M
# _: x; t4 q+ V* ^+ C2 o
/bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A
; v+ { L$ c7 K6 _% O$ z( g* M
8 S5 F& M5 c$ a$ m) l- Q& v
/bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A
, `$ I, M0 m, w; w! i) H' x: a0 l3 b) K, V
/bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A
: R6 j4 m9 Z& l" D" P$ g& H' i& j+ p
/bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A
; i) i4 T0 e! o* _
# G4 k! V' t! m3 e /bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A
& V, _6 F( Z0 \4 j
# L Q' V. j3 c8 j
/bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A
8 l9 B% G" X+ Z
/ |$ O/ C" }1 q
/bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A
- ~2 @/ i2 c5 D
! o3 Y: z2 ^; ^% ~- @/ f# B
/bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A
5 E; }; U, o3 n( X# N& `
0 L1 [2 V9 t& O 存盘退出
2 j# G- Q$ n! f, x
2 R/ w( V- w' a/ P3. #chmod x ttyS /*使ttyS可执行*/
9 o: ?6 j8 J$ f1 w; n
5 ?9 Z9 M# i. i
4. #cd /etc/rc.d/rc3.d //这是进入字符状态多用户模式,如果一开机就进入 //X
Windows模式,应选择路径/etc/rc.d/rc5.d
; }# H% ?" S6 E. s( B* o+ H
7 B7 n7 _) C; v% u0 C2 I$ v5. #ln -s ../init.d/ttyS S99ttyS //您可以选另外一个连接文件名 //
4 p8 P' h B2 }; l
+ ^: H$ T8 r0 S7 d( O7 r以上是我的做法,当然,很多人将上面几行setserial内容增加在/etc/rc.d/rc.local //的尾部,就更简单了。
4 a8 v( Z/ V: ]7 J1 i
3 i/ A- t4 d2 N" L! h" X
) P4 F3 ^9 p9 B8 M3 I( A. I+ m
. K1 G) l) R" L9 P6 Y如果你想知道你所用的终端是哪一个串口设备,可编缉/etc/rc.d/rc.local,在它的一行中 增加(\l):
/ |9 o' I+ S M6 I
0 o6 K: Z: {1 {1 J- m9 `( Y
1. #vi /etc/rc.d/rc.local
! s# Y0 V; v: k+ t2 I. u3 K. Z5 P2 }
找到一行: echo "Kernel $(uname -r) on $a $SMP$(uname -m)" %26gt;%26gt; /etc/issue
3 s. u4 I0 K& o
. S) q+ j- G O1 s) |: x6 i 增加(\l),上面一行变成:
6 o9 j( `; N- S% b6 o) n+ j" `! I) c, \6 S" E
echo "Kernel $(uname -r) on $a $SMP$(uname -m) (\l)" %26gt;%26gt; /etc/issue
5 ]2 J8 |2 f5 Y1 n
8 w+ c6 V* a4 B 那么,你就能在终端上见到象这样的login状态:
5 }1 G; ]3 s' b% M& U' {; d
9 f' M+ z# ^7 Q4 r
......................
* V, _! s2 V" p5 a7 F8 d( `: k+ f( B- @ G& G9 T2 A( C
.................... (ttyS11)
8 _& w/ E, W" i1 c% [ @1 Y* o% l4 K# ]
............ login:
& g7 Y! R( S. X# s
8 n( s3 f# m# w7 f/ {% T2 s5 |
最紧要的是你要知道串口多用户卡的晶片、中断和I/O。