QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
3天前
查看: 2135|回复: 2
收起左侧

[分享] LINUX: 常用命令解析和技巧整理

[复制链接]
发表于 2006-11-7 14:11:36 | 显示全部楼层 |阅读模式 来自: 中国陕西西安

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
本文收集了LINX下一些常用命令和技巧, 对初学者会很有帮助.
8 f# C7 @  e) l9 {5 K, S
  Q0 v( B% W6 T一. 基础; I$ _2 l. p% `" X8 T3 A
Q: Linux的开机过程都做了什么?8 h# ^7 D  m) ]; M3 ?/ N
A: 1) 一开机,CPU将控制权交给BIOS,BIOS完成开机自检;
' n4 B5 q9 E) \- |  2) 然后BIOS读取磁盘上的第一个扇区,并装入主引导扇区的lilo;1 l2 s, F& `8 F4 u4 b7 Q3 E, P$ u
  3) lilo根据输入选择不同的内核映象,如果你选择了linux就读取/boot下的核心映象;) [# B( Y5 `$ k- m% H
  4) 核心开始硬件检测和设备驱动程序的初始化,然后运行init/ Z' o; x0 I/ |& s; ~  E
  5) init进程根据/etc/inittab的配置运行一系列初始化脚本;- ?) f" m0 X2 i  I: D' G3 H2 ^
  6) 完成后,启动getty进程接受用户的登录.
8 V9 x, ^; S, H. C( Z7 }- v0 R0 N6 R8 K. e6 S4 r) g( O! I" Z
Q: 如何设置开机自动运行程序?
4 f  z. k* C3 p: H- J" _" \A: 你可以在以下几个脚本文件中加入你想一启动系统就执行的命令:$ I( X( Y7 G' l8 k0 Z6 @
/etc/rc.local/ `9 }6 T5 X" S! U) v
/etc/rc.sysinit
( |! Q( H& B* p. J/etc/rc.d/init.d
* ^  ^2 V+ P$ a! h5 w: t  n
' C  E$ l5 k1 e6 k; V  f0 rQ: How to recover ROOT's password:
$ T+ x1 o% k% O2 @4 w8 A( CA:
; n; E/ W( I# m5 H8 \GRUB (RHEL AS 3.0 Update 2,vmware)
( d, Z* @2 Q4 S. W! l, c1. press "e" when select menu appears;( y4 C0 E* {8 U3 u5 o
2. edit2 _  z$ U9 P9 w, U/ ]
old: kernel /vmlinuz-2.4.21-15.EL ro root=LABEL=/
" ~% l, t' G9 c, t7 ]* w+ }new: kernel /vmlinuz-2.4.21-15.EL single ro root=LABEL=/
0 n) f2 I/ \8 N) W. n- E/ Z3. press "b" to boot* y+ ^, [3 u) Q7 [. N4 B
4. vi /etc/shadow:* K( z# Y& j0 z/ q
将第一行,即以root开头的一行中root:后和下一个:前的内容删除,9 o+ S5 K* H, [" d
5. 保存(wq!)1 y; t8 _" [8 V3 K7 U
6. #reboot重启,root密码为空 passwd root重设密码. v5 x$ h/ k& J1 y( J5 H2 m( f

* G# [$ L/ h, O6 D5 W  U9 X目录说明
2 n5 X" e& ]( Y# X2 }0 F# _/bin:存放最常用命令;" N( j9 z( C2 B: w/ s
/boot:启动Linux的核心文件;8 u' t( H: o5 ]
/dev:设备文件;# d; L$ d& b- _" J$ {0 `9 e
/etc:存放各种配置文件;
( ^+ Q2 {% G0 }& g5 z+ N( J; e/home:用户主目录;
% a* f  ], m  H4 m  F2 E. T0 |' Q/lib:系统最基本的动态链接共享库;
3 V2 l7 c* e1 j6 {- V/mnt:一般是空的,用来临时挂载别的文件系统;0 c; m  R# D8 U3 v' O8 `$ r
/proc:虚拟目录,是内存的映射;
, s# I; ?: e$ L9 ^/sbin:系统管理员命令存放目录;! `6 i5 B$ W! K6 S
/usr:最大的目录,存许应用程序和文件;
5 p0 n3 z1 B" `, z1 v1 J1 k/usr/X11R6:X-Window目录;8 f. P7 q# x' m7 B" k7 y( d9 P
/usr/src:Linux源代码;: i0 E, v! y7 B; s
/usr/include:系统头文件;
  a3 f! f- @$ s( S" T/ W/ [/usr/lib:存放常用动态链接共享库、静态档案库;
( T6 [& V. ^3 A# m/usr/bin、/usr/sbin:这是对/bin、/sbin的一个补充;
- p' W9 ], r& e( m( L  D% o
, D* h; s- E) S' L: A$ f! [5 t3 @5 w服务说明:8 M7 w9 r* C/ ^2 m
1、alsasound
1 c+ v- E, o8 Y* l1 G% g6 RAlsa声卡驱动程序支持.Alsa声卡驱动程序本来是为了一种声卡Gravis UltraSound(GUS)而写的,该程序被证6 [9 g+ D$ D% y) h+ [4 D4 t6 t
明很优秀,于是作者就开始为一般的声卡写驱动程序.Alsa和OSS/Free 及OSS/Linux兼容,但是有自己的接口,
' x) a! `; H5 @7 E5 w! k$ ?7 z8 ]甚至比OSS优秀.! U! q( U5 t1 u% }6 |& h
2、amd. M' q4 o" ?0 J' k, ^$ G: d6 S& d3 W
运行automount精灵程序,该精灵在必要时自动安装一些本地设备和NFS文件系统.# q) R- d- d; O3 w! B/ O2 q! n5 X4 p
3、apmd3 F- i: n; n8 o' Q! U& a
apmd用来监视系统用电状态,并将相关信息通过syslogd 写入日志.也可以用来在电源不足时关机.
) V# S; [3 J+ A5 _5 o+ ^4、arpwatch
, \; F$ j3 g8 p该程序主要用来维护以太网物理地址和IP地址的对应关系.
' x1 f+ r$ E2 R$ u" J) T5、atalk( a6 E! F) [8 N$ M1 O0 M( k* N0 c
AppleTalk精灵程序.注意不要在后台运行该程序,该程序的数据结构必须在运行其他进程前先花一定时间初始化.6 B1 l7 U; U- u3 D5 M
6、atd. O2 F0 f+ Y2 G) X0 g1 e9 Y
运行用户用At命令调度的任务.也在系统负荷比较低时运行批处理任务./ r. v( R& q" G
7、autofs
9 N! y8 ?- s3 _6 T9 X6 H% E当您需要时自动转载文件系统,而当您不需要时自动卸载.
' w6 t1 a- W( Q4 `' e' q- U5 i8、bootparamd! i) }. I# V9 J6 d- M6 f$ O9 P8 K
该服务允许老的Sun工作站从Linux网络启动,它和ra??rp现在很少使用,基本上被bootp和dhcp取代了.) o6 a) {: j' P0 m$ H; T
9、crond6 _- i! Y; P4 a
cron是Unix下的一个传统程序,该程序周期地运行用户调度的任务.比起传统的Unix版本,Vixie版本添加了不
* B- N3 ^: w8 Q/ G+ I8 s# v; F$ m少属性,而且更安全,配置更简单.- [( n  R) d7 k, C1 W! V( W
10、dhcpd. g5 E1 s+ O3 ^
该精灵提供了对动态主机控制协议(Dynamic Host Control Protocol)的访问支持.& u& Z/ A5 [+ c$ ]2 X* X! H
11、gated3 M' C3 j+ W* t$ w! k
gated通过一个数据库提供了网络路由功能支持.它支持各种路由协议,包括RIP版本1和2、DCN HELLO协议、3 C" S, R* n% r; g  W
OSPF版本2以及EGP版本2到4.
$ `4 p7 f4 J+ z; {9 H$ }0 {12、gpm( r. J& M6 G' n" Z- H0 v, O) r" L% c
gpm为文本模式下的Linux程序如mc(Midnight Commander)提供了鼠标的支持.它也支持控制台下鼠标的拷贝,( K+ a, Q4 \5 D: w; M
粘贴操作以及弹出式菜单.9 ^# @9 U' i+ e4 t. t
13、httpd4 v9 ^7 f* ^3 A7 J( k7 m- j
http是著名的www服务器,可用来提供HTML文件以及CGI动态内容服务.* \. M" l. m1 W! j) x
14、inetd
* O  i8 q, s1 l. l* B3 ^因特网操作服务程序.监控网络对各种它管理的服务的需求,并在必要的时候启动相应的服务程序.通常,, G. q8 v) G& r5 \- p
inetd管理的程序有telnet、ftp、rsh和rlogin.关闭inetd也就关闭了这些由它管理的服务.; t$ w8 @( o5 d/ ~+ ?& I
15、innd6 z* w  m2 p  {5 U6 ~, S4 y6 f3 _
inn是最流行的用户组新闻服务器.它允许您建立起本地新闻服务器.配置有一定的难度,可以先阅
! S! k1 W& X  I# t5 A读/usr/doc/ inn*文档获得帮助.7 y- _* a  r% j- x, j  Z
16、keytable 该程序的功能是转载您在/etc/sysconfig/keyboards里说 明的键盘映射表,该表可以+ o+ P- g. E7 D" G
通过kbdconfig工具进行选 择.您应该使该程序处于激活状态.
8 L5 r7 S, C( g# ?) C! s4 {* P& H17、ldap
2 s' u8 S( B0 dLDAP代表Lightweight Directory Access Protocol,实现了目录访问协议的行业标准.
- [1 q4 m$ Q4 A0 J0 i: B8 o; s18、linuxconf
( U6 B5 H+ r! J4 J3 W; Jlinuxconf是Linux下的一个有效的系统配置工具,该服务允许远程运行.
# k  g' [6 r8 n" Z: k$ z, H19、lpd* @5 I+ m% s: _' ~( B. p" G
lpd是系统打印守护程序,负责将lpr等程序提交给打印作业.! m& h! X! R3 O( L& y: c5 |
20、mcserv
  q( m& V3 a/ Y+ {1 fMidnight Commander服务进程允许远程机器上的用户通过Midnight Commander文件管理器操作本机文件.- |3 \. A" a1 R+ c" W
服务进程用PAM来验证用户,需要给出“用户名/口令”以通过验证.. v* c' q/ ?) j4 `' U: m$ t2 i/ L
21、mysql" J' c8 Z  M5 `3 Q! \
一个快速高效可靠的轻型SQL数据库引擎.
! |" @' R) w  O! x22、named- ?: V' @8 _! E, `% Z4 c
域名服务器,将Internet主机名解析为点分的IP地址.
& [& a  s! Q. B23、netfs
8 @* Z! F* G- h: Z负责装载/卸载NFS、Samba、NCP(Netware)文件系统.
3 q) o' w; ^' o$ s24、network 激活/关闭启动时的各个网络接口.  U$ J2 D' P, D- o1 X
25、nfs3 d! O- y" x+ o6 q0 [; O! W% T
NFS是一个流行的基于TCP/IP网络的文件共享协议.该服务提供了NFS文件共享服务,具体的配置
* N. k0 }# {+ l  x; M) c# s6 y在/etc/ exports文件里.
9 m! Q  b$ x; m7 _2 s26、nscd/ b0 M( D, ~. D$ S! Z; S. f# t
该服务负责密码和组的查询,并且缓冲查询结果.如果您的系统有比较慢的服务(如NIS和NIS+),则应该
. J1 ?. t* |5 O8 g# t# q/ r# S6 @启动该服务.
. D" T5 }/ v$ x$ I' g; y' W. V27、pcmcia2 t0 i) _# J2 P. D
pcmcia主要用于支持笔记本电脑.) H5 Q5 B, ?* H5 ^3 B4 q) }. F
28、portmap
% d/ u, }6 ~) Y6 W; r7 S" N0 b; aportmap用来支持RPC连接,RPC被用于NFS以及NIS等服务.8 e) A' r$ `1 f, C+ x5 F! z
29、postgresql& t2 y) w# n6 d8 s
PostgreSQL关系数据库引擎.* F) l! `- z9 i, C
30、proftpd" i6 G! P( D, h: ~  k
proftpd是Unix下的一个配置灵活的ftp守护程序.4 J  `: w1 B9 E1 O0 ?$ Z0 R
31、radvd
4 O" ~: i8 P1 b# {; J路由广播程序.) ~, G+ o, p3 ?& U3 t
32、random
1 T8 @' ^. k2 Z+ D保存和恢复系统的高质量随机数生成器,这些随机数是系统一些随机行为提供的.6 ~) ]/ g# F# h0 Y$ ?; |& M4 \
33、routed* j! t% V; d' U& @( z* y
该守护程序支持RIP协议的自动IP路由表维护.RIP主要使用在小型网络上,大一点的网络就需要复杂一0 v8 a2 {% T  W8 X. i6 H
点的协议.
# |9 k4 L7 U* `7 j) a7 _! _34、rstatd
0 O4 R' i; [6 ]3 f$ C5 \4 t  XRstat协议允许网络上的用户获得同一网络上各机器的性能参数.
! M1 U: I$ v% B: g4 t. ^2 X35、rusersd( H  Q! k1 P: Y* A9 w5 I
该服务使网络用户可以定位同一网络上的其他用户.  d5 h: w! u5 M& k( s+ i( e0 X0 i* F6 P
36、rwalld' H1 i  n3 [; q$ c/ Z' s
Rwall协议允许远程用户向在同一系统中活跃着的终端发送消息,类似wall的本地行为.# k3 G# Q6 Z6 W( [
37、rwhod
8 F3 H- D) V! N2 g! S允许远程用户获得运行rwho精灵的机器上所有已登录用户的列表,与finger类似.5 j/ Y- Q- I8 s( D
38、sendmail
0 ~2 v& l- K. S" B. m8 [/ K" c. z/ o大名鼎鼎的邮件服务器.. K# r4 i# P" ~+ `3 M
39、smb5 R* n' d. Z' Z% H/ V; F
启动和关闭smbd和nmbd精灵程序以提供SMB网络服务.
% g; _7 R9 `+ x8 B; _2 p+ \1 J% {40、snmpd
) w& @6 Z; ~$ z5 R, ]1 ^0 l简单网络管理协议(SNMP)的守护精灵.' I' H/ z7 d- m$ @
41、syslog1 N# s3 e: B$ J+ ^% {" G+ S
syslog是操作系统提供的一种机制,守护程序通常使用这种机制将各种信息写到各个系统日志文件.通常应
, r7 I6 r5 O$ `$ e2 [3 e: I0 w该启动该服务.
$ n" _. O7 w3 ~5 _* u42、xfs- H$ G( P# t0 X: o
X的字体服务器." R: Q' X" v  W( X9 `
43、ypbind
! I( U( f/ H* E4 ?2 D9 p! o. iNIS/??YP的客户端守护程序.如果您需要使用NIS/YP机器,请启动这项服务,否则,关闭这项服务.
1 {) q8 a0 ^5 u* A2 q+ m1 |: s44、yppasswd! S$ u; q" m8 t- O2 }
让NIS用户能够修改密码.运行在NIS域的服务器上.客户端程序同样也叫yppasswd.# n( o7 @3 H& m( r3 r6 U1 _( B
45、ypserv# a8 X9 a9 ^6 J0 @$ P
标准NIS/YP网络协议的一个实现.允许主机名,用户名和其他信息分布于网络各端.运行在NIS服务器上,
) Q% ]. R% q* }8 U
7 F; b4 [0 {: A5 h6 x# I4 v关于运行级别(对应不同的initX.d)* l  |: |) A' u
0 — 停运
5 H: o1 b; I, U* P1 — 单用户模式) }) K: g' `( H5 P: c
2 — 没有使用(可由用户定义)
) m" \7 Z* n$ f2 L' I3 v! }% T3 — 完全的多用户模式' z& f1 l9 n+ r) c
4 — 没有使用(可由用户定义)
) `- {* g! {5 r- Z. t2 C) X5 — 完全的多用户模式(带有基于 X 的登录屏幕)/ h# p( q* Z3 B) g; L+ ^
6 — 重新引导8 Q3 M' s. R- u1 h; O- t) c
' E$ |. G1 a/ ?/ b! ?0 a
二. 常用命令  R$ J+ w+ S7 m9 }$ v* @
chmod 命令& ]' H% ]. C4 V
符号模式! \3 n* E# M& B+ i; T/ I
chmod [who] operator [permission]
3 n& M3 K- H/ y4 _" L6 c[who]:
' p0 C; J2 m9 E$ j0 R! `a(All user)
, P! [2 J4 i+ I5 [0 @g(The user belongs to same group)( q8 Y- ^4 d, \- @2 q( A8 b* Y! s
o(Other user)
9 W4 k+ k) D4 H3 xu(The owner of file)/ l2 z: X/ {4 ]: m
operator: +/-/=
% l7 I7 ^4 a+ G" g6 ^permission: r/w/x/s/t/l1 H9 q& \, w4 |, b. q! {) Q
samples:
8 O6 o+ b5 z) wchmod a-x filename (收回全部用户的执行权限)
' F8 f  [) `  H8 f4 Rchmod og-w filename (收回同组用户和其他用户的写权限)
6 Z; z+ W8 c1 {- `chmod g+w filename (赋予同组用户写的权限)
9 Q3 X* Y( q: }6 W: D) s4 c+ _( }chmod u+x filename (赋予文件属主写的权限)7 h5 b+ ^) z* j- D" S. `. E
chmod go+x filename (赋予同组用户和其他用户的执行权限)2 J" N: Y# ]9 W' C& [! l% H

$ M# ~/ b  T! |8 M) K4 r# K直接模式2 v: l! g2 X$ p$ V
chmod [mode] file( t, m" Q2 p9 M- Q
mode:八进制数
! J% |* }( {5 K9 J$ }0400: 文件属主可读 0040:同组用户可读 0004:其他用户可读
" J$ ~4 S- l; G' T5 Z; n0200: 文件属主可写 0020:同组用户可写 0002:其他用户可写
" W8 f$ N9 {! A+ @: j' h+ I0100: 文件属主可执行 0010:同组用户可执行 0001:其他用户可执行5 }1 L! h7 `8 b+ f( W
Samples:
 楼主| 发表于 2006-11-7 14:12:39 | 显示全部楼层 来自: 中国陕西西安
chmod 744 filename: 文件属主可读/写/执行,所有其他用户只读, S9 s6 N8 q) g
chmod 664 filename: 文件属主/同组用户可读/写,其他用户只读
, o! G2 m3 c+ z' [& ]
1 u) l5 g& S. Ochmod -R dirname: 连同子目录下的文件一起设置# Z+ K0 q% F; u! x7 V. k& {/ M5 Z
8 B+ Q$ @  f8 [8 X2 c( T) C/ @

. c. B) K1 p4 m  E/ A, ^目录权限:6 t( F! l. t: q2 D5 Q7 `
r: 可以列出该目录的文件;
" n1 n: O3 x1 u& Fw: 可以在该目录创建/删除文件;% G0 Z0 g* R+ A! R* ]" D
x: 可以搜索或进入该目录0 {& ~2 v6 K& E5 U& Y; z
! |8 g& r, h% p* |# d% H6 A
目录的权限覆盖目录中文件的权限
( K* D8 v( k( d$ y  R" N* ]6 F. j% Q/ \! B; e) [. A6 k
除了字符,也可以使用数字来设置权限。想知道是然后工作的,看以下例子:
% ]$ x# p( Y% X6 r$ s: o  dexecute=1
4 Y+ O& r- G& N/ \+ k* Ywrite=27 k! l( E# \, }1 U2 `9 d7 |. T
read=4
5 j% G9 `; g/ E9 s对于指定的三种不同用户级别总结如下:
3 B. @9 r  N2 ]4 `6 n, c# a0 = 没有任何权限 (不能读,不能写,不能执行) (常见)) G. Z# n5 x7 A/ x; [- x6 g4 C
1 = 只能执行 (看起来不太正常)! ]/ `9 [9 a' l  V$ d
2 = 只能写 (看起来不太正常)
) }) Y4 s& R8 G% H0 R3 = 只能写和执行 (看起来不太正常)
  ], D/ P" F6 R4 = 只读 (常见)
3 e9 z0 d/ Y) |5 = 只读和执行 (常见)
) V; h1 g9 S: [9 M6 = 读和写 (常见)% j) z1 n! B2 s4 G' \& C9 E- m
7 = 读,写和执行 (常见)
# V1 m: G/ _' I9 b# B
# k2 b, b9 M1 _! V& h5 eSUID/GUID:( Y9 l/ L& f, d" R0 W) f1 f% ]

- w6 w7 z" l. x( L! Ksuid:如果某个用户对属于自己的shell脚本设置了某种权限,
' Q6 |; `. j2 V/ W7 F其他用户在执行这一脚本时也会具有其属主的权限
0 ^  \. E. q* s
2 R  W+ S  ^* p" d: Fguid: 执行相应脚本的用户具有该文件所属用户组中用户的权限
7 K  j" F& G0 B, X# O3 b
/ w* A$ U, G! I1 j; _9 {9 P/ a( Psuid: add "4" before ...
1 V0 G, {9 B- n5 Z7 t: n* E. j; f: H. Kguid: add "2" before ...
0 u4 ^' J. k/ B5 ^
0 d/ l. `2 {( T; csamples:
+ [. S; ]+ J& E% S' W& ]chmod 4755 rws r-x r-x( e% E& s  p# G+ x" u# p
chmod 6711 rws --s --s/ V, E1 g: R1 U7 R
chmod 4764 rws rw- r--
9 j1 S4 R/ @' t  C* H( g0 |1 O# `- p- K. P* p% ?
5 g: U$ |% B! w. t; Q0 ]+ C
chown/chgrp 命令: 改变文件的属主/改变文件所属的用户组" N$ f7 `4 u/ \: v3 |2 e' F' C
其他命令: group [username], umask [value]
- Y) [& D- i+ q* }4 L, o" a. Y( L3 E9 [! ~. x& K
文件链接:% c. R$ h: C2 y9 E, J2 s3 t9 U
ln [-s] sourcepath target_path# c: `& [, C. S
- O) n' `* x/ P
samples:
3 h6 v7 R+ e: {* Jcd /home/sales/user1
4 q# J) X& Z+ w5 ]rm .profile
. o: _$ f3 T9 d! Xln -s /usr/local/menus/sales.profile .profile5 G/ x$ H8 u# O9 N! t. E
ls -al .profile
+ v- {5 A. S' s2 p2 e  `5 F
. f2 \. s( }  W  ^, U
. F% E; }2 R! y( b5 x' qfind 命令
. n% f( \7 U" f: [7 j$ N, W
7 A$ ]9 m+ S5 P# `1. 按文件名查找: find 目录名 -name 文件名 -print9 {$ E& i( }8 q2 s+ A
# @2 p2 M" ^$ \% \, ~; C
2. 按日期查找:; J& u9 ]1 i* L" m
9 j' _; o) }$ x) i) K8 v5 K
例: 查找目录/usr/bin中最近100天未使用的程序
3 Q4 t! A9 h6 m. i! d6 k# e6 x6 k# m, T! W
find /usr/bin -type f -atime +100 -print  l. P  d3 H! H+ y, a( k4 e
, k* ~4 Y( U7 }/ X& Y, C

4 N0 m5 H2 O9 c8 t8 u% d( a查找目录/usr/bin中建立不到一天的程序
  e; o: x+ I. I0 A4 A: ]  S+ f
& h# N! ?% o7 \) W' o! [; `find /usr/bin -type f -mtime -1 -print
" I5 m" e9 g" ~4 E# t
* L% L9 |* T! h% N
2 x# @' Y. d; v' `2 Jwhereis 命令
3 [- a* g! R/ I" b3 {1 S
, w" u. C  c. t0 [, O' o4 Z, kwhereis 文件名
; ?. v  |! D3 z' V3 I. S3 g& w, g8 K8 _+ W# v/ ?
whereis -b 文件名(二进制)) b5 m  N  b0 p% R- }7 g3 Y

# E0 w4 i# g8 ^7 L
8 f" g/ ]" e  I  H  y9 ALocate 命令(需要先建立数据库). G6 F  ^' Z2 [! E
locate *.ps$ b# r. K0 L3 Z6 J

( j, z, q& p; J2 I3 `9 {: ?* f  K- @- i. f5 r1 g1 l0 [
Q: How to use "cat"
' K- T% K1 J- y/ X2 G5 ~9 D
0 I3 Q. l9 J* n, KA: cat 文件名
* M9 F2 z5 J# N% h) C8 J: e3 Z5 e& c$ f# B
cat -n 文件名(加行号)8 [" R* k- @2 c# ?

) d4 \0 t# s& v, Z" U; lcat -n test*(批量查看) = cat test1 test2
% P( W& e. z5 l3 n$ G$ _3 i1 T0 u4 R. v* s
重定向:( B: C% a3 d) P7 N
1. cat test* > test3* x2 v9 m' Y7 @& |: z, c- {  E* b

; m' Y7 r9 @! L2 u1 r4 s7 r2. cat test1 >> test2(test1文件添加到test2文件)* h; x6 d0 x4 C( d4 x
6 t0 X  @6 {7 N( p% l" |
3. 不使用vi,建立一个小文件
! U- z* x0 A1 F" y
9 `! l9 o+ z" W, p- G( H. scat> myfile.txt( O- J0 t/ k' }- q
input: this is myfile.txt. i; A; S  ^6 k
ctrl+d 关闭这个文件' W" i4 @% N# S- b( ^+ ]4 M$ i

- R( d0 q1 }1 t0 H. |. Z7 e4 r8 b5 e: X, t
more 命令0 S/ o3 b5 u$ b3 K4 ~/ S8 a
more filename  u. W( K1 p0 W. S9 i/ S" E

* T# A, z' F& x
# p" J. k: w# J( ^4 d; vless命令, g" w  R$ V7 s5 a
less 文件名(使用空格键下翻页,使用B键上翻页)
  \2 D2 x! `6 V( n4 g, `5 mless -M 文件名(显示页码)
% n0 Z' f2 ~9 A使用*进行匹配,如果要跳到下一个文件,键入":",再键入"N"
" ?. K6 s* E# j* h$ U' h% n' tless -d(列出子目录名)
2 D+ ?  h8 l& X9 C; N$ U执行其他程序: !文件名 执行完毕后,按回车键4 v, R- O# P$ X* R1 F9 A/ Y
使用"/"进行搜索: / 单词; 如果需要继续查找,继续按"/",再按回车键,退出阅读,按Q键.2 ^* W7 u5 B2 W  n' _% ?; b
: z+ L7 Q% ]/ n( u5 a
head/tail
  L' P. z2 l* U$ I. o# Z: ?: ihead/tail - 行数 文件名(支持通配符), }; [, f5 {# ?: [# y
  t! a8 y7 I2 L

" x0 L6 x' p* V! ~Q: 文件分割和合并# S0 O) b5 @1 {$ q, k4 v
A: $dd if=source of=target.1 bs=1M count=10: B1 ]8 y- F- u! Q$ @+ ^; e) u, h* _
$dd if=source of=target.2 bs=1M skip=10
8 E! a! E8 h+ z. `) gsource被分为target.1和target.2两个文件,其中target.1为source的前10M部分;+ K( ]% V2 i: q% e
target.2为source的减去10M后的部分.
; B  U; K1 I. z# }7 e$cat target.1 target.2 > othersource: E2 w5 @2 C9 K; S/ J8 l0 W
source与othersource是同一个文件.8 F: n6 B0 Z8 c1 u9 \: `) K

5 [# N& W2 [3 B" l+ X2 m, v) M" V. k2 u* i$ b) P
Q: How to use rpm4 M" q9 S1 F  z4 c3 S: N" ?/ l

2 P' `0 h3 }% I4 [2 }6 _A: rpm -ivh (Install,Version,Help)
4 P2 V$ J$ j" i1 {5 Y# ~4 Qrpm -ivh --replacepkgs (Force install same package)% z6 m  p6 ?- V3 H
rpm -ivh --replacefiles (Force replace some files)8 C1 {: s0 f, S, S- S, h' D) j

( M+ T' n: `+ t( wrpm -uvh (Upgrade,...)$ v3 |* ^( M3 M- t0 g
rpm -Uvh --oldpackage xxx; ^9 R$ _- N6 w3 U
' i0 N' I- b, R+ U, F3 ~2 `* ]
rpm -e (Remove installation)
& h% e: J9 c) ?6 g. Orpm -e --nodeps (Remove installation and Ignore dependency , may cause error)
1 x2 f1 w- v& l0 h
6 {2 ^/ E2 V5 y$ Rrpm -Fvh xxx (Refresh)9 i6 l! f3 F! z* P, }% Q+ R; X

# K6 ]; v1 G1 {, N" T3 Rrpm -q xxx (Query)
3 x$ A2 L- @- _/ w
" i8 k5 ^3 @4 Z3 a1 lrpm -Vf /bin/vi (Verify)* X7 j/ c( U' A( A0 d5 G

1 d" u9 r- E$ A8 ^5 p/ ^/ j* }- c1 prpm -qpl xxx.rpm (check the directory that rpm files installed)
# w& r4 ], i9 V  _8 E# A$ d) E  q: E& j; Y/ A2 O8 z9 U1 C8 p; P
rpm -qa |grep xxx5 k2 C* I3 }; }' }9 G

  g: H$ ~9 m* v. h# R/ J
! u' k' W) {$ g  P6 J+ a5 wQ: How to use "tar"
/ J) A" r1 _' r' j6 j6 {2 Star 文件是几个文件和(或)目录在一个文件中的集合.这是创建备份和归档的佳径.
- S7 K# \% V1 |% m8 r4 I4 c: a3 t) o9 ]. p
tar 使用的选项有:3 e% k( E3 {$ F' H, _
-c — 创建一个新归档.
+ X" y/ @. p4 k' j-f — 当与 -c 选项一起使用时,创建的 tar 文件使用该选项指定的文件名;当与 -x 选项
) n4 ~# l/ @0 j  t一起使用时,则解除该选项指定的归档.
8 O( t9 C+ _) O, J& p-t — 显示包括在 tar 文件中的文件列表.
) h' k) f6 S$ v- b. _-v — 显示文件的归档进度.) X* G% g' Q) L; q
-x — 从归档中抽取文件.8 ]% y/ Y$ j! D! n1 c$ a
-z — 使用 gzip 来压缩 tar 文件.
: z2 y1 ?" R/ x4 r+ R! \-j — 使用 bzip2 来压缩 tar 文件.
* }9 U# ]* V8 U5 j; B0 n& P; V1 O! T) [1 E
' O( E* H9 h9 b' P) p( B# `
要创建一个 tar 文件,键入:) F2 B; T+ a1 b3 F$ d2 f5 v
tar -cvf filename.tar directory/file* M$ m/ ^) ]4 ~( Y* v8 v5 ^
! d: }9 F2 g: C3 _) {* ~; d5 g
可以使用 tar 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:4 }' V6 _2 D/ U
tar -cvf filename.tar /home/mine/work /home/mine/school& S6 ^: ]3 w. \! k# [5 P" Y  k
3 Z( r6 H6 O; }) Q
上面的命令把 /home/mine 目录下的 work 和 school 子目录内的所有文件都放入当前
6 S) k: i# R4 U0 D6 k' s' v1 x# r  g目录中一个叫做 filename.tar 的新文件里.2 I: A0 n1 \& s# K( f" A, V! Y
& S. u& C. H/ d
要列出 tar 文件的内容,键入:
: C' r* v' L& n( o. P- Ntar -tvf filename.tar
2 E5 _7 K9 I0 U. v( L! z! W+ A. R5 E& O0 Q3 T
要抽取 tar 文件的内容,键入$ ]& u' F( _  c' l# h& j
tar -xvf filename.tar1 Q2 q) a; z7 C# F
7 ]3 ^3 C# Z( g$ D* ]1 L6 L
这个命令不会删除 tar 文件,但是它会把被解除归档的内容复制到当前的工作目录下,
1 y) Z( L5 C7 a7 W- n" g6 o+ N并保留归档文件所使用的任何目录结构.譬如,如果这个 tar 文件中包含一个叫做
# ^( z5 P! e! Abar.txt 的文件,而这个文件包含在 foo/ 目录中,那么,抽取归档文件将会导致
9 Y2 L1 h5 D) {) g" G* E" U在你当前的工作目录中创建 foo/ 目录,该目录中包含 bar.txt 文件
$ m) y, H! G+ X4 U2 Q2 J% K/ `/ b% H" T6 [6 i, e) P
tar 默认不压缩文件.1 `! Z; k  N7 A7 |! H& S+ Z* z3 ?
要创建一个使用 tar 和 bzip 来归档压缩的文件,使用 -j 选项:6 c0 k' ^/ Q+ W
tar -cjvf filename.tbz file' n9 [, s- g- |. K# ]6 t
) p& Q, X) n8 d* J, U1 a! Z
以上命令创建了一个归档文件,然后将其压缩为 filename.tbz 文件.如果你使用) c3 H# ]8 R4 e- C! ^5 Z: \
bunzip2 命令为 filename.tbz 文件解压,filename.tbz 文件会被删除,继之以 filename.tar 文件.0 W4 s, S, f7 u, Q9 r
" B: K* K+ h- d! v% Y
你还可以用一个命令来扩展并解除归档 bzip tar 文件:
1 |9 C* |5 a" m5 c0 Rtar -xjvf filename.tbz3 J' y7 b4 F) @& l4 b6 g( F6 O
% r( S6 \7 A1 a) {0 F. u
要创建一个用 tar 和 gzip 归档并压缩的文件,使用 -z 选项:
5 O& L/ G; I, P$ Htar -czvf filename.tgz file
+ Z, U1 ]; u. y) ?7 g7 ?7 p
( t+ q" \8 S  h7 O% `这个命令创建归档文件 filename.tar,然后把它压缩为 filename.tgz 文件(文件 filename.tar 不被保留).
2 N; f- n6 H! R& z6 e2 q# S如果你使用 gunzip 命令来给 filename.tgz 文件解压,filename.tgz 文件会被删除,并被
1 l+ ]  k/ \# T; A, K& f: F替换为 filename.tar.  T4 I) m0 |+ f

. A7 s8 ]" m9 U& k" F& p你可以用单个命令来扩展 gzip tar 文件:& x; B' V$ k8 d
tar -xzvf filename.tgz7 e4 Q1 I/ [5 T9 b/ x: o

2 V; h7 k# k5 x1 c. z% j: n* v8 H- `2 g( P- u- C4 G& B; V! c
解压a1.doc.tar.gz文件
6 M, C  S3 v& p8 l7 w+ s方法1:
, U* S5 ~3 @5 _8 r#gzip -dc /mnt/lgx/a1.doc.tar.gz (产生a1.doc.tar文件)
/ B2 u1 L! E# ~. q#tar -xvf /mnt/lgx/a1.doc.tar (产生a1.doc文件)7 }4 H. J3 B9 v2 U
这两次命令也可使用管道功能,把两个命令合二为一:% ]2 n2 k$ c' g7 |& Z5 }" g
#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf
7 d4 v. b9 t% n( L8 J方法2:使用tar提供的自动调用gzip解压缩功能
6 ]$ a; b. i: O4 M& b' |  k#tar -xzvf /mnt/lgx/a1.doc.tar.gz
/ I" D2 N, q, S, J  y7 p% E8 \! X) y" ~7 \& k4 I" j( I

+ B+ [; Q( B+ M' v9 L* S/ HQ: How to use "mount"
% W+ a# X8 r. U3 @/ I0 z1 sA: mount -t 分区格式 分区位置 加载位置
& Y+ G5 B& o/ j6 i6 l  x. {8 F2 u1 B+ f1 t
fat32的分区: mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/c6 F3 S% a! d! d
CDROM: mount -t iso9600 -o iocharset=gb2312,umask=0,codepage=936 /dev/cdrom /mnt/cdrom
7 i3 x2 |0 q8 o! diso文件: mount -o loop /abc.iso /mnt/isodir
: B! L9 n) p8 l& \+ J  }6 H软盘: mount /dev/fd0 /mnt/floppy. z9 O1 Z% a+ H- d; }
USB闪存: mount /dev/sda1 /mnt/usbdir2 M3 p3 U6 l8 j" H
5 T; z0 U' N% G* ~$ P/ `* e
查看所有: /etc/fstab内容 mount -a; s  k! k4 ^  |% Q* @
可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.
; i9 P2 ^  A- K
$ |) P( J1 W; T9 ^( D在Linux下访问硬盘分区的内容,必须先用mount命令将分区加载到Linux的某个目录下才能访问.
8 q3 X! e9 N  s3 S4 B: l先用“fdisk -l”命令(某些版本可能需要用“fdisk -l 硬盘设备名”)查看硬盘分区情况,操作如下:
& i# b* g0 b$ C- j; N8 t: R; xExample:! N5 w  Y9 {1 }1 m* c, E
mount -t vfat /dev/hda1 /mnt/c(/mnt/c目录必须存在)
" `9 ~, T8 I, ?* |mount -rw -t vfat /dev/hda1 /mnt/c
! o5 Q7 ~) s6 S3 J* I, Y# V! b$ r1 D8 m

: `8 J+ g7 G  ?Q: 如何使Windows分区里面的中文文件名(目录名)正确显示?/ f$ ]/ ^' O- y/ }, C4 V
A:用mount命令加载Windows分区后,中文常显示为“?”号.这是因为发行版自带的内核默认用ISO-8859编码
+ x# H# A- P+ F/ h4 S来处理加载上的Windows分区文件(目录)名,只能处理单字节的英文字体而无法显示双字节的中文字体.
, N. _% n. d( w要正确显示,可以用下面的代码加载Windows分区:
0 p# x/ u* {  b' r+ w3 S' U9 @2 T' ]. S$ ~( y
$ mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/c
  T; `1 s# ?) v! i9 s  v4 g7 W( d! [; G# J
  这个命令能让内核以cp936编码处理Windows分区的文件(目录)名,从而正确显示中文文件(目录)名.  r8 x' e  K  r0 ^8 E5 B8 l
  
: V8 s( y+ }0 j- e" D! y还有一个“一劳永逸”的方法,即重新配置内核,在“File systems”-“Native Language Support”-“Default NLS Option”
4 P8 L1 j; R. g9 i0 q5 Z里填入cp936.重新编译内核后,无需加上-o iocharset=cp936参数也能正确显示.% z; f( F9 @8 X) ?8 }* @4 e% p, }

- |2 H; U9 Q8 f. X1 t0 e7 V& {2 J3 O  y6 q# E/ {# S  q* e
Q: 如何使用-rw参数加载Windows分区后,只有root用户能够读写,普通用户还是只能读、不能写?) r* ?1 N1 |( g  Q# A
A:直接用mount -rw加载的Windows分区,所有文件对普通用户都只有读权限而没有写权限(但root用户有写权限).要想让
3 D: u, ~# ?; {" c4 w普通用户也能读写,可在mount命令中加上umask=000参数:# E6 g- t0 f$ z) X" W  |
$ mount -rw -t vfat -o umask=000,iocharset=cp936 /dev/hda1 /mnt/c* N* c+ L$ o: j
' r+ h* C: ~7 W7 K
7 q* w( y5 B8 X3 w
Q: 不编译内核,How to mount ntfs partition ?' y  J8 q$ S4 `( B  F, p
A:2 y% ^9 S4 t. E, O7 D; }
1. 上google.com搜索并下载 kernel-ntfs-xxx.rpm3 z7 U! M( v3 b9 d* X& u" l) }
(xxx means linux kernel name: uname -a)
, u5 D. x/ b' o6 X4 ]# [% m2. rpm -ivh kernel-ntfs-2.4.21-15.i686.rpm
; i5 K/ u) R3 k" |# n! j4 S4 z( O3. mkdir /mnt/c
/ K5 a2 G6 E$ A1 Z8 h4. mount -t ntfs /dev/hda1 /mnt/c* A( b9 L) W3 i! u* t
/ c& X8 S" T7 F: Y# N' ]
Read only: http://linux-ntfs.sourceforge.net/
+ v6 i' w4 ?) ~. I$ E: m, k4 xRead/Write: http://www.jankratochvil.net/project/captive
* O8 [  g' A$ T& A5 c5 j  B
. p2 q9 d1 u+ h; t! h& z2 H  l5 M2 K9 S* m/ ]2 [! W& S' }
Q: mount局域网上其他windows机器共享出的目录- w# }6 Z* n- h& Y- J
A: mount -t smbfs -o username=guest,password=guest //machine/path localpath: ]8 J' O7 F0 c- ~: M+ r8 p

# n' E1 ~! r: ^9 J2 S7 M# {6 O. C8 y! Z1 ]) _) {8 g2 j4 W/ a1 r  K
Q: 在vmware的LINUX中使用本地硬盘的FAT分区 ?1 x" B- u- ~! J* y! y4 [( T

4 M! q% c' w/ \; @2 KA: 将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上.可以将如下的行放到/etc/fstab中:1 ]$ E; S) I& j0 M# a' L
//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,
) ^" @# |7 d  `# ]( r' Gcodepage=936,iocharest=gb2312 0 0& i  s1 `4 K" _0 X6 y" i' C

( R8 i8 e% w* H' w" W6 @7 b参数:
# z/ w5 }- L2 Q) k2 @# hwin_ip是你的windows的IP地址;
! V; b( i" r' P+ X* pD$是你的windows里面共享的D盘的共享名;9 ^, i, f$ y( C& _3 P8 @) G
/mnt/d是要将该分区mount到linux的目录;( k7 |# \* I+ b8 L* i- X
win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码.
# v9 A/ o& s3 Q6 @4 R7 K; ?* B, O# U0 Q2 r( K) V
如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区.
+ \- F$ V+ s* H  p+ c+ S% y
6 u2 U7 R+ U2 Q4 J' @1 l& |Example:; Y# R8 h6 e+ i
//xxx.xxx.xxx.xxx/C$ /mnt/C smbfs defaults,auto,username=xxx,password=xxxx,
4 h* k0 u- @7 T6 s) Z- p! Ucodepage=936,iocharset=gb2312 0 06 b+ x4 |0 V! [) U; D

* A3 B8 }! v. w5 V: r
7 ]% h% y8 m' p& yQ: /etc/fastab
2 R+ s5 T/ G$ Q. k! NA:" f/ D, K- k" [: `7 I! F
; L+ F& K& F8 ~: a
1. fstab文件的作用
; g& d& C& h& H% s文件/etc/fstab存放的是系统中的文件系统信息.当正确的设置了该文件,则可以通过- g' S+ x, T8 z! v5 ]$ S
"mount /directoryname"命令来加载一个文件系统,每种文件系统都对应一个独立的行,每行
& i. R& i# v2 A1 ]4 Y% d中的字段都有空格或tab键分开.同时fsck、mount、umount的等命令都利用该程序.
" k2 C1 D/ d. s0 A$ s7 Y/ W
+ c0 h) X( O3 |& ^7 x3 ]; u2. fstab文件格式! ~2 s* Q% I: X' i7 S8 C
下面是/etc/fatab文件的一个示例行:0 s. ^) s) G3 c4 O+ I) ?0 O
fs_spec fs_file fs_type fs_options fs_dump fs_pass /dev/hda1 / ext2 defaults 1 1
, K7 @* ]* o+ P4 }. j' Q$ G
: a' `9 A, `1 z5 L5 x0 s5 A# p9 Ufs_spec - 该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来
" X  x* f! j2 }7 s7 u4 N: k' v说:IDE设备一般描述为/dev/hdaXN,X是IDE设备通道(a, b, or c),N代表分区号;SCSI设备一描述
9 ]$ _+ j" U$ p为/dev/sdaXN.对于NFS情况,格式一般为: hostname.domainname,例如:`knuth.aeb.nl:/.
 楼主| 发表于 2006-11-7 14:15:33 | 显示全部楼层 来自: 中国陕西西安
对于procfs,使用`proc来定义.2 ~4 ~3 Y3 w+ g9 v8 b3 ]- Z. Q/ ]. Q- M. T
9 K2 Y$ Y6 f+ a% e  m" N7 }5 g
fs_file - 该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名, T+ X1 Y/ ^# q$ q  I, \& p, B; B
包含空格的情况,用40来表示空格.' P8 p+ h! ~/ [" r

. F% S& u  l% r! U) V) r2 e: `fs_type - 定义了该设备上的文件系统,一般常见的文件类型为ext2 (Linux设备的常用文件类型)、. I! {% j/ @5 Q
vfat(Windows系统的fat32格式)、NTFS、iso9600等.
6 n. x4 k2 F9 e6 Z- S. I2 _0 q* O* G
fs_options - 指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来.0 [) T: o3 v  W+ }
对于大多数系统使用"defaults"就可以满足需要.其他常见的选项包括:
# l" p, h3 R3 C5 C9 Y' \! q* a2 {6 k
ro 以只读模式加载该文件系统
( u, r( }2 K; `9 k5 z5 a1 y0 e4 D
+ w; x! b: G' y2 k: Y( a0 |  U+ dsync 不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是却2 K8 r# c1 U' \, Y8 h
降低了计算机速度
* c/ H" L" {, G% ~; n! b* P: [, M' e2 C
user 允许普通用户加载该文件系统4 e& o+ {$ w# r- v( Z
quota 强制在该文件系统上进行磁盘定额限制3 Y3 u. I! s! c: m: ^7 m& ~
noauto 不再使用mount -a命令(例如系统启动时)加载该文件系统
5 {5 x/ \" J4 M
( H+ j' |; U, F8 D# {# Ffs_dump - 该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设, G! q2 S7 ~4 @( V$ J
置该字段为0
1 b* K% q3 T9 ]  E! T4 I3 v4 ~6 T1 c- f/ i% Y; G
fs_pass - 该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字. @# g% e5 h6 ~& q8 p
段的值应该为1,其他文件系统应该为2.若该文件系统无需在启动时扫描则设置该字段为01 X: r( M8 a% u5 z* d0 {
" o; {7 U1 S" V; ~
3. 示例文件: i, I1 c& C6 T1 {5 a+ f3 ^! x
# /etc/fstab$ U' L9 J8 F5 o" J. ?9 L
/dev/hda9 swap swap defaults 0 0
9 d9 ]8 X, }% X/dev/hda1 / ext2 defaults 1 1
; s7 a( q0 d+ G6 o7 J: i/dev/hda5 /home ext2 defaults 1 1/ z$ F2 z  G8 N; A5 q
/dev/hda6 /usr ext2 defaults 1 1
9 |% q% f' r& K6 @" R& g; @! v/dev/hda7 /usr/local ext2 defaults 1 10 k( P4 R* _4 ?6 ?
/dev/hda8 /var ext2 defaults 1 17 M# _, l4 x; M0 d% ]
/dev/hdb /cdrom iso9660 noauto,user 0 0
5 v# R" ]8 B' @% q, S  P# Ynone /proc proc defaults 0 0/ Y4 u# H5 B" s/ |* @8 j
none /dev/pts devpts gid=5,mode=620 0 0
1 w+ G1 n- N" x: \6 X1 d. ]
5 l* w) g# X5 s. p/ K/ T  P: E& s, N+ P& j8 z+ ^; i
Q: FSTAB 最后的配置项里边最后两个数字是什么意思( r2 i3 d/ p0 l) q/ c( k
A: 第一个叫fs_freq,用来决定哪一个文件系统需要执行dump操作,0就是不需要;
) H0 a/ N2 l9 O7 D& O% T7 C3 L第二个叫fs_passno,是系统重启时fsck程序检测磁盘的顺序号. Q3 I: ?! M! _
1 是root文件系统,2 是别的文件系统.fsck按序号检测磁盘,0表示该文件系统不被检测, e6 J% Y+ b$ P0 e# u, _- E' X6 f

, j3 U7 R6 v! b" Cdump 执行ext2的文件系统的备份操作" r  M6 z! \3 Q8 H* S. M0 J; P9 o( Q
fsck 检测和修复文件系统5 B* i7 F4 `( I3 f
2 w9 }$ O7 ]% G& L! ?9 E  |$ q  l$ F
( s3 [4 B' p- J& a4 ?3 {' j
Q: 如何临时增加交换空间?
" w0 O1 j/ t6 f0 [6 b5 y% vA:
8 N7 S" Z$ b% s$ v( b1. 产生一个64M的空文件
+ [3 F& {+ F3 _#dd if=/dev/zero of=/swapfile bs=1024 count=65536
! {2 l* S& [8 ^& A$ G# J( X9 x2. 初始化该文件为交换文件:% h) u5 p  _; I
mkswap /swapfile 655362 ?. y& x1 Z' b3 A9 i+ [- Y" f& `
sync; Y9 E# e- ^0 s1 T
3. 激活这个交换文件:
* w8 d% _/ l* ~swapon /swapfile3 ^% G; t$ Z8 W# t* |( H0 r

0 @7 C0 o. V/ a! |) J) }" `! z
4 n' @: q% ^6 b; b三. Case' G% O" x0 i; m
4 j8 F4 v* K  U9 w. L) X3 ?
Q: UNIX系统下查看内存4 \3 g; g. w; o$ F
2 g1 I7 G8 E4 j
LINUX: free
9 ]; m+ _+ \3 a0 h" |HP-UX: swapinfo -tm
7 u- s& h( G! I9 ?5 V4 `. }Solaris: prtconf |grep -i mem7 V3 J5 [& V) L
AIX:  u" Z9 o+ d  Y2 \$ ]! V- ^& q
lsdev -C|grep mem
, @- C: N6 C: m3 c) G/ D) Blsattr -EL mem0, |4 a8 t1 F* u. Y
size 2048 Total amount of physical memory in Mbytes False( O! @) d1 b1 p6 i
goodsize 2048 Amount of usable physical memory in Mbytes False; Q, w3 }0 |9 C, A: G
; K& G" U9 J- F0 y: }# k5 Y) \. `: B6 @

# i4 x+ W7 M6 r% n4 N" L, IQ: How to enable disk quota for user ?
3 ^) L0 O. T; g6 E1 A5 i* O+ \, }6 ]& Q
A:首先,将要设置磁盘限额的分区,按以下格式修改/etc/fstab 文件:
/ Y2 g- Z) e. B* e+ e& z7 m
* r2 f9 B$ @9 ^& m: Q/dev/hda2 /home ext2 defaults,usrquota 1 2
7 R( F4 ?* h. v" o5 b
$ U4 c3 n+ i# b" H8 o* B其次,在要设置磁盘限额的分区目录下创建空文件 quota.user:
% u2 j# l8 v% ]8 u1 ~8 e- d1 p#touch /home/quota.user #chmod 600 /home/quota.user
. e7 W" G  {# @3 D3 Z8 ^+ j) F. h, f9 s
重启系统后,可以使用edquota -u 用户名来设置.
( W2 T$ n/ \- M' U- M
% p7 ]. t* t& l3 H& }- P, o( c6 P
; z9 s) A4 M  Y) V9 G1 i0 O! \9 k: TQ: How to 删除文件大小为零的文件5 U3 h6 b$ |6 i+ j1 g& D3 g
A: rm -i `find ./ -size 0`, b- o* m; d$ V- \
find ./ -size 0 -exec rm {} ;
( o8 [1 `5 q1 `9 N& Q8 t2 P; ?4 v1 |7 k9 C
find ./ -size 0 | xargs rm -f &
/ K/ ~: J$ u# y  m+ o" b) A+ B9 k% d) T" A
for file in * #自己定义需要删除的文件类型# I$ c9 l: @4 Z9 o3 K# e9 u
do2 h. H* l2 |4 m/ C5 j8 D
if [ ! -s ${file} ]
$ g1 f6 t& w; x7 Z4 b' \then
, C7 w% S* d9 d/ f- [% |rm ${file}; X/ ]0 h9 W4 t/ O6 x! Y
echo "rm $file Success!"
6 h; u+ t* _, f5 N7 Efi1 r7 J/ B/ |4 A4 ?  _
done' u, B$ `* N, \: R$ J
# z/ @% A! m- I! {: z  m& _

9 a& V$ p" Y: s  }Q: 查看系统信息
/ x" _! }+ s; _  I( z3 o8 s" eA: cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
7 q8 W9 b, k9 R8 x& A6 m9 vcat /proc/interrupts - 中断
- T. k* ?3 i2 V7 t" xcat /proc/ioports - 设备IO端口* x! _4 F' l: K1 m7 {- c! C: E
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)
' Y8 D% p6 K1 c; k& }cat /proc/partitions - 所有设备的所有分区
9 Z! e- S# N9 H( F5 Ecat /proc/pci - PCI设备的信息
; D9 ?2 S" D8 _* G9 ucat /proc/swaps - 所有Swap分区的信息
5 \4 N7 x2 ^2 w% s+ ycat /proc/version - Linux的版本号 相当于 uname -r
8 n1 n% ]& C4 u% |4 K  q7 J$ ^
- _2 _" b1 @: H0 [! |. p* k$ J0 R1 {6 Z: G& N1 S
Q: 修改系统时间6 Z( a9 G$ \! P) Y. m# }
A: date -s “2003-04-14 cst”,cst指时区,时间设定用date -s 18:10% ]. I# w- T- N& `* k: `
修改后执行clock -w 写到CMOS
! \$ }! N7 N; J! y) c* f$ Jhwclock --systohc
/ X" Y$ ?2 e. m! D6 h( C. Z% z
. d" a' Y8 q2 i) A
; G  s* s3 a8 o1 d9 ~9 i8 w* tQ: xwindow下如何截屏* O3 |: [' O, y/ L8 x8 Y
A: Ksnapshot或者gimp. X/ D+ U3 _" k3 i- y' B- T2 u

$ z  i8 h* c' r4 R0 `3 s$ ~; A) U6 @6 s
Q: Redhat linux中播放mp3文件
2 @3 j# Y1 P: Z4 F7 ZA: 原带的xmms不能播放MP3(无声),要安装一个RPM包:rpm -ivh xmms-mp3-1.2.7-13.p.i386.rpm.
$ m* A3 H" I9 G  Q9 P1 _( D
9 R9 ~; C9 l' o4 q( H打开xmms,ctl-p,在font栏中先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字体
( D& w+ s$ f! T7 L即可显示中文歌曲名.在音频输出插件中选择 "开放音频系统驱动程序 1.2.7 [lioOSS.so],即可
+ K2 h; D: S# v2 r. k  [4 [* [正常播放MP3文件.$ \1 V9 K! X5 e

9 W  F# @# P5 X8 \& r
% Q5 n9 S9 c* R6 ~Q: linux下播放flash动画7 t! J3 i& e/ T' @! T& z1 N* `) F
A: linux下播放flash动画用这个东西,不会造成浏览器的关闭(其他的插件不好用)
& [+ y0 j6 L3 z1 ]
! u; q$ J* o7 H首先下载flash播放动画在linux的插件
# j+ Y9 S$ U! A. D- a1. http://www.collaborium.org/onsit ... /flash_linux.tar.gz
5 N- n* X9 F8 c+ B0 v% s2. tar zxvf flash_linux.tar.gz
9 V% L) Y- @8 M5 f% b5 D: ^; z6 d( B8 B! |5 v
3. 打开包之后,会看到Linux文件夹) M; R3 e9 n! Q0 M
在linux文件颊里有两个文件libflashplayer.so 和shockwaveflash.class,把这两个文件拷贝
, g4 g, u" u8 B到你的浏览器里的插件里(浏览器不一样,插件的位置可能也不一样)# ?( t* m. v1 J2 i5 {
/usr/lib/mozilla-1.0.1/plugins,就可以了
9 Y3 s) M# b+ `
4 B( j9 _& a$ t  M$ N) ~8 P) g% K  }% `
Q: How to make iso file using "dd" command ?* j1 i9 `3 q# @8 d
A: dd if=/dev/cdrom of=/tmp/aaa.iso
8 f) G6 S! t+ p# `! A2 W4 T1 a7 q+ \6 u2 E

- ?6 ~. t$ D4 M) }, OQ: 用户的crontab在哪里0 G- g0 g' L7 g- u. q
A: /var/spool/cron/下以用户名命名的文件
3 ]8 k7 t" J: c. ]0 w- D5 }' |! Y
1 O% O: q! N' i4 n1 n' F
Q: 如何清空一个文件
" P" e# j3 g: K) u' h( |: LA: > filename+ f5 |% @' f0 g$ {, j! `  j' x

# N( Y# k* O& _( K3 O
- H7 P( H) E* M% D, ^: O5 FQ: 如何在图形界面和控制台(字符界面)之间来回切换(bjchenxu)
; r+ j$ Q; x$ sa.图形界面到控制台:Ctr+Alt+Fn(n=1,2,3,4,5,6).
/ D3 O. _1 F) S7 {, E5 ^5 B) vb.各控制台之间切换:Alt+Fn(n=1,2,3,4,5,6).
* e+ |' p5 ^5 [* p7 q+ w
7 \% G% d: t8 g6 G% vc.控制台到图形:Alt+F7- |4 a7 _$ Q- u1 f
1 ~8 {! [0 \2 s2 L3 u6 k# \
$ o  y* U% v# Q# o# w) i; w3 g
Q: linux中刻录iso的方法
* f- ~$ q4 L+ `( p: o, m  GA1: 使用xcdroast,选择制作光碟,选择ISO文件,刻录!
4 U0 v* z9 G4 M2 D! b2 P参见http://www.xcdroast.org/xcdr098/faq-a15.html#17# h$ E, v4 H! _7 a3 k, S
1 k6 N% T: R9 E0 O* [0 R
A2: 方法二:找刻录机的命令:7 v' ~4 h" F$ r" ^
cdrecord --scanbus! d9 x% r/ S$ Q; A% v
+ I( M6 w+ X  Z6 Y  s2 n6 v2 r
输出结果为:
1 V) K* t( x1 a* I) A+ r+ M0,0,0 0) 'ATAPI ' 'CD-R/RW 8X4X32 ' '5.EZ' Removable CD-ROM' D! f* c6 o% b. \" ]4 ]4 N+ ~, Y8 R
3 f8 J/ K6 v+ Z6 H# i
刻录的命令:- v& L; v# {9 c6 u) s( m
cdrecord -v speed=8 dev=0,0,0 hutuworm.iso" {- O$ L$ }! H& `! |) W( C) N

) |: Z( O7 t4 y% e. D* @- I9 G* q- z! K! |+ o; @+ a* w0 H5 p3 A
Q: 如何起多个X. N) c2 m& M, Q# f& H; _# j
A: startx默认以display :0.0起第一个X,通过传递参数给Xserver可以起多个X:5 f* X) A+ P8 m2 V$ D1 n) t! R* W! A
# startx -- :1.0
3 r2 w" I9 C2 ~& w5 H/ K# startx -- :2.02 D: V1 A! x; r# _
...5 I+ r  m$ `3 L  Y
然后用Ctrl-Alt-F7/F8...切换.
; `) ?9 \: c5 ?3 d) Z* x: {
; e$ n4 q/ u' f) d2 ^+ I6 V6 u( X3 ]
Q: 让一个程序在退出登陆后继续运行
4 C5 z/ a$ z- }# bA: # <cmd>
2 v6 W) h4 W7 m" U9 S1 v- k; Q: K# disown) Y8 t! x+ t1 C0 F1 P3 r) D5 h
or:3 z2 l( B9 W  [# R& Q! R( V" S
nohup command && a0 r" h1 R* Q: u9 T3 K2 S
: p/ Z* ]# X+ z. k
( o3 l( j) q0 ]& \6 U) C- E6 H
Q: redhat 8.0上msn和qq" B. a9 z- G) y9 N0 p# Z3 g
A:# L5 f; ~- ]/ `% t+ U9 u# D
下载Gaim 0.58版:$ ]6 v. y/ K" @4 }9 I
gaim-0.58-2.i386.rpm; n( i" n6 R. v- w* }9 S9 J
/ [4 m; j$ ~6 c
下载QQ插件 for gcc2.9版:
1 b: v# [* L8 z- V( @$ M. p. Llibqq-0.0.3-ft-0.58-gcc296.so.gz! R& v2 z# [* R: C% a8 q
9 z' O* @# T8 h+ ^; t9 F
将下载的文件放入/temp目录,然后将系统中已有的Gaim删除,即在终端仿真器中键入命令:
; h' f! |0 [1 rrpm -e gaim.) W- Y, Q$ `. x0 b$ e) Z
  R9 S: ]9 Q1 X* Q  a  r( G& F
开始安装5 p. r4 H) i% Q0 f, b* s4 g' g& i/ S; m
打开终端仿真器,继续执行下列命令安装Gaim 0.58版,即:
, W. y% |  a! A; e/ A$ y: acd /temp          (进入temp目录)
/ j; ~# c% U7 z5 z  }2 rrpm -ivh gaim-0.58-2.i386.rpm (安装软件)& d" @& D" ~& d" V+ z
当安装成功后,你就可以在GNOME或KDE桌面建立Gaim图标了.
- l9 x1 B- o' F, h
& }! A& ^) S/ n) t+ R1 F继续安装QQ插件,即键入命令:
3 H# v. f. t# T4 g0 {gunzip libqq-0.0.3-ft-0.58-gcc296.so.gz (解压缩文件)
# ~9 h7 R: ?3 O+ Zcp libqq-0.0.3-ft-0.58-gcc296.so /usr/lib/gaim (复制插件到gaim库目录中)% B: L5 {' E+ {. U. t* ^8 f( d1 a. K( F

9 `& u2 Q' i$ t软件设置, I' g5 T5 w8 c: X, |: ?
首次启动Gaim 0.85版时,会出现的登录界面.先选择“插件”,在插件对话框中点击“加载”,; k2 {- U8 _$ z3 o( b
分别将libmsn.so和libqq-0.0.3-ft-0.58- gcc296.so文件装入,确认后关闭.然后再选择5 X, R) q' }. y0 E3 o# G* ?
“所有帐号”,在出现的帐号编辑器中继续点击“增加”,当出现的修改帐号页面时,我们就
  x+ ?+ i9 o- E* H可以输入自己的QQ或MSN号了,登录名填写QQ号码或MSN邮箱,密码填写对应的QQ或MSN密码,# D2 K* Q4 ~' t2 D/ \
Alias填写自己的昵称,协议选择相应的QQ或MSN,其他的设置按默认的即可.
+ X" x5 W9 S, m6 ]" C当全部设置完成后就可以登录使用了.
% m2 ]- s+ S) t, w# |
$ K0 e' d2 W: s由于MS对msn的协议经常升级,导致linux上的gaim和msn插件必须升级,目前尚无万无一失9 I. ~+ X& T1 Y( u/ y: l
的解决方案,请见谅.
, j. z8 C; ]5 _* w; r6 ^6 c
/ L7 [+ z0 t/ H0 l. h0 U; ^
  D# V- |) D* u' O0 ~" iQ: 让linux自动同步时间" a( b' g$ G& ], x) D  C7 O
A: vi /etc/crontab
1 k8 Q) [1 s1 T; @- A3 [加上一句:9 `5 l. j. t$ m; [1 v
00 0 1 * * root rdate -s time.nist.gov5 E% }/ j- ?% ~# w% G4 W
) e" e- L1 H( ~. [3 @

& M. E* s/ k8 K- C2 n5 VQ: 怎样安装中文字体?0 `, C: n& `9 M" k, t
A:' o$ r- r6 N  L
先下载 http://freshair.netchina.com.cn/~George/sm.sh/ q5 `7 a. A3 ]* O
(参考文献: http://www.linuxeden.com/edu/doctext.php?docid=2679)$ M2 h( R& r; t5 d1 a6 z, A* c

. H1 O: B0 b0 r0 |SimSun18030.ttc在微软网站可下载:http://www.microsoft.com/china/windows2000/downloads/18030.asp
) V2 a# L* \6 A
+ t! I2 H! ]( w  u2 c1 z0 u5 `& p# U 它是个msi文件,在 mswindows中安装用的,装好后在windows目录下的fonts
5 K5 T  E' o* d) U0 x目录里面就可以找到它.把simsun.ttc,SimSun18030.ttc,tahoma.ttf,tahomabd.ttf4 _3 H; @, F- W8 z
拷贝到/usr/local/temp,然后下载的shell文件也放到这个目录里,然后打开终端; C9 o& {! V# R+ @$ \! d% e
; N, t6 T  e& q1 S" j& R
cd /usr/local/temp  g; {/ `) h4 }
chmod 755 sm.sh
& d9 h2 j8 }0 \% X; `) q./sm.sh
) U) z$ g% Y8 J6 U/ `
- z! n* ^- o2 ^7 |) f6 b% F* f2 i: w8 S2 x) r, Y' Q
Q: Linux下如何防止某个关键文件被修改?  H- b% p- A3 X- g9 L  N
A: 在linux下,有些配置文件是不允许任何人包括root修改的,为了防止被误删除或修改,
3 \! y% q! V& u: G' H" m7 f# L可以设定该文件的"不可修改位(immutable)".
  v2 q3 n) c' L" |  r2 h# j; l$ ^; Y& X  R# d4 o9 t  P
例如:; A; Z5 \. D9 g5 f! ^+ e. u
  chattr +i /etc/fstab
* p, S. U" _+ U  如果需要修改文件则:
/ a0 t: x$ c8 D0 T# m9 V  chattr -i /etc/fstab% ?  K1 t$ ^7 @9 R& l
  以后再修改文件.
1 p3 @% N, p3 o, U9 E' k" o" T# j. O+ e

/ C  _9 K8 v* v! Z! V! E; ^Q: Linux下如何设置用户密码过期时间% B8 k+ g/ |0 e1 R# J) K3 N
A: 设置某个用户的密码过期时间可以用usermod -e来设置,如果要统一设置用户的密码过期时间,
! B' Z9 Q/ J+ l4 b6 b* C: Z  q那么就要修改/etc/login.defs里面的PASS_MAX_DAYS,比如修改所有用户的密码过期时间是30天:
# ~: X1 o* t4 ~+ M7 h' QPASS_MAX_DAYS 30 如果这个值是99999,那么表示密码永不过期) s  y4 p8 a2 @" a/ d, f3 D

( l) L' ?) [4 @5 v/ P" b9 n+ y& r: c1 E9 t) q/ [& [& @5 @
Q: /proc/sys/sem中每项代表什么意思?
4 B( [  X/ p. cA:" M+ o* L1 {7 R+ D! `% W
Example: 250 32000 32 128
6 N: L* Y' V( j9 J这4个参数依次为:' G& @- L" j( K  d
SEMMSL(每个用户拥有信号量最大数量)1 w5 d* e3 e1 h% x  h8 Z& h9 l9 w
SEMMNS(系统信号量最大数量)
6 V' X' R2 f( m$ PSEMOPM(每次semop系统调用操作数)  X' b/ q4 w9 [; o) l5 a% c* Z
SEMMNI(系统信号量集最大数量)
1 i. d  p# ?/ H# M$ x; U9 p2 {; _7 n) \- `. Y
Q: 怎样开启硬盘DMA支持
$ U, M' e9 z$ ~A: /etc/rc.d/rc.local 加入一行/sbin/hdparm -d1 -c3 -m16 /dev/hda/ D: |# Q3 \- n% }3 r: A
如果您的硬盘支持 ATA33 可以加上 -X66 这个参数,ATA66是 -X68.
2 |- \- a  ^' C7 a) L; N/ w比如ATA66就是:/sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda
( C8 U: @& c/ H; q0 \7 r我们可以用 hdparm -Tt /dev/hda测试加入前和加入后的效果.
# d3 Y! Q0 W3 V: c3 w以上测试注意有可能带来数据的灾难问题,请不要随意使用.' V& ~3 H0 V5 X! M
/ h7 V9 ]/ Z; R' G- Z. Z
Linux下也可以使用32Bit I/O和DMA.
* _* N/ h# w1 g$ J3 ^使用/sbin/hdparm -c1 /dev/hda(hdb,hdc..)打开32Bit传输模式,& l( A6 M. n  t* I+ d' L
使用/sbin/hdparm -d1 /dev/hda(hdb,hdc...) 打开DMA.
& q; S$ y/ t- T3 o最后使用/sbin/hdparm -k1 /dev/hda 以使硬盘在Reset之后保持上面的设定,
* w6 a4 `& k. _" P6 `- m这么一来,硬盘读写速度应该可以提高一倍以上.
/ z. c: D8 m1 {5 e8 r: ]' Y9 K5 s4 g6 a: O0 M+ q( l
Q: 如何安装声卡?3 u8 b7 ~. n$ V6 ?# c3 l) d
A: 在字符模式下运行sndconfig或setup,如果这样不还不行的话,请下载
" [" ^  ^& K3 O% n1 F9 f: R+ G声卡配置工具alsa(alsa工具包包括alsa-driver-0.5.10b.tar.bz2,
6 k+ W- }. c9 q6 Q4 q4 d; L- kalsa-lib-0.5.10b.tar.bz2,alsa-utils-0.5.10b.tar.bz2,0.5.10是版本号.)( q" N5 Q/ e0 I
按照drive、lib和util的顺序安装.也可以下载oss工具包来配置你的声卡.
. v7 a9 q# O8 |7 _; M( O; r
+ z, d  K7 i3 ^+ T3 P/ N# X7 d5 U: boss安装指南:http://www.linuxeden.com/edu/doctext.php?docid=19741 X* o( ]2 d  S. ~( `
& [8 F2 f$ S6 E( l
ALSA安装配置AC 97声卡:http://www.linuxeden.com/edu/doctext.php?docid=1251
" O# ~# V* B! q# [6 }0 K
& O! E5 L, Q; f! _( f3 t  S* B
6 z' k3 Q! {* }+ U& s: KQ: How to use "XHOST" ?
+ F3 S) g( X+ E& w1 ]xhost 是用来控制X server访问权限的. 通常当你从hostA登陆到hostB上运行hostB
# g6 a9 T! o' J- l6 [1 ?上的应用程序时,做为应用程序来说,hostA是client,但是作为图形来说,是在hostA上
; {0 v+ b& [* h' z9 l显示的,需要使用hostA的Xserver,所以hostA是 server.因此在登陆到hostB前,需要+ Q$ e' s3 n7 r) \  X* p
在hostA上运行xhost + 来使其它用户能够访问hostA的Xserver.
6 x) V# E: ~) M7 _9 _3 e; |
7 X. S2 y+ l# r7 f! `: V4 m% nxhost + 是使所有用户都能访问Xserver.
1 E# C5 F) Z) X9 @xhost + ip使ip上的用户能够访问Xserver.4 t7 Q6 J- Z9 @6 u' z; Q
xhost + nis:user@domain使domain上的nis用户user能够访问
& w3 d6 o# g: a: Bxhost + inet:user@domain使domain上的inet用户能够访问.
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表