和平社区

 找回密码
 注 册

QQ登录

只需一步,快速开始

楼主: 懿zi

常见问题的解决方法 之 系统应用全攻略

[复制链接]
 楼主| 发表于 2007-4-20 04:24:09 | 显示全部楼层
Linux 指令大全<br/><br/>名称:cat <br/>使用权限:所有使用者 <br/>使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName <br/>说明:把档案串连接后传到基本输出(萤幕或加 &gt; fileName 到另一个档案) <br/>参数: <br/>-n 或 --number 由 1 开始对所有输出的行数编号 <br/>-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号 <br/>-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行 <br/>-v 或 --show-nonprinting <br/><br/>范例: <br/>cat -n textfile1 &gt; textfile2 把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里 <br/>cat -b textfile1 textfile2 &gt;&gt; textfile3 把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 <br/><br/>名称 : cd <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : cd [dirName] <br/><br/>说明 : 变换工作目录至 dirName。 其中 dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home directory (也就是刚 login 时所在的目录)。 <br/><br/>另外,"~" 也表示为 home directory 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录。 <br/><br/>范例 : 跳到 /usr/bin/ : <br/>cd /usr/bin <br/><br/>跳到自己的 home directory : <br/>cd ~ <br/><br/>跳到目前目录的上上两层 : <br/>cd ../.. <br/><br/><br/><br/>指令名称 : chmod <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : chmod [-cfvR] [--help] [--version] mode file... <br/><br/>说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。 <br/><br/>把计 : <br/><br/>mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。 <br/>+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。 <br/>r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。 <br/>-c : 若该档案权限确实已经更改,才显示其更改动作 <br/>-f : 若该档案权限无法被更改也不要显示错误讯息 <br/>-v : 显示权限变更的详细资料 <br/>-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更) <br/>--help : 显示辅助说明 <br/>--version : 显示版本 <br/><br/>范例 :将档案 file1.txt 设为所有人皆可读取 : <br/>chmod ugo+r file1.txt <br/><br/>将档案 file1.txt 设为所有人皆可读取 : <br/>chmod a+r file1.txt <br/><br/>将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 : <br/>chmod ug+w,o-w file1.txt file2.txt <br/><br/>将 ex1.py 设定为只有该档案拥有者可以执行 : <br/>chmod u+x ex1.py <br/><br/>将目前目录下的所有档案与子目录皆设为任何人可读取 : <br/>chmod -R a+r * <br/><br/>此外chmod也可以用数字来表示权限如 chmod 777 file <br/>语法为:chmod abc file <br/><br/>其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。 <br/><br/>r=4,w=2,x=1 <br/>若要rwx属性则4+2+1=7; <br/>若要rw-属性则4+2=6; <br/>若要r-x属性则4+1=7。 <br/><br/>范例: <br/>chmod a=rwx file <br/><br/>和 <br/>chmod 777 file <br/><br/>效果相同 <br/>chmod ug=rwx,o=x file <br/><br/>和 <br/>chmod 771 file <br/><br/>效果相同 <br/><br/><br/><br/><br/><br/>若用chmod 4755 filename可使此程式具有root的权限 <br/><br/><br/>指令名称 : chown <br/>使用权限 : root <br/><br/>使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file... <br/><br/>说明 : Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限。 <br/><br/>把计 : <br/><br/>user : 新的档案拥有者的使用者 IDgroup : 新的档案拥有者的使用者群体(group)-c : 若该档案拥有者确实已经更改,才显示其更改动作-f : 若该档案拥有者无法被更改也不要显示错误讯息-h : 只对于连结(link)进行变更,而非该 link 真正指向的档案-v : 显示拥有者变更的详细资料-R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)--help : 显示辅助说明--version : 显示版本 <br/><br/>范例 : <br/>将档案 file1.txt 的拥有者设为 users 群体的使用者 jessie : <br/>chown jessie:users file1.txt <br/><br/>将目前目录下的所有档案与子目录的拥有者皆设为 users 群体的使用者 lamport : <br/>chmod -R lamport:users * <br/><br/><br/>名称:cp <br/>使用权限:所有使用者 <br/><br/>使用方式: <br/><br/>cp [options] source dest <br/>cp [options] source... directory <br/><br/>说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。 <br/><br/>把计? <br/><br/>-a 尽可能将档案状态、权限等资料都照原状予以复制。 <br/>-r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。 <br/>-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。 <br/>范例: <br/>将档案 aaa 复制(已存在),并命名为 bbb : <br/>cp aaa bbb <br/><br/>将所有的C语言程式拷贝至 Finished 子目录中 : <br/>cp *.c Finished <br/><br/><br/><br/>名称:cut <br/><br/>使用权限:所有使用者 <br/><br/>用法:cut -cnum1-num2 filename <br/><br/>说明:显示每行从开头算起 num1 到 num2 的文字。 <br/><br/>范例: <br/><br/>shell&gt;&gt; cat example <br/>test2 <br/>this is test1 <br/>shell&gt;&gt; cut -c0-6 example ## print 开头算起前 6 个字元 <br/>test2 <br/>this i <br/><br/><br/>名称 : find <br/>用法 : find <br/>使用说明 : <br/><br/>将档案系统内符合 expression 的档案列出来。你可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。 <br/><br/>find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression? <br/><br/>expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。 <br/><br/>-mount, -xdev : 只检查和指定目录在同一个档案系统下的档案,避免列出其它档案系统中的档案 <br/>-amin n : 在过去 n 分钟内被读取过 <br/>-anewer file : 比档案 file 更晚被读取过的档案 <br/>-atime n : 在过去 n 天过读取过的档案 <br/>-cmin n : 在过去 n 分钟内被修改过 <br/>-cnewer file :比档案 file 更新的档案 <br/>-ctime n : 在过去 n 天过修改过的档案 <br/>-empty : 空的档案-gid n or -group name : gid 是 n 或是 group 名称是 name <br/>-ipath p, -path p : 路径名称符合 p 的档案,ipath 会忽略大小写 <br/>-name name, -iname name : 档案名称符合 name 的档案。iname 会忽略大小写 <br/>-size n : 档案大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。-type c : 档案类型是 c 的档案。 <br/>d: 目录 <br/>c: 字型装置档案 <br/>b: 区块装置档案 <br/>p: 具名贮列 <br/>f: 一般档案 <br/>l: 符号连结 <br/>s: socket <br/>-pid n : process id 是 n 的档案 <br/><br/>你可以使用 ( ) 将运算式分隔,并使用下列运算。 <br/>exp1 -and exp2 <br/>! expr <br/>-not expr <br/>exp1 -or exp2 <br/>exp1, exp2 <br/>范例: <br/>将目前目录及其子目录下所有延伸档名是 c 的档案列出来。 <br/># find . -name "*.c" <br/><br/><br/>将目前目录其其下子目录中所有一般档案列出 <br/># find . -ftype f <br/><br/><br/>将目前目录及其子目录下所有最近 20 分钟内更新过的档案列出 <br/># find . -ctime -20 <br/><br/><br/><br/>名称:less <br/><br/>使用权限:所有使用者 <br/><br/>使用方式: <br/><br/>less [Option] filename <br/><br/>说明: <br/>less 的作用与 more 十分相似,都可以用来浏览文字档案的内容,不同的是 less 允许使用者往回卷动 <br/>以浏览已经看过的部份,同时因为 less 并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。 <br/><br/><br/>范例: <br/><br/><br/>指令名称 : ln <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : ln [options] source dist,其中 option 的格式为 : <br/><br/>[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}] <br/>[--help] [--version] [--] <br/>说明 : Linux/Unix 档案系统中,有所谓的连结(link),我们可以将其视为档案的别名,而连结又可分为两种 : 硬连结(hard link)与软连结(symbolic link),硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统。 <br/>ln source dist 是产生一个连结(dist)到 source,至于使用硬连结或软链结则由参数决定。 <br/><br/>不论是硬连结或软链结都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。 <br/><br/><br/>-f : 链结时先将与 dist 同档名的档案删除-d : 允许系统管理者硬链结自己的目录-i : 在删除与 dist 同档名的档案时先进行询问-n : 在进行软连结时,将 dist 视为一般的档案-s : 进行软链结(symbolic link)-v : 在连结之前显示其档名-b : 将在链结时会被覆写或删除的档案进行备份-S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾-V METHOD : 指定备份的方式--help : 显示辅助说明--version : 显示版本 <br/>范例 : <br/>将档案 yy 产生一个 symbolic link : zz <br/>ln -s yy zz <br/><br/>将档案 yy 产生一个 hard link : zz <br/>ln yy xx <br/><br/><br/><br/>名称:locate <br/>使用权限:所有使用者 <br/>使用方式: locate [-q] [-d ] [--database=] <br/>locate [-r ] [--regexp=] <br/>locate [-qv] [-o ] [--output=] <br/>locate [-e ] [-f ] &lt;[-l ] [-c] <br/>&lt;[-U ] [-u]&gt; <br/>locate [-Vh] [--version] [--help] <br/>说明: <br/>locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的资料库,之后当寻找时就只需查询这个资料库,而不必实际深入档案系统之中了。 <br/><br/>在一般的 distribution 之中,资料库的建立都被放在 contab 中自动执行。一般使用者在使用时只要用 <br/><br/># locate your_file_name <br/><br/>的型式就可以了。 参数: <br/>-u <br/>-U <br/><br/>建立资料库,-u 会由根目录开始,-U 则可以指定开始的位置。 <br/><br/>-e <br/><br/>将 <br/>排除在寻找的范围之外。 <br/><br/>-l <br/>如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的权限资料。 <br/><br/>-f <br/>将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案放在资料库中。 <br/><br/>-q <br/>安静模式,不会显示任何错误讯息。 <br/><br/>-n <br/>至多显示 个输出。 <br/><br/>-r <br/>使用正规运算式 做寻找的条件。 <br/><br/>-o <br/>指定资料库存的名称。 <br/><br/>-d <br/><br/>指定资料库的路径 <br/><br/>-h <br/>显示辅助讯息 <br/><br/>-v <br/>显示更多的讯息 <br/><br/>-V <br/>显示程式的版本讯息 范例: <br/><br/>locate chdrv : 寻找所有叫 chdrv 的档案 <br/>locate -n 100 a.out : 寻找所有叫 a.out 的档案,但最多只显示 100 个 <br/>locate -u : 建立资料库 <br/><br/><br/>名称 : ls <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : ls [-alrtAFR] [name...] <br/><br/>说明 : 显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录)。 <br/><br/><br/>-a 显示所有档案及目录 (ls内定将档案名或目录名称开头为"."的视为隐藏档,不会列出) <br/>-l 除档案名称外,亦将档案型态、权限、拥有者、档案大小等资讯详细列出 <br/>-r 将档案以相反次序显示(原定依英文字母次序) <br/>-t 将档案依建立时间之先后次序列出 <br/>-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录) <br/>-F 在列出的档案名称后加一符号;例如可执行档则加 "*", 目录则加 "/" <br/>-R 若目录下有档案,则以下之档案亦皆依序列出 <br/><br/>范例: <br/>列出目前工作目录下所有名称是 s 开头的档案,愈新的排愈后面 : <br/>ls -ltr s* <br/><br/>将 /bin 目录以下所有目录及档案详细资料列出 : <br/>ls -lR /bin <br/><br/>列出目前工作目录下所有档案及目录;目录于名称后加 "/", 可执行档于名称后加 "*" : <br/>ls -AF<br/><br/><br/>
 楼主| 发表于 2007-4-20 04:24:48 | 显示全部楼层
名称:more <br/>使用权限:所有使用者 <br/>使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..] <br/>说明:类似 cat ,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。 <br/>参数:-num 一次显示的行数 <br/>-d 提示使用者,在画面下方显示 [Press space to continue, q to quit.] ,如果使用者按错键,则会显示 [Press h for instructions.] 而不是 哔 声 <br/>-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能 <br/>-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上) <br/>-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容 <br/>-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料 <br/>-s 当遇到有连续两行以上的空白行,就代换为一行的空白行 <br/>-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同) <br/>+/ 在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示 <br/>+num 从第 num 行开始显示 <br/>fileNames 欲显示内容的档案,可为复数个数 <br/>范例: <br/>more -s testfile 逐页显示 testfile 之档案内容,如有连续两行以上空白行则以一行空白行显示。 <br/>more +20 testfile 从第 20 行开始显示 testfile 之档案内容。 <br/><br/><br/><br/>名称:mv <br/>使用权限:所有使用者 <br/><br/>使用方式: <br/><br/>mv [options] source dest <br/>mv [options] source... directory <br/>说明:将一个档案移至另一档案,或将数个档案移至另一目录。 <br/>参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。 <br/><br/>范例: <br/><br/>将档案 aaa 更名为 bbb : <br/>mv aaa bbb <br/><br/>将所有的C语言程式移至 Finished 子目录中 : <br/>mv -i *.c <br/><br/><br/><br/>名称:rm <br/>使用权限:所有使用者 <br/><br/>使用方式:rm [options] name... <br/><br/>说明:删除档案及目录。 <br/><br/>把计? <br/><br/>-i 删除前逐一询问确认。 <br/>-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 <br/>-r 将目录及以下之档案亦逐一删除。 <br/>范例: <br/>删除所有C语言程式档;删除前逐一询问确认 : <br/>rm -i *.c <br/><br/>将 Finished 子目录及子目录中所有档案删除 : <br/>rm -r Finished <br/><br/><br/><br/>名称:rmdir <br/>使用权限:于目前目录有适当权限的所有使用者 <br/><br/>使用方式: rmdir [-p] dirName <br/><br/>说明: 删除空的目录。 <br/><br/>参数: -p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。 <br/><br/>范例: <br/><br/>将工作目录下,名为 AAA 的子目录删除 : <br/>rmdir AAA <br/><br/>在工作目录下的 BBB 目录中,删除名为 Test 的子目录。若 Test 删除后,BBB 目录成为空目录,则 BBB 亦予删除。 <br/>rmdir -p BBB/Test <br/><br/><br/><br/>名称:split <br/>使用权限:所有使用者 <br/><br/>使用方式:split [OPTION] [INPUT [PREFIX]] <br/><br/>说明: <br/><br/>将一个档案分割成数个。而从 INPUT 分割输出成固定大小的档案,其档名依序为 PREFIXaa, PREFIXab...;PREFIX 预设值为 `x。若没有 INPUT 档或为 `-,则从标准输入读进资料。 <br/><br/>匡兜? <br/><br/>-b, --bytes=SIZE <br/><br/>SIZE 值为每一输出档案的大小,单位为 byte。 <br/>-C, --line-bytes=SIZE <br/><br/>每一输出档中,单行的最大 byte 数。 <br/>-l, --lines=NUMBER <br/><br/>NUMBER 值为每一输出档的列数大小。 <br/>-NUMBER <br/><br/>与 -l NUMBER 相同。 <br/>--verbose <br/><br/>于每个输出档被开启前,列印出侦错资讯到标准错误输出。 <br/>--help <br/><br/>显示辅助资讯然后离开。 <br/>--version <br/><br/>列出版本资讯然后离开。 <br/>SIZE 可加入单位: b 代表 512, k 代表 1K, m 代表 1 Meg。 <br/><br/>范例: <br/><br/>ostgresSQL 大型资料库备份与回存: <br/><br/>因 Postgres 允许表格大过你系统档案的最大容量,所以要将表格 dump 到单一的档案可能会有问题,使用 split进行档案分割。 <br/><br/><br/>% pg_dump dbname | split -b 1m - filename.dump. <br/><br/><br/><br/>重新载入 <br/><br/><br/>% createdb dbname <br/>% cat filename.dump.* | pgsql dbname <br/><br/><br/><br/>名称:touch <br/>使用权限:所有使用者 <br/><br/>使用方式: <br/>touch [-acfm] <br/>[-r reference-file] [--file=reference-file] <br/>[-t MMDDhhmm[[CC]YY][.ss]] <br/>[-d time] [--date=time] [--time={atime,access,use,mtime,modify}] <br/>[--no-create] [--help] [--version] <br/>file1 [file2 ...] <br/><br/><br/>说明: <br/>touch 指令改变档案的时间记录。 ls -l 可以显示档案的时间记录。 <br/><br/><br/>参数: <br/>a 改变档案的读取时间记录。 <br/>m 改变档案的修改时间记录。 <br/>c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。 <br/>f 不使用,是为了与其他 unix 系统的相容性而保留。 <br/>r 使用参考档的时间记录,与 --file 的效果一样。 <br/>d 设定时间与日期,可以使用各种不同的格式。 <br/>t 设定档案的时间记录,格式与 date 指令相同。 <br/>--no-create 不会建立新档案。 <br/>--help 列出指令格式。 <br/>--version 列出版本讯息。 <br/><br/><br/>范例: <br/><br/><br/>最简单的使用方式,将档案的时候记录改为现在的时间。若档案不存在,系统会建立一个新的档案。 <br/><br/>touch file <br/>touch file1 file2 <br/><br/>将 file 的时间记录改为 5 月 6 日 18 点 3 分,公元两千年。时间的格式可以参考 date 指令,至少需输入 MMDDHHmm ,就是月日时与分。 <br/><br/>touch -c -t 05061803 file <br/>touch -c -t 050618032000 file <br/><br/>将 file 的时间记录改变成与 referencefile 一样。 <br/><br/>touch -r referencefile file <br/><br/>将 file 的时间记录改成 5 月 6 日 18 点 3 分,公元两千年。时间可以使用 am, pm 或是 24 小时的格式,日期可以使用其他格式如 6 May 2000 。 <br/><br/>touch -d "6:03pm" file <br/>touch -d "05/06/2000" file <br/>touch -d "6:03pm 05/06/2000" file <br/>名称 : at <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : at -V [-q queue] [-f file] [-mldbv] TIME <br/><br/>说明 : at 可以让使用者指定在 TIME 这个特定时刻执行某个程式或指令,TIME 的格式是 HH:MM其中的 HH 为小时,MM 为分钟,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 点锺)等口语词。 <br/><br/>如果想要指定超过一天内的时间,则可以用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分钟,DD 是第几日,YY 是指年份。另外,使用者甚至也可以使用像是 now + 时间间隔来弹性指定时间,其中的时间间隔可以是 minutes, hours, days, weeks? <br/><br/>另外,使用者也可指定 today 或 tomorrow 来表示今天或明天。当指定了时间并按下 enter 之后,at 会进入交谈模式并要求输入指令或程式,当你输入完后按下 ctrl+D 即可完成所有动作,至于执行的结果将会寄回你的帐号中。 <br/><br/>把计 : <br/><br/>-V : 印出版本编号 <br/>-q : 使用指定的伫列(Queue)来储存,at 的资料是存放在所谓的 queue 中,使用者可以同时使用多个 queue,而 queue 的编号为 a, b, c... z 以及 A, B, ... Z 共 52 个 <br/>-m : 即使程式/指令执行完成后没有输出结果, 也要寄封信给使用者 <br/>-f file : 读入预先写好的命令档。使用者不一定要使用交谈模式来输入,可以先将所有的指定先写入档案后再一次读入 <br/>-l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l) <br/>-d : 删除指定 (使用者也可以直接使用 atrm 而不用 at -d) <br/>-v : 列出所有已经完成但尚未删除的指定 <br/><br/>例子 : <br/>三天后的下午 5 点锺执行 /bin/ls : <br/>at 5pm + 3 days /bin/ls <br/><br/>三个星期后的下午 5 点锺执行 /bin/ls : <br/>at 5pm + 2 weeks /bin/ls <br/><br/>明天的 17:20 执行 /bin/date : <br/>at 17:20 tomorrow /bin/date <br/><br/>1999 年的最后一天的最后一分钟印出 the end of world ! <br/>at 23:59 12/31/1999 echo the end of world ! <br/><br/><br/><br/><br/>名称:cal <br/><br/>使用权限:所有使用者 <br/><br/>使用方式:cal [-mjy] [month [year]] <br/><br/>说明: <br/><br/>显示日历。若只有一个参数,则代表年份(1-9999),显示该年的年历。年份必须全部写出:``cal 89\ 将不会是显示 1989 年的年历。使用两个参数,则表示月份及年份。若没有参数则显示这个月的月历。 <br/>1752 年 9 月第 3 日起改用西洋新历,因这时大部份的国家都采用新历,有 10 天被去除,所以该月份的月历有些不同。在此之前为西洋旧历。 <br/><br/>匡兜? <br/><br/>-m : 以星期一为每周的第一天方式显示。 <br/>-j : 以凯撒历显示,即以一月一日起的天数显示。 <br/>-y : 显示今年年历。 <br/><br/>范例: <br/><br/>cal : 显示本月的月历。 <br/><br/><br/><br/>[root@mylinux /root]# date <br/>Tue Aug 15 08:00:18 CST 2000 <br/>[root@mylinux /root]# cal <br/>August 2000 <br/>Su Mo Tu We Th Fr Sa <br/>1 2 3 4 5 <br/>6 7 8 9 10 11 12 <br/>13 14 15 16 17 18 19 <br/>20 21 22 23 24 25 26 <br/>27 28 29 30 31 <br/><br/>[root@mylinux /root]# <br/><br/><br/>cal 2001 : 显示公元 2001 年年历。 <br/><br/>[root@mylinux /root]# cal 2001 <br/>2001 <br/><br/>January February March <br/>Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa <br/>1 2 3 4 5 6 1 2 3 1 2 3 <br/>7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10 <br/>14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17 <br/>21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24 <br/>28 29 30 31 25 26 27 28 25 26 27 28 29 30 31 <br/><br/>April May June <br/>Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa <br/>1 2 3 4 5 6 7 1 2 3 4 5 1 2 <br/>8 9 10 11 12 13 14 6 7 8 9 10 11 12 3 4 5 6 7 8 9 <br/>15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 11 12 13 14 15 16 <br/>22 23 24 25 26 27 28 20 21 22 23 24 25 26 17 18 19 20 21 22 23 <br/>29 30 27 28 29 30 31 24 25 26 27 28 29 30 <br/><br/>July August September <br/>Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa <br/>1 2 3 4 5 6 7 1 2 3 4 1 <br/>8 9 10 11 12 13 14 5 6 7 8 9 10 11 2 3 4 5 6 7 8 <br/>15 16 17 18 19 20 21 12 13 14 15 16 17 18 9 10 11 12 13 14 15 <br/>22 23 24 25 26 27 28 19 20 21 22 23 24 25 16 17 18 19 20 21 22 <br/>29 30 31 26 27 28 29 30 31 23 24 25 26 27 28 29 <br/>30 <br/>October November December <br/>Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa <br/>1 2 3 4 5 6 1 2 3 1 <br/>7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8 <br/>14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15 <br/>21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22 <br/>28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29 <br/>30 31 <br/><br/>[root@mylinux /root]# <br/><br/><br/><br/><br/><br/>cal 5 2001 : 显示公元 2001 年 5 月月历。 <br/><br/><br/><br/>[root@mylinux /root]# cal 5 2001 <br/>May 2001 <br/>Su Mo Tu We Th Fr Sa <br/>1 2 3 4 5 <br/>6 7 8 9 10 11 12 <br/>13 14 15 16 17 18 19 <br/>20 21 22 23 24 25 26 <br/>27 28 29 30 31 <br/><br/>[root@mylinux /root]# <br/><br/><br/><br/><br/><br/>cal -m : 以星期一为每周的第一天方式,显示本月的月历。 <br/><br/><br/><br/>[root@mylinux /root]# cal -m <br/>August 2000 <br/>Mo Tu We Th Fr Sa Su <br/>1 2 3 4 5 6 <br/>7 8 9 10 11 12 13 <br/>14 15 16 17 18 19 20 <br/>21 22 23 24 25 26 27 <br/>28 29 30 31 <br/><br/>[root@mylinux /root]# <br/><br/><br/><br/><br/><br/>cal -jy : 以一月一日起的天数显示今年的年历。 <br/><br/><br/><br/>[root@mylinux /root]# cal -jy <br/>2000 <br/><br/>January February <br/>Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat <br/>1 32 33 34 35 36 <br/>2 3 4 5 6 7 8 37 38 39 40 41 42 43 <br/>9 10 11 12 13 14 15 44 45 46 47 48 49 50 <br/>16 17 18 19 20 21 22 51 52 53 54 55 56 57 <br/>23 24 25 26 27 28 29 58 59 60 <br/>30 31 <br/>March April <br/>Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat <br/>61 62 63 64 92 <br/>65 66 67 68 69 70 71 93 94 95 96 97 98 99 <br/>72 73 74 75 76 77 78 100 101 102 103 104 105 106 <br/>79 80 81 82 83 84 85 107 108 109 110 111 112 113 <br/>86 87 88 89 90 91 114 115 116 117 118 119 120 <br/>121 <br/>May June <br/>Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat <br/>122 123 124 125 126 127 153 154 155 <br/>128 129 130 131 132 133 134 156 157 158 159 160 161 162 <br/>135 136 137 138 139 140 141 163 164 165 166 167 168 169 <br/>142 143 144 145 146 147 148 170 171 172 173 174 175 176 <br/>149 150 151 152 177 178 179 180 181 182 <br/><br/>July August <br/>Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat <br/>183 214 215 216 217 218 <br/>184 185 186 187 188 189 190 219 220 221 222 223 224 225 <br/>191 192 193 194 195 196 197 226 227 228 229 230 231 232 <br/>198 199 200 201 202 203 204 233 234 235 236 237 238 239 <br/>205 206 207 208 209 210 211 240 241 242 243 244 <br/>212 213 <br/>September October <br/>Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat <br/>245 246 275 276 277 278 279 280 281 <br/>247 248 249 250 251 252 253 282 283 284 285 286 287 288 <br/>254 255 256 257 258 259 260 289 290 291 292 293 294 295 <br/>261 262 263 264 265 266 267 296 297 298 299 300 301 302 <br/>268 269 270 271 272 273 274 303 304 305 <br/><br/>November December <br/>Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat <br/>306 307 308 309 336 337 <br/>310 311 312 313 314 315 316 338 339 340 341 342 343 344 <br/>317 318 319 320 321 322 323 345 346 347 348 349 350 351 <br/>324 325 326 327 328 329 330 352 353 354 355 356 357 358 <br/>331 332 333 334 335 359 360 361 362 363 364 365 <br/>366<br/><br/>
 楼主| 发表于 2007-4-20 04:25:16 | 显示全部楼层
名称 : crontab <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : <br/><br/>crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e } <br/>说明 : <br/>crontab 是用来让使用者在固定时间或固定间隔执行程式之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的时程表。 <br/><br/>餐数 : <br/><br/>-e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe) <br/>-r : 删除目前的时程表 <br/>-l : 列出目前的时程表 <br/><br/>时程表的格式如下 : <br/>f1 f2 f3 f4 f5 program <br/><br/>其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程式。 <br/>当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程式,其余类推 <br/>当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推 <br/>当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推 <br/>当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其余类推 <br/><br/>使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。 <br/>例子 : <br/><br/>每月每天每小时的第 0 分钟执行一次 /bin/ls : <br/>0 7 * * * /bin/ls <br/><br/>在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 /usr/bin/backup : <br/>0 6-12/3 * 12 * /usr/bin/backup <br/><br/>周一到周五每天下午 5:00 寄一封信给 <a href="mailto:alex@domain.name"><font color="#698cbb">alex@domain.name</font></a> : <br/>0 17 * * 1-5 mail -s "hi" <a href="mailto:alex@domain.name"><font color="#698cbb">alex@domain.name</font></a> &lt; /tmp/maildata <br/><br/>每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha" <br/>20 0-23/2 * * * echo "haha" <br/><br/>注意 : <br/><br/>当程式在你所指定的时间执行后,系统会寄一封信给你,显示该程式执行的内容,若是你不希望收到这样的信,请在每一行空一格之后加上 &gt; /dev/null 2&gt;&amp;1 即可。 <br/><br/>名称 : date <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : <br/><br/>date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]] <br/><br/>说明 : <br/><br/>date 可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下 : <br/><br/>时间方面 : <br/><br/>% : 印出 % <br/>%n : 下一行 <br/>%t : 跳格 <br/>%H : 小时(00..23) <br/>%I : 小时(01..12) <br/>%k : 小时(0..23) <br/>%l : 小时(1..12) <br/>%M : 分钟(00..59) <br/>%p : 显示本地 AM 或 PM <br/>%r : 直接显示时间 (12 小时制,格式为 hh:ss [AP]M) <br/>%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 <br/>%S : 秒(00..61) <br/>%T : 直接显示时间 (24 小时制) <br/>%X : 相当于 %H:%M:%S <br/>%Z : 显示时区 <br/><br/>日期方面 : <br/>%a : 星期几 (Sun..Sat) <br/>%A : 星期几 (Sunday..Saturday) <br/>%b : 月份 (Jan..Dec) <br/>%B : 月份 (January..December) <br/>%c : 直接显示日期与时间 <br/>%d : 日 (01..31) <br/>%D : 直接显示日期 (mm/dd/yy) <br/>%h : 同 %b <br/>%j : 一年中的第几天 (001..366) <br/>%m : 月份 (01..12) <br/>%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形) <br/>%w : 一周中的第几天 (0..6) <br/>%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形) <br/>%x : 直接显示日期 (mm/dd/yy) <br/>%y : 年份的最后两位数字 (00.99) <br/>%Y : 完整年份 (0000..9999) <br/><br/>若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数 <br/>把计 : <br/><br/>-d datestr : 显示 datestr 中所设定的时间 (非系统时间) <br/>--help : 显示辅助讯息 <br/>-s datestr : 将系统时间设为 datestr 中所设定的时间 <br/>-u : 显示目前的格林威治时间 <br/>--version : 显示版本编号 <br/><br/>例子 : <br/>显示时间后跳行,再显示目前日期 : <br/>date +%T%n%D <br/><br/>显示月份与日数 : <br/>date +%B %d <br/><br/>显示日期与设定时间(12:34:56) : <br/>date --date 12:34:56 <br/><br/>注意 : <br/><br/>当你不希望出现无意义的 0 时(比如说 1999/03/07),则可以在标记中插入 - 符号,比如说 date +%-H:%-M:%-S 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4。另外,只有取得权限者(比如说 root)才能设定系统时间。 <br/><br/>当你以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。 <br/><br/><br/>名称 : sleep <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : sleep [--help] [--version] number[smhd] <br/><br/>说明 : sleep 可以用来将目前动作延迟一段时间 <br/><br/>参数说明 : <br/><br/>--help : 显示辅助讯息 <br/>--version : 显示版本编号 <br/>number : 时间长度,后面可接 s、m、h 或 d <br/>其中 s 为秒,m 为 分钟,h 为小时,d 为日数 <br/><br/>例子 : <br/>显示目前时间后延迟 1 分钟,之后再次显示时间 : <br/>date;sleep 1m;date<br/><br/><br/><br/><br/>名称: time <br/>使用权限: 所有使用者 <br/><br/>使用方式: time [options] COMMAND [arguments] <br/><br/>说明: time 指令的用途,在于量测特定指令执行时所需消耗的时间及系统资源等资讯。例如 CPU 时间、记忆体、输入输出等等。需要特别注意的是,部分资讯在 Linux 上显示不出来。这是因为在 Linux 上部分资源的分配函式与 time 指令所预设的方式并不相同,以致于 time 指令无法取得这些资料。 <br/><br/>把计? <br/><br/>-o or --output=FILE <br/>设定结果输出档。这个选项会将 time 的输出写入 所指定的档案中。如果档案已经存在,系统将覆写其内容。 <br/>-a or --append <br/>配合 -o 使用,会将结果写到档案的末端,而不会覆盖掉原来的内容。 <br/>-f FORMAT or --format=FORMAT <br/>以 FORMAT 字串设定显示方式。当这个选项没有被设定的时候,会用系统预设的格式。不过你可以用环境变数 time 来设定这个格式,如此一来就不必每次登入系统都要设定一次。 <br/>一般设定上,你可以用 <br/>\t <br/>表示跳栏,或者是用 <br/>\n <br/>表示换行。每一项资料要用 % 做为前导。如果要在字串中使用百分比符号,就用 。(学过 C 语言的人大概会觉得很熟悉) <br/>time 指令可以显示的资源有四大项,分别是: <br/><br/>Time resources <br/>Memory resources <br/>IO resources <br/>Command info <br/><br/>详细的内容如下: <br/><br/><br/>Time Resources <br/>E 执行指令所花费的时间,格式是:[hour]:minutecond。请注意这个数字并不代表实际的 CPU 时间。 <br/>e 执行指令所花费的时间,单位是秒。请注意这个数字并不代表实际的 CPU 时间。 <br/>S 指令执行时在核心模式(kernel mode)所花费的时间,单位是秒。 <br/>U 指令执行时在使用者模式(user mode)所花费的时间,单位是秒。 <br/> 执行指令时 CPU 的占用比例。其实这个数字就是核心模式加上使用者模式的 CPU 时间除以总时间。 <br/><br/><br/>Memory Resources <br/>M 执行时所占用的实体记忆体的最大值。单位是 KB <br/>t 执行时所占用的实体记忆体的平均值,单位是 KB <br/>K 执行程序所占用的记忆体总量(stack+data+text)的平均大小,单位是 KB <br/>D 执行程序的自有资料区(unshared data area)的平均大小,单位是 KB <br/>p 执行程序的自有堆叠(unshared stack)的平均大小,单位是 KB <br/>X 执行程序间共享内容(shared text)的平均值,单位是 KB <br/>Z 系统记忆体页的大小,单位是 byte。对同一个系统来说这是个常数 <br/><br/><br/>IO Resources <br/>F 此程序的主要记忆体页错误发生次数。所谓的主要记忆体页错误是指某一记忆体页已经置换到置换档(swap file)中,而且已经分配给其他程序。此时该页的内容必须从置换档里再读出来。 <br/>R 此程序的次要记忆体页错误发生次数。所谓的次要记忆体页错误是指某一记忆体页虽然已经置换到置换档中,但尚未分配给其他程序。此时该页的内容并未被破坏,不必从置换档里读出来 <br/>W 此程序被交换到置换档的次数 <br/>c 此程序被强迫中断(像是分配到的 CPU 时间耗尽)的次数 <br/>w 此程序自愿中断(像是在等待某一个 I/O 执行完毕,像是磁碟读取等等)的次数 <br/>I 此程序所输入的档案数 <br/>O 此程序所输出的档案数 <br/>r 此程序所收到的 Socket Message <br/>s 此程序所送出的 Socket Message <br/>k 此程序所收到的信号 ( Signal )数量 <br/><br/><br/>Command Info <br/>C 执行时的参数以及指令名称 <br/>x 指令的结束代码 ( Exit Status ) <br/><br/><br/><br/><br/>-p or --portability <br/>这个选项会自动把显示格式设定成为: <br/>real %e <br/>user %U <br/>sys %S <br/>这么做的目的是为了与 POSIX 规格相容。 <br/>-v or --verbose <br/>这个选项会把所有程式中用到的资源通通列出来,不但如一般英文语句,还有说明。对不想花时间去熟习格式设定或是刚刚开始接触这个指令的人相当有用。 <br/><br/>范例: <br/>利用下面的指令 <br/>time -v ps -aux <br/><br/>我们可以获得执行 ps -aux 的结果和所花费的系统资源。如下面所列的资料: <br/>USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND <br/>root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init <br/>root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd] <br/>root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod] <br/>...... <br/>root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux <br/><br/>Command being timed: "ps -aux" <br/>User time (seconds): 0.05 <br/>System time (seconds): 0.06 <br/>ercent of CPU this job got: 68% <br/>Elapsed (wall clock) time (h:ss or m:ss): 0:00.16 <br/>Average shared text size (kbytes): 0 <br/>Average unshared data size (kbytes): 0 <br/>Average stack size (kbytes): 0 <br/>Average total size (kbytes): 0 <br/>Maximum resident set size (kbytes): 0 <br/>Average resident set size (kbytes): 0 <br/>Major (requiring I/O) page faults: 238 <br/>Minor (reclaiming a frame) page faults: 46 <br/>Voluntary context switches: 0 <br/>Involuntary context switches: 0 <br/>Swaps: 0 <br/>File system inputs: 0 <br/>File system outputs: 0 <br/>Socket messages sent: 0 <br/>Socket messages received: 0 <br/>Signals delivered: 0 <br/>age size (bytes): 4096 <br/>Exit status: 0 <br/><br/>
 楼主| 发表于 2007-4-20 04:25:56 | 显示全部楼层
名称: uptime <br/>使用权限: 所有使用者 <br/>使用方式: uptime [-V] <br/>说明: uptime 提供使用者下面的资讯,不需其他参数: <br/><br/>现在的时间 <br/>系统开机运转到现在经过的时间 <br/>连线的使用者数量 <br/>最近一分钟,五分钟和十五分钟的系统负载 <br/>参数: -V 显示版本资讯。 <br/>范例: uptime <br/>其结果为: <br/>10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99 <br/><br/>名称:chfn <br/><br/>使用权限:所有使用者 <br/><br/>用法:shell&gt;&gt; chfn <br/><br/>说明:提供使用者更改个人资讯,用于 finger and mail username <br/><br/>范例: <br/><br/>shell&gt;&gt; chfn <br/>Changing finger information for user <br/>assword: [del] <br/>Name[]:Johnney Huang ### 提供 finger 时的资料 <br/>Office[]:NCCU <br/>Office Phone[]: [del] <br/>Home Phone[]: [del] <br/><br/><br/>名称:chsh <br/><br/>使用权限:所有使用者 <br/><br/>用法:shell&gt;&gt; chsh <br/><br/>说明:更改使用者 shell 设定 <br/><br/>范例: <br/><br/>shell&gt;&gt; chsh <br/>Changing fihanging shell for user1 <br/>assword: [del] <br/>New shell [/bin/tcsh]: ### [是目前使用的 shell] <br/>[del] <br/><br/>shell&gt;&gt; chsh -l ### 展示 /etc/shells 档案内容 <br/>/bin/bash <br/>/bin/sh <br/>/bin/ash <br/>/bin/bsh <br/>/bin/tcsh <br/>/bin/csh <br/><br/><br/><br/>” finger [返回] <br/>名称: finger <br/>使用权限: 所有使用者 <br/><br/>使用方式: finger [options] user[@address] <br/><br/>说明:finger 可以让使用者查询一些其他使用者的资料。会列出来的资料有: <br/><br/>Login Name <br/>User Name <br/>Home directory <br/>Shell <br/>Login status <br/>mail status <br/>.plan <br/>.project <br/>.forward <br/><br/>其中 .plan ,.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等档案里的资料。如果没有就没有。finger 指令并不限定于在同一伺服器上查询,也可以寻找某一个远端伺服器上的使用者。只要给一个像是 E-mail address 一般的地址即可。 <br/>把计? <br/><br/>-l <br/>多行显示。 <br/><br/>-s <br/>单行显示。这个选项只显示登入名称,真实姓名,终端机名称,闲置时间,登入时间,办公室号码及电话号码。如果所查询的使用者是远端伺服器的使用者,这个选项无效。 <br/><br/>范例:下列指令可以查询本机管理员的资料: <br/>finger root <br/><br/>其结果如下: <br/>Login: root Name: root <br/>Directory: /root Shell: /bin/bash <br/>Never logged in. <br/>No mail. <br/>No Plan. <br/><br/><br/><br/><br/>名称:last <br/><br/>使用权限:所有使用者 <br/><br/>使用方式:shell&gt;&gt; last [options] <br/><br/>说明:显示系统开机以来获是从每月初登入者的讯息 <br/><br/>把计? <br/><br/>-R 省略 hostname 的栏位 <br/>-num 展示前 num 个 <br/>username 展示 username 的登入讯息 <br/>tty 限制登入讯息包含终端机代号 <br/><br/>范例: <br/><br/>shell&gt;&gt; last -R -2 <br/>johnney pts/1 Mon Aug 14 20:42 still logged in <br/>johnney pts/0 Mon Aug 14 19:59 still logged in <br/><br/>wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp <br/><br/><br/>shell&gt;&gt; last -2 minery <br/>minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03) <br/>minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02) <br/><br/>wtmp begins Tue Aug 1 09:01:10 2000 <br/><br/><br/><br/><br/>名称:login <br/><br/>这个命令都不会就不要干算了!呵呵我也不在这里多费笔墨耽误大家美好青春了^_^ <br/><br/><br/><br/>名称:passwd <br/><br/>使用权限:所有使用者 <br/><br/>使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username] <br/><br/>说明:用来更改使用者的密码 <br/><br/>参数: <br/>-k <br/><br/>-l <br/><br/>-u <br/><br/>-f <br/><br/>-d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备 root 权限的使用者方可使用. <br/><br/>-S 显示指定使用者的密码认证种类, 只有具备 root 权限的使用者方可使用. <br/><br/>[username] 指定帐号名称.<br/><br/><br/><br/><br/><br/>名称 : who <br/>使用权线 : 所有使用者都可使用 <br/><br/>使用方式 : who - [husfV] [user] <br/><br/>说明 : 显示系统中有那些使用者正在上面,显示的资料包含了使用者 ID,使用的终端机,从那边连上来的,上线时间,呆滞时间,CPU 使用量,动作等等。 <br/><br/>把计 : <br/><br/>-h : 不要显示标题列 <br/>-u : 不要显示使用者的动作/工作 <br/>-s : 使用简短的格式来显示 <br/>-f : 不要显示使用者的上线位置 <br/>-V : 显示程式版本 <br/>名称:/etc/aliases <br/>使用权限:系统管理者 <br/>使用方式: 请用 newaliases 更新资料库 <br/>说明: <br/>sendmail 会使用一个在 /etc/aliases 中的档案做使用者名称转换的动作。当 sendmail 收到一个要送给 xxx 的信时,它会依据 aliases档的内容送给另一个使用者。这个功能可以创造一个只有在信件系统内才有效的使用者。例如 mailing list 就会用到这个功能,在 mailinglist 中,我们可能会创造一个叫 <a href="mailto:redlinux@link.ece.uci.edu"><font color="#698cbb">redlinux@link.ece.uci.edu</font></a> 的 mailinglist,但实际上并没有一个叫 redlinux 的使用者。实际 aliases 档的内容是将送给这个使用者的信都收给 mailing list 处理程式负责分送的工作。 <br/><br/>/etc/aliases 是一个文字模式的档案,sendmail 需要一个二进位格式的 /etc/aliases.db。newaliases 的功能传是将 /etc/aliases 转换成一个 sendmail 所能了解的资料库。范例: <br/># newaliases <br/><br/>下面命令会做相同的事, <br/># sendmail -bi <br/><br/>相关命令: <br/>mail, mailq, newaliases, sendmail <br/><br/>” mail [返回] <br/>名称:mail <br/><br/>使用权限:所有使用者 <br/><br/><br/>使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...] <br/><br/><br/>说明: <br/>mail 不仅只是一个指令, mail 还是一个电子邮件程式,不过利用 mail 来读信的人应该很少吧!对于系统管理者来说 mail 就很有用,因为管理者可以用 mail 写成 script ,定期寄一些备忘录提醒系统的使用者。 <br/><br/><br/>参数: <br/>i 忽略 tty 的中断讯号。 (interrupt) <br/>I 强迫设成互动模式。 (Interactive) <br/>v 列印出讯息,例如送信的地点、状态等等。 (verbose) <br/>n 不读入 mail.rc 设定档。 <br/>s 邮件标题。 <br/>c cc 邮件地址。 <br/>b bcc 邮件地址。 <br/><br/><br/>范例: <br/><br/><br/>将信件送给一个或以上的电子邮件地址,由于没有加入其他的选项,使用者必须输入标题与信件的内容等。而 user2 没有主机位置,就会送给邮件伺服器的 user2 使用者。 <br/><br/><br/><br/>mail <a href="mailto:user1@email.addr"><font color="#698cbb">user1@email.addr</font></a>ess <br/>mail <a href="mailto:user1@email.addr"><font color="#698cbb">user1@email.addr</font></a>ess user2 <br/><br/><br/><br/>将 mail.txt 的内容寄给 user2 同时 cc 给 user1 。如果将这一行指令设成 cronjob 就可以定时将备忘录寄给系统使用者。 <br/><br/>mail -s 标题 -c user1 user2 &lt; mail.txt <br/><br/><br/><br/>指令:mesg <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : mesg [y|n] <br/><br/>说明 : 决定是否允许其他人传讯息到自己的终端机介面 <br/><br/><br/>把计 ? <br/><br/>y : 允许讯息传到终端机介面上。 <br/>n : 不允许讯息传到终端机介面上 。 <br/>如果没有设定,则讯息传递与否则由终端机界面目前状态而定。 <br/><br/>例子 : <br/>改变目前讯息设定,改成不允许讯息传到终端机介面上 : <br/>mesg n <br/><br/><br/>与 mesg 相关的指令有: talk,write,wall。 <br/><br/><br/>名称:/etc/aliases <br/>使用权限:系统管理者 <br/>使用方式: newaliases <br/>说明: <br/>sendmail 会使用一个在 /etc/aliases 中的档案做使用者名称转换的动作。当 sendmail 收到一个要送给 xxx 的信时,它会依据 aliases档的内容送给另一个使用者。这个功能可以创造一个只有在信件系统内才有效的使用者。例如 mailing list 就会用到这个功能,在 mailinglist 中,我们可能会创造一个叫 <a href="mailto:redlinux@link.ece.uci.edu"><font color="#698cbb">redlinux@link.ece.uci.edu</font></a> 的 mailinglist,但实际上并没有一个叫 redlinux 的使用者。实际 aliases 档的内容是将送给这个使用者的信都收给 mailing list 处理程式负责分送的工作。 <br/><br/>/etc/aliases 是一个文字模式的档案,sendmail 需要一个二进位格式的 /etc/aliases.db。newaliases 的功能传是将 /etc/aliases 转换成一个 sendmail 所能了解的资料库。 <br/><br/>参数:没有任何参数。 范例: <br/># newaliases <br/><br/>下面命令会做相同的事, <br/># sendmail -bi <br/><br/>相关命令: <br/>mail, mailq, newaliases, sendmail <br/><br/><br/><br/>名称 : talk <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : <br/><br/>talk person [ttyname] <br/>说明 : 与其他使用者对谈 <br/><br/>把计 : <br/><br/>person : 预备对谈的使用者帐号,如果该使用者在其他机器上,则可输入 <a href="mailto:person@machine.name"><font color="#698cbb">person@machine.name</font></a>
        <br/>ttyname : 如果使用者同时有两个以上的 tty 连线,可以自行选择合适的 tty 传讯息 <br/><br/>例子.1 : <br/><br/>与现在机器上的使用者Rollaend对谈,此时 Rollaend 只有一个连线 : <br/>talk Rollaend <br/><br/><br/>接下来就是等Rollaend回应,若Rollaend接受,则Rollaend输入 `talk jzlee`即可开始对谈,结束请按 ctrl+c <br/><br/>例子.2 :与linuxfab.cx上的使用者Rollaend对谈,使用pts/2来对谈 : <br/>talk <a href="mailto:Rollaend@linuxfab.cx"><font color="#698cbb">Rollaend@linuxfab.cx</font></a> pts/2<br/><br/><br/>接下来就是等Rollaend回应,若Rollaend接受,则Rollaend输入 `talk <a href="mailto:jzlee@jzlee.home"><font color="#698cbb">jzlee@jzlee.home</font></a>`即可开始对谈,结束请按 ctrl+c <br/><br/>注意 : 若萤幕的字会出现不正常的字元,试着按 ctrl+l 更新萤幕画面。 <br/><br/><br/>名称 : wall <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : <br/><br/>wall [ message ] <br/>使用说明: <br/>wall 会将讯息传给每一个 mesg 设定为 yes 的上线使用者。当使用终端机介面做为标准传入时, 讯息结束时需加上 EOF (通常用 Ctrl+D)? <br/><br/>例子 : <br/><br/>传讯息"hi" 给每一个使用者 : <br/>wall hi <br/><br/><br/><br/><br/>名称 : write <br/>使用权限 : 所有使用者 <br/><br/>使用方式 : <br/><br/>write user [ttyname] <br/>说明 : 传讯息给其他使用者 <br/><br/>把计 : <br/><br/>user : 预备传讯息的使用者帐号 <br/>ttyname : 如果使用者同时有两个以上的 tty 连线,可以自行选择合适的 tty 传讯息 <br/><br/>例子.1 : <br/><br/>传讯息给 Rollaend,此时 Rollaend 只有一个连线 : <br/>write Rollaend <br/><br/><br/>接下来就是将讯息打上去,结束请按 ctrl+c <br/><br/>例子.2 :传讯息给 Rollaend,Rollaend 的连线有 pts/2,pts/3 : <br/>write Rollaend pts/2<br/><br/><br/>接下来就是将讯息打上去,结束请按 ctrl+c <br/><br/>注意 : 若对方设定 mesg n,则此时讯席将无法传给对方<br/><br/>
 楼主| 发表于 2007-4-20 04:27:51 | 显示全部楼层
名称:kill <br/>使用权限:所有使用者 <br/><br/>使用方式: <br/><br/>kill [ -s signal | -p ] [ -a ] pid ... <br/>kill -l [ signal ] <br/>说明:kill 送出一个特定的信号 (signal) 给行程 id 为 pid 的行程根据该信号而做特定的动作, 若没有指定, 预设是送出终止 (TERM) 的信号 <br/>把计? <br/><br/>-s (signal) : 其中可用的讯号有 HUP (1), KILL (9), TERM (15), 分别代表着重跑, 砍掉, 结束; 详细的信号可以用 kill -l <br/>-p : 印出 pid , 并不送出信号 <br/>-l (signal) : 列出所有可用的信号名称 <br/>范例: <br/><br/>将 pid 为 323 的行程砍掉 (kill) : <br/>kill -9 323 <br/><br/>将 pid 为 456 的行程重跑 (restart) : <br/>kill -HUP 456 <br/><br/><br/><br/><br/>名称:nice <br/>使用权限:所有使用者 <br/><br/>使用方式:nice [-n adjustment] [-adjustment] [--adjustment=adjustment] [--help] [--version] [command [arg...]] <br/><br/>说明:以更改过的优先序来执行程式, 如果未指定程式, 则会印出目前的排程优先序, 内定的 adjustment 为 10, 范围为 -20 (最高优先序) 到 19 (最低优先序) <br/><br/><br/>把计? <br/><br/>-n adjustment, -adjustment, --adjustment=adjustment 皆为将该原有优先序的增加 adjustment <br/>--help 显示求助讯息 <br/>--version 显示版本资讯 <br/>范例: <br/>将 ls 的优先序加 1 并执行 : <br/>nice -n 1 ls <br/><br/>将 ls 的优先序加 10 并执行 : <br/>nice ls将 ls 的优先序加 10 并执行 <br/><br/>注意 : 优先序 (priority) 为作业系统用来决定 CPU 分配的参数,Linux 使用『回合制(round-robin)』的演算法来做 CPU 排程,优先序越高,所可能获得的 CPU时间就越多。 <br/><br/><br/><br/>名称:ps <br/>使用权限:所有使用者 <br/>使用方式:ps [options] [--help] <br/>说明:显示瞬间行程 (process) 的动态 <br/>参数: <br/>ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义 <br/>-A 列出所有的行程 <br/>-w 显示加宽可以显示较多的资讯 <br/>-au 显示较详细的资讯 <br/>-aux 显示所有包含其他使用者的行程 <br/><br/>au(x) 输出格式 : <br/><br/>USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND <br/>USER: 行程拥有者 <br/>ID: pid <br/>%CPU: 占用的 CPU 使用率 <br/>%MEM: 占用的记忆体使用率 <br/>VSZ: 占用的虚拟记忆体大小 <br/>RSS: 占用的记忆体大小 <br/>TTY: 终端的次要装置号码 (minor device number of tty) <br/>STAT: 该行程的状态: <br/>D: 不可中断的静止 (通悸□□缜b进行 I/O 动作) <br/>R: 正在执行中 <br/>S: 静止状态 <br/>T: 暂停执行 <br/>Z: 不存在但暂时无法消除 <br/>W: 没有足够的记忆体分页可分配 <br/>&lt;: 高优先序的行程 <br/>N: 低优先序的行程 <br/>L: 有记忆体分页分配并锁在记忆体内 (即时系统或捱A I/O) <br/>START: 行程开始时间 <br/>TIME: 执行的时间 <br/>COMMAND:所执行的指令 <br/><br/>范例: <br/><br/>ps <br/>ID TTY TIME CMD <br/>2791 ttyp0 00:00:00 tcsh <br/>3092 ttyp0 00:00:00 ps <br/>% ps -A <br/>ID TTY TIME CMD <br/>1 ? 00:00:03 init <br/>2 ? 00:00:00 kflushd <br/>3 ? 00:00:00 kpiod <br/>4 ? 00:00:00 kswapd <br/>5 ? 00:00:00 mdrecoveryd <br/>....... <br/>% ps -aux <br/>USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND <br/>root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3] <br/>root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd] <br/>root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod] <br/>root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd] <br/>........ <br/><br/><br/><br/>名称:pstree <br/>使用权限:所有使用者 <br/>使用方式: <br/>pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user] <br/>pstree -V <br/>说明:将所有行程以树状图显示, 树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root) ,如果有指定使用者 id , 则树状图会只显示该使用者所拥有的行程 <br/>参数: <br/>-a 显示该行程的完整指令及参数, 如果是被记忆体置换出去的行程则会加上括号 <br/>-c 如果有重覆的行程名, 则分开列出 (预设值是会在前面加上 * <br/>范例: <br/><br/>pstree <br/><br/>init-+-amd <br/>|-apmd <br/>|-atd <br/>|-httpd---10*[httpd] <br/>%pstree -p <br/>init(1)-+-amd(447) <br/>|-apmd(105) <br/>|-atd(339) <br/>%pstree -c <br/>init-+-amd <br/>|-apmd <br/>|-atd <br/>|-httpd-+-httpd <br/>| |-httpd <br/>| |-httpd <br/>| |-httpd <br/>.... <br/><br/><br/><br/>名称:renice <br/>使用权限:所有使用者 <br/><br/>使用方式:renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...] <br/><br/>说明:重新指定一个或多个行程(Process)的优先序(一个或多个将根据所下的参数而定) <br/><br/>把计? <br/><br/>-p pid 重新指定行程的 id 为 pid 的行程的优先序 <br/>-g pgrp 重新指定行程群组(process group)的 id 为 pgrp 的行程 (一个或多个) 的优先序 <br/>-u user 重新指定行程拥有者为 user 的行程的优先序 <br/>范例: <br/>将行程 id 为 987 及 32 的行程与行程拥有者为 daemon 及 root 的优先序号码加 1 : <br/>renice +1 987 -u daemon root -p 32 <br/><br/>注意 : 每一个行程(Process)都有一个唯一的 (unique) id? <br/><br/><br/><br/>名称:top <br/>使用权限:所有使用者 <br/><br/>使用方式:top [-] [d delay] [q] [c] [S] [n] <br/><br/>说明:即时显示 process 的动态 <br/><br/>把计? <br/><br/>d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s <br/>q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行 <br/>c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S : 累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来 <br/>s : 安全模式,将交谈式指令取消, 避免潜在的危机 <br/>i : 不显示任何闲置 (idle) 或无用 (zombie) 的行程 <br/>n : 更新的次数,完成后将会退出 top <br/>b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内 <br/><br/>范例: <br/>显示更新十次后退出 ; <br/>top -n 10 <br/><br/>使用者将不能利用交谈式指令来对行程下命令 : <br/>top -s <br/><br/>将更新显示二次的结果输入到名称为 top.log 的档案里 : <br/>top -n 2 -b &lt; top.log <br/><br/>名称:skill <br/><br/>使用权限:所有使用者 <br/><br/>使用方式: skill [signal to send] [options] 选择程序的规则 <br/><br/>说明: <br/><br/>送个讯号给正在执行的程序,预设的讯息为 TERM (中断) , 较常使用的讯息为 HUP , INT , KILL , STOP , CONT ,和 0 <br/><br/>讯息有三种写法:分别为 -9 , -SIGKILL , -KILL , 可以使用 -l 或 -L 已列出可使用的讯息。 <br/><br/>一般参数: <br/><br/>-f 快速模式/尚未完成 <br/><br/>-i 互动模式/ 每个动作将要被确认 <br/><br/>-v 详细输出/ 列出所选择程序的资讯 <br/><br/>-w 智能警告讯息/ 尚未完成 <br/><br/>-n 没有动作/ 显示程序代号 <br/><br/>参数:选择程序的规则可以是, 终端机代号,使用者名称,程序代号,命令名称。 <br/><br/>-t 终端机代号 ( tty 或 pty ) <br/><br/>-u 使用者名称 <br/><br/>-p 程序代号 ( pid ) <br/><br/>-c 命令名称 可使用的讯号: <br/><br/>以下列出已知的讯号名称,讯号代号,功能。 <br/><br/>名称 (代号) 功能/ 描述 <br/><br/>ALRM 14 离开 <br/><br/>HUP 1 离开 <br/><br/>INT 2 离开 <br/><br/>KILL 9 离开/ 强迫关闭 <br/><br/>IPE 13 离开 <br/><br/>OLL 离开 <br/><br/>ROF 离开 <br/><br/>TERM 15 离开 <br/><br/>USR1 离开 <br/><br/>USR2 离开 <br/><br/>VTALRM 离开 <br/><br/>STKFLT 离开/ 只适用于i386, m68k, arm 和 ppc 硬体 <br/><br/>UNUSED 离开/ 只适用于i386, m68k, arm 和 ppc 硬体 <br/><br/>TSTP 停止 /产生与内容相关的行为 <br/><br/>TTIN 停止 /产生与内容相关的行为 <br/><br/>TTOU 停止 /产生与内容相关的行为 <br/><br/>STOP 停止 /强迫关闭 <br/><br/>CONT 从新启动 /如果在停止状态则从新启动,否则忽略 <br/><br/>WR 忽略 /在某些系统中会离开 <br/><br/>WINCH 忽略 <br/><br/>CHLD 忽略 <br/><br/>ABRT 6 核心 <br/><br/>FPE 8 核心 <br/><br/>ILL 4 核心 <br/><br/>QUIT 3 核心 <br/><br/>SEGV 11 核心 <br/><br/>TRAP 5 核心 <br/><br/>SYS 核心 /或许尚未实作 <br/><br/>EMT 核心 /或许尚未实作 <br/><br/>BUS 核心 /核心失败 <br/><br/>XCPU 核心 /核心失败 <br/><br/>XFSZ 核心 /核心失败 <br/><br/>范例: <br/><br/>停止所有在 PTY 装置上的程序 <br/>skill -KILL -v pts/* <br/><br/>停止三个使用者 user1 , user2 , user3 <br/>skill -STOP user1 user2 user3 <br/><br/><br/><br/>其他相关的命令: kill<br/><br/><br/><br/><br/>名称:expr <br/><br/>使用权限:所有使用者 <br/>### 字串长度 <br/><br/>shell&gt;&gt; expr length "this is a test" <br/>14 <br/><br/>### 数字商数 <br/><br/>shell&gt;&gt; expr 14 % 9 <br/>5 <br/><br/>### 从位置处抓取字串 <br/><br/>shell&gt;&gt; expr substr "this is a test" 3 5 <br/>is is <br/><br/>### 数字串 only the first character <br/><br/>shell&gt;&gt; expr index "testforthegame" e <br/>2 <br/><br/>### 字串真实重现 <br/><br/>shell&gt;&gt; expr quote thisisatestformela <br/>thisisatestformela <br/><br/><br/><br/><br/>名称: tr <br/><br/>### 1.比方说要把目录下所有的大写档名换为小写档名? <br/><br/>似乎有很多方式,"tr"是其中一种: <br/><br/>#!/bin/sh <br/><br/>dir="/tmp/testdir"; <br/>files=`find $dir -type f`; <br/>for i in $files <br/>do <br/>dir_name=`dirname $i`; <br/>ori_filename=`basename $i` <br/>new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` &gt; /dev/null; <br/>#echo $new_filename; <br/>mv $dir_name/$ori_filename $dir_name/$new_filename <br/>done <br/><br/><br/>### 2.自己试验中...lowercase to uppercase <br/><br/>tr abcdef...[del] ABCDE...[del] <br/>tr a-z A-Z <br/>tr [:lower:] [:upper:] <br/><br/>shell&gt;&gt; echo "this is a test" | tr a-z A-Z &gt; www <br/>shell&gt;&gt; cat www <br/>THIS IS A TEST <br/><br/>### 3.去掉不想要的字串 <br/><br/>shell&gt;&gt; tr -d this ### 去掉有关 t.e.s.t <br/>this <br/><br/>man <br/>man <br/>test <br/>e <br/><br/>### 4.取代字串 <br/><br/>shell&gt;&gt; tr -s "this" "TEST" <br/>this <br/>TEST <br/>th <br/>TE <br/><br/><br/><br/><br/>指令:clear <br/>用途:清除萤幕用。 <br/><br/>使用方法:在 console 上输入 clear。 <br/><br/><br/>名称: reset, tset <br/>使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal] <br/><br/>使用说明: <br/><br/>reset 其实和 tset 是一同个命令,它的用途是设定终端机的状态。一般而言,这个命令会自动的从环境变数、命令列或是其它的组态档决定目前终端机的型态。如果指定型态是 ? 的话,这个程式会要求使用者输入终端机的型别。 <br/><br/>由于这个程式会将终端机设回原始的状态,除了在 login 时使用外,当系统终端机因为程式不正常执行而进入一些奇怪的状态时,你也可以用它来重设终端机o 例如不小心把二进位档用 cat 指令进到终端机,常会有终端机不再回应键盘输入,或是回应一些奇怪字元的问题。此时就可以用 reset 将终端机回复至原始状态。选项说明: <br/><br/><br/>
 楼主| 发表于 2007-4-20 04:28:08 | 显示全部楼层
<p>说明 <br/>尚未完成的印表机工作会被放在印表机贮列之中,这个命令可用来将常未送到印表机的工作取消。由于每一个印表机都有一个独立的贮列,你可以用 -P 这个命令设定想要作用的印列机。如果没有设定的话,会使用系统预设的印表机。 </p><p>这个命令会检查使用者是否有足够的权限删除指定的档案,一般而言,只有档案的拥有者或是系统管理员才有这个权限。 </p><p>范例 <br/>将印表机 hpprinter 中的第 1123 号工作移除 </p><p><br/>lprm -Phpprinter 1123 </p><p><br/>将第 1011 号工作由预设印表机中移除 </p><p><br/>lprm 1011 </p><p></p><p><br/>名称: fdformat </p><p>使用权限: 所有使用者 </p><p>使用方式:fdformat [-n] device </p><p>使用说明 : <br/>对指定的软碟机装置进行低阶格式化。使用这个指令对软碟格式化的时候,最好指定像是下面的装置: </p><p><br/>/dev/fd0d360 磁碟机 A: ,磁片为 360KB 磁碟 <br/>/dev/fd0h1440 磁碟机 A: ,磁片为 1.4MB 磁碟 <br/>/dev/fd1h1200 磁碟机 B: ,磁片为 1.2MB 磁碟 <br/>如果使用像是 /dev/fd0 之类的装置,如果里面的磁碟不是标准容量,格式化可能会失败。在这种情况之下,使用者可以用 setfdprm 指令先行指定必要参数。 </p><p>参数: </p><p><br/>-n 关闭确认功能。这个选项会关闭格式化之后的确认步骤。 </p><p>范例: </p><p>fdformat -n /dev/fd0h1440 </p><p>将磁碟机 A 的磁片格式化成 1.4MB 的磁片。并且省略确认的步骤。 </p><p></p><p>名称: mformat </p><p>使用权限: 所有使用者 </p><p>使用方式: </p><p>mformat [-t cylinders] [-h heads] [-s sectors] [-l volume_label] [-F] [-I fsVer-sion] [-S sizecode] [-2 sectors_on_track_0] [-M software_sector_size] [-a] [-X] [-C] [-H hidden_sectors] [-r root_sectors] [-B boot_sector] [-0 rate_on_track_0] [-A rate_on_other_tracks] [-1] [-k] drive: </p><p>在已经做过低阶格式化的磁片上建立 DOS 档案系统。如果在编译 mtools 的时候把 USE_2M 的参数打开,部分与 2M 格式相关的参数就会发生作用。否则这些参数(像是 S,2,1,M)不会发生作用。 </p><p>参数: </p><p>-t 磁柱(synlider)数 <br/>-h 磁头(head)数 <br/>-s 每一磁轨的磁区数 <br/>-l 标签 <br/>-F 将磁碟格式化为 FAT32 格式,不过这个参数还在实验中。 <br/>-I 设定 FAT32 中的版本号。这当然也还在实验中。 <br/>-S 磁区大小代码,计算方式为 sector = 2^(大小代码+7) <br/>-c 磁丛(cluster)的磁区数。如果所给定的数字会导致磁丛数超过 FAT 表的限制,mformat 会自动放大磁区数。 <br/>-s <br/>-M 软体磁区大小。这个数字就是系统回报的磁区大小。通常是和实际的大小相同。 <br/>-a 如果加上这个参数,mformat 会产生一组 Atari 系统的序号给这块软碟。 <br/>-X 将软碟格式化成 XDF 格式。使用前必须先用 xdfcopy 指令对软碟作低阶格式化的动作。 <br/>-C 产生一个可以安装 MS-DOS 档案系统的磁碟影像档(disk image)。当然对一个实体磁碟机下这个参数是没有意义的。 <br/>-H 隐藏磁区的数目。这通常适用在格式化硬碟的分割区时,因为通常一个分割区的前面还有分割表。这个参数未经测试,能不用就不用。 <br/>-n 磁碟序号 <br/>-r 根目录的大小,单位是磁区数。这个参数只对 FAT12 和 FAT16 有效。 <br/>-B 使用所指定的档案或是设备的开机磁区做为这片磁片或分割区的开机磁区。当然当中的硬体参数会随之更动。 <br/>-k 尽量保持原有的开机磁区。 <br/>-0 第 0 轨的资料传输率 <br/>-A 第 0 轨以外的资料传输率 <br/>-2 使用 2m 格式 <br/>-1 不使用 2m 格式 </p><p>范例: <br/>mformat a: </p><p>这样会用预设值把 a: (就是 /dev/fd0)里的磁碟片格式化。 </p><p></p><p>名称: mkdosfs </p><p>使用权限: 所有使用者 </p><p>使用方式: mkdosfs [ -c | -l filename ] <br/>[ -f number_of_FATs ] <br/>[ -F FAT_size ] <br/>[ -i volume_id ] <br/>[ -m message_file ] <br/>[ -n volume_name ] <br/>[ -r root_dir_entry ] <br/>[ -s sector_per_cluster ] <br/>[ -v ] <br/>device <br/>[ block_count ] </p><p></p><p>说明: 建立 DOS 档案系统。 device 指你想要建立 DOS 档案系统的装置代号。像是 /dev/hda1 等等。 block_count 则是你希望配置的区块数。如果 block_count 没有指定则系统会自动替你计算符合该装置大小的区块数。 </p><p>参数: </p><p><br/>-c 建立档案系统之前先检查是否有坏轨。 <br/>-l 从得定的档案中读取坏轨记录。 <br/>-f 指定档案配置表(FAT , File Allocation Table)的数量。预设值为 2 。目前 Linux 的 FAT 档案系统不支援超过 2 个 FAT 表。通常这个不需要改。 <br/>-F 指定 FAT 表的大小,通常是 12 或是 16 个位元组。12 位元组通常用于磁碟片,16 位元组用于一般硬碟的分割区,也就是所谓的 FAT16 格式。这个值通常系统会自己选定适当的值。在磁碟片上用 FAT16 通常不会发生作用,反之在硬碟上用 FAT12 亦然。 <br/>-i 指定 Volume ID。一般是一个 4 个位元组的数字,像是 2e203a47 。如果不给系统会自己产生。 <br/>-m 当使用者试图用这片磁片或是分割区开机,而上面没有作业系统时,系统会给使用者一段警告讯息。这个参数就是用来变更这个讯息的。你可以先用档案编辑好,然后用这个参数指定,或是用 <br/>-m - <br/>这样系统会要求你直接输入这段文字。要特别注意的是,档案里的字串长度不要超过 418 个字,包括展开的跳栏符号(TAB)和换行符号(换行符号在 DOS 底下算两个字元!) <br/>-n 指定 Volume Name,就是磁碟标签。如同在 DOS 底下的 format 指令一样,给不给都可以。没有预设值。 <br/>-r 指定根目录底下的最大档案数。这里所谓的档案数包括目录。预设值是在软碟上是 112 或是 224 ,在硬碟上是 512。没事不要改这个数字。 <br/>-s 每一个磁丛(cluster)的磁区数。必须是 2 的次方数。不过除非你知道你在作什么,这个值不要乱给。 <br/>-v 提供额外的讯息 </p><p>范例: <br/>mkdosfs -n Tester /dev/fd0 将 A 槽里的磁碟片格式化为 DOS 格式,并将标签设为 Tester</p>
 楼主| 发表于 2007-4-20 04:28:34 | 显示全部楼层
<div class="tpc_content">Linux的流量控制<br/><br/><br/>linux从kernel 2.1.105开始支持QOS,不过,需要重新编译内核。运行 make config时将 EXPERIMENTAL _OPTIONS 设置成 y,并且将 Class Based Queueing (CBQ), Token Bucket Flow, Traffic Shapers 设置为 y ,运行 make dep; make clean; make bzilo,生成新的内核。<br/>  在linux操作系统中流量控制器(TC)主要是在输出端口处建立一个队列进行流量控制,控制的方式是基于路由,亦即基于目的IP地址或目的子网的网络号的流量控制。流量控制器TC,其基本的功能模块为队列、分类和过滤器。Linux内核中支持的队列有,Class Based Queue ,Token Bucket Flow ,CSZ ,First In First Out ,Priority ,TEQL ,SFQ ,ATM ,RED。这里我们讨论的队列与分类都是基于CBQ(Class Based Queue)的,而过滤器是基于路由(Route)的。<br/>  配置和使用流量控制器TC,主要分以下几个方面:分别为建立队列、建立分类、建立过滤器和建立路由,另外还需要对现有的队列、分类、过滤器和路由进行监视。<br/><br/>  其基本使用步骤为:<br/>  1) 针对网络物理设备(如以太网卡eth0)绑定一个CBQ队列;<br/>  2) 在该队列上建立分类;<br/>  3) 为每一分类建立一个基于路由的过滤器;<br/>  4) 最后与过滤器相配合,建立特定的路由表。<br/><br/>先假设一个简单的环境<br/><br/>  流量控制器上的以太网卡(eth0) 的IP地址为192.168.1.66,在其上建立一个CBQ队列。假设包的平均大小为1000字节,包间隔发送单元的大小为8字节,可接收冲突的发送最长包数目为20字节。<br/>  假如有三种类型的流量需要控制:<br/>  1) 是发往主机1的,其IP地址为192.168.1.24。其流量带宽控制在8Mbit,优先级为2;<br/>  2) 是发往主机2的,其IP地址为192.168.1.26。其流量带宽控制在1Mbit,优先级为1;<br/>  3) 是发往子网1的,其子网号为192.168.1.0,子网掩码为255.255.255.0。流量带宽控制在1Mbit,优先级为6。<br/><br/>1. 建立队列<br/>  一般情况下,针对一个网卡只需建立一个队列。<br/><br/>  将一个cbq队列绑定到网络物理设备eth0上,其编号为1:0;网络物理设备eth0的实际带宽为10 Mbit,包的平均大小为1000字节;包间隔发送单元的大小为8字节,最小传输包大小为64字节。<br/>  ·tc qdisc add dev eth0 root handle 1: cbq bandwidth 10Mbit avpkt 1000 cell 8 mpu 64<br/><br/>2. 建立分类<br/>  分类建立在队列之上。一般情况下,针对一个队列需建立一个根分类,然后再在其上建立子分类。对于分类,按其分类的编号顺序起作用,编号小的优先;一旦符合某个分类匹配规则,通过该分类发送数据包,则其后的分类不再起作用。<br/><br/>1) 创建根分类1:1;分配带宽为10Mbit,优先级别为8。<br/>·tc class add dev eth0 parent 1:0 classid 1:1 cbq bandwidth 10Mbit rate 10Mbit maxburst 20 allot 1514 prio 8 avpkt 1000 cell 8 weight 1Mbit<br/><br/>  该队列的最大可用带宽为10Mbit,实际分配的带宽为10Mbit,可接收冲突的发送最长包数目为20字节;最大传输单元加MAC头的大小为1514字节,优先级别为8,包的平均大小为1000字节,包间隔发送单元的大小为8字节,相应于实际带宽的加权速率为1Mbit。<br/><br/>2)创建分类1:2,其父分类为1:1,分配带宽为8Mbit,优先级别为2。<br/>·tc class add dev eth0 parent 1:1 classid 1:2 cbq bandwidth 10Mbit rate 8Mbit maxburst 20 allot 1514 prio 2 avpkt 1000 cell 8 weight 800Kbit split 1:0 bounded<br/><br/>  该队列的最大可用带宽为10Mbit,实际分配的带宽为 8Mbit,可接收冲突的发送最长包数目为20字节;最大传输单元加MAC头的大小为1514字节,优先级别为1,包的平均大小为1000字节,包间隔发送单元的大小为8字节,相应于实际带宽的加权速率为800Kbit,分类的分离点为1:0,且不可借用未使用带宽。<br/><br/>3)创建分类1:3,其父分类为1:1,分配带宽为1Mbit,优先级别为1。<br/>·tc class add dev eth0 parent 1:1 classid 1:3 cbq bandwidth 10Mbit rate 1Mbit maxburst 20 allot 1514 prio 1 avpkt 1000 cell 8 weight 100Kbit split 1:0<br/><br/>  该队列的最大可用带宽为10Mbit,实际分配的带宽为 1Mbit,可接收冲突的发送最长包数目为20字节;最大传输单元加MAC头的大小为1514字节,优先级别为2,包的平均大小为1000字节,包间隔发送单元的大小为8字节,相应于实际带宽的加权速率为100Kbit,分类的分离点为1:0。<br/><br/>4)创建分类1:4,其父分类为1:1,分配带宽为1Mbit,优先级别为6。<br/>·tc class add dev eth0 parent 1:1 classid 1:4 cbq bandwidth 10Mbit rate 1Mbit maxburst 20 allot 1514 prio 6 avpkt 1000 cell 8 weight 100Kbit split 1:0<br/><br/>  该队列的最大可用带宽为10Mbit,实际分配的带宽为 64Kbit,可接收冲突的发送最长包数目为20字节;最大传输单元加MAC头的大小为1514字节,优先级别为1,包的平均大小为1000字节,包间隔发送单元的大小为8字节,相应于实际带宽的加权速率为100Kbit,分类的分离点为1:0。<br/><br/>3. 建立过滤器<br/>过滤器主要服务于分类。一般只需针对根分类提供一个过滤器,然后为每个子分类提供路由映射。<br/><br/>1) 应用路由分类器到cbq队列的根,父分类编号为1:0;过滤协议为ip,优先级别为100,过滤器为基于路由表。<br/>·tc filter add dev eth0 parent 1:0 protocol ip prio 100 route<br/><br/>2) 建立路由映射分类1:2, 1:3, 1:4<br/>·tc filter add dev eth0 parent 1:0 protocol ip prio 100 route to 2 flowid 1:2<br/>·tc filter add dev eth0 parent 1:0 protocol ip prio 100 route to 3 flowid 1:3<br/>·tc filter add dev eth0 parent 1:0 protocol ip prio 100 route to 4 flowid 1:4<br/><br/>4.建立路由<br/>该路由是与前面所建立的路由映射一一对应。<br/>1) 发往主机192.168.1.24的数据包通过分类2转发(分类2的速率8Mbit)<br/>·ip route add 192.168.1.24 dev eth0 via 192.168.1.66 realm 2<br/><br/>2) 发往主机192.168.1.30的数据包通过分类3转发(分类3的速率1Mbit)<br/>·ip route add 192.168.1.30 dev eth0 via 192.168.1.66 realm 3<br/><br/>3)发往子网192.168.1.0/24的数据包通过分类4转发(分类4的速率1Mbit)<br/>·ip route add 192.168.1.0/24 dev eth0 via 192.168.1.66 realm 4<br/><br/>  注:一般对于流量控制器所直接连接的网段建议使用IP主机地址流量控制限制,不要使用子网流量控制限制。如一定需要对直连子网使用子网流量控制限制,则在建立该子网的路由映射前,需将原先由系统建立的路由删除,才可完成相应步骤。<br/><br/>5. 监视<br/>  主要包括对现有队列、分类、过滤器和路由的状况进行监视。<br/>1)显示队列的状况<br/><br/>简单显示指定设备(这里为eth0)的队列状况<br/>·tc qdisc ls dev eth0<br/>qdisc cbq 1: rate 10Mbit (bounded,isolated) prio no-transmit<br/><br/>详细显示指定设备(这里为eth0)的队列状况<br/>·tc -s qdisc ls dev eth0<br/>qdisc cbq 1: rate 10Mbit (bounded,isolated) prio no-transmit<br/>Sent 7646731 bytes 13232 pkts (dropped 0, overlimits 0)<br/><br/><br/>borrowed 0 overactions 0 avgidle 31 undertime 0<br/><br/>  这里主要显示了通过该队列发送了13232个数据包,数据流量为7646731个字节,丢弃的包数目为0,超过速率限制的包数目为0。<br/><br/>2)显示分类的状况<br/><br/>简单显示指定设备(这里为eth0)的分类状况<br/>·tc class ls dev eth0<br/>class cbq 1: root rate 10Mbit (bounded,isolated) prio no-transmit<br/>class cbq 1:1 parent 1: rate 10Mbit prio no-transmit #no-transmit表示优先级为8<br/>class cbq 1:2 parent 1:1 rate 8Mbit prio 2<br/>class cbq 1:3 parent 1:1 rate 1Mbit prio 1<br/>class cbq 1:4 parent 1:1 rate 1Mbit prio 6<br/><br/>详细显示指定设备(这里为eth0)的分类状况<br/>·tc -s class ls dev eth0<br/>class cbq 1: root rate 10Mbit (bounded,isolated) prio no-transmit<br/>Sent 17725304 bytes 32088 pkts (dropped 0, overlimits 0)<br/>borrowed 0 overactions 0 avgidle 31 undertime 0<br/>class cbq 1:1 parent 1: rate 10Mbit prio no-transmit<br/>Sent 16627774 bytes 28884 pkts (dropped 0, overlimits 0)<br/>borrowed 16163 overactions 0 avgidle 587 undertime 0<br/>class cbq 1:2 parent 1:1 rate 8Mbit prio 2<br/>Sent 628829 bytes 3130 pkts (dropped 0, overlimits 0)<br/>borrowed 0 overactions 0 avgidle 4137 undertime 0<br/>class cbq 1:3 parent 1:1 rate 1Mbit prio 1<br/>Sent 0 bytes 0 pkts (dropped 0, overlimits 0)<br/>borrowed 0 overactions 0 avgidle 159654 undertime 0<br/>class cbq 1:4 parent 1:1 rate 1Mbit prio 6<br/>Sent 5552879 bytes 8076 pkts (dropped 0, overlimits 0)<br/>borrowed 3797 overactions 0 avgidle 159557 undertime 0<br/><br/>  这里主要显示了通过不同分类发送的数据包,数据流量,丢弃的包数目,超过速率限制的包数目等等。其中根分类(class cbq 1:0)的状况应与队列的状况类似。<br/>  例如,分类class cbq 1:4发送了8076个数据包,数据流量为5552879个字节,丢弃的包数目为0,超过速率限制的包数目为0。<br/><br/>显示过滤器的状况<br/>·tc -s filter ls dev eth0<br/>filter parent 1: protocol ip pref 100 route<br/>filter parent 1: protocol ip pref 100 route fh 0xffff0002 flowid 1:2 to 2<br/>filter parent 1: protocol ip pref 100 route fh 0xffff0003 flowid 1:3 to 3<br/>filter parent 1: protocol ip pref 100 route fh 0xffff0004 flowid 1:4 to 4<br/><br/>这里flowid 1:2代表分类class cbq 1:2,to 2代表通过路由2发送。<br/><br/>显示现有路由的状况<br/>·ip route<br/>192.168.1.66 dev eth0 scope link<br/>192.168.1.24 via 192.168.1.66 dev eth0 realm 2<br/>202.102.24.216 dev ppp0 proto kernel scope link src 202.102.76.5<br/>192.168.1.30 via 192.168.1.66 dev eth0 realm 3<br/>192.168.1.0/24 via 192.168.1.66 dev eth0 realm 4<br/>192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.66<br/>172.16.1.0/24 via 192.168.1.66 dev eth0 scope link<br/>127.0.0.0/8 dev lo scope link<br/>default via 202.102.24.216 dev ppp0<br/>default via 192.168.1.254 dev eth0<br/><br/>  如上所示,结尾包含有realm的显示行是起作用的路由过滤器。<br/><br/>6. 维护<br/>  主要包括对队列、分类、过滤器和路由的增添、修改和删除。<br/>  增添动作一般依照"队列-&gt;分类-&gt;过滤器-&gt;路由"的顺序进行;修改动作则没有什么要求;删除则依照"路由-&gt;过滤器-&gt;分类-&gt;队列"的顺序进行。<br/><br/>1)队列的维护<br/>一般对于一台流量控制器来说,出厂时针对每个以太网卡均已配置好一个队列了,通常情况下对队列无需进行增添、修改和删除动作了。<br/><br/>2)分类的维护<br/><br/>增添<br/>增添动作通过tc class add命令实现,如前面所示。<br/><br/>修改<br/>修改动作通过tc class change命令实现,如下所示:<br/>·tc class change dev eth0 parent 1:1 classid 1:2 cbq bandwidth 10Mbit rate 7Mbit maxburst 20 allot 1514 prio 2 avpkt 1000 cell 8 weight 700Kbit split 1:0 bounded<br/>对于bounded命令应慎用,一旦添加后就进行修改,只可通过删除后再添加来实现。<br/><br/>删除<br/>删除动作只在该分类没有工作前才可进行,一旦通过该分类发送过数据,则无法删除它了。因此,需要通过shell文件方式来修改,通过重新启动来完成删除动作。<br/><br/>3)过滤器的维护<br/><br/>增添<br/>增添动作通过tc filter add命令实现,如前面所示。<br/><br/>修改<br/>修改动作通过tc filter change命令实现,如下所示:<br/>·tc filter change dev eth0 parent 1:0 protocol ip prio 100 route to 10 flowid 1:8<br/><br/>删除<br/>删除动作通过tc filter del命令实现,如下所示:<br/>·tc filter del dev eth0 parent 1:0 protocol ip prio 100 route to 10<br/><br/>4)与过滤器一一映射路由的维护<br/><br/>增添<br/>增添动作通过ip route add命令实现,如前面所示。<br/><br/>修改<br/>修改动作通过ip route change命令实现,如下所示:<br/>·ip route change 192.168.1.30 dev eth0 via 192.168.1.66 realm 8<br/><br/>删除<br/>删除动作通过ip route del命令实现,如下所示:<br/>·ip route del 192.168.1.30 dev eth0 via 192.168.1.66 realm 8<br/>·ip route del 192.168.1.0/24 dev eth0 via 192.168.1.66 realm 4</div>
 楼主| 发表于 2007-4-20 04:31:07 | 显示全部楼层
<div class="tpc_content">Linux学习基础<br/><br/>1、什么是Linux? <br/><br/>  准确的说,是指Linux的kernel(系统的核心程序),其内核版权属于Linus Torvalds,在GPL(GNU General Public License)版权协议下发行, 任何人都可以自由的复制(copy), 修改(change), 套装分发(distribute),销售,但是不可以在分发时加入任何限制, 而且所有原码必须是公开的,所以任何人都可以无偿取得所有执行文件和原代码。 <br/><br/>  对于Linux用户和系统管理员来说,Linux是指包含Linux kernel、utilities (系统工具程序)以及application (应用软件)的一个完整的操作系统。Linux的应用软件是由自由软件基金会(FSF)开发的,全世界许多热心的程序员为Linux开发或移植了很多应用程序,包括X-Windows、Emacs、TCP/IP网络(包括SLIP/PPP/ISDN)等等,现在Linux(包括内核和大量的应用程序)光是执行程序就已经达到200M,完全安装后的规模将更大(大约500M左右)。 <br/><br/>  从本质上讲,Linux是Unix的”克隆”或Unix风格的操作系统,在原代码级上兼容绝大部分的Unix标准(如IEEE POSIX,System V,BSD),它遵从 POSIX规范,例如对于System V来说,把其上程序源代码拿到 Linux下重新编译后就可以运行,而对于BSD Unix来说,它的可执行文件可以直接在Linux环境下运行。 <br/><br/>  Linux的标志是可爱的企鹅,至于为什么选用企鹅,Linus是这样说的:别的都被他人用了,企鹅,不是也非常可爱吗?!由Linux作者发布的仅仅是一个内核而己,有一些公司或组织把内核、原代码及相关的应用程序组织在一起发行, 于是就产生了不同的Linux发行(distributor)版本, 比较著名的发行版本有RedHat、SlackWare 、S.u.S.e、Debian 等。 <br/><br/> 2、Linux的发展历史? <br/><br/>  Linux的历史可以追溯到1990年,Linus Torvalds还是芬兰赫尔辛基大学的一名学生,最初用汇编语言写了一个在80386保护模式下处理多任务切换的程序,后来从Minix(用于操作系统教学、很小的Unix)中得到灵感,发誓要写一个比Minix更好的Minix,于是开始写了一些硬件的设备驱动程序、一个小的文件系统......,这样0.0.1版本的Linux就出来了,但是它必须在有Minix的机器上编译以后才能玩,这时候的Linus已经完全“走火入魔”了,决定踢开Minix“闹革命”,于是在1991年10月5号发布了Linux 0.0.2版本,这个版本已经可以运行bash(一种用户与操作系统内核通讯的软件)和gcc(GNU C编译器)了。 <br/><br/>  Linus从一开始,就决定自由扩散Linux、包括源代码,他把源代码发布在网上,随即就引起爱好者的注意,他们通过互连网也加入了Linux的内核开发工作,一大批高水平程序员的加入,使得Linux达到迅猛发展,到1993年底,Linux 1.0终于诞生。Linux 1.0已经是一个功能完备的操作系统了,其内核写得紧凑高效,可以充分发挥硬件的性能,在4M内存的80386机器上也表现得非常好。 <br/><br/>  很多人对Linux的认识有个误区,即总把Linux与低档硬件平台联系到一起,其实从2.1.xx系列内核开始,Linux就开始走高端的路子了,大约在1.3版本之后,开始向其他硬件平台上移植,包括号称最快的CPU---Digital Alpha(目前主频是最高的),目前Linux能将硬件的性能充分发挥出来,可以囊括低端到高端的所有应用。 <br/><br/>  Linux加入GNU并遵循公共版权许可证(GPL),由于不排斥商家对自由软件进一步开发,不排斥在Linux上开发商业软件,故而使Linux又开始了一次飞跃,出现了很多的Linux发行版,如Slackware、Redhat、Suse、TurboLinux、OpenLinux等十多种,而且还在增加,还有一些公司在Linux上开发商业软件或把其他Unix平台的软件移植到Linux上来,如今很多IT界的大腕如IBM、Intel、Oracle、Infomix、Sysbase、Corel、Netscape、CA、Novell等都宣布支持Linux! 商家的加盟弥补了纯自由软件的不足和发展障碍,Linux得以迅速普及。 <br/><br/><br/>1、如何快速掌握Linux? <br/><br/>  方法是多动手、动脑,学习时要经常与Windows进行对比。建议你先安装RedHat Linux,然后练习如何配置它,如何使用Linux命令,如何在X—WINDOWS下操作,如何在Linux下安装应用软件,如何在Linux下上网、编辑文档、播放多媒体文件、玩游戏等。 <br/><br/>  快速上手的方法只有一个,那就是多动手操作,看看你能否完成上面的工作。 <br/><br/>2、Linux与Windows有哪些异同点? <br/><br/>  Windows是图形界面的,Linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,Linux也能显示图形界面,也有开始菜单、桌面、图标等。 <br/><br/>  Windows有MS-DOS方式,在该方式下通过输入DOS命令来操作电脑;而Linux与Windows类似,也有命令方式,Linux启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。 <br/><br/>  不过Linux的分区格式和目录结构,与Windows迥然不同,应用软件的安装方式也不同。 <br/><br/>3、安装Linux时的注意事项 <br/><br/>  安装前确定好Linux安装在哪个分区,Linux也有系统分区和Swap分区(类似Windows的虚拟分区,即交换文件)两个分区。由于Linux支持的分区格式与Windows分区格式不同,所以如果安装了Linux后,Windows还能继续使用,Linux就应该安装在硬盘分区的最后一个扩展分区;其次Linux的Swap分区必须保证有60MB,系统分区最少要保证240MB;此外安装前搜集好PC硬件方面的信息,特别是显示器信息,这将直接决定你安装Linux后,使用图形界面程序的效果;在安装、使用中输入命令时,请注意大小写。 <br/><br/>4、掌握Linux的目录结构 <br/><br/>  Linux的目录结构与Windows不同,而且在Windows下看不到Linux的目录,反过来,Linux也看不到Windows下的目录。Linux下各目录的含义如下: <br/><br/>目录名称 意 义 <br/>/vmlinuz 该目录中存放的是系统内核 <br/>/bin 该目录中存放Linux的常用命令,在有的版本中是一些和根目录下相同的目录。 <br/>/boot 该目录下存放的都是系统启动时要用到的程序,当用lilo引导Linux时,会用到这里的一些信息 <br/>/dev 该目录包含了Linux系统中使用的所有外部设备,它实际上是访问这些外部设备的端口,你可以访问这些外部设备,与访问一个文件或一个目录没有区别。例如在系统中键入“cd /dev/cdrom”,就可以看到光驱中的文件;键入“cd /dev/mouse”即可看鼠标的相关文件。 <br/>/cdrom 该目录在刚安装系统时是空的,你可以将光驱文件系统挂在这个目录下, 例如“mount /dev/cdrom /cdrom” <br/>/etc <br/>该目录存放了系统管理时要用到的各种配置文件和子目录,例如网络配置文件、文件系统、X系统配置文件、设备配置信息、设置用户信息等。 <br/>/sbin 该目录用来存放系统管理员的系统管理程序。 <br/>/home 如果建立一个名为“xx”的用户,那么在/home目录下就有一个对应的“/home/xx”路径,用来存放该用户的主目录。 <br/>/lib 该目录用来存放系统动态连接共享库,几乎所有的应用程序都会用到该目录下的共享库 <br/>/lost+found 该目录在大多数情况下都是空的。但当突然停电、或者非正常关机后,有些文件就临时存放在这里。 <br/>/mnt 该目录在一般情况下也是空的,你可以临时将别的文件系统挂在该目录下。 <br/>/proc 可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的 <br/>/root 如果你是以超级用户的身份登录的,这个就是超级用户的主目录 <br/>/tmp 用来存放不同程序执行时产生的临时文件 <br/>/usr 用户的很多应用程序和文件都存放在该目录下 <br/><br/>5、Linux的常用命令 <br/><br/>  如果在Linux命令行模式下遇到不会用的命令,你可以打"man [command]"得到该命令的帮助,如果想知道一个命令有哪些参数,可以打command -help来得到。 <br/><br/>  注意:linux中的参数输入形式和dos不一样,在命令后面应该打一个空格,然后打"-",最后再跟一个或多个参数;另外linux下大小写是有区别的! <br/><br/>  下面介绍几个linux下最常用的命令,每个命令都与对应的dos命令作比较,并列出一些常用的参数。 <br/><br/>命令参数 意 义 <br/>Ls <br/>-a列出系统中的隐含文件,linux下的隐含文件是靠文件名的格式来表示的,不同于dos是靠文件属性来表示,即只要该文件以“.”开头,那么它就是隐含文件。 <br/>-l以长式列出。就是把该文件或目录的所有信息都列出来,一个文件占一行 <br/>相当于dos下的dir命令,是列文件列表的命令。 <br/>cd 和dos下的cd一样,转换目录的命令。 注意:linux下转到上级目录要打"cd .."而不是dos下的"cd..",即"cd"后面要有个空格 <br/>pwd 列出当前目录命令,相当于dos下没有参数的cd命令。例如: <br/>[root@ttqq bin]# pwd /usr/bin [root@ttqq bin]# 这表示目前在"/usr/bin"目录下。 <br/>Mkdir <br/>-m mode表示建立目录时默认的目录模式。这个是dos和Windows所没有的功能,主要是关于权限的问题。 <br/>建立新目录,相当于dos的md命令。一般就用 mkdir [dirname] <br/>rmdir 删除目录,相当于dos的rd命令。 <br/>用法:rmdir [dirname] <br/>cat 在文件后面追加文件,或在屏幕上打印文件内容,追加功能相当于dos的copy file1+file2,而在屏幕上打印文件内容可以和dos的typeml来类比。如果文件太大,在一屏上无法完全显示,则可用more命令 <br/>more 分屏显示文件内容,和dos下的more命令大致相同,但它可以和别的命令搭配使用。如:cat /home/eec/myfile | more。 <br/>cp <br/><br/>-r相当于dos的xcopy/s。用于拷贝一个目录下的所有子目录和文件 拷贝文件,相当于dos下的copy,使用方法与dos下的copy一样。 <br/><br/>======================================= <br/><br/>系统安装: Linux快速入门 <br/><br/>不少初学者都觉得Linux操作系统难用,现特将Linux中的基本操作与DOS操作系统中相似的操作对照比较如下,以让大家尽快入门 <br/><br/><br/>[一、基础知识] <br/>1、[系统安装] <br/>Linux的安装时,使用Tab、箭头、空格、回车等键做出选择。Linux一般须安装在单独的分区下,为避免Windows系统中的注册表、快捷方式路径出错,最好安装在硬盘的最后一个分区。即将最后的一个分区删除后,用分区软件(建议用Pqmagic)分为Linux Native(根分区)和Linux Swap(数据交换区),如果您的硬盘大于8G,您的Linux root分区应安装在前8G之内(linux 根分区终止扇区 &lt;1023 柱面)。Native分区一般要大于240MB,具体大小视安装的Linux组件决定,建议不要大于2G。Swap分区必须有60MB以上。安装前要搜集好您的硬件信息如:CPU、内存、显示器、显卡、鼠标、键盘等。Linux的版本有很多,而且不断更新,根据提示安装一般都可顺利完成。 <br/><br/>2、[登陆进入] <br/>默认安装,启动后在出现的Lilo boot:之后输入Linux(或回车),Linux便开始启动,当出现登陆提示符Login:时,输入用户名,然后出现口令提示符password:输入口令。可进入相应的用户环境。如输入:root,及其密码,可进入超级用户环境#,输入其他用户名及口令,可进入该用户环境$(当然由于版本的不同还可能是%等)。 <br/><br/>3、[关闭系统] <br/>在超级用户提示符#下输入halt(立即关机)或shutdown [time](延迟time分后关机,给各用户每隔一段时间发出还有多长时间将关机的警告)后,计算机将进行一系列的关机工作,最后出现System halt时,表示可以关闭电源了。非超级用户则需用exit命令退出操作环境,再用超级用户:root登陆,才能执行关闭操作。 <br/><br/>4、[注意事项] <br/>与DOS不完全相同的地方: <br/><br/>  DOS Linux 备注 <br/>命令行字母 不区分大小写 区分大小写 在Linux中,超级用户的系统提示符是#,一般普通用户的系统提示符是$,普通用户的系统提示符也同DOS一样可以更改。通配符中*、?与DOS中的含义相同,[]是仅包括括号内的符号,连续的符号可用“-”连接首尾的符号代替,如[12345678]可以用[1-8]代替,[abcdefijk]可用[a-fi-k ]表示。 <br/>路径分隔符 / <br/>提示符 &gt; #、$ <br/>通配符 *、? *、?、[] <br/><br/>5、[文件类型] <br/>与DOS、Windows不同,在Linux系统中,目录和设备都被视为文件,共有四种文件类型,它们是:⑴普通文件,即我们通常所说的文件,在长列目录方式时行首前用一符号“-”表示。⑵目录文件,即我们通常所说的目录,在长列目录方式时行用首前用一字母“d”表示。⑶字符设备文件,如显示器、打印机、终端等,在长列目录方式时行首前用一字母 “c”表示。⑷块设备文件,如硬盘、软盘、光盘在长列目录方式时行首前用一字母“b”表示。在Linux中用长格式列目录命令ls -l时,例如: <br/><br/>-rwxrw-r-- 5 user group 1089 Nov 18 1998 filename <br/>存取权限 用户 组名 字节数 最后修改时间 文件名 <br/><br/>DOS下的文件名是8.3格式的,Windows95以后开始支持长文件名,Linux支持长文件名。在DOS下扩展名是com、exe或bat的文件为可执行文件,但在Linux中文件类型只能通过文件属性得知,用命令ls –F可区分目录和文件,后有“/”符号的为目录,后有“*”符号的为可执行文件,用ls –aF可列出所有的文件和目录,包括隐藏的文件和目录,文件名以点号“.”开头的为隐藏文件。 <br/><br/>6、[读取权限] <br/>在Linux中,文件的主人称所有者,其他使用者分别称为同组者、其他人,为保证各用户文件的安全,Linux继承了UNIX的作法,通过设定存取权限,限制某些用户对文件的随意存取。共有三个级别的存取权:读权r、写权w、执行权x。在存取权中共有九个字符的位置其顺序是:所有者、同组人、其他人。在上例中分别表示:主人对文件拥有读写权和执行权,同组人对文件拥有读写权、其他人对文件只拥有读权。 <br/><br/>7、[使用帮助] <br/>在Linux中,您只要在命令行中打上man command(您要看帮助的命令),就可以得到该命令的在线帮助。man有一套它自己的命令,通常由单个键组成,按空格键和F键将翻到下一页,按B键翻到上一页,按Q键退出man,回到命令行。 <br/><br/>[二、文件管理和目录操作] <br/>1、[文件管理] <br/><br/>功能 DOS Linux 备注 <br/>显示文件内容 type、more cat、more type、cat是全部显示,more是分页显示 <br/>拷贝文件 copy cp <br/>移动文件及改名 move mv <br/>删除文件 del、erase rm <br/>打印文件 print lpr <br/><br/>2、[目录操作] <br/><br/>功能 DOS Linux 备注 <br/>列目录及文件 dir/选项 ls –选项 在Linux中cd/是直接返回登录时的目录而不是根目录 <br/>显示当前目录 cd pwd <br/>变更工作目录 cd目录 cd/目录 <br/>建立目录 md、mkdir mkdir <br/>删除目录 rd、rmdir rmdir <br/>目录更名 move mv <br/>拷贝目录 xcopy copy <br/><br/>据说很多DOS命令都是借鉴UNIX的,而Linux又是从UNIX发展起来,故DOS和Linux命令的格式很相似,只是Linux的命令的功能更加强大,各选项、参数有较大区别,具体运用时可使用帮助命令。 <br/><br/>[三、外存储器的使用] <br/>在Linux中一般不能直接访问软盘、其他硬盘逻辑分区、光盘等,在Linux中它们都被视为文件,在使用前必须使用装载命令mount将它们装载到系统的/mnt目录中,使用结束后还须卸载。命令格式如下: <br/><br/>mount –t 文件系统类型 设备名 装载目录 <br/><br/>常用的文件类型有: <br/>msdos dos分区文件 <br/>vfat 支持长文件名的dos分区 <br/>ext2 Linux的文件系统 <br/>swap Linux swap分区或swap文件 <br/>iso9660 安装CD-ROM的文件系统 <br/>hpfs OS/2分区文件系统 <br/><br/>设备名是指要装载的设备的名称,如软盘、硬盘、光盘等,软盘一般为/dev/fd0 fd1,硬盘一般为/dev/hda hdb ,硬盘逻辑分区一般为期hda1 hda2…等等,光盘一般为/dev/hdc。在装载前一般要在/dev/mnt目录下建立一个空的目录(名字自拟),如软盘可为floppy,硬盘分区可为其盘符如c、d等等,光盘可为cd-rom,个体使用例子: <br/><br/>装载一个mddos格式的软盘:mount –t msdos /dev/fd0 /mnt/floppy <br/>装载一个Linux格式的软盘:mount –t ext2 /dev/fd0 /mnt/floppy <br/>装载Windows98格式的硬盘分区(C盘):mount –t vfat /dev/hda1 /mnt/c <br/>装载一个光盘:mount –t iso9660 /dev/hdc /mnt/cd-rom <br/><br/>装载完成后便可对该目录进行操作,在使用新的软盘及光盘前必须退出该目录,使用卸载命令umount卸载,才可以使用新的软盘及光盘,否则系统会不承认的,光盘在卸载前是不能用光驱面板前的弹出键退出的。 <br/><br/>以上只是Linux基本的知识,不过相信您掌握后便已快速步入Linux了之门,进一步深入学习其他Linux知识了应该不成问题了。</div>
 楼主| 发表于 2007-4-20 04:31:57 | 显示全部楼层
<div class="tpc_content">secowu 系统封装教程<br/><br/>●目前解决万能克隆兼容性(指克隆恢复后首次启动蓝屏、死机)的手段:<br/>1、制作时,删除intelide,intelppm,删除母机的设备及驱动;<br/>2、制作时,避免任何预先写注册表的驱动,主要是指SCSI、RAID、SATA驱动,这些驱动很容易引起克隆恢复失败;<br/>3、制作tib镜像时,采用AUR通用恢复技术处理;<br/>4、恢复过程中,使用手工启动Acronis.True.Image.with.Universal.Restore,使用Universal.Restore功能。需要SCSI、RAID、SATA驱动的机器必须要采用这样的手段才能保证恢复成功。<br/><br/>●Acronis.True.Image.with.Universal.Restore(即AUR)与longhorn封装技术结合:进行longhorn封装后,利用AUR进行备份→通用恢复→再备份,这样可以在一定程度上解决许多未知的兼容性问题。<br/>●Longhorn封装技术主要解决:电源判断及重新生成SID、自动扫描常用驱动等问题。<br/>●Acronis.True.Image.with.Universal.Restore,利用通用恢复功能主要解决兼容性问题,制作tib镜像时使用,恢复过程中也可以使用,比GHOST技术多了一个选择。<br/>●Acronis.True.Image.with.Universal.Restore,新的通用恢复,可以自动扫描加载光盘或者其它移动介质上的SCSI、RAID、SATA驱动,这样在制作时就没有必要预先写注册表的驱动,保证了恢复系统的兼容性及运行的稳定性,也就是说:不会产生多余的垃圾!<br/>●Acronis.True.Image.with.Universal.Restore比ghost8.x版本具有更好的兼容性,已经发现部分电脑启动ghost就死机,而启动Acronis正常。<br/><br/><br/>一、系统安装及软件安装<br/>1、系统安装:在VM高版本上安装Windows.XP.Pro.SP2.VOL.CN,然后安装你需要的软件、补丁及优化设置、必要的减肥。<br/>  建议的减肥项目:<br/>  1)删除WINDOWS目录下所有的补丁反安装文件即$uninstall...目录,删除后就无法卸载补丁了。同时也删除WINDOWS\$hf_mig$目录。然后用SpybotSD 1.4正式版清理注册表,主要是清理注册表内的卸载信息,这样 控制面板就不会出现卸载补丁的项目了。<br/>  2)删除WINDOWS\SoftwareDistribution\Download目录下的所有文件,这些是在线升级时自动下载的补丁安装文件。<br/>  3)删除C:\Documents and Settings\Administrator\Local Settings\History目录下所有文件。<br/>  4)删除C:\Documents and Settings\Administrator\Local Settings\Temp目录下所有文件。<br/>  5)删除C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files目录下所有文件。<br/>  6)删除C:\WINDOWS\Prefetch目录下的所有文件。<br/>  7)删除windows\debug\*.log         (也可在封装后,制作tib前,进入DOS删除)<br/>  8)删除windows\system32\reinstallback\*.* (也可在封装后,制作tib前,进入DOS删除)<br/>  9)删除windows\system32\urttemp\*.*    (也可在封装后,制作tib前,进入DOS删除)<br/>2、更改电源模式为Standrad PC,同时卸载网卡,重新启动后更改IDE 控制器为标准IDE控制器,卸载其中的一个Standrad PC,并卸载网卡,然后再重新启动<br/>3、避免出现本地连接2、连接3的方法: 处理方法如下: 开始-运行-REGEDIT,然后编辑-查找,输入“本地连接”,找着后,把它的上一级分支一并删除。按F3继续查找………。或者查找网卡名进行删除也可以达到同样目的。<br/>4、注意事项:<br/>  ●强烈推荐使用NTFS系统制作,NTFS会提高系统的稳定,恢复速度也快些,不正常关机重新启动后不需要检测硬盘。<br/>  ●重新封装的系统恢复安装时系统将把输入法的相关设置还原到系统默认状态,封装前新安装的输入法将不在语言栏的列表里显示。解决方法:打开控制面板→“区域和语言选项”→“高级”→“默认用户帐户设置” →选中“将所有设置应用于当前用户帐户和默认用户配置文件”。<br/>  ●安装OFFICE2000、OFFICEXP、OFFICE20003时注意,更新全部补丁后一定要运行一次所有的每一个组件(尤其是安装时标明第一次运行时才安装的组件)。如果不运行一次,恢复后,有些组件会要求插入原盘。<br/>  ●安装ACAD2002、2004、2005、2006、2007版本请不要运行,也不要注册,恢复后才用注册机注册。封装前如果运行ACAD2002,恢复后注册ACAD2002时会出现8段申请码,而不是正常的4段。<br/>  ●安装WINDVD7时,不要激活,因为即使你已经注册了,恢复到新机后会要求重新激活。<br/>  ●ACDSEE7.0以上版本,不要预先安装,否则恢复到新机后,运行时会提示注册表已经更改,需要重新安装,但即使你卸载了也安装不了,需要仔细清理注册表,好麻烦啊。<br/>  ●Alcohol 120%不可以预先安装注册,否则恢复后会出现问题。<br/>5、删除intelide、intelppm,兼容非intel机器<br/>  ●开始-运行-REGEDIT,进入注册表后,查找intelide,把相关的注册表项删除<br/>●开始-运行-REGEDIT,进入注册表后,查找intelppm,把相关的注册表项删除<br/>6、关于删除日、韩、繁体输入法,推荐采用如下方法:<br/>  1)、可以使用XPlite v1.6绿色版关闭系统保护<br/>  2)、然后删除C:\WINDOWS\ime\IMJP8_1、C:\WINDOWS\ime\IMKR6_1、C:\WINDOWS\ime\CHTIME目录下的所有文件,保留目录名<br/>  3)、运行TuneUp Utilities 2006,清理注册表(建议XP安装此优化软件,但注意此软件对涉及中文的目录、文件名等快捷方式会自动清理掉)<br/>  4)、运行Spybot - Search &amp; Destroy v1.4清理注册表,删除所有无效的项目。<br/>  5)、运行XPlite v1.6绿色版,打开系统保护,重新启动。<br/><br/>●到了这一步,建议备份以上所有的工作(用GHOST或者ACRONIS制作备份镜像),以后需要更新补丁或者软件时,恢复此镜像即可。<br/><br/>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++<br/><br/>二、封装文件准备:COPY整个sysprep目录到C:\<br/>  如果想修改进入系统后的IP自动设置,请修改$ncsp$.inf文件!如果不想自动预先设置IP,可以把此文件删除。<br/><br/>三、集成不预先写注册表的常用驱动(扫描式驱动,即系统恢复过程中自动扫描,如果需要就安装,不需要的驱动在系统完全恢复后自动删除,不留下痕迹)<br/>  最新的驱动程序可以从<a href="http://www.driverpacks.net/" target="_blank"><font color="#698cbb">http://www.driverpacks.net/</font></a>获得,然后把它们解压后一并放入c:\sysprep\drivers目录,或者采用木鸟提供的补充驱动包,解压后放入c:\sysprep\drivers目录<br/><br/>四、封装前的最后准备工作:清理注册表,尽量清除制作母机的设备及驱动<br/>  1、运行“查看隐藏的幽灵硬件.js”,自动打开硬件管理器,用手工一一卸载所有能卸载的硬件项目,包括所有灰色的幽灵硬件。(也可以复制devcon.exe文件到windows目录,开始-运行-CMD-输入命令devcon remove *,清理硬件,但不推荐使用。)<br/>  2、开始-运行-REGEDIT,进入注册表后,查找vmware,把相关的注册表项删除,尤其注意删除显卡、网卡及硬盘控制卡,此过程稍显复杂。<br/>  <br/>●“查看隐藏的幽灵硬件.js”的内容如下,可以用记事本保存为“查看隐藏设备.js”。<br/>var shell<br/>shell = WScript.CreateObject("WScript.Shell")<br/>shell.Environment("System").Item("DEVMGR_SHOW_NONPRESENT_DEVICES")='1'<br/>shell.run("devmgmt.msc")<br/><br/>五、开始longhorn封装<br/>  1、根据你的情况,修改sysprep.inf文件(也可以不改)<br/>  2、运行PathChanger_v01.exe,设置系统恢复时查找驱动的路径,选择c:\sysprep\Drivers目录,然后点击set path即可.<br/>  3、运行sysprep.exe,选择-最小化安装、封装完成后退出及重新生成SID。<br/>  4、运行DllcacheManager.exe,备份Dllcache文件夹,选择恢复时删除自己。<br/>  5、进入longhorn_cn目录<br/>   ●运行Clear_HAL.CMD,自动删除注册表中的ACPI_HAL及PCI_HAL<br/>   ●运行PRE_longhorn.CMD,完成所有封装文件准备工作。<br/>  6、删除longhorn_cn目录。<br/>六、制作万能恢复镜像tib<br/>  重新启动电脑后你先不要进入系统,进入Acronis.Universal.Restore,制作系统分区的镜像,请按照步骤:备份-通用恢复-再备份,以确保恢复到新机的兼容性。形成的tib镜像就是系统万能恢复镜像了,在操作过程中,可以选择压缩水平,建议选择最高压缩水平,另外选择每个分卷镜像的大小。根据自己制作的启动光盘容量,自己选择需要分卷压缩制作镜像的容量。由于ACRONIS对于分开2个CD以上的恢复比较弱智,建议最好不要分卷,直接形成一个大的tib镜像,用DVD刻录。当然分成2个以上的CD刻录也可以的,只是恢复时需要反复换盘,比较麻烦些。<br/>七、启动光盘ISO的制作<br/>  ●最简单的方法是仿照AUR_Windows_Drivers_SuperPurge_DVD.iso结构,把ISO解压到一个目录下,使用EasyBoot,替换其中的vista.bmp(背景)为你自己的背景。tib替换为你自己的。然后利用EasyBoot的制作ISO功能!<br/>●制作Acronis.Universal.Restore盘,用UltraISO打开Acronis.True.Image.9.1.3633.Workstation.with.Universal.Restore.Full.iSO,然后把tib镜像放进去,把SCSI、RAID、SATA驱动文件放进去(这些驱动文件必须预先解压的,以便程序可以自动查找搜索),然后另存即可,恢复时采用通用恢复,会自动加载光盘上适合你机器的驱动。SCSI、RAID、SATA驱动可以从<a href="http://www.driverpacks.net/" target="_blank"><font color="#698cbb">http://www.driverpacks.net/</font></a>下载最新版本。<br/>八、需要说明的一些问题:<br/>●sysprep目录内的文件,只适合Windows.XP.Pro.SP2.VOL.CN进行封装,安装系列号、用户名、公司名等可根据自己的需要修改。<br/>  ●如果不想集成常用驱动,可以不执行第三步(也不要运行PathChanger_v01.exe)。<br/>注:<br/>1、DriverPack_MassStorage_V6031是BTS上下载的SCSI、RAID、SATA驱动包,经过解压。<br/>2、对于Windows2000版本,由于注册表权限问题,在删除母机设备及intelide前,需要先运行2k_VMDRV.cmd及INTELIDE_DEL.CMD,然后再进入注册表操作!<br/>3、Acronis.True.Image.9.1.3633.Workstation.with.Universal.Restore.Full.iSO的功能有限,如果已经使用AUR_Windows_Drivers_SuperPurge_DVD.iso,则没有必要用它制作光盘。</div>
 楼主| 发表于 2007-4-20 04:35:19 | 显示全部楼层
Windows 2000XP 注册表终极修改<br/><br/>Microsoft Windows 2000/XP 是一个强大的操作系统,为我们提供了以往Windows 9x从未有过的安全性能,可是你是否感觉某些地方的设置还不够呢,这里就对Windows 2000 的注册表进行一些修改来达到我们的目的。 &nbsp; <br/><br/>一、修改开始菜单和任务栏 &nbsp; <br/>由于以往不少文章对 Windows 9x 下的修改方法介绍了不少,所以有一些常见的我这里就不再赘述了:) &nbsp; <br/>另外请注意,此次更改的注册表项目是在HKEY_CURRENT_USER下的,如果只想针对某一用户则只需要修改HKEY_USERS\用户代码(比如S-1-5-21-448539723-113007714-842925246-1000) 下的相应键值就可以了。 &nbsp; <br/><br/>1.禁止开始菜单上的上下拖动 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoChangeStartMenu的DWORD,然后将它赋值为:1 (0x1)即可 &nbsp; <br/><br/>2.禁止更改任务栏和开始菜单设置 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoSetTaskbar的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>3.不保留最近打开文档的纪录 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoRecentDocsHistory的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>4.禁用个性化菜单 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为Intellimenus的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>5.禁用用户追踪功能 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoInstrumentation的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/>S:用户追踪功能是系统跟踪用户使用的程序、用户导航的路径和用户打开的文档的一种功能。系统用这个信息来自定义 Windows 功能,如个性化菜单等。 &nbsp; <br/><br/>6.在“运行”中添加“在单独的内存空间中运行”的选项 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个MemCheckBoxInRunDlg的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/>S:在默认情况下,所有十六位程序都在单一共享的 VDM 进程中作为线程运行。在这种情况下,这些程序共享分配给 VDM(虚拟DOS机器) 进程的内存空间,因此不能同时运行。我们的设置就是允许用户在专用的(不是共享的)VDM进程中运行十六位程序。另外复选框只有在用户在“运行”对话框中输入十六位程序时才被启用。 &nbsp; <br/><br/>7.防止系统通过进行一个综合目标驱动器的寻找解析一个快捷键。(仅限于NTFS格式硬盘) &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoResolveSearch的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/>S:在默认的情况下,当系统无法为快捷键(.lnk)找到目标文件,它寻找所有与快捷键有关的路径。如目标文件位于 NTFS 分区,系统会使用目标文件的 ID 去寻找路径。我们这样设置可以防止系统通过进行一个综合目标驱动器的寻找解析一个快捷键。 &nbsp; <br/><br/>8.防止系统使用 NTFS 跟踪功能解析一个快捷键。(仅限于NTFS格式硬盘) &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoResolveTrack的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>9.用灰色文字显示安装不完全的程序的「开始」菜单快捷方式 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为GreyMSIAds的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/>S:使用该功能后,打开「开始」菜单的速度就会变慢。 &nbsp; <br/><br/>二、修改桌面设置 &nbsp; <br/><br/>1.隐藏桌面的所有图标 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoDesktop的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>2.从桌面上删除“我的文档” &nbsp; <br/>在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies下新建一个名为NonEnum的项,然后再其下面新建一个名为{450D8FBA-AD25-11D0-98A8-0800361B1103}的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/>S:该功能并不是真正的删除了“我的文档”文件夹 &nbsp; <br/><br/>3.在桌面上删除“网上邻居” &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoNetHood的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>4.从桌面及任务栏上的“快速启动”上删除 Internet Explorer 图标 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoInternetIcon的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>5.不将最新打开的文档共享添加到“网上邻居”上 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoRecentDocsNetHood的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>6.禁止用户更改“我的文档”文件夹的路径 &nbsp; <br/>在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为DisablePersonalDirChange的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>7.防止用户改动桌面工具栏 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoCloseDragDropBands的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>8.防止用户调整桌面工具栏的长度,并且用户不能再锁定的工具栏上重新放置项目或工具栏 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoMovingBands的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>9.退出时不保存设置 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoSaveSettings的DWORD,然后将它赋值为 1 (0x1)即可 &nbsp; <br/><br/>10.禁用活动桌面 &nbsp; <br/>在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建一个名为NoActiveDesktop的DWORD,然后将它赋值为 1 (0x1)即可&nbsp;&nbsp; <br/><br/>
您需要登录后才可以回帖 登录 | 注 册

本版积分规则

站点统计|小黑屋|手机版|Archiver|和平家园 ( 粤ICP备13078947号-1 )

GMT+8, 2024-5-25 17:34 , Processed in 0.025760 second(s), 11 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

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