红联Linux门户
Linux帮助

Linux的使用,学好这,走遍LINUX,谁都不怕

发布时间:2006-02-23 20:07:01来源:红联作者:西西
1、在Linux下玩DOOM游戏出问题的解决办法?

  要正确的音效输出,必需使用2.90版或以后的声音驱动程序;它支持即时“DOOM模式”,音效样本是16bit的,如用8bit声卡,可用一些程序(下载地址 ftp://sunsite.unc/edu/pub/Linux/games/doom)让声音出现,如果DOOM动作不流畅,把音效取消(将sndserver文件改名)会有一些改进,DOOM预设是不支持音乐(如同DOS版)的,musserver程序将增加Linux下的音乐支持,它可以在 ftp://pandora.st.hmc.edu/pub/linux/musserver.tgz 中找到。

  2、Linux下的应用程序是否也存在2000年问题?

  应该没有,但是有2161年问题。和其它操作系统一样,Linux的系统时间是一个整数,目前是32位的。它表示从1970年1月1日0点0分0秒开始算起的秒数。2^32/3600/24/365是它溢出的大致年数,这个数是136。1970+136=2106!

  3、Linux与DOS下执行程序有何异同?

  在Linux下要执行一个程序,就像DOS下那样,键入它的名字即可。如果这个程序被放在 PATH指定的目录中,该程序就会被启动。不同的是,Linux不像DOS那样,可以执行放在现行目录下的程序,除非已经加入PATH中了,在Linux下,若要执行现行目录下的程序,可以这样做:./.

  Linux还可以同时执行数个程序,可以在同一行上键入数个命令:

  $ command1 ; command2 ; ... ; commandn

  Linux还可以将一个原本在背景执行的线程提升到前景并继续执行,而且Linux还可以使你有多个session,就如同有好几台电脑在同时工作!

  有关Session的操作有:

  1)切换 session 1..8:

  $ ... .

  2)开始一个新的 session , 但不离开原本 session :

  $ su - 例如: $ su - root

  这相当有用,比如当你要mount一个磁盘(机)时。因为只有 root可以作这件事。

  3)结束一个 session:

  $ exit

  4)在前景执行一个线程:

  $ progname [-switches] [parameters] [output]

  5)在背景启动一个线程(在背景执行)要加上 '&' 这个符号:

  $ progname [-switches] [parameters] [output] &

  6)查看有多少线程正在执行:

  $ ps

  这样会列出一个表格,每一个线程都会有一个 PID 来识别(一个数字)。

  7)删除一个线程:

  $ kill

  有时你需要用该方法来结束一些线程,一个线程可能需要以下方法才可以结束:

  $ kill -15

  $ kill -9

4、Linux的shell下有关“工作”的操作有哪些?

  Shell是Linux下与DOS 的COMMAND.COM相等的东西,它允许你暂停某个线程的执行,或是把前景换到背景、背景换到前景执行,线程也称作'工作'。

  1)查看有多少工作:

  $ jobs这样列出来的工作是以一个 shell 分配的数字来区别的, 而不是用 PID.

  2)暂停一个前景的线程:

  $ (但不总是有效 )

  3)暂停前景的程序:

  $

  (ditto)

  4)将一个被暂停的程序移到背景继续执行:

  $ bg

  5)把一个背景执行中的程序提升到前景:

  $ fg

  6)再一次的, 要砍掉一个线程:

  $ kill %

  这里的 可能是 1, 2, 3, ... 有了这些命令,你就可以在同一个时间格式化磁盘,压缩档案, 编译一个程序, 还可以解压缩, 而且你仍然还是看到提示号和游标在等待你的命令。

  5、怎样改变Linux文件的模式和权限?

  使用chmod命令,它是"Change mode"的缩写。这个命令能轻松改变任何文件的模式,以便让你授权的人能读、修改或执行这个文件。有三个基本级别的用户,即:文件拥有者(user),拥有者所在组(group)和其他人(other)。同时也有三个级别的权限:读(read),写(write)和执行(execute)。用户类型可略写为:"u"代表用户,"g"表示拥有者所在的组,"o"为所有其他的用户,"a"表示任何人。而权限也同样缩写为:"r"表示读,"w"表示写,"x"表示可执行。例如要改变文件harold.cat的权限以允许组外用户可读,可键入:chmod o+r harold.cat,chmod命令能允许同时改变多个文件,例如去掉允许任何人对.cat文件写的权限、去掉组外用户的所有权限:chmod a-w,o-rx*.cat

  6、Linux与DOS文件常用指令比较,Linux下怎样压缩一个文件?

  下面左边是DOS 命令,右边是Linux下具同样功能的指令:

  COPY: cp

  DEL: rm

  REN: mv

  TYPE: more, less, cat

  例如:

  DOS Linux

  C:GUIDO>copy joe.txt joe.doc $ cp joe.txt joe.doc

  C:GUIDO>copy *.* total $ cat * > total

  C:GUIDO>copy fractals.doc prn $ cat fractals.doc | lpr

  C:GUIDO>del temp $ rm temp

  C:GUIDO>del *.bak $ rm *~

  C:GUIDO>ren paper.txt paper.asc $ mv paper.txt paper.asc

  C:GUIDO>type letter.txt $ more letter.txt

  C:GUIDO>type letter.txt $ less letter.txt

  C:GUIDO>type letter.txt > nul $ cat letter.txt >/dev/null

  n/a $ more *.txt *.asc

  n/a $ cat section*.txt

  Linux命令中.* 表示所有隐藏文件;*.* 就是"某些字元" +一个点 + "某些字元" 的文件名称;例如p*r可以满足peter和piper;picked和peck也可以表示为 *c*。Linux还有另外一组万用字元[],使用方法是:

  [abc]* 表示以a,b,或是c开头的文件;

  [I-N]* 表示由I,J,K,L,M,或 N 开头的文件;

  Linux下压缩一个文件用compress。压缩后的文件名以.z结尾,占用更少的空间,但这也和文件类型有关。例如,TIFF图像文件能压缩到原来的5%,数据库输出能压缩到原来的25%。要压缩一个或多个文件,用compress filenames。要解压一个文件,用uncompress filenames或compress -d filenames,两者结果完全一样。要解压的文件都以.z结尾,因此不必把它加到命令行中去。

7、Linux和DOS目录异同点?

  DOS 用 表示根目录,Linux则是/.;DOS用 来分隔每一层次目录,Linux 用 /. ,例如: DOS: PROGRAMSC++SOURCESHELLO.CPP

  Linux: /home/guido/papers/geology/mid_eocene.tex

  相同的是,“..”表示上一层目录,“.”表示现行目录。值得注意的是:Linux系统并不允许你在任何地方cd、rd或是md,每个user都有个自己的目录称作home(这是系统管理者分配的),例如我的home是/home/guido。

  Linux和DOS目录指令比较:

  DIR: ls, find, du

  CD: cd, pwd

  MD: mkdir

  RD: rmdir

  例如:

  DOSLinux

  C:GUIDO>dir $ ls

  C:GUIDO>dir file.txt $ ls file.txt

  C:GUIDO>dir *.h *.c $ ls *.h *.c

  C:GUIDO>dir/p $ ls | more

  C:GUIDO>dir *.tmp /s $ find / -name "*.tmp"

  C:GUIDO>cd $ pwd

  n/a - see note $ cd

  n/a - see note $ cd ~

  n/a - see note $ cd ~/temp

  C:GUIDO>cd other $ cd /other

  C:GUIDO>cd ..temptrash $ cd ../temp/trash

  C:GUIDO>md newprogs $ mkdir newprogs

  C:GUIDO>md progsturbo $ mkdir /progs/turbo

  C:GUIDO>rd newprogs$ rmdir newprogs

  C:GUIDO>rd progsturbo $ rmdir /progs/turbo

  ( ~ 是 home 的一个缩写,cd ~ 可瞬间回到自己的home,不论你在哪里,cd ~/tmp 会带你到/home/your_home/tmp)

  8、不想让别的用户看到/etc目录,怎样做?

  chmod 770 /etc 使 /etc 看起来象drwxrwx--- root root /etc

9、Linux和DOS的FORMAT命令区别

  DOS的FORMAT A: 实际上作了以下工作:

  1)物理格式化磁盘;

  2)建立 A: 这个目录 (=Linux中的建立一个文件系统);

  3)使这个磁盘能被使用者使用(=Linux中的mount一个驱动器)。

  这三步在 Linux 中是分开的,在 Linux中可以建立和使用MS-DOS格式的磁盘,还可用其它格式的(例如最常用的ext2),以下是做一张可用的磁盘方法:

  1)先 su 为 root

  2)格式化一张1.44M的软盘(A:)

  # fdformat /dev/fd0H1440

  3)建立一个文件系统:

  # mkfs -t ext2 -c /dev/fd0H1440(建立一个ext2的文件系统)

  或 # mformat a:(建立一个 MS-DOS 的文件系统)

  在使用这张磁盘前,需要先将这个磁盘连通驱动器mount,mount 一个驱动器:

  # mount -t ext2 /dev/fd0 /mnt

  或 # mount -t msdos /dev/fd0 /mnt

  现在可以使用这张磁盘了,当要拿出磁盘前,一定要umount!

  # umount /mnt

  现在可以把磁盘拿出来了。

  fdformat和mkfs最好只对未格式过化的磁盘用、已作过的就不需要用这两条命令了。

  如要使用B驱动器,用fd1H1440 和 fd1 替换前文中的fd0H1440和fd0。这样,以前对A:,B:的工作现在都移转对/mnt操作了,例如:

  DOS Linux

  C:GUIDO>dir a: $ ls /mnt

  C:GUIDO>copy a:*.* docstemp $ cp /mnt/* /docs/temp

  C:GUIDO>copy *.zip a:zip $ cp *.zip /mnt/zip

  C:GUIDO>a: $ cd /mnt

  A:> /mnt$

  使用硬盘的方法类似于软盘,例如可以 mount一个硬盘或光驱,稍微变一下 /dev 下的 device,例如mount一个光驱:# mount -t iso9660 /dev/cdrom /cdrom

  10、如何在Linux下读取软盘DOS系统的文件?

  有两种方法:

  1)将含DOS文件的系统挂到Linux的文件系统上,通过mount命令来实现,mount命令的语法是:mount device mount-point device是指要挂上的设备,如果是软盘,一般是/dev/fd0或者/dev/fd1,表示第一个软驱或第二个。mount-point是希望将文件系统挂上的目录,这个目录必须是在mount之前已经存在,并且一定要是空目录。比如要将系统的第一个软驱中的软盘挂到Linux文件系统中,可以打入如下命令:

  xxx@xxx.xxx root> mount /dev/fd0 /mnt/floppy 然后就可以通过对/mnt/floppy这个目录来访问软盘了。

  2)通过Linux提供的mtool工具来实现的。这些命令使你不需要mount也能访问DOS的文件系统,这样的命令都以m开头,如mdir,mformat,mdel等等。

  (注:第一种方法适合所有Linux支持的文件系统,包括光驱等其他一些设备,可用-t指明想要的文件系统类型。另外,光驱mount以后,不能随便拆除的,必须先umount文件系统才可取出光盘)


11、Linux中AUTOEXEC.BAT 和CONFIG.SYS是什么?

  DOS中有AUTOEXEC.BAT 和CONFIG.SYS,当启动 DOS 时,它们负责系统的一些设置工作,如设定环境变量PATH、FILES等等,甚至可以调入其它必需在开机时载入的程序。

  Linux中也有一些类似的文件,但操作它们时,需要特别谨慎,它们是:

  FILES NOTES

  /etc/inittab don't touch for now!

  /etc/rc.d/* ditto

  如果想设定PATH或其它的环境变量、修改login时的信息、调入一个程序,见下面:

  FILES NOTES

  /etc/issue sets pre-login message 设定login前的信息

  /etc/motd sets post-login message 设定login后的信息

  /etc/profile sets PATH and other variables, etc. 设定环境变量

  /home/your_home/.profile does whatever you want 这里可以随意加入你想要的

  如果最后那个文件(~/.profile)存在,(注意它是隐藏文件,功能类似DOS的AUTOEXEC.BAT),则在login后、它的内含命令就会被执行。例如这个.profile:

  # I am a comment

  echo Environment:

  printenv | more # 相当于DOS下的SET命令

  alias d='ls -l' # easy to understand what an alias is

  alias up='cd ..'

  echo "I remind you that the path is "$PATH

  echo "Have a good day, "$LOGNAME

  PATH 和 LOGNAME,正如你所预料的,是两个环境变量。

  Linux下所有的事都可以按照你的要求作安排,大多数程序都有其自己的初始化设置文件,这些都可以由你来修改,它们通常都以 .prognamerc的形式存在于home目录中,需要知道的设置文件有:

  ..xinitrc: 用来初始化 X Window System;

  ..fvwmrc: 初始化 fvwm 这个 window manager,可以在/usr/lib/X11/fvwm/system.fvwmrc 找到范例;

  ..xfm/*: xfm (一个 file manager) 的设定文件;

  ..Xdefault: 由 rxvt(一个终端模拟程序)所使用。

  对于其它设定文件,参见Man page。
文章评论

共有 6 条评论

  1. oracle_java 于 2006-08-29 20:56:26发表:

    看过了,支持!

  2. jelly 于 2006-07-30 21:37:50发表:

    很有帮助

  3. jkvc007 于 2006-07-30 15:07:57发表:

    不错啊

  4. qingniaox 于 2006-07-30 12:19:40发表:

    学习了

  5. pc虫子 于 2006-05-24 13:11:01发表:

    话题太大了。

  6. sgh2005 于 2006-05-23 01:08:09发表:

    看看