QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
5天前
查看: 2138|回复: 2
收起左侧

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

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

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

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

x
本文收集了LINX下一些常用命令和技巧, 对初学者会很有帮助.! O( `/ O, e+ q; {

" s+ }+ s$ l; c: F8 A$ V) I一. 基础( A) |3 q4 D/ n8 K& j# @
Q: Linux的开机过程都做了什么?$ b1 J) R- D8 `& V1 s" q1 p
A: 1) 一开机,CPU将控制权交给BIOS,BIOS完成开机自检;
- n) Y: }+ q# Y; J, j: o  2) 然后BIOS读取磁盘上的第一个扇区,并装入主引导扇区的lilo;
8 D# J! ]' c4 s; |+ ?& J9 _  3) lilo根据输入选择不同的内核映象,如果你选择了linux就读取/boot下的核心映象;& U$ k8 M% Q8 e( u. J+ n. c
  4) 核心开始硬件检测和设备驱动程序的初始化,然后运行init0 L3 {: q* |7 `0 a( ^4 M+ i
  5) init进程根据/etc/inittab的配置运行一系列初始化脚本;
4 r" B0 _  d7 z1 E  Y! {5 K5 @  6) 完成后,启动getty进程接受用户的登录.9 ?) Q: G  p$ p9 }( L& O: v) [
/ D9 p; q) _& h# I, W  \
Q: 如何设置开机自动运行程序?) V/ |' F/ ?6 x( H/ f' _
A: 你可以在以下几个脚本文件中加入你想一启动系统就执行的命令:" ^4 J8 D& {  M  @7 l
/etc/rc.local# `1 n0 y$ P6 Y$ Y
/etc/rc.sysinit: e7 c2 o( Q7 _! m+ G+ d
/etc/rc.d/init.d
+ s% I8 v* v1 r  \# q1 _  `( F  D
Q: How to recover ROOT's password:% p6 m7 D2 M) W
A:
& o' e) s8 p% `) @$ MGRUB (RHEL AS 3.0 Update 2,vmware)% E/ q- E6 L! k2 g" b' B9 p
1. press "e" when select menu appears;
# S/ i* a1 V$ g. H2. edit
2 i- ^8 V/ |' v. Iold: kernel /vmlinuz-2.4.21-15.EL ro root=LABEL=/- {6 Q5 V7 [1 T" j. a- a4 x
new: kernel /vmlinuz-2.4.21-15.EL single ro root=LABEL=/
" A9 l0 f3 O* T# A9 [' f3. press "b" to boot
8 L. V5 @; a0 ~. ?- @- s" \4. vi /etc/shadow:
) x  p, y' `; O/ S( |将第一行,即以root开头的一行中root:后和下一个:前的内容删除,
( D1 ?; }* U( g2 P; U5. 保存(wq!)
4 f- j" s7 X" W- X0 i6. #reboot重启,root密码为空 passwd root重设密码
9 K" h. E/ K( b% a& p% ]4 U* n" a3 f6 a1 D8 v7 Q
目录说明7 h6 R. Z; F  D$ `
/bin:存放最常用命令;! u$ e7 N1 D- s2 ^
/boot:启动Linux的核心文件;
# U  O9 L6 }, _* \; F+ a, P% T, s/dev:设备文件;
* O4 v: m) H. w6 t5 E: o/etc:存放各种配置文件;
+ l( u0 G4 x" |9 a. u$ p, ^6 }) ^2 z/home:用户主目录;
( a  K2 T5 V' P$ x0 G/lib:系统最基本的动态链接共享库;6 y6 u% n% h: \, Z8 c
/mnt:一般是空的,用来临时挂载别的文件系统;5 V9 F6 E/ ?9 `& @. |) H
/proc:虚拟目录,是内存的映射;
4 O$ G. Z: ]% W3 w, r; \/sbin:系统管理员命令存放目录;
; Z% J1 T% Z9 e' Z1 G. j# [/usr:最大的目录,存许应用程序和文件;
4 v3 |! k- E7 m  i  d$ V' f/usr/X11R6:X-Window目录;
9 x7 @, T" `$ T3 @- i& I1 ~, n3 y/usr/src:Linux源代码;6 w7 c# U9 E0 k/ h3 @! ]3 U
/usr/include:系统头文件;' o+ ]) K$ U5 K( _6 ]. x' K
/usr/lib:存放常用动态链接共享库、静态档案库;" |9 T+ j6 _; |9 L* f! c
/usr/bin、/usr/sbin:这是对/bin、/sbin的一个补充;
8 P$ Q4 F$ ~* D' B, m* a( O
6 Z1 _( ~$ G8 [服务说明:: L9 x3 d" g5 s" `
1、alsasound
& |% F9 R2 J7 xAlsa声卡驱动程序支持.Alsa声卡驱动程序本来是为了一种声卡Gravis UltraSound(GUS)而写的,该程序被证# x! I& }+ B2 }
明很优秀,于是作者就开始为一般的声卡写驱动程序.Alsa和OSS/Free 及OSS/Linux兼容,但是有自己的接口,0 _' G- _) ]* y3 R9 j
甚至比OSS优秀.
% L( s9 U8 _0 C$ u: ~2、amd
! f8 v7 b' F3 ?; v运行automount精灵程序,该精灵在必要时自动安装一些本地设备和NFS文件系统.( X+ C) a. D, P8 j: E
3、apmd
2 y0 w9 u  t6 g" m" O9 X8 ]apmd用来监视系统用电状态,并将相关信息通过syslogd 写入日志.也可以用来在电源不足时关机.2 x9 n" u9 L1 h! c9 U  K. t- F
4、arpwatch2 d0 s5 v' Z! q- c# K
该程序主要用来维护以太网物理地址和IP地址的对应关系.& Q. `" J, J2 ~  m
5、atalk
6 h6 ?6 x0 _2 ?$ X9 u, O4 EAppleTalk精灵程序.注意不要在后台运行该程序,该程序的数据结构必须在运行其他进程前先花一定时间初始化.$ b9 ^9 N3 x: N
6、atd
. O2 z  P* e- a& S/ [5 y8 c运行用户用At命令调度的任务.也在系统负荷比较低时运行批处理任务.- M% u: `( ~4 V5 f2 R; ]$ S% |! P
7、autofs. b$ H7 F* b( I& E" H
当您需要时自动转载文件系统,而当您不需要时自动卸载.1 n, P2 K7 l9 I# d+ u& j. ]
8、bootparamd
$ Q  {6 v! s2 `) M6 H# _. O1 x/ }该服务允许老的Sun工作站从Linux网络启动,它和ra??rp现在很少使用,基本上被bootp和dhcp取代了." t" ?% J0 e! g
9、crond& G( a1 c* C0 J# U; ~& M9 v
cron是Unix下的一个传统程序,该程序周期地运行用户调度的任务.比起传统的Unix版本,Vixie版本添加了不
: D* u7 V+ X. b  L, n$ T少属性,而且更安全,配置更简单.4 D* K% u$ c+ E% i  U% b
10、dhcpd, y  y' T9 Q: ]0 m! A
该精灵提供了对动态主机控制协议(Dynamic Host Control Protocol)的访问支持.
4 w5 ~& p. O3 P" M+ q11、gated
9 B( O" n: A# R( }8 rgated通过一个数据库提供了网络路由功能支持.它支持各种路由协议,包括RIP版本1和2、DCN HELLO协议、1 B3 R2 q/ m! Q; X5 D! l  }
OSPF版本2以及EGP版本2到4.' W% n, F  B7 y5 n) T3 M; l/ X
12、gpm
- x: p, A' M& D  I! Hgpm为文本模式下的Linux程序如mc(Midnight Commander)提供了鼠标的支持.它也支持控制台下鼠标的拷贝,/ c  J2 ~3 v! ~, |- F8 Z, `
粘贴操作以及弹出式菜单.* x# }' @$ P" O( {2 B  x
13、httpd9 G; _+ D7 ]8 k( V8 K
http是著名的www服务器,可用来提供HTML文件以及CGI动态内容服务.7 ^  b0 B1 n2 A- U+ }; F0 W
14、inetd
& p; Z- w" Y6 t. v# d# L因特网操作服务程序.监控网络对各种它管理的服务的需求,并在必要的时候启动相应的服务程序.通常,
% D, W! {8 _$ H2 O; `% K( ~inetd管理的程序有telnet、ftp、rsh和rlogin.关闭inetd也就关闭了这些由它管理的服务.
! P& @* G* k" }7 _; q15、innd
+ B$ x) V( y* s! B% ?. v+ j; G% dinn是最流行的用户组新闻服务器.它允许您建立起本地新闻服务器.配置有一定的难度,可以先阅# s6 U, M! K( L3 x
读/usr/doc/ inn*文档获得帮助.% U: V  p7 Y: }+ J7 d; r
16、keytable 该程序的功能是转载您在/etc/sysconfig/keyboards里说 明的键盘映射表,该表可以
2 y6 D* a) I1 z9 {9 k9 l; B+ p4 `  O通过kbdconfig工具进行选 择.您应该使该程序处于激活状态.
9 R: A/ U, X) n, }0 c% V5 |" X17、ldap
/ U, A- F) O+ ~) U% |5 A/ [LDAP代表Lightweight Directory Access Protocol,实现了目录访问协议的行业标准.
4 H4 {4 B( E0 J/ d) q18、linuxconf. c1 ]/ B8 Z+ z/ }+ r9 w0 E
linuxconf是Linux下的一个有效的系统配置工具,该服务允许远程运行.; |, j  S0 ?. |, g" B$ _5 H
19、lpd
0 w7 ]/ m' S* Z& c  W7 |$ ]+ v, |) Dlpd是系统打印守护程序,负责将lpr等程序提交给打印作业.
* |: z5 i7 P% n. F$ S20、mcserv
# ^7 P6 P3 Q. s) c0 Q( ^Midnight Commander服务进程允许远程机器上的用户通过Midnight Commander文件管理器操作本机文件.
- P0 j  _, m4 a( c$ H- _: B) W5 J2 @服务进程用PAM来验证用户,需要给出“用户名/口令”以通过验证.0 L$ x- K, k/ N* A& S' O1 M
21、mysql
# C' z/ V8 H$ F; f一个快速高效可靠的轻型SQL数据库引擎.
9 B$ S" M+ z/ E/ O8 h% K22、named
- T9 n  m" v( ~& E* C% P- C! _域名服务器,将Internet主机名解析为点分的IP地址.% f8 S0 o( L  b& D) n; S$ w* N3 A) @
23、netfs
+ I& G6 D* C  [$ m/ t负责装载/卸载NFS、Samba、NCP(Netware)文件系统.
% R* F6 q, X' H# w3 u24、network 激活/关闭启动时的各个网络接口.
" w) X. x' S6 d8 j% ^+ d25、nfs% r/ U5 `$ D" t, E( N# D
NFS是一个流行的基于TCP/IP网络的文件共享协议.该服务提供了NFS文件共享服务,具体的配置
7 N# }2 A% S3 w$ O* t在/etc/ exports文件里.5 v! q3 l; z) t% b
26、nscd8 X0 c1 ^6 [4 m9 t) Y3 J7 P
该服务负责密码和组的查询,并且缓冲查询结果.如果您的系统有比较慢的服务(如NIS和NIS+),则应该
% r; d1 i6 {* M5 J+ P' M启动该服务.
" m" B& g9 y# c7 P27、pcmcia
5 C! ]; Q# E( Z8 x. epcmcia主要用于支持笔记本电脑.
, n1 r' Y% ?% o3 A. p1 S7 @28、portmap
' t4 H; V/ f/ v0 J; q( Yportmap用来支持RPC连接,RPC被用于NFS以及NIS等服务.4 r* U% q1 n1 o" z8 n
29、postgresql
4 \+ t% g9 O7 c7 I# pPostgreSQL关系数据库引擎.
( @- I7 p" a9 x/ V0 M30、proftpd' N/ i2 ~" T4 J7 v' W
proftpd是Unix下的一个配置灵活的ftp守护程序.* @! T( t' E; Z. ]. U8 P) Q
31、radvd0 D6 k8 ^! S  ?& m. L
路由广播程序.
! u0 D$ m. O# H. U2 G  C32、random" n( D6 b' d* C' H
保存和恢复系统的高质量随机数生成器,这些随机数是系统一些随机行为提供的.  r* e- w- k" T! a
33、routed: u( G& [+ v( i# h# ?
该守护程序支持RIP协议的自动IP路由表维护.RIP主要使用在小型网络上,大一点的网络就需要复杂一
7 |+ y/ q6 I6 w点的协议.
5 b( _; `( f3 o9 [34、rstatd
; k+ e) w  n# D/ TRstat协议允许网络上的用户获得同一网络上各机器的性能参数.
* W% d' T, h- U, f* B" p+ _$ F35、rusersd
1 ?$ |  Y% {6 g0 t该服务使网络用户可以定位同一网络上的其他用户.3 z: n) E3 s: j( P$ \+ Y
36、rwalld
* F' ?3 R# ?4 n) R* C! nRwall协议允许远程用户向在同一系统中活跃着的终端发送消息,类似wall的本地行为.' d0 t. N% G7 z
37、rwhod
: q' ?6 l4 k8 N允许远程用户获得运行rwho精灵的机器上所有已登录用户的列表,与finger类似.* H* m$ [  b3 t2 o1 q
38、sendmail
% ]; T, ]8 ~- ]) d9 G大名鼎鼎的邮件服务器.6 B5 U* `9 m7 S- n7 I9 a; h
39、smb+ x; p  M1 C* I# _- Z& Y
启动和关闭smbd和nmbd精灵程序以提供SMB网络服务.
* {# `% p5 n3 F) f/ [40、snmpd) b, ^2 Z6 {1 g' N0 w; N) `
简单网络管理协议(SNMP)的守护精灵.
% `1 J' x5 l. e1 D# i41、syslog) }6 l# l( @: T; S4 J8 y' ~! v
syslog是操作系统提供的一种机制,守护程序通常使用这种机制将各种信息写到各个系统日志文件.通常应& h7 [: ^6 R* d  Q0 G/ Z
该启动该服务.
2 G2 R: o/ j6 a42、xfs+ x/ ^- L# @+ K9 K6 l
X的字体服务器.
( `5 \* j- }* D% k43、ypbind
7 }/ d% F0 d1 T# T6 G- tNIS/??YP的客户端守护程序.如果您需要使用NIS/YP机器,请启动这项服务,否则,关闭这项服务.
5 k  `" `* Y9 |. I44、yppasswd
% |0 {/ l8 l+ |让NIS用户能够修改密码.运行在NIS域的服务器上.客户端程序同样也叫yppasswd.
! J8 Q* k2 ^' C, L5 j' s) s45、ypserv( z. u  `: J( a' `) _' w: ?* Y5 q
标准NIS/YP网络协议的一个实现.允许主机名,用户名和其他信息分布于网络各端.运行在NIS服务器上,  I) K  a& [% b# o) f

5 f: v- E# @9 J关于运行级别(对应不同的initX.d)
: ]) Q# p1 \6 C" Y8 A: {+ S( G3 f0 — 停运
, ^& `# C+ F$ L  o1 — 单用户模式  }; O$ Z- f$ u
2 — 没有使用(可由用户定义)& u+ _, l7 J' C
3 — 完全的多用户模式
. @) k$ {0 n! s( S) x# c4 — 没有使用(可由用户定义)
/ c7 j) B7 X" C& Q6 L5 — 完全的多用户模式(带有基于 X 的登录屏幕)% w, |9 Q" O1 [; O6 L6 s/ V* V5 i
6 — 重新引导
) y6 h6 m. N% C/ `- |  z
; H: W, U; R. |' F二. 常用命令1 m* }6 B6 H, m
chmod 命令
' G; f7 M3 Z! w! z& B符号模式8 a7 S/ i5 c8 j' F% ^+ L" C) e
chmod [who] operator [permission]) r4 r9 b: L1 ~" Q
[who]:
; X7 h5 p% c% La(All user)* z8 F0 B2 Z6 D* X! |0 I! R
g(The user belongs to same group)
2 o$ Q- x) Y" e- \$ Y- r/ To(Other user)
9 p. V" O0 K& D  j$ r) A: a' [u(The owner of file): Q  X! [! Q: k( l& j
operator: +/-/=& C- G( o8 J) P0 A* U, [
permission: r/w/x/s/t/l
4 I. G: n5 S1 m5 Z. M' I. jsamples:: t6 p1 o' b1 ~5 R  C/ e
chmod a-x filename (收回全部用户的执行权限)
2 i* r) I, |3 D' b- ychmod og-w filename (收回同组用户和其他用户的写权限)
# X$ T0 w7 u* [7 w) ~( G9 F  G) Hchmod g+w filename (赋予同组用户写的权限)# g6 T$ W, \% M1 H
chmod u+x filename (赋予文件属主写的权限)
6 l6 O% C, H2 N6 B  ], o& Schmod go+x filename (赋予同组用户和其他用户的执行权限)
" b8 B' Z. c; N% M9 U4 @/ g2 g
9 P; {( e4 B0 g( W4 q8 u直接模式$ o) \  u' \9 K% b. a
chmod [mode] file
- V6 I7 d4 |6 Z0 Y9 hmode:八进制数/ M8 k7 S2 o+ y( n2 }8 |. r
0400: 文件属主可读 0040:同组用户可读 0004:其他用户可读
# ]* t( s0 R$ P8 T0200: 文件属主可写 0020:同组用户可写 0002:其他用户可写5 X$ G  D4 {: \* J
0100: 文件属主可执行 0010:同组用户可执行 0001:其他用户可执行
9 ]1 X+ t1 P# P0 [* kSamples:
 楼主| 发表于 2006-11-7 14:12:39 | 显示全部楼层 来自: 中国陕西西安
chmod 744 filename: 文件属主可读/写/执行,所有其他用户只读
9 B; ^0 e7 U" p& qchmod 664 filename: 文件属主/同组用户可读/写,其他用户只读
# U: E7 k- V: V" }5 J( J) \0 o; O$ I( ]4 U
chmod -R dirname: 连同子目录下的文件一起设置
$ `! e" A# }, M8 B8 \7 C# I8 a% A9 \7 T; c

! x+ j1 n0 b4 e. x目录权限:
) c0 Y$ K7 w2 I$ F5 z  i6 fr: 可以列出该目录的文件;1 E2 g* c) @% a
w: 可以在该目录创建/删除文件;
  p/ Q' e  t8 B2 q* M3 }x: 可以搜索或进入该目录
; ^+ ]+ X1 I  ~" U# S2 m1 ]( b& Q6 p) T# C/ s
目录的权限覆盖目录中文件的权限
* g% w, {7 H8 C' r8 C
* M. L: O1 J1 ^! C6 y  o+ X除了字符,也可以使用数字来设置权限。想知道是然后工作的,看以下例子:
6 y# S# {/ o$ u7 y9 ^execute=15 k7 q; Y5 Q7 `5 X( \2 T
write=2
/ U8 k. R3 x7 N& H+ \, Lread=4* y- q4 S) j5 a  T1 J: L
对于指定的三种不同用户级别总结如下:
& P6 ]+ z. M# u5 h/ y0 = 没有任何权限 (不能读,不能写,不能执行) (常见)5 r1 x: J; i* i% v9 G9 A; W
1 = 只能执行 (看起来不太正常)! g' i2 F, {/ i% S1 f( N
2 = 只能写 (看起来不太正常)
0 b. [8 Z. l& t( Y9 R3 = 只能写和执行 (看起来不太正常)' Z2 I0 e1 ?* O: B
4 = 只读 (常见)6 q8 O/ D& o4 I; S9 Y
5 = 只读和执行 (常见)
; @+ \$ [9 ~1 d$ d8 k3 U6 = 读和写 (常见): ^( M8 K& s# u9 ^. a& p8 `
7 = 读,写和执行 (常见): d; O- I7 r( h% U# C$ H* N
, _' o3 Y! `( P; L
SUID/GUID:
" T0 y9 _8 ?3 d; z, Y" g/ Z4 a" M0 d; H- b" a- Z; |- m2 V- i
suid:如果某个用户对属于自己的shell脚本设置了某种权限,
* _1 ~8 _6 D' `+ l, r! ]: X其他用户在执行这一脚本时也会具有其属主的权限! c6 v. [0 }) [; j' `, T9 U+ y
; O6 A4 m# W; w/ J0 O
guid: 执行相应脚本的用户具有该文件所属用户组中用户的权限9 [9 |0 F. C9 g3 r9 U' O

9 v. @( f& n* fsuid: add "4" before ...0 t0 d' h/ f+ Z  ?6 ]* S
guid: add "2" before ...* D+ x# a6 l: O
9 w& W: E) i8 R( o7 w" @* A7 `
samples:& o6 Q! x( U, d% F0 b
chmod 4755 rws r-x r-x
; g% D; v) u$ |chmod 6711 rws --s --s
2 X/ x1 s3 v9 ~! }7 Ochmod 4764 rws rw- r--9 H2 a8 t5 M4 o
9 }9 }# P: i+ T' O
& X, `5 Y' h" M
chown/chgrp 命令: 改变文件的属主/改变文件所属的用户组
& q- [  _, ^9 k  U其他命令: group [username], umask [value]
1 W+ v6 a. y' ~! j( h- ^  p4 p* J% K9 T
文件链接:
# i' n2 B9 m+ k' {ln [-s] sourcepath target_path
/ B. w; z& k6 a0 F0 g* W9 k
/ D" u  M8 d3 F! g4 i+ lsamples:
# {, E- d7 c! K6 |; Qcd /home/sales/user1
! Q/ _" S, }8 V; A% r' Jrm .profile5 r/ U% G5 ]' W* r! U- \
ln -s /usr/local/menus/sales.profile .profile
+ V( H. m  Z: V3 s2 V5 _; sls -al .profile% v  ]: U! r  I

( Z7 `; b/ s2 b, n$ l+ z' @6 z9 J- I9 o7 P8 T
find 命令
+ o- ?% s1 p' X) p# h3 F
' M( Q1 S# E  w) Y; D; ^1. 按文件名查找: find 目录名 -name 文件名 -print! R3 ^2 L# E$ R- g

1 p0 R& f3 g" r  V8 U1 A; L2. 按日期查找:" P! v/ j- Y1 {

2 G' t; `$ A) F% D- w例: 查找目录/usr/bin中最近100天未使用的程序
- d0 S4 T2 y7 |) l+ j) p" O2 Y
find /usr/bin -type f -atime +100 -print  U$ ~- V% a4 j4 e" {
1 G) `7 [1 d* R( H6 }

! U+ V  A: x+ F* a% P  P查找目录/usr/bin中建立不到一天的程序2 m9 E4 V7 x( b* k

+ D2 ~* x" v0 k+ yfind /usr/bin -type f -mtime -1 -print
0 `9 q3 |+ p+ V8 _/ u6 w$ c' P- ]6 v+ C7 P' C8 i$ N. p2 ?

% Z' j7 Y" e! L6 Y' U5 A6 |whereis 命令
: X' W2 u0 z- S& b$ ]. @, b- {# v7 G, i$ U6 ~6 q0 ^0 s
whereis 文件名
! b! a0 p  _1 |2 t1 V8 a, M: |8 t8 m# S  M' \
whereis -b 文件名(二进制)
& l9 _( k# o4 Z
) s  ~9 M& R# V5 U( M( t. A: g/ B6 ?1 O3 E6 A
Locate 命令(需要先建立数据库)
/ ~9 @( E# p" z' c6 A4 Tlocate *.ps* M! Z! M2 F/ ?

9 ?3 E- {2 b- T" N
4 y% S8 n* b: C2 s1 NQ: How to use "cat"
% }7 v+ A/ L% d  B0 t8 r/ }' B* ~* F0 L! E; i8 e* n
A: cat 文件名* D$ u) [; u! j4 D  ]- a" `3 J0 g

# ?$ U0 C5 o/ b! a) kcat -n 文件名(加行号)1 V1 P* J: U* p: P
5 i3 _( a1 X( p. [+ y& [8 T& |$ q
cat -n test*(批量查看) = cat test1 test2
& d8 u. x& Q5 v6 m+ A, x  a8 s! ?+ e8 u
重定向:4 x; l: M1 V" u* |: G
1. cat test* > test36 u' |) P7 c9 r2 u& V

9 ~) A2 A1 r) Q  U2. cat test1 >> test2(test1文件添加到test2文件), i7 ]/ _3 {" v3 R7 R  B

- M& u% t1 Y/ w3. 不使用vi,建立一个小文件
, a7 @8 A* |/ B- `9 O5 y! O( m4 |: n" |% Y  t; l4 R1 p+ V4 l
cat> myfile.txt, b# Z& C4 W  c0 O) `+ {
input: this is myfile.txt0 F, N  D$ P2 d* i. W# m
ctrl+d 关闭这个文件9 Z# V- u6 M! O) |) b

. D# b. A3 `* D& L2 u2 W4 |  i5 }1 G8 r- l
) ^% J) G3 r3 @  h5 F; Hmore 命令- d6 i$ k  e# s. E! L
more filename
6 l; ]# I, I8 Y* g/ B  W
  e$ [7 _" H$ _7 K4 w: J( I; V& X* |
less命令& e- x/ i! S9 }; x* N
less 文件名(使用空格键下翻页,使用B键上翻页)" V1 Q" U! x3 ]+ U: x: ^- }
less -M 文件名(显示页码)2 v- z' g  e" V7 q. K3 ]! v) ^
使用*进行匹配,如果要跳到下一个文件,键入":",再键入"N"
7 h) u6 d' i6 Q- c: S9 c4 S7 e' K; Eless -d(列出子目录名)# B4 \( G+ L* M# h! `9 M
执行其他程序: !文件名 执行完毕后,按回车键
* C1 {+ }# p) q2 ?; m2 j使用"/"进行搜索: / 单词; 如果需要继续查找,继续按"/",再按回车键,退出阅读,按Q键.
: K. R' I! _5 y% ~3 a8 a
0 x5 W2 [3 J" W( ~, _+ ghead/tail
8 B5 O2 N' J5 k- N) C8 U; K7 Rhead/tail - 行数 文件名(支持通配符)8 C) B" s- P. B6 n; w% d

0 ~& N1 e3 C- f; i) v1 y9 G' \, a2 [$ J
9 |9 A# J4 G0 p, z- l* j* J8 dQ: 文件分割和合并5 M& q9 D: o) m' p7 `4 O2 ]% j
A: $dd if=source of=target.1 bs=1M count=109 \$ U* z! O( L  |- G7 g' Z
$dd if=source of=target.2 bs=1M skip=10
7 g+ o8 m7 _' z8 u+ L2 K: lsource被分为target.1和target.2两个文件,其中target.1为source的前10M部分;
% ?7 S! G7 D$ w) J- Ktarget.2为source的减去10M后的部分.
. X- t/ C8 [1 R, h% ^$cat target.1 target.2 > othersource
$ L2 E# p( n4 I1 g6 q1 M. jsource与othersource是同一个文件.. ?6 O- l/ Y( V+ R- a
6 e, [; k3 Y7 `, b$ v" X9 t
4 ^& v6 Z7 _) k! ^+ S; T1 M2 ?
Q: How to use rpm/ Y0 z# F: N9 \2 T. U

4 _  }1 M1 m, F+ }. p" lA: rpm -ivh (Install,Version,Help)! W" Y' N$ _5 [' g/ V1 V$ l: n
rpm -ivh --replacepkgs (Force install same package)3 v0 K( D" u% ^" C9 y
rpm -ivh --replacefiles (Force replace some files)
4 m0 M2 o# r$ c- @3 Q
9 `; z+ b# ~8 Krpm -uvh (Upgrade,...)
6 k) f5 H1 Z  h2 D* f" g: p* `1 z0 Qrpm -Uvh --oldpackage xxx, w+ p; {! o3 T& B$ J
. D! x5 Y, P/ g3 `: K3 m0 v
rpm -e (Remove installation)
' O& x* I, ~6 ^; j1 v1 nrpm -e --nodeps (Remove installation and Ignore dependency , may cause error)
' c0 X( ^" ~+ R9 u& a! p/ J8 _/ A+ ^6 w9 a+ |% |" d
rpm -Fvh xxx (Refresh)0 X, v! o2 W4 N

; ~  z; ^' k- {; Q; r2 G; Srpm -q xxx (Query)8 g7 @# c; H- s8 {! G

. \3 Q2 R$ c3 C+ {) b8 k7 Lrpm -Vf /bin/vi (Verify)* k- r) k1 N- U! e

( S* H: T* N* _5 R3 C: a( b4 t9 vrpm -qpl xxx.rpm (check the directory that rpm files installed)6 f: T; P# H- I+ b" d5 Z
$ K  l7 B+ c0 [6 y
rpm -qa |grep xxx% h9 {: U& G) E. d" j: E
( D  s5 x! l; E

* ?8 e  ^. `4 AQ: How to use "tar"% J% m/ _0 D" W( e  r4 \
tar 文件是几个文件和(或)目录在一个文件中的集合.这是创建备份和归档的佳径.
* ]( `* s1 p' Y8 V! X0 D
9 C$ X6 N2 F+ q% \2 C7 htar 使用的选项有:2 T) c% O, I% _" q! k' ^
-c — 创建一个新归档.
1 e* I& O+ V/ ~2 z- w" \-f — 当与 -c 选项一起使用时,创建的 tar 文件使用该选项指定的文件名;当与 -x 选项
/ D! ^1 a, y% }  f6 U, H8 _一起使用时,则解除该选项指定的归档.
1 h* r) S, F8 U: o-t — 显示包括在 tar 文件中的文件列表.
( T5 N# m8 l7 d6 d; W0 c-v — 显示文件的归档进度.
$ K. \3 T: N4 @" g-x — 从归档中抽取文件.
+ K5 R+ w( y2 m8 e! G( y2 B-z — 使用 gzip 来压缩 tar 文件.
0 e% L" ^4 e% x. g, g-j — 使用 bzip2 来压缩 tar 文件.. B9 e/ A7 a3 n
9 M* \2 P- Z- a% B

% \2 ~: t8 ~' |  v, [要创建一个 tar 文件,键入:, L& e$ Q! F' O( d& t8 [0 n
tar -cvf filename.tar directory/file/ ]& x, U$ o! V4 X# }: G' B1 {

4 w5 N  i: |2 g7 @: r可以使用 tar 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:
( [; l2 ]9 L/ b7 G8 s% atar -cvf filename.tar /home/mine/work /home/mine/school5 c, M: Q' |7 I4 W
1 h3 b0 a( s9 l7 H  F. U
上面的命令把 /home/mine 目录下的 work 和 school 子目录内的所有文件都放入当前
& M: V& ]) K4 I目录中一个叫做 filename.tar 的新文件里.
( c/ X, o( `! M* a# v8 O0 G! f. A' D# L; d" |$ `
要列出 tar 文件的内容,键入:
0 k3 ?; ^2 ~* ^( L; g" W9 Btar -tvf filename.tar
( F5 Q% t6 b5 B
- h+ X: S, D+ L要抽取 tar 文件的内容,键入
8 C  p8 u" M6 z* U. Vtar -xvf filename.tar
# y" X+ ^, q) c% J' t  L( K. m, U2 l
! |+ \; [; R1 h3 ^6 w& X这个命令不会删除 tar 文件,但是它会把被解除归档的内容复制到当前的工作目录下,
  O& I' Q! _; [8 I并保留归档文件所使用的任何目录结构.譬如,如果这个 tar 文件中包含一个叫做0 A' ?+ u0 V& L  `- b! }: H
bar.txt 的文件,而这个文件包含在 foo/ 目录中,那么,抽取归档文件将会导致" v6 t% ?1 P* I+ }' E
在你当前的工作目录中创建 foo/ 目录,该目录中包含 bar.txt 文件
+ O; Z5 {! a# {" i2 h  }) i% e- l4 \+ R$ ]0 F. _7 b0 j
tar 默认不压缩文件., n0 }# \/ K% c2 u8 u  m
要创建一个使用 tar 和 bzip 来归档压缩的文件,使用 -j 选项:. y- ~0 e) k; d( H1 M* V
tar -cjvf filename.tbz file
& U# q& B% q  u3 B8 r4 H
* @" p+ s; r! W" N0 x3 v9 {以上命令创建了一个归档文件,然后将其压缩为 filename.tbz 文件.如果你使用+ U! g2 d' t$ T* u* M2 \3 T
bunzip2 命令为 filename.tbz 文件解压,filename.tbz 文件会被删除,继之以 filename.tar 文件.
& k( }7 ^; G) J1 Q% a) w
- t" k( J1 w- b3 G' _你还可以用一个命令来扩展并解除归档 bzip tar 文件:" }& p0 j- b1 y: y3 v2 D
tar -xjvf filename.tbz
! o2 K, o1 C6 ~2 B' y) o( i, F  D3 M' _) I
要创建一个用 tar 和 gzip 归档并压缩的文件,使用 -z 选项:
9 c  @# {* K5 \tar -czvf filename.tgz file
; R( f. u' ]0 [* X+ q/ p+ I7 E  u
" g/ l) b* ~4 D' }% _6 d/ D$ T$ G  Z- A这个命令创建归档文件 filename.tar,然后把它压缩为 filename.tgz 文件(文件 filename.tar 不被保留).% ]2 Q/ b7 _7 I* w
如果你使用 gunzip 命令来给 filename.tgz 文件解压,filename.tgz 文件会被删除,并被
- b: h) L/ a" s" u& c9 ?替换为 filename.tar.
6 h7 Y; z/ w/ J- H. z) g1 d7 L# @3 g
你可以用单个命令来扩展 gzip tar 文件:: B$ n8 ]4 P) m- W. s9 F
tar -xzvf filename.tgz8 a- w4 ?6 ^5 c1 ?- y$ q6 D4 D9 O

0 C0 r" s# A5 A& e  k& g2 Z( h5 N7 t# R* W9 A! `+ S
解压a1.doc.tar.gz文件. |. L. ]3 ^0 g- t; X; P; c
方法1:/ G( l+ l, ]- g8 z
#gzip -dc /mnt/lgx/a1.doc.tar.gz (产生a1.doc.tar文件)
( c6 i9 i: }0 W$ p/ x$ m#tar -xvf /mnt/lgx/a1.doc.tar (产生a1.doc文件)- u- ^- r# h5 Y1 N* r( d
这两次命令也可使用管道功能,把两个命令合二为一:
( ^- \2 ?. |& q2 }  D- i#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf+ R7 h" W' u5 K0 C
方法2:使用tar提供的自动调用gzip解压缩功能  _% j# L$ x! t0 [( g0 a0 j
#tar -xzvf /mnt/lgx/a1.doc.tar.gz  X$ t  p; t; _. O8 M$ F

0 D/ m" b. ~% _: D2 E! N/ c
7 H+ E0 x+ B6 J3 h* \6 e- ^) y. OQ: How to use "mount"
1 D' ?( b; A, s! D: Q1 v9 ]A: mount -t 分区格式 分区位置 加载位置
! S% A+ c, o. e+ z6 ]$ E# c2 O$ r5 |  `
fat32的分区: mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/c/ X/ g8 f/ e2 B3 o! o
CDROM: mount -t iso9600 -o iocharset=gb2312,umask=0,codepage=936 /dev/cdrom /mnt/cdrom# _9 G8 H( s& b8 i
iso文件: mount -o loop /abc.iso /mnt/isodir
, m/ G! Q- a! N" C- |6 F软盘: mount /dev/fd0 /mnt/floppy9 {- i/ F$ G$ K! i: r" g& u4 w
USB闪存: mount /dev/sda1 /mnt/usbdir7 w' b% v* k5 J3 D9 p1 V) O
, e( I  @% P' e! P3 j" B9 o
查看所有: /etc/fstab内容 mount -a
2 W5 F3 B3 A/ M可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.6 a; m% ?! x0 B4 s

' P6 L; Y% P4 ^$ G1 n& Q0 T在Linux下访问硬盘分区的内容,必须先用mount命令将分区加载到Linux的某个目录下才能访问.
- P; H+ J/ l4 V/ ^& ^9 q" v" D先用“fdisk -l”命令(某些版本可能需要用“fdisk -l 硬盘设备名”)查看硬盘分区情况,操作如下:
* m( X* I7 \1 T- q4 O; y3 zExample:+ m3 G+ p1 ]3 `% H, |
mount -t vfat /dev/hda1 /mnt/c(/mnt/c目录必须存在)! i7 x2 G" l- D! e  ?
mount -rw -t vfat /dev/hda1 /mnt/c
: X1 c- A6 F1 q% F/ z
! T: {/ O4 j6 C% |5 V' a3 v& G& _0 I0 ]+ p: D' s9 n
Q: 如何使Windows分区里面的中文文件名(目录名)正确显示?
2 h  }) ~) C3 l) u- P/ t) qA:用mount命令加载Windows分区后,中文常显示为“?”号.这是因为发行版自带的内核默认用ISO-8859编码
4 p, Z+ U) _) p" _4 Z5 T来处理加载上的Windows分区文件(目录)名,只能处理单字节的英文字体而无法显示双字节的中文字体.
& }# ~. ~$ Q. C7 a, I* R- ~$ @" Q! X$ @要正确显示,可以用下面的代码加载Windows分区:2 v5 ]$ h, {* B$ N! I# u$ g% K0 D

/ J' |0 {' c' I$ mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/c
7 T4 Y) I0 Y% X& \( h" f8 }
! F8 Y# B1 s/ \  {/ E$ X( m) ?; a  这个命令能让内核以cp936编码处理Windows分区的文件(目录)名,从而正确显示中文文件(目录)名.  W7 t; R& d+ o6 ~$ h
  
3 R& n3 K$ m0 Y7 r% V. h还有一个“一劳永逸”的方法,即重新配置内核,在“File systems”-“Native Language Support”-“Default NLS Option”
7 z9 i* p! ?  w8 }7 d+ O里填入cp936.重新编译内核后,无需加上-o iocharset=cp936参数也能正确显示.
0 T/ }" a# o$ |5 i+ G. U/ ~/ y. M& i/ M' w" }5 p0 }2 Z0 y

7 _% g' j' P* I1 yQ: 如何使用-rw参数加载Windows分区后,只有root用户能够读写,普通用户还是只能读、不能写?. p6 t* }. p- H" S& ~, Y
A:直接用mount -rw加载的Windows分区,所有文件对普通用户都只有读权限而没有写权限(但root用户有写权限).要想让
5 X; L9 {& ^0 [. d5 j+ s4 Z* Z$ u普通用户也能读写,可在mount命令中加上umask=000参数:
+ H) Z2 k+ p2 S, H4 z3 b6 n$ mount -rw -t vfat -o umask=000,iocharset=cp936 /dev/hda1 /mnt/c& l4 O" T/ g7 f5 X" K
$ a8 u* L  N  G* D4 A  r. ]
+ o/ m6 V9 r0 W- k4 K
Q: 不编译内核,How to mount ntfs partition ?4 }5 l# s1 [6 F" K5 b1 i
A:& j' y2 e. D* `8 a' j' I- \
1. 上google.com搜索并下载 kernel-ntfs-xxx.rpm
: C1 t/ U5 u+ U2 I' S1 k(xxx means linux kernel name: uname -a)- ]$ n" d, A- F  |% x  w2 v$ b; b
2. rpm -ivh kernel-ntfs-2.4.21-15.i686.rpm
0 d9 k' ?& ]3 t) V1 c3. mkdir /mnt/c& ^: R; ~! G6 b
4. mount -t ntfs /dev/hda1 /mnt/c8 \% F) X+ a; B! Z; H
; [* h6 Z4 m8 X/ S5 l9 f5 B
Read only: http://linux-ntfs.sourceforge.net/% Z# Q, P% J6 p- F% t3 X7 Z
Read/Write: http://www.jankratochvil.net/project/captive& e( v: C$ Y7 a  E3 H% w
3 V- ^" S' V# a
0 O7 @! a7 ~( F* ?  @9 A  d
Q: mount局域网上其他windows机器共享出的目录6 |% U% |  B* X  `# v  K
A: mount -t smbfs -o username=guest,password=guest //machine/path localpath; D3 a3 l/ r. f2 ^; i+ J
6 J4 V2 @4 n/ s( x' F7 u; {

! P6 f+ b5 u5 q  A2 x' d+ \1 LQ: 在vmware的LINUX中使用本地硬盘的FAT分区 ?
; t/ Z, y! x5 h. G# @
: V) \8 d; n% K- N7 u$ ~4 \0 LA: 将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上.可以将如下的行放到/etc/fstab中:8 p! t, X+ k0 D6 J  y
//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,. s! S. U1 C( t( E; z! A! [
codepage=936,iocharest=gb2312 0 0
5 y1 x0 U, I* `1 p! G4 P; X0 B! @& J0 |. z
参数:
0 \8 n! u( M% K: B  x; Rwin_ip是你的windows的IP地址;6 g! r9 ^$ M: I- S: b
D$是你的windows里面共享的D盘的共享名;
! K8 ?+ L  m3 c' Y/mnt/d是要将该分区mount到linux的目录;
" }9 b$ f4 s/ O8 ywin_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码.; g: E$ a$ R0 o
. |4 X& R3 X7 _. _0 J7 W
如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区.! v( [' C. b( t9 x% ]. v  K( T
; a  e' K+ L/ W8 b7 G3 V" h9 U
Example:
" G/ L; m$ j, ]8 ?$ L, [, r//xxx.xxx.xxx.xxx/C$ /mnt/C smbfs defaults,auto,username=xxx,password=xxxx,
* z$ q% x4 F, c: x+ u( Gcodepage=936,iocharset=gb2312 0 0
# j. V0 `# }6 h5 L1 |3 }, i+ c: y3 m, U
1 S  |$ F# f) x# J
Q: /etc/fastab! N" y1 I& U1 r/ b/ f6 @
A:
9 G+ U1 K( z; L! P2 t7 P4 _4 Z. g' @0 u- J+ {6 }" W! M% n0 q' K
1. fstab文件的作用
$ R' A; f* @5 Y0 _" Q文件/etc/fstab存放的是系统中的文件系统信息.当正确的设置了该文件,则可以通过$ a& i0 L  \" k" Z4 _& H3 t2 V* l
"mount /directoryname"命令来加载一个文件系统,每种文件系统都对应一个独立的行,每行
: E, R9 n8 u: ]. M中的字段都有空格或tab键分开.同时fsck、mount、umount的等命令都利用该程序.
+ J7 \: `/ C) @. @! t& J" @7 e1 f% B
2. fstab文件格式% J. w  B0 l' L4 q
下面是/etc/fatab文件的一个示例行:
: D% ]! _1 d4 X& U% tfs_spec fs_file fs_type fs_options fs_dump fs_pass /dev/hda1 / ext2 defaults 1 1
- [  s# a/ V7 G/ ^$ \
/ N( e% h) t4 c0 N8 efs_spec - 该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来8 A# ~7 q8 K' H( H7 ]; o
说:IDE设备一般描述为/dev/hdaXN,X是IDE设备通道(a, b, or c),N代表分区号;SCSI设备一描述
1 F7 U$ V' J- g3 \: l$ y为/dev/sdaXN.对于NFS情况,格式一般为: hostname.domainname,例如:`knuth.aeb.nl:/.
 楼主| 发表于 2006-11-7 14:15:33 | 显示全部楼层 来自: 中国陕西西安
对于procfs,使用`proc来定义.7 W. N' |9 F9 F$ i# n
6 Y9 x" q5 m+ _' x: f: G9 I) F
fs_file - 该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名
* x+ \' {' A: u. w- H9 J  r包含空格的情况,用40来表示空格.
% ]  o* j4 q% S
" B7 \6 `3 z& g) Kfs_type - 定义了该设备上的文件系统,一般常见的文件类型为ext2 (Linux设备的常用文件类型)、$ B+ T; I" l' I
vfat(Windows系统的fat32格式)、NTFS、iso9600等.9 x  i" ?2 X$ a" ^

6 e% B) W# _1 B: L2 Z& U( dfs_options - 指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来.% i1 `& y7 m' N$ I8 M8 r" w8 w
对于大多数系统使用"defaults"就可以满足需要.其他常见的选项包括:
, x9 ^5 d* m- I( _+ d, X) n- V0 \
( q3 M5 _4 W3 {' @ro 以只读模式加载该文件系统
; w) F' U2 e3 M7 L7 d- }7 M  v1 Y/ [! m& {
sync 不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是却
( r3 }5 K0 V7 @% g; N; w- B降低了计算机速度
  W6 E& ]5 b4 @8 W4 Q) t4 B0 n% O* @7 [" q% a& L9 D
user 允许普通用户加载该文件系统6 s' L) ?1 m+ [5 d7 K/ k
quota 强制在该文件系统上进行磁盘定额限制: G) B+ N0 O! A, f
noauto 不再使用mount -a命令(例如系统启动时)加载该文件系统
9 W# ^6 W; I7 n1 V5 k: j( d
3 t7 u3 }8 ]* W, N" j1 ?fs_dump - 该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设) u6 X6 q3 G; h# a
置该字段为06 s7 N/ ]  L' }3 F8 k

  ^0 s" o( R* P# N5 ofs_pass - 该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字( D. v( z3 N. S2 N
段的值应该为1,其他文件系统应该为2.若该文件系统无需在启动时扫描则设置该字段为0
: [( J5 |' T4 D/ j" x2 Q6 e
% l; ?! H9 g( \$ b2 B' t( h5 E3. 示例文件6 p' w, C6 _0 N$ e: N
# /etc/fstab
" w* k- G0 [# W& r7 t$ E3 v/dev/hda9 swap swap defaults 0 0
/ F' P3 g- b& y" x/dev/hda1 / ext2 defaults 1 1
5 j' s) `/ {6 y  _+ V) {) K# j/dev/hda5 /home ext2 defaults 1 1+ }! Y* ?) R3 r
/dev/hda6 /usr ext2 defaults 1 1- N- Z6 U, ?$ F8 z
/dev/hda7 /usr/local ext2 defaults 1 1
! l6 I/ Z7 r! F8 a& V& Q# `2 O/dev/hda8 /var ext2 defaults 1 1; l* r( d" L1 y7 Y7 U
/dev/hdb /cdrom iso9660 noauto,user 0 0
6 g- h' G; x4 ^* Y0 k& X+ F  {! D4 Lnone /proc proc defaults 0 0
" z/ p8 H8 Q4 c9 {# lnone /dev/pts devpts gid=5,mode=620 0 0
5 m! X, T$ t5 E3 }% @- S6 M6 d( @# `% U4 R4 u1 p: ]

6 x% [$ X/ _8 h, Q3 pQ: FSTAB 最后的配置项里边最后两个数字是什么意思- y  `3 M+ O  @7 ]: O
A: 第一个叫fs_freq,用来决定哪一个文件系统需要执行dump操作,0就是不需要;
# @1 x1 f4 K* x, V' w0 n) q第二个叫fs_passno,是系统重启时fsck程序检测磁盘的顺序号
2 x' I: s. W: _1 是root文件系统,2 是别的文件系统.fsck按序号检测磁盘,0表示该文件系统不被检测
( L; ]# K# q( `2 U8 g/ N) t% F
1 g8 ]$ T4 d. Sdump 执行ext2的文件系统的备份操作
, f  |- @/ P! H9 A/ ]$ ]9 D5 Efsck 检测和修复文件系统
7 a+ I. x8 x" a6 Z0 n% z' B/ P/ q) |! v: f5 K& U& d

5 H2 D+ _& E0 [& S1 K% q. l5 B7 oQ: 如何临时增加交换空间?
' @& u; l; j& H7 a5 LA:0 l  G6 j/ m# H9 l0 M. {$ {
1. 产生一个64M的空文件
0 i7 {; \$ B2 |. m+ z#dd if=/dev/zero of=/swapfile bs=1024 count=65536  ^  X/ K9 z8 e8 J0 Z
2. 初始化该文件为交换文件:
5 t: `$ o9 U, j3 \- }1 ?mkswap /swapfile 655364 ^2 n  w: e/ B
sync5 E( h9 w9 q* H, M1 q5 Z, ?
3. 激活这个交换文件:
1 n' h, F( u- L( f% p3 J8 |; f& wswapon /swapfile) D7 I* b+ T+ t- G" p, O
. c# `2 p$ S7 T8 D( V, T
) |( N% [& l. R$ U- J
三. Case' _9 ~: K  s* C6 V* V
' }4 h& v" O1 {1 U9 |
Q: UNIX系统下查看内存+ I4 t! S3 e! g/ z

7 p+ N  o/ |  O1 z0 w+ wLINUX: free
" r, Q' [& O8 E1 U7 MHP-UX: swapinfo -tm4 U$ v# }/ n- \! U
Solaris: prtconf |grep -i mem
2 n  V. z. ^; n# Q* j' W# xAIX:7 u6 a" r# d* t% C( Z: B
lsdev -C|grep mem! l' ]- n6 v# g8 m# J
lsattr -EL mem0# @& q  a, R* f, x. I8 s
size 2048 Total amount of physical memory in Mbytes False! b# U7 x& ]3 f( a
goodsize 2048 Amount of usable physical memory in Mbytes False
3 t8 B' p& }0 F+ \( N) }, W+ y( L( G6 V- ~6 i, @
2 s. {2 L# P7 c) C% w
Q: How to enable disk quota for user ?0 K+ ]1 {9 w  Q  X% ?8 k; k- T' J
8 M. Z4 D1 s1 a6 l0 D8 H
A:首先,将要设置磁盘限额的分区,按以下格式修改/etc/fstab 文件:
% t7 t/ n" u  v/ \. y; E( ]0 U
: z1 [% z1 E* n( Z- U. ]0 Z/dev/hda2 /home ext2 defaults,usrquota 1 22 V$ q4 v9 e  G1 ]* P

, h. y- V, r9 b/ @. c" ?其次,在要设置磁盘限额的分区目录下创建空文件 quota.user:
/ s* P+ R) L# c* E& Q7 k5 M9 z; D#touch /home/quota.user #chmod 600 /home/quota.user# z& q0 h! B+ B3 }" j/ t4 K$ a
% n) E! U) \, p. O9 J* q- ?
重启系统后,可以使用edquota -u 用户名来设置.
( N! [4 y$ H3 H8 j* @
1 V! v; U# P7 s3 o' i7 c
" d& ^2 |; U; I  HQ: How to 删除文件大小为零的文件
  o& F* y. I9 g& C: hA: rm -i `find ./ -size 0`4 P+ _! e) K! x+ {) p
find ./ -size 0 -exec rm {} ;  k# v5 ?( ~! o/ T( c, v
! a; k& k( K( {
find ./ -size 0 | xargs rm -f &
9 W4 _# j1 c4 j; Y+ O
: o1 w2 B1 U7 |for file in * #自己定义需要删除的文件类型
! l! w4 u4 V7 Z2 b  K& \6 a8 H& Wdo; T7 k/ ^9 E# J  i" c/ [
if [ ! -s ${file} ]
  a( A1 C2 G6 q7 b. b6 e7 ithen
2 ~5 l& i4 A) \; X  Qrm ${file}; @; `9 Q1 p+ F6 V% d
echo "rm $file Success!"% b0 x8 ?+ I, r1 Z1 C
fi
# P$ @: f. w" }! H) h( u) ?done
; [" ~6 Z/ i/ [; n
. W; K0 V& b  U* R+ q; `, Z8 J7 ~3 l+ F' b
Q: 查看系统信息
) G! M  G* n$ [% @A: cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)& L- S: n( |! p. e/ e6 |5 S. C5 P4 ?
cat /proc/interrupts - 中断
1 r9 V) v$ d6 B) J1 ocat /proc/ioports - 设备IO端口$ T" T( P9 r5 P" Y1 x. C1 y
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)
" F& G. C# ], N/ g) F/ ocat /proc/partitions - 所有设备的所有分区# o4 q6 h2 E) Z$ b$ f
cat /proc/pci - PCI设备的信息
, _; f% L1 O5 J2 N$ Ycat /proc/swaps - 所有Swap分区的信息: m" E! Q( i/ I: P
cat /proc/version - Linux的版本号 相当于 uname -r& y5 B: V# z4 T

/ o( r/ S$ e2 K/ z; {% ~0 x  X; Z0 I9 j+ I1 R# i% T1 y9 o
Q: 修改系统时间5 T, o, V! B% Q  i
A: date -s “2003-04-14 cst”,cst指时区,时间设定用date -s 18:10/ P/ C- b$ N# |6 d- d1 N1 ~7 ^+ t( O
修改后执行clock -w 写到CMOS6 }: i4 D# F! p1 K, _* |/ ^
hwclock --systohc
, D0 o8 k1 U7 b. N# \
6 Q3 y$ D' [) ^+ H. s
' O9 W9 }- u; B5 {: r: WQ: xwindow下如何截屏
9 Z) R& V) R0 z+ \+ dA: Ksnapshot或者gimp
( E) D0 q3 z0 E7 Y! r* F: x, A
/ D) o. ~' L. }6 d+ R+ ]7 |! i" e& j! E5 W# A
Q: Redhat linux中播放mp3文件2 U+ h5 p0 g' v! k- W8 |" v8 D
A: 原带的xmms不能播放MP3(无声),要安装一个RPM包:rpm -ivh xmms-mp3-1.2.7-13.p.i386.rpm.. I) @& `9 z' M  A5 {
6 M7 H0 x4 x# v3 q% `
打开xmms,ctl-p,在font栏中先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字体
% u8 l4 p% x9 H$ j6 T: r* B6 T即可显示中文歌曲名.在音频输出插件中选择 "开放音频系统驱动程序 1.2.7 [lioOSS.so],即可
& l8 ]/ X7 o) L正常播放MP3文件.
8 |5 ~  p/ {4 R% d4 T) D7 _5 V# Y" z! D5 I; w
! r( x0 Y( g, S/ r
Q: linux下播放flash动画! B, X5 ?' i% O! q1 J
A: linux下播放flash动画用这个东西,不会造成浏览器的关闭(其他的插件不好用)
) S- v4 k/ `: k
  e- [$ e  i+ i; ?首先下载flash播放动画在linux的插件1 Q1 B  M1 j2 [
1. http://www.collaborium.org/onsit ... /flash_linux.tar.gz
/ i1 i+ v5 L. a" a& j+ G/ x5 ~# z2. tar zxvf flash_linux.tar.gz9 x  j$ \+ U. e: G# q' I1 S' J: \+ p
& _/ s# D/ F3 e3 s% U5 x
3. 打开包之后,会看到Linux文件夹
* C5 L4 F5 B# u5 A( o% n/ A4 ~6 n在linux文件颊里有两个文件libflashplayer.so 和shockwaveflash.class,把这两个文件拷贝
! B) ^$ [9 U- K$ w到你的浏览器里的插件里(浏览器不一样,插件的位置可能也不一样)
5 s- Q4 R# H; c" Q: g/ R6 T/usr/lib/mozilla-1.0.1/plugins,就可以了' q$ s/ e5 t( n  b; j) B# X

8 H* F9 D) Y# t( Z* T- D) u- k' L; c  q5 W
Q: How to make iso file using "dd" command ?
' M! k$ H/ I% Y7 Q2 r' \7 T# lA: dd if=/dev/cdrom of=/tmp/aaa.iso8 y7 N* C# `* R" f! a9 V

. s2 e/ y+ ]7 i/ A6 n$ g+ m1 l' v# C. L4 n  Z
Q: 用户的crontab在哪里
2 F$ b( ^) f% l& ^3 ?A: /var/spool/cron/下以用户名命名的文件$ N& G' b9 C  s2 h$ }

# X. J( A" o8 }" a7 q7 t, x9 Z% e0 d* M% h# ~3 {; W
Q: 如何清空一个文件8 W, a$ {. f# @! X9 D- }
A: > filename
: o. ^! l9 t( w; M& Z' \2 V% c9 c6 }* K
+ Z. M$ ~" y& s0 I) Q4 Y. N) A+ b9 n
Q: 如何在图形界面和控制台(字符界面)之间来回切换(bjchenxu)+ n3 h: [# W7 Z$ R) g% u
a.图形界面到控制台:Ctr+Alt+Fn(n=1,2,3,4,5,6).# e" {, P% x% D+ F) A; Q( X
b.各控制台之间切换:Alt+Fn(n=1,2,3,4,5,6).! \6 A3 M2 k# Q8 t- W3 ^

' C2 _+ ^0 C8 ~) x* mc.控制台到图形:Alt+F7
( F. X. ^8 [/ d4 `! M. w6 W) C1 k& v8 E

, a- s  W" a" y# q' k( U8 C! o! RQ: linux中刻录iso的方法
4 b/ O# B/ J* E. a  L+ x# B; V0 [A1: 使用xcdroast,选择制作光碟,选择ISO文件,刻录!
9 m  m! C" t+ x) u! j参见http://www.xcdroast.org/xcdr098/faq-a15.html#17) j- _% T" ?/ n  d1 Z

; N9 |3 |/ ?9 Q7 q. ~A2: 方法二:找刻录机的命令:; {1 X$ F3 v7 A
cdrecord --scanbus. x2 ~+ A: [" m. ~

+ e# X( t1 J$ K; j输出结果为:
; ?4 P! c- c" _8 S9 i( p- I0,0,0 0) 'ATAPI ' 'CD-R/RW 8X4X32 ' '5.EZ' Removable CD-ROM  a5 p8 ]/ ?1 v

' E! \# k% Z! P3 ^8 a- o刻录的命令:: `5 j- S3 d9 t4 y2 W
cdrecord -v speed=8 dev=0,0,0 hutuworm.iso
- C' q) l: s! C3 W( B0 y* [
& U5 g4 N9 C, \$ p( l( a6 B+ P1 r. i  H) K6 v
Q: 如何起多个X
1 U. f5 h5 }9 oA: startx默认以display :0.0起第一个X,通过传递参数给Xserver可以起多个X:
* m4 F- z( U* ^: u* h9 U; P# startx -- :1.0
# _8 F; K% k# w/ e  E) C3 ^# startx -- :2.0
" y9 @9 c5 v- A1 q: h...
, `. X1 a5 U# C+ G% F) a然后用Ctrl-Alt-F7/F8...切换.
% J' N2 _+ U0 P8 N9 s' u( Q- N! u8 q( i

* J" _# Z+ T8 f/ VQ: 让一个程序在退出登陆后继续运行
  J# J1 ~* b) G7 PA: # <cmd>
- z7 K: p( M$ T- S+ q5 K4 V( i2 ?" K# disown& ^6 E9 g1 _5 W1 P, [8 p/ Z/ ?  U
or:9 Q9 c3 |$ _" Z+ ~
nohup command &0 E1 T, j0 |# O+ z9 ?) L

' |7 I% V/ J* p% y/ O
% K" n& H( o" G# u, I5 I1 UQ: redhat 8.0上msn和qq
6 W% p$ @( B3 N  ^. ~; R% s4 O/ K- |A:
$ S" O1 |; X6 C& p+ i下载Gaim 0.58版:& ]  f% g8 r" d4 h+ {
gaim-0.58-2.i386.rpm; Y4 O+ u9 M5 h) V, v9 s) n' {7 u
. H) Q; `4 M$ }- B2 l
下载QQ插件 for gcc2.9版:! D+ I3 o! u9 S% ~& j
libqq-0.0.3-ft-0.58-gcc296.so.gz
% A6 q5 i! c. y% V- K. ~% B
# _& t4 i/ G3 Q# B- f% @  y- d将下载的文件放入/temp目录,然后将系统中已有的Gaim删除,即在终端仿真器中键入命令:  f+ u- ]. e, y, H. M9 q, t- [
rpm -e gaim.
+ \8 ~: F- Q* ~8 K
7 G5 F9 \6 [: f1 R+ q2 ]4 b开始安装- J- u; x( O, N' s9 u: [
打开终端仿真器,继续执行下列命令安装Gaim 0.58版,即:) A6 {% x. q5 {. y
cd /temp          (进入temp目录)/ r( m9 t6 Z! w
rpm -ivh gaim-0.58-2.i386.rpm (安装软件)
- ^3 m3 M& T* @当安装成功后,你就可以在GNOME或KDE桌面建立Gaim图标了.
8 l) l6 n6 E: k1 p% h# Y! o8 ~1 K9 f
继续安装QQ插件,即键入命令:
5 `" q. a2 M% igunzip libqq-0.0.3-ft-0.58-gcc296.so.gz (解压缩文件)
% y; v( y' K4 l4 j6 y8 R; E: W+ }cp libqq-0.0.3-ft-0.58-gcc296.so /usr/lib/gaim (复制插件到gaim库目录中)
0 f% i' r$ f. ~. u8 u" P# z" K4 o+ F- k' y2 O2 Z$ Z
软件设置
" W8 D7 |, z$ `1 j. }首次启动Gaim 0.85版时,会出现的登录界面.先选择“插件”,在插件对话框中点击“加载”,9 D# M% C! [. t7 A7 `
分别将libmsn.so和libqq-0.0.3-ft-0.58- gcc296.so文件装入,确认后关闭.然后再选择$ g' `6 i7 N+ {4 v/ r  P$ _
“所有帐号”,在出现的帐号编辑器中继续点击“增加”,当出现的修改帐号页面时,我们就
+ I; j5 a: l9 t/ Y# u; J可以输入自己的QQ或MSN号了,登录名填写QQ号码或MSN邮箱,密码填写对应的QQ或MSN密码,
; j3 J1 l1 W# l7 i8 ^  fAlias填写自己的昵称,协议选择相应的QQ或MSN,其他的设置按默认的即可.& m4 Y' B* e/ ?6 x9 t5 A: K8 m7 y
当全部设置完成后就可以登录使用了.; k5 r; r: S' {: A
3 p# C0 L: ]) l7 [  _2 S
由于MS对msn的协议经常升级,导致linux上的gaim和msn插件必须升级,目前尚无万无一失6 |/ W  E/ U& [- X+ Q8 m; v
的解决方案,请见谅.% X% }2 N: T6 C8 {1 v

  w8 \( P5 p, I/ p
& v. Q5 ]1 }7 A3 ?; l+ [( yQ: 让linux自动同步时间
* W# k$ @5 z& d9 v( R( M! ~A: vi /etc/crontab
# z( k* Y7 `6 a/ o7 x* L. {加上一句:- d& j& b& k8 u8 _
00 0 1 * * root rdate -s time.nist.gov
" [: E2 S4 Y0 G4 u0 P, O) m8 U2 b7 n+ Y5 C

- p% \$ ]- m9 X& Y. i* UQ: 怎样安装中文字体?
. \! [4 W- ~1 n4 T. Z& @A:
/ h  k( {- B0 n1 T1 l( }3 y7 v先下载 http://freshair.netchina.com.cn/~George/sm.sh
! o4 ~4 s( I  e( ^8 k1 ]6 n8 m3 l(参考文献: http://www.linuxeden.com/edu/doctext.php?docid=2679)
' D- o, J% W4 }* V3 ^$ c: s$ v  C4 s* |  B+ J3 g) z
SimSun18030.ttc在微软网站可下载:http://www.microsoft.com/china/windows2000/downloads/18030.asp
. d: Z; o' n4 c' ]2 R2 w9 x% l5 y8 W$ ~8 E# s6 O
 它是个msi文件,在 mswindows中安装用的,装好后在windows目录下的fonts# K5 P3 R1 q; K
目录里面就可以找到它.把simsun.ttc,SimSun18030.ttc,tahoma.ttf,tahomabd.ttf' e  ^% U5 x' F. t6 {
拷贝到/usr/local/temp,然后下载的shell文件也放到这个目录里,然后打开终端
1 k. t% b2 [0 r
$ B% z, h8 ^9 h3 Rcd /usr/local/temp' r/ L  ^: V( L& v' ?9 s, k& J0 |# O
chmod 755 sm.sh
6 K$ w. _7 S5 t: k) B* S, v./sm.sh
- O& E. t' g; Q& G0 x
- C8 Z) _0 d, F# G4 s; B6 H/ R9 n! d/ e. E3 R
Q: Linux下如何防止某个关键文件被修改?+ I" l7 o) l5 y1 W
A: 在linux下,有些配置文件是不允许任何人包括root修改的,为了防止被误删除或修改,4 ~" L" y8 g: c) V) q3 i2 V
可以设定该文件的"不可修改位(immutable)"." t/ S+ T6 k6 d& O3 C. F- x

2 ]& q4 K$ o2 [- v例如:( F' j# U# b  o0 V
  chattr +i /etc/fstab6 m6 }' k- I/ c3 A% T
  如果需要修改文件则:( d' S( f4 f* @$ R
  chattr -i /etc/fstab
6 ]6 h0 w+ I8 h$ b3 }8 s9 s  以后再修改文件.# p* S* b! q+ J8 j' K, t' P

, d( x; ]0 X" s# P# N" N' _) a3 x+ s3 r- C
Q: Linux下如何设置用户密码过期时间# b: L: T2 B4 o/ l/ ?4 i. e5 v: @
A: 设置某个用户的密码过期时间可以用usermod -e来设置,如果要统一设置用户的密码过期时间,
6 P' L2 b& m: ]: x( {% ?: s那么就要修改/etc/login.defs里面的PASS_MAX_DAYS,比如修改所有用户的密码过期时间是30天:. t# ~* L$ A$ s8 Q( c6 H
PASS_MAX_DAYS 30 如果这个值是99999,那么表示密码永不过期
" j& v- t7 A: H9 J; [) G/ H& b( q" T, w7 H4 {, {/ e5 e, o
+ e# b) P2 C/ F9 ?$ t
Q: /proc/sys/sem中每项代表什么意思?" U. \, y6 l+ m2 [6 z
A:; D/ I1 ^5 d; r! l0 q. X
Example: 250 32000 32 128
" m) K0 h& L' s  z* R8 R这4个参数依次为:- g2 }: [3 v' n4 {3 ~
SEMMSL(每个用户拥有信号量最大数量)+ u1 z; u* R1 U" Q: O2 p" ^  T. Z
SEMMNS(系统信号量最大数量)
$ e6 D! l$ j' y0 y: ^2 E3 s' y  _SEMOPM(每次semop系统调用操作数)
, |( I7 N' w* hSEMMNI(系统信号量集最大数量)4 ]8 G2 a; Z2 b  ^8 [6 k! q

. L% b( _, }0 V8 S) U" F) I* OQ: 怎样开启硬盘DMA支持- b% B# s7 e6 X: r
A: /etc/rc.d/rc.local 加入一行/sbin/hdparm -d1 -c3 -m16 /dev/hda$ o7 R$ y+ W# a5 E
如果您的硬盘支持 ATA33 可以加上 -X66 这个参数,ATA66是 -X68.
  G$ m5 w0 U) l& R- w+ q" j4 L比如ATA66就是:/sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda
0 v" S' V9 z5 Y. x我们可以用 hdparm -Tt /dev/hda测试加入前和加入后的效果.
( F: e/ [2 C& D1 ~以上测试注意有可能带来数据的灾难问题,请不要随意使用.
5 j8 b0 ^1 [# X7 _4 I5 w0 J, Q
8 p6 z; Y4 ^7 c7 N# P& H1 A' yLinux下也可以使用32Bit I/O和DMA.
/ Q4 m" u1 i# H- U; r使用/sbin/hdparm -c1 /dev/hda(hdb,hdc..)打开32Bit传输模式,! w, @* D) v% u2 M* u' P" u
使用/sbin/hdparm -d1 /dev/hda(hdb,hdc...) 打开DMA.2 l7 m9 G- K: f" Y9 g
最后使用/sbin/hdparm -k1 /dev/hda 以使硬盘在Reset之后保持上面的设定,
, u* u. W6 |+ Q/ Z2 p  X6 E% n这么一来,硬盘读写速度应该可以提高一倍以上.
% B& d9 ~# q& A0 Q/ n
0 D- O" Y- v# v! N: GQ: 如何安装声卡?+ K. W3 G( q9 g' t' G
A: 在字符模式下运行sndconfig或setup,如果这样不还不行的话,请下载( ]( [* R3 ]0 ^2 {# D4 o
声卡配置工具alsa(alsa工具包包括alsa-driver-0.5.10b.tar.bz2,
2 v! H: Q( o( i; R3 q' Malsa-lib-0.5.10b.tar.bz2,alsa-utils-0.5.10b.tar.bz2,0.5.10是版本号.)
2 ^" Y: u6 `8 Z按照drive、lib和util的顺序安装.也可以下载oss工具包来配置你的声卡.9 ?3 f* D4 P  b- e

4 j3 S" ^" X4 l$ V# M; Noss安装指南:http://www.linuxeden.com/edu/doctext.php?docid=1974
9 e2 t, z5 N! v- {8 z+ b4 Y% ^9 H5 T3 ]$ e
ALSA安装配置AC 97声卡:http://www.linuxeden.com/edu/doctext.php?docid=1251
) E3 }' F! r8 F1 T) \$ ^/ i
% i3 m) T. ^, M# A+ @" y! ~4 k1 Q9 R* B6 Y
Q: How to use "XHOST" ?( t( L) g. C0 B1 A! Y% J+ }
xhost 是用来控制X server访问权限的. 通常当你从hostA登陆到hostB上运行hostB3 r5 r. m/ y) b
上的应用程序时,做为应用程序来说,hostA是client,但是作为图形来说,是在hostA上! r- o- _8 U4 A* T
显示的,需要使用hostA的Xserver,所以hostA是 server.因此在登陆到hostB前,需要; g- V) u9 U! ~, \! }4 L2 W
在hostA上运行xhost + 来使其它用户能够访问hostA的Xserver.
6 V+ r7 [+ T# ?" e+ @3 ^4 ~% J( L% g3 d: C
xhost + 是使所有用户都能访问Xserver.
4 v1 M4 P/ [5 {2 x; kxhost + ip使ip上的用户能够访问Xserver.
; f  D0 l" s! e- txhost + nis:user@domain使domain上的nis用户user能够访问
  b7 J) d1 N/ U1 A& M" Bxhost + inet:user@domain使domain上的inet用户能够访问.
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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