`
wanjianfei
  • 浏览: 306746 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux的目录结构 linux技巧大全

阅读更多
Linux的目录结构

Linux的目录结构比DOS复杂多乐,让我们来看看它的目录里有些什么东西吧.

/bin (binary)
    这个目录包含着所有的标准命令和应用程序.


/boot
    这里存放给lilo使用的一些文件.


/dev (device)
    这个目录包含着与终端和外设的文件接口,在Linux下,文件和设备是用同种方法访问


  的.系统上的每个设备都应该在这里有一个对应的设备文件.
    考察一下这个宏:
    #define putchar(ch) fputc(ch,stdout)
    其中fputs就是把ch输出到stdout去了,这里的stdout就是被当成了文件.


/etc (etcetera)
    这个目录包含着系统设置文件和其他的系统文件,它在Linux下极为重要,让我们看看

  它的子目录装些什么:
  /etc/DIR_COLORS
      设定在用 ls 时,各种不同档案型态所用的颜色,但是不能用pipe 再导向输出,
    否则就没有各种颜色乐.  由档案的内容可以很轻易的了解,如 default 的
    directory 是蓝色,具有可执行档权限的是绿色,而压缩档是红色......  这些都可

    依个人喜好来加以更改. 这个档案内容写得很清楚,想必大家一眼也就可以看得出来

    ,在颜色的组成方面,我们常用  RGB 三原色的成份值来组合出各种不同的颜色. 由

    R,G,B 这个bit 是 0 或是 1 三个值组合出颜色这个道理虽浅显,但假如我们更了解

    R,G,B  的加权值分别是 1,2,4 的话,那就再也不用翻书查颜色乐......  选择自
    己的调色盘来取代预设的调色盘,是经常会做的事.

  /etc/HOSTNAME
      设定用户的节点名.记录完整的hostname与domain name,这个档案在须要hostname

    的场合会用得到,如 /etc/rc.d/rc.M 等......
    的场合会用得到,如 /etc/rc.d/rc.M 等......

  /etc/NETWORKING
      里面只有一行YES,表明网络是存在的,没有任何作用.

  /etc/X11
      link 到 /var/X11/lib/X11

  /etc/aliases
      这个文件是给sendmail的使用设置别名.

  /etc/at.deny
      在这个档案中可记载那些人不能使用at这个命令来做一些later job,假如at.deny

    是空的,而且 at.allow 也不存在的话. 那就是每个人都可以用 at 这个命令.
    (at命令是让系统在特定的时间执行某个作业,会乐这个指令,可以在工作的执行上会

    更有弹性)

  /etc/at.allow
      相对於at.deny,这个档案记载那些人可以使用at.而关於at.deny与at.allow,at会

    先去找at.allow,假如存在而且有记录一些人的话,那就只有这些人能使用at这个
    指令,但假如at.allow并不存在的话,那at就会去找at.deny,没有在at.deny中的人
    都可以使用at这个指令乐! 特别要说明的是,at的执行时间也许会不如你所预期的,


    如说明明一个档你叫它在 7:02 执行,但它却会等到 7:05 才执行,这是因为 crond


    是每五分钟才去看看 at 的 queue 中是否有要执行的 job.  当然,你也可以改成每

    分钟都去 check,但这样似乎没有很大的意义,除非你对时间的准确度要求的很严格

    ,否则应该没有必要去动才是. 大家可去看看 /var/spool/cron/crontabs/root 中

    就有详细记载,每五分钟 run 一次 atrun,所以 at 命令的执行可看成以每五分钟
    为一单位.
      /var/spool/atjobs: 当你使用 at 来安排一件工作时,系统会把你目前的环境变

    数及所要用 at 执行的工作抄一份到这个目录下的档案中.
      /var/spool/atspool:使用 at 命令之後所得到的一些讯息,会被记录在这里.可
    能是 at 所要执行的命令传回的错误讯息,或传回执行成功的讯息.

  /etc/bootptab
      这是用来设置无盘工作站的远端守护进程/user/net/in.bootpd的.用户不用设置.


  /etc/csh.cshrc
  /etc/csh.login
      这两个档案应该很熟悉罗!它就是大家常见到的.cshrc及.login,不过大家通常只


    意到自己的home directory有这两个档,但/etc下也有这两个档,不过/etc下的这两


    档绝大部份的情况下都是由 system administrator 在 maintain(维护),一般user


    应该有权力去改. 顺便一提的是,系统会先去找 /etc 下这两个档,接着才加上自己

    home directory中那两个档的设定.当然,有乐.login也有.logout,.logout中可以写

    一些 message,或执行一些命令,当你下达 logout 之後,.logout 就会被执行.


  /etc/devinfo
      用来给makedev这个程序设定各种不同的设备驱动文件的格式.用户不用设置.
    makedev是在/dev目录下创建设备文件的程序.

  /etc/diphosts
      用来设置拨号服务器的用户名和密码.

  /etc/disktab(disk parameter table)
      假如你在刚开机有 pass 磁碟机的一些参数给 kernel 的话(通常是你的硬碟比较


    怪,需要 pass cylinders,heads,sectors 给 kernel 才抓的到,或者是 SCSI 的硬

    碟有时有时也要用到一些参数 ) 那这些参数就会被记录在这里.

  /etc/exports
      这个档案记录着你要给别人mount的档案系统,这就是典型NFS系统所存在的档案
    ,TCP/IP for OS/2 若要使用 network file system 而要把自己的 filesystem 让

    别人 mount 的话,这个档案也是不可或缺的.

  /etc/fastboot
      这个档案是使用 shutdown -f 所产生的,-f means "fastboot".在重新 reboot
    之後,系统会去检查这个档是否存在,以决定是否要 run fsck.

  /etc/fdprm(floppy disk parameter table)

      设定格式化软盘的参数,一般情况下是不须要更动的,除非你有很奇怪格式的软碟,

    或者你想做出不符合一 般格式的磁碟片.

  /etc/fstab(file system table)
      记录开机要  mount 上来的 filesystem,这个档案相当重要! 大家可以在
    /etc/rc.d/rc.S  中找到 /sbin/mount -avt nonfs 这一列,当执行到这一列时,
    mount 就依据 /etc/fstab  中的记载,自动的将档案系统mount上来.假如你一开机

    就想自动mount一些 filesystems,而不要等到开机後再以手动 mount 的话那把这些

    filesystems 及相关资讯写在这个档.在档案格式方面,每一列有六个栏位,不过後
    面两个栏位常被省略所以我们只看到有四个栏位.其它的两栏分别为dump-freq及
    pass-number.dump-freq 预设值为 0;而pass-number是 fsck 所会参考到的地方,数

    字可为 0,1,2...... 1 表示这个 filesystem 将首先被 fsck check,2 表其次,
    馀类推......
      如我们的服务器:
  •       # Device        Mountpoint      FStype  Options         Dump    Pass#
  •       /dev/wd0s1b     none            swap    sw              0       0
  •       /dev/wd0s1a     /               ufs     rw              1       1
  •       /dev/wd0s1h     /home           ufs     rw,async                2   
  • 2
  •       /dev/wd0s1g     /tmp            ufs     rw,async              
  • 2      2
  •       /dev/wd0s1f     /usr            ufs     rw,async              
  • 2      2
  •       /dev/wd0s1e     /var            ufs     rw,async              
  • 2      2
  •       proc            /proc           procfs  rw              0       0
  •         procfs  rw              0       0
  •       /dev/wcd0c      /cdrom          cd9660  ro,noauto       0       0


  /etc/ftpacces
      设定ftp服务器的一些配置,包括匿名服务器的设置.

  /etc/ftpconversions
      设定在ftp时使用的过滤器的位置.例如"get dirname.tar"就可以将ftp服务器上

    的目录先tar再传回来,这个文件就是设定这些打包或压缩程序的目录和参数的.

  /etc/ftpusers
      这个档案记录那些人不可以 ftp 签入系统,预设值有 root,uucp,news.这些都是


    乐security方面的考虑,你可以在这里加入不可 ftp 进来的 user id.

  /etc/gateways
      顾名思义,这个档案记录一些 gateways 的 information.
      这个档案的格式如下:
    <net|host> name1 gateway name2 metric value <passive|active|external>
    当 routed 启动时,它会去读 /etc/gateways 这个档. 若一个 gateway并不做
    routing information 交换的话,那它就会被标示成  passive,假如有做routing
    information 的交换 ( 这台机器上有 run routed ),那就会标示成 active net 或


    host 这个关键字是指出 route 是到网路或是到一台特定的机器上.  name1  就是


    地网路或目地机器的名字.这个名字可用  /etc/hosts 或是 /etc/networks  中的

osts 或是 /etc/networks  中的
    symbolic host name. name2 就是讯息将被送往之gateway的name或IP address.

  /etc/gettydefs
      getty_ps的定义文件.

  /etc/group
      如同 /etc/passwd 列出乐系统中所有的使用者名字,/etc/group 定义系统中所
    有的 group name 与相关讯息. 格式为:
      group_name:passwd:GID:user_list
    如:wheel:*:0:root,hua,yzr,cyt
    上面的例子表示root,hua,yzr,cyt都是属於wheel这个 group.通常 passwd 那栏是


    白的,表示不用密码.或放一个*号.
      这个档案只能为 superuser 所读写,一个 superuser 可使用 groupadd,
    groupdel,groupmod 来管理 /etc/group 这个档,要手动管理也是可以.下面是这三


    指令的用法 :
 
    groupadd [ -g gid [ -o ] ] group_name
      groupdel group_name
      groupmod [ -g gid [ -o ] ] [ -n new_group_name  ] group_name


  /etc/hostid
      系统独有的一个硬件id,许多商业程序利用这个来做license的管理,在其他工作站


    上这个参数是无法更改的,只有linux可以用hostid这个参数来更改.
    上这个参数是无法更改的,只有linux可以用hostid这个参数来更改.

  /etc/hosts
      这个档案记录着 IP address 至hostname的mapping.如我们想把 202.38.248.1


    个别名叫:bbs.那我们就可以在这个档案里写如下的叙述 :
      202.38.248.1       bbs
    如此一来,以後我们 telnet bbs 就等於 telnet 202.38.248.1.在这个档案中,至
    少会有两列,一列为 loopback,这是为乐侦错目的而设的,另一列为 local host,就


    你自己的机器.

  /etc也是类似的.不过
    这东西最好不要乱设,以信得过的hosts为主,才不会造成security上的困扰.

  /etc/host.deny
      设定那些 remote hosts 不可以使用 inetd.

  /etc/host.allow
      设定那些remote hosts可以使用inetd.如ALL:202.38.248.就是202.38.248.上
    的所有机器都可以用乐.

  /etc/host.lpd
      记录可 access printer 的 hosts.假如一台 printer可被网路上的许多台主机
    所共用,那 printcap  这个档案必须得描述完整的网路设定资讯. 在比较严密控制


    的情况下,有两个条件必须符合首先,local machine 必须在 remote machine 的
    /etc/hosts.eqiuv 中,或者,在 remote machine 的 /etc/hosts.lpd  中被记载第

    二,使用者必须有 remote machine 的帐号.

  /etc/inetd.conf
      设定系统的网络守护进程inetd的配置,格式如下:
      service_name  sock_type  proto  flags  user  server_path   args
      服务名称      包类型     协议   参数   用户  服务器路径    参数
    例如:
    ftp     stream  tcp nowait root   /usr/local/libexec/ftpd ftpd -a
    telnet  stream  tcp nowait root   /usr/libexec/telnetd    telnetd
    #shell  stream  tcp nowait root   /usr/libexec/rshd       rshd
    #login  stream  tcp nowait root   /usr/libexec/rlogind    rlogind
    #finger stream  tcp nowait nobody /usr/libexec/fingerd    fingerd -s
    #exec   stream  tcp nowait root   /usr/libexec/rexecd     rexecd
    #uucpd  stream  tcp nowait root   /usr/libexec/uucpd      uucpd
    #nntp   stream  tcp nowait usenet /usr/libexec/nntpd      nntpd
    #comsat dgram   udp wait   root   /usr/libexec/comsat     comsat
    #ntalk  dgram   udp wait   root   /usr/libexec/ntalkd     ntalkd
    #tftp   dgram   udp wait   nobody /usr/libexec/tftpd      tftpd
/tftpboot
    #bootps dgram   udp wait   root   /usr/libexec/bootpd     bootpd



  /etc/inetd.pid(inetd process id)

      inetd这个进程的进程id.

 /etc/inittab

      设定系统启动时init进程将把系统设置成什么样的runlevel,用户不需要设置.

  /etc/issue
      这个档案被记录着 login prompt 前所要 echo 的 message,特别要注意的是
    /etc/rc.d/rc.S下面的四行若没有mark,则每次开机 issue 及 motd 都会被重建.

  /etc/ld.so.cache
      查找系统动态链接共享库的缓存,如果损坏用ldconfig可以重新产生.

  /etc/ld.so.conf
      系统动态链接共享库的路径,记录一些 library 所在的目录,应用程序从这个文件


    去查找相应的lib文件.例如:
     /usr/local/lib
      /usr/X11R6/lib
      /usr/i486-linuxaout/lib
      /usr/openwin/lib

  /etc/lilo.conf
  /etc/lilo.conf

      配置多重启动程序lilo的配置文件,每次更改之后一定要重新运行lilo才有效.

  /etc/login.defs
      这是所有用户登陆时的缺省配置文件,这个文件中有大量的定义,许多原先在profi

le
    和login文件中的定义都挪到这里乐.如用户缺省路径,登陆时间限制,最多错误登陆


    数等.是系统管理员应该经常修改的地方.

  /etc/magic
      这个档案记载乐许多档案格式的识别字串或方法.那这个档在那里会用的到呢?用


    file 这个指令上.file 这个指令的命令格式为:
      file [ -c ] [ -z ] [ -L ] [ -f namefile ] [ -m magicfile ] file
    file 这个指令可以告诉你某一个档案的格式,如它是一个 text 档,或是一个
    shell script 或 DOS 可执行档等...... 而 file这个指令,就是去参考/etc/magic


    这个资料库.假如你知道某一档案的识别字,而原来 magic 这个资料库没有记录,那

    你可以把识别方法加到资料库中,或乾脆建立自己的资料库算乐.

  /etc/mail.rc;/etc/mailcap;/etc/sendmail.cf;/etc/sendmail.st
      这几个文件都是为了设置sendmail的.

  /etc/makedev.cfg
      同devinfo一样是给makedev使用的设置文件.用户不必设置.


  /etc/motd(message of the day)
      在这个档里面可以写一些 message ,而这些 message 会在 login shell 之前被


    示出来.通常都是 system administrator 要告知 user 的一些讯息. 而关於每次都


    会改变的问题,在前面/etc/issue时已提出过,记得 mark 起来就是乐.

  /etc/mtab
      记录目前mount的filesystem.大家可以用mount指令来看这个档的变化的.每mount

    一个filesystem,在这个文件就可以立刻反映出来乐.也就是说,这个文件是动态更新


    的,可以参见/proc/mounts这个文件.

  /etc/mtools
      这里面记录的是给 /usr/bin/mtools 参考用的 parameter.mtools就是一群操作

    MSDOS档案的命令集合,可用的命令如下:
    
 mattrib - change MSDOS file attribute flags
      mcd - change MSDOS directory
      mcopy - copy MSDOS files to/from Unix
      mdel - delete an MSDOS file
      mdir - display an MSDOS directory
      mformat - add an MSDOS filesystem to a low-level formatted diskette
      mlabel - make an MSDOS volume label
      mmd - make an MSDOS subdirectory

      mrd - remove an MSDOS subdirectory
      mread - low level read (copy) an MSDOS file to Unix
      mren - rename an existing MSDOS file
      mtype - display contents of an MSDOS file
      mwrite - low level write (copy) a Unix file to MSDOS

    这些都被 link 到 mtools.

  /etc/named.boot
      假如你要建立 name server 的话,那这个档就是你要修改的地方详细的情况可以

    去看 named 的 manual.

  /etc/named.pid(named process id)
      本机上运行DNS的进程id.

  /etc/networks
      这个档与 hosts 有点像,都是在 boot 的时候会用到的东西,在这里可以定义一
    个子网路与其 IP address 的资讯.

  /etc/NNTP_INEWS_DOMAIN
      设置新闻服务器的配置文件.

  /etc/nntpserver
  /etc/nntpserver
      设置用户使用的新闻服务器的地址.
      这个档案记录着 news server,当我们使用 tin -r (read news remotely) 时,
    这个档案会被参考到,或者若这个档案不存在的话,那环境变数 NNTPSERVER 所指定

    的 server 就会被当成要去取得 news 的 server.  譬如说,你要将 202.38.248.1

    当成 news server,那 /etc/nntpserver 中就可写: 202.38.248.1

  /etc/nologin
      你也许会感到奇怪,我的 /etc 这个 directory 下并没有这个档啊?没错,它平常


    不存在的,通常会看到这个档的话,那表示系统大概要 shutdown 乐,因为系统要
    shutdown 乐,自然不希望有人又login 进来,所以在我们执行 shutdown时,nologin

    这个档会自动的被 create,里面放着 shutdown message.实际上,当我们在login 时

,
    系统会去检查有没有这个档,假如有的话,那就会印出这个档案中的 message,然後不


    让你 login.nologin 也有可能是为乐某种理由被制造的,比如说系统在 maintain
    暂时不希望有人 login.无论如何 nologin 若存在,就不能 login.

  /etc/organization
      存放用户的名字和组织,没什么用.

  /etc/passwd
      呵呵,这个档案可重要乐.一个 system administrator 最初要学的常常就是这个

    档案的内容! 这个档案记录着系统可以认得的user,也包括一些非人的 login
name,
    但这是有特殊用途的.  档案内容每列的格式如下:

      Login Name:Encrypted Password:UID:GID:GCOS:Home Directory:Login Shell
    (1)login name
       在 login name 方面,每个 login name 必须是唯一的,而且不能超过 8 个字符,


     一般说来,login name 虽然可以大小写混合,但平常的情况下都用小写.
    (2)Encrypted Password
       这栏是编码过的密码,在新增一个 new user 时,应该在这栏填上*,更改
password
     可用 passwd 这个指令. passwd 这是一个 setuid 的指令.
    (3)UID(user id)
       每个"人"都要不一样,习惯上,100 以前被保留做为特殊的 user id,而root总是0

.
    (4)GID(group id)
       在比较早期的系统,一个user同时只能在一个group,不过现在就没有这种限制乐.


    (5)GCOS
       这栏基本上没有特殊格式限制,在这里可以写上你的 full name家中电话,住址等

.
     爱写什么就写什么.
       finger 这个指令会去读这地方的资讯.用chfn 可改变这栏.
    (6)Home Directory
       这栏没什么,就是记录 user 的 home directory 而已,利用 cd 或 cd~ 都可回


     home directory.
    (7)Login Shell
       设定使用者所使用的 shell,预设值是 /bin/bash.当然,你也可以自己改成 csh

     或 tcsh,zsh 也是不错,假如有 free 版的 korn Shell 也可拿来用用.用 chsh可


     变你的 login shell.
赡美从糜?用 chsh可改
     变你的 login shell.
     变你的 login shell.
       为乐 security 方面的考虑,可以安装 shadow,将 passwd 这个档完全的与一般

     user 隔绝开来,连读也没有办法读 passwd 这个档.

  /etc/pnpdevices
      列出乐支持的plug&play设备.

  /etc/profile
      profile 这个档是 bash 这个 shell 所用的,profile 之于bash就好像 cshrc 之


    csh. 同样的,/etc 下的 profile 也是 SA 在维护的,主要是放着全域的设定(Globa

l
    Setting)而每个 user 在自己的 Home Directory 都可以有各人的.profile.

  /etc/protocols
      假如你为乐某些目地,而写乐自己的 protocol,那你就必须把它列在这个档案中,


    样 inetd 才会管理一些 daemons 去用它这个档案每列的格式如下,# 之後的是注解

:
      Protolcol Name      Portocol Number       Aliases
      协议名              代码                  别名
  •    ip      0       IP      # internet protocol,pseudo protocol number
  •     icmp    1       ICMP    # internet control message protocol
  •     igmp    2       IGMP    # internet group multicast protocol
  •     ggp     3       GGP     # gateway-gateway protocol
  •     tcp     6       TCP     # transmission control protocol
  •     pup     12      PUP     # PARC universal packet protocol
  •     udp     17      UDP     # user datagram protocol
  •     idp     22      IDP     # WhatsThis?
  •     raw     255     RAW     # RAW IP interface

  /etc/psdatabase
      这个档案是被 psupdate 所用到,psupdate 主要的功能就是更新
    /etc/psdatabase 这个档,以符合目前的 kernel image system map file.一般的预


    档是 /usr/src/linux/tools/zSystem.

  /etc/resolv.conf
      这里面记载着你机器的 domain name 及 name server 的 IP address,name
server
    可以自己加入.name server 可不要随便就去掉,否则,就会地址没有办法被解译,故


    有 Host name lookup failure 的信息.

  /etc/securetty
      假如你要以 root login 的话,实际上是有限制的,这个档案就列出乐 root 可以

    login 的 ttys,假如你把每一列都 mark 起来那就没有任何一个 terminal 可供roo

t
    login 乐,就会出现以下的情况 :
                  login: root
                  root login refused on this terminal.
    仔细的在这个档案列出可用的 terminal,可使从 modem 连的使用者或经由网络来的


    其它的使用者比较不容易取得 superuser 的权力.
    其它的使用者比较不容易取得 superuser 的权力.

  /etc/services
      设定系统的端口与协议类型和提供的服务.

  /etc/shadow
      这个文件对一般用户是不可读的,加密后的密码就放在这个文件中.

  /etc/shells
      这个档案里面就记录着可以用的 login shell.还有一点,那就是这个档的记录会


    使用 chsh 时做为参考,唯有被列在这里的 shell,使用 chsh 时才会出现这些
shell
    可选.实际上如果强行直接修改passwd文件,也可以使用不在列表中的shell程序,但


    造成在ftp的时候,无法登陆.

  /etc/slip.hosts;/etc/slip.login
      这两个文件是设定SLIP的配置文件.

  /etc/snooptab
      如果系统管理员用ttysnoops替换乐login这个程序,就可以用snooptty这个程序来


    监控用户的屏幕,这个文件就是能监听的终端列表.

  /etc/sudoers
      在一个不是很复杂的系统中,也许一个 System Administrator 就可以管理所有的

    事情.但一但系统提供的服务变多,系统管理的工作也随之变得沉重,这时候,sudo 就


    派上用场乐,sudo 可以让一个普通的 user 变成 superuser,这样一来,一个系统的


    些工作,就可以分配给这些 superusers 来做.以减轻负担.
      当然,并不是每个 user 都可以变成 superuser.所以/etc/sudoers 就是记录着那


    些人可以用 superuser 的身份来执行一些工作.
      这个档案有一个专属的 editor 叫 visudo 可来编辑 /etc/sudoer.而关於使用
    sudo.bin有一个记录档,在 /var/adm/sudo.log,里面记录着谁在什么时候利用sudo

    下乐那些指令.顺便一提的是:利用下面这个命令可抓出那些人转换成 superuser 但


    却没有成功:grep "FAILED SU" /var/adm/messages

  /etc/syslog.conf
      系统记录程序syslogd的配置文件,格式如下:
      *.=info;*.=notice    /usr/adm/messages
      *.=debug             /usr/adm/debug
      *.=warn              /usr/adm/syslog
    即所有的info和notice信息都存在/usr/adm/messages下,debug信息在/usr/adm/deb

ug
    下,警告信息在/usr/adm/syslog下.

  /etc/ttys
      设定系统的终端类型.

  /etc/utmp
    是用 last 这个指令所得到的部份内容:
  •      bbs       tty1                          Tue Nov 29 19:09 - 19:09
  • (00:00)
  •       root      tty1                          Tue Nov 29 19:08 - 19:09
  • (00:00)
  •       root      tty1                          Tue Nov 29 19:07 - 19:07
  • (00:00)
  •       runlevel  ~                             Tue Nov 29 19:07
  •       reboot    ~                             Tue Nov 29 19:07


  /etc/XF86Config
      X Window的配置文件.

  /etc/yp.conf
      NIS的配置文件.

  /etc/zprofile
      link 到 /etc/profile


/home
    存放用户主目录的地方,一般说"/home/username"就是用户的主目录.


/lib(library)
    存放系统最基本的动态连接库.这个目录如果被删除的话就不能动乐.几乎所有的程



  都要用到这个目录下的共享库.


/lost+found
    这个目录一般都是空的.但当文件系统发生故障(如系统掉电)后,在机器启动的时候


  些文件找不到应该存放的地方,就放到这个目录底下乐.这个目录是mkfs是自动产生的.


/mnt
    空目录,是让用户临时挂载文件系统的地方.


/proc
    是linux提供的一个虚拟系统,是由系统在系统启动的时候在内存中产生的,用户可以


  直接通过访问这些文件来获得系统信息,例如/proc/kcore就是系统运行的时候内存的

  映象文件.


/root
    超级用户主目录.

/sbin
    这个目录存放着super user使用的系统管理程序,如fsck,mount等.


/tmp(temporary)
    存放不同的程序执行时产生的临时文件.这是除了/usr/local目录以外一般用户可以


  使用的一个目录.这个目录在启动时系统并不自动删除,所以最好能经常删除这里的无


  文件.


/usr(user)
    linux系统占地最大的一个目录,用户的很多应用程序和文件都几乎存放在这里.下面


  时一些比较重要的目录:
  /usr/X11R6
      存放XFree86的目录,所有于X Window有关的程序都放在这里.

  /usr/bin
      用户用到的大部分程序都放在这里.

  /usr/sbin
      超级用户的管理程序和系统守护程序.


  /usr/doc
      放着linux的文档.

  /usr/include
      在linux下开发编译应用程序需要的头文件.

  /usr/lib
      存放常用的动态链接共享库和静态档案库.

  /usr/local
      让用户安装新软件使用的,目录结构和/usr类似.

  /usr/man
      存放着linux online help.

  /usr/src
      存放着系统的源代码,缺省的有一个/usr/src/linux目录,是用来存放系统内核的源代码.重新编译内核的时候就是在这个目录下进行的,有些应用程序也会用到这个目录下的一些头文件.


/var

    这个目录中存放着那些不断在扩充着的东西,为了保持/usr的相对稳定,那些经常被修改的目录可以放在这个目录下.
  /var/log
      系统的日志文件.

说明:在不同的linux版本,目录结构也有不少的区别...大家看乐之后尽可以补充或更改.





[url]Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=567324[/url]



linux技巧大全

0001
修改主机名(bjchenxu)
vi /etc/sysconfig/network,修改HOSTNAME一行为"HOSTNAME=主机名"(没有这行?那就添加这一行吧),然后运行命令" hostname 主机名"。无论你是否重启,主机名修改成功了。

0002
Ret Hat Linux启动到文字界面(不启动xwindow)(bjchenxu)
将/etc/inittab中"id:5:initdefault:"一行中的5改为3

0003
linux的自动升级更新问题(hutuworm,NetDC)
对于redhat,在www.redhat.com/corp/support/errata/找到补丁,6.1以后的版本带有一个工具up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。
升级除kernel外的rpm: up2date -u
升级包括kernel在内的rpm: up2date -u -f

Debian跟别的发行版还是有很大的差别的,用Debian做服务器维护更加方便;红帽的升级其实挺麻烦的,当然,如果你交钱给红帽的话,服务是会不一样的。
Debian下升级软件:
apt-get update
apt-get upgrade
前提:配置好网络和/etc/apt/sources.list,也可以用apt-setup设置。

0004
windows下看linux分区的软件(bjchenxu)
Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip

0005
mount用法(sakulagi)
fat32的分区 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
ntfs的分区 mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom
iso文件 mount -o loop /abc.iso /mnt/cdrom
软盘 mount /dev/fd0 /mnt/floppy
USB闪存 mount /dev/sda1 /mnt/cdrom
所有/etc/fstab内容 mount -a
可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.

0006
在vmware的LINUX中使用本地硬盘的FAT分区(bjchenxu)
将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中:
//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharest=gb2312 0 0
其中win_ip是你的windows的IP地址;
D$是你的windows里面共享的D盘的共享名;
/mnt/d是要将该分区mount到linux的目录;
win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码。
如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区。

0007.a
删除名为-a的文件(bjchenxu)
rm ./-a
rm -- -a 告诉rm这是最后一个选项,参见getopt
ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' \;

0007.b
删除名为\a的文件(bjchenxu)
rm \\a

0007.c
删除名字带的/和‘\0'文件(bjchenxu)
这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用
1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。
2.也可,将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,
clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it.
最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!

0007.d
删除名字带不可见字符的文件(bjchenxu)
列出文件名并转储到文件:ls -l >aaa
然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:
vi aaa
[rm -r *******
]
把文件加上执行权限 chmod +x aaa
执行 $aaa

0007.e
删除文件大小为零的文件(bjchenxu)
rm -i `find ./ -size 0` 
find ./ -size 0 -exec rm {} \; 


find ./ -size 0 | xargs rm -f & 


for file in * #自己定义需要删除的文件类型
do 
if [ ! -s ${file} ] 
then 
rm ${file} 
echo "rm $file Success!" 
fi 
done


0008
redhat设置滚轮鼠标(mc1011)
进入X后,选择鼠标的配置,选择wheel mouse(ps/2)就可以了,
如果鼠标表现异常,重启计算机即可。
(或者su, vi /etc/X11/XF86Config, 把PS/2 改成 ImPS/2)

0009
加装xwindow(bjchenxu)
用linux光盘启动,选择升级,然后单独选择包,安装即可

0010
删除linux分区(bjchenxu)
做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除.

0011
如何退出man(bjchenxu)
q

0012
不编译内核,mount ntfs分区(bjchenxu)
原装rh8,未升级或编译内核
1. 上google.com搜索并下载 kernel-ntfs-2.4.18-14.i686.rpm 
2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm 
3. mkdir /mnt/c 
4. mount -t ntfs /dev/hda1 /mnt/c


0013
redhat 8.0中用xmms听mp3(bjchenxu)
下载[url]www.gurulabs.com/files/xmms-mp3-1.2.7-13.p.i386.rpm [/url]
rpm -Uvh xmms-mp3-1.2.7-13.p.i386.rpm


0014
使用lilo/grub时找回忘记了的root口令(bjchenxu)
三种办法:
1.在系统进入单用户状态,直接用passwd root去更改
2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法如下:
cd /mnt 
mkdir hd 
mount -t auto /dev/hdaX(原来/分区所在的分区号) hd 
cd hd 
chroot ./ 
passwd root 

这样可以搞定
3.将本机的硬盘拿下来,挂到其他的linux系统上,采用的办法与第二种相同
rh8中
一. lilo
1. 在出现 lilo: 提示时键入 linux single
画面显示 lilo: linux single
2. 回车可直接进入linux命令行
3. #vi /etc/shadow
将第一行,即以root开头的一行中root:后和下一个:前的内容删除,
第一行将类似于
root::......
保存
4. #reboot重启,root密码为空
二. grub
1. 在出现grub画面时,用上下键选中你平时启动linux的那一项(别选dos哟),然后按e键
2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键
3. 修改你现在见到的命令行,加入single,结果如下:
kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/ 

4. 回车返回,然后按b键启动,即可直接进入linux命令行
5.
#vi /etc/shadow 

将第一行,即以root开头的一行中root:后和下一个:前的内容删除,
第一行将类似于
root::......
保存
6. #reboot重启,root密码为空

0015
使ctrl + alt + del失效(bjchenxu)
vi /etc/inittab
将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉,就可以了

0016
如何看出redhat的版本是7还是8(hutuworm)
cat /proc/version或者cat /etc/redhat-release或者cat /etc/issue

0017
文件在哪个rpm中(无双)
www.rpmfind.net上搜,或者rpm -qf 文件名得到

0018
把man或info的信息存为文本文件(bjchenxu)
以 tcsh 为例:
man tcsh | col -b > tcsh.txt 
info tcsh -o tcsh.txt -s


0019
利用现存两个文件,生成一个新的文件(bjchenxu)
1. 取出两个文件的并集(重复的行只保留一份)
2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)
3. 删除交集,留下其他的行
1. cat file1 file2 | sort | uniq 
2. cat file1 file2 | sort | uniq -d 
3. cat file1 file2 | sort | uniq -u


0020
设置com1口,让超级终端通过com1口进行登录(bjchenxu)
确认有/sbin/agetty,编辑/etc/inittab,添加
7:2345:respawn:/sbin/agetty /dev/ttyS0 9600
9600bps是因为联路由器缺省一般都是这种速率,也可以设成
19200、38400、57600、115200

修改/etc/securetty,添加一行:ttyS0,确保root用户能登录
重启机器,就可以拔掉鼠标键盘显示器(启动时最好还是要看看输出信息)了

0021
删除目录下所有文件包括子目录(bjchenxu)
rm -rf 目录名

0022
查看系统信息(bjchenxu)
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx) 
cat /proc/interrupts - 中断 
cat /proc/ioports - 设备IO端口 
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size) 
cat /proc/partitions - 所有设备的所有分区 
cat /proc/pci - PCI设备的信息 
cat /proc/swaps - 所有Swap分区的信息 
cat /proc/version - Linux的版本号 相当于 uname -r 
uname -a - 看系统内核等信息


0023
去掉多余的回车符(bjchenxu)
sed 's/^M//' test.sh > back.sh, 注意^M是敲ctrl_v ctrl-m得到的
或者 dos2unix filename

0024
切换X桌面(lnx3000)
如果你是以图形登录方式登录linux,那么点击登录界面上的session(任务)即可以选择gnome和kde。如果你是以文本方式登录,那执行switchdesk gnome或switchdesk kde,然后再startx就可以进入gnome或kde。
(或者vi ~/.xinitrc,添加或修改成exec gnome-session 或exec startkde,
然后用startx启动X)

0025
通用的声卡驱动程序(lnx3000)
OSS [url]www.opensound.com/ ALSA www.alsa-project.org/[/url]

0026
改变redhat的系统语言/字符集(beming/mc1011)
修改 /etc/sysconfig/i18n 文件,如
LANG="en_US",xwindow会显示英文界面,
LANG="zh_CN.GB18030",xwindow会显示中文界面。
还有一种方法
cp /etc/sysconfig/i18n $HOME/.i18n
修改 $HOME/.i18n 文件,如
LANG="en_US",xwindow会显示英文界面,
LANG="zh_CN.GB18030",xwindow会显示中文界面。
这样就可以改变个人的界面语言,而不影响别的用户
(Debian不支持GB18030(RH的zysong字库是有版权的)
现在好像没有Free的GBK和GB18030字库
vi .bashrc 
export LANG=zh_CN.GB2312 
export LC_ALL=zh_CN.GB2312)



0027
把屏幕设置为90列(bjchenxu)
stty cols 90

0028
使用md5sum文件(bjchenxu)
md5sum isofile > hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值
是否一致 md5sum –c hashfile

0029
一次解压多个zip文件(bjchenxu)
unzip "*",注意引号不能少

0030
看pdf文件(bjchenxu)
使用xpdf或者安装acrobat reader for linux

0031
查找权限位为S的文件(bjchenxu)
find . -type f \( -perm -04000 -o -perm -02000 \) -exec ls -lg {} \;


0032
装中文输入法(bjchenxu)
以redhat8为例,xwindow及其终端下的不用说了吧,缺省就安装了,用ctrl-space呼出。
现在讨论纯console,请下载zhcon.gnuchina.org/download/src/zhcon-0.2.1.tar.gz,
放在任一目录中,tar xvfz zhcon-0.2.1.tar.gz, cd zhcon-0.2.1, ./configure,
make, make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。

0033
把弹出的光盘收回来(beike)
#eject -t


0034
cd光盘做成iso文件(弱智)
cp /dev/cdrom xxxx.iso


0035
快速观看开机的硬件检测(弱智)
dmesg | more

0036
查看硬盘的使用情况(bjchenxu)
df -k 以K为单位显示
df -h 以人性化单位显示,可以是b,k,m,g,t..

0037
查看目录的大小(bjchenxu)
du -sh dirname
-s 仅显示总计
-h 以K、M、G为单位,提高信息的可读性。KB、MB、GB是以1024为换算单 位, -H以1000为换算单位。

0038
查找或删除正在使用某文件的进程(wwwzc)
fuser filename
fuser -k filename

0039
安装软件(bjchenxu)
rpm -ivh aaa.rpm 
tar xvfz aaa.tar.gz; cd aaa; ./configure; make; make install


0040
字符模式下设置/删除环境变量(bjchenxu)
bash下
设置:export 变量名=变量值
删除:unset 变量名
csh下
设置:setenv 变量名 变量值
删除:unsetenv 变量名

0041
ls如何看到.开头的文件(双眼皮的猪)
ls -a
l. (适用于redhat)

0042
rpm中的文件安装到哪里去了(bjchenxu)
rpm -qpl aaa.rpm



0043
使用src.rpm(bjchenxu)
rpmbuild --rebuild *.src.rpm


0044
vim中显示颜色或不显示颜色(bjchenxu)
vi ~/.vimrc; 如果有syntax on,则显示颜色,syntax off,则不显示颜色

0045
linux是实时还是分时操作系统(bjchenxu)
分时

0046
make bzImage -j的j是什么意思(wind521)
-j主要是用在当你的系统硬件资源比较大的时候,比较富裕的时候,用这个可以来加快编译的速度,如-j 3

0047
源码包怎么没有(bjchenxu)
你没有安装源代码,你把你光盘上rpm -i *kernel*source*.rpm装上,就可以看到你的源代码了。

0048
修改系统时间(bjchenxu,laixi781211,hutoworm)
date -s “2003-04-14 cst”,cst指时区,时间设定用date -s 18:10
修改后执行clock -w 写到CMOS
hwclock --systohc 
set the hardware clock to the current system time


0049
开机就mount上windows下的分区(bjchenxu)
自动将windows的d盘挂到/mnt/d上,用vi打开/etc/fstab,加入以下一行
/dev/hda5 /mnt/d vfat defaults,codepage=936,iocharset=cp936 0 0
注意,先得手工建立一个/mnt/d目录

0050
linux怎么用这么多内存(bjchenxu)
为了提高系统性能和不浪费内存,linux把多的内存做了cache,以提高io速度

0051
FSTAB 最后的配置项里边最后两个数字是什么意思(lnx3000)
第一个叫fs_freq,用来决定哪一个文件系统需要执行dump操作,0就是不需要;
第二个叫fs_passno,是系统重启时fsck程序检测磁盘的顺序号
1 是root文件系统,2 是别的文件系统。fsck按序号检测磁盘,0表示该文件系统不被检测
dump 执行ext2的文件系统的备份操作
fsck 检测和修复文件系统

0052
linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)
vi /etc/login.defs,改PASS_MIN_LEN

0053
linux中的翻译软件(bjchenxu)
星际译王 xdict

0054
不让显示器休眠(bjchenxu)
setterm -blank 0 
setterm -blank n (n为等待时间)


0055
用dat查询昨天的日期(gadfly)
date --date='yesterday'


0056
xwindow下如何截屏(bjchenxu)
Ksnapshot或者gimp

0057
解压小全(bjchenxu)
tar xvfj example.tar.bz2
tar xvfz example.tar.gz
tar xvfz example.tgz
tar xvf example.tar
unzip example.zip
tar -jvxf some.bz,就是把tar的zvxf 改成jvxf
zip/tar rh8下有一个图形界面的软件file-roller可以做这件事。另外可以用unzip *.zip解开zip文件,unrar *.rar解开rar文件,不过unrar一般系统不自带,要到网上下载。

0058
在多级目录中查找某个文件的方法(青海湖)
find /dir -name filename.ext 
du -a | grep filename.ext 
locate filename.ext


0059
不让普通用户自己改密码(myxfc)
[root@xin_fc etc]# chmod 511 /usr/bin/passwd
又想让普通用户自己改密码
[root@xin_fc etc]# chmod 4511 /usr/bin/passwd

0060
显卡实在配不上怎么办(win_bigboy)
http://www.redflag-linux.com/ ,下了xfree86 4.3安装就可以了.

0061
超强删除格式化工具(弱智)
比PQMagic安全的、建立删除格式化的小工具:sfdisk.exe for msdos
http://www.wushuang.net/soft/sfdisk.zip

0062
如何让xmms播放列表里显示正确的中文(myxfc)
-
引用
*-*-*-*-*-iso8859-1,-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-

把这个东西完全拷贝到你的字体里面
操作方法:
右键单击xmms播放工具的任何地方
会看到一个"选项",然后选择"功能设定"选择"fonts"
然后把上面的字体完整的拷贝到"播放清单"和 "user x font

0063
linux下听MP3(hehhb)
redhat光盘原带的xmms不能播放MP3(无声), 要下载安装一个RPM包:xmms-mp3-1.2.7-13.p.i386.rpm安装即可.打开xmms,ctl-p,在font栏中
先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字
体即可显示中文歌曲名。在音频输出插件中选择 "开放音频系统驱动
程序 1.2.7 [lioOSS.so]即可正常播放MP3文件.

0064
安装中文字体(hehhb)
先下载[url] http://freshair.netchina.com.cn/~George/sm.sh [/url]
(参考文献: http://www.linuxeden.com/edu/doctext.php?docid=2679)
SimSun18030.ttc在微软网站可下载,[url]http://www.microsoft.com/china/windows2000/downloads/18 [/url]
030.asp 它是个msi文件,在 mswindows中安装用的,装好后在windows目录下的fonts
目录里面就可以找到它。把simsun.ttc,SimSun18030.ttc,tahoma.ttf,tahomabd.ttf
拷贝到/usr/local/temp,然后下载的shell文件也放到这个目录里,然后打开终端
cd /usr/local/temp 
chmod 755 sm.sh 
./sm.sh


0065
装载windows分区的FAT32、FAT16文件系统(hehhb)
以root身份进入KDE,点击桌面上的“起点”图标,在/mnt目录下建立如下文件夹:c,d,e,f,g,usb.分别用作windows下各分区和usb闪盘。
用文本编辑器打开/etc/fstab 文件.加入如下:
/dev/hda1 /mnt/c vfat iocharset=gb2312,umask=0,codepage=936 0 0 
/dev/hda5 /mnt/d vfat iocharset=gb2312,umask=0,codepage=936 0 0 
/dev/hda6 /mnt/e vfat iocharset=gb2312,umask=0,codepage=936 0 0 
/dev/hda7 /mnt/f vfat iocharset=gb2312,umask=0,codepage=936 0 0 
/dev/hda8 /mnt/g vfat iocharset=gb2312,umask=0,codepage=936 0 0 
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,iocharset=gb2312,owner,kudzu,ro 0 0 
/dev/sda1 /mnt/usb vfat iocharset=gb2312,umask=0,codepage=936 0 0 

存盘退出. 重新启动后即可正常访问FAT32或FAT16格式分区,解决显示WINDOWS分区下和光盘中文文件名乱码
问题.其中共六列,每列用Tab键分开。注意此方法只能mount上Fat 分区格式.sda1是闪盘。

0066
在X下使用五笔和拼音,区位输入法(hmkart)
http://www.fcitx.org/上下载fcitx的rpm包安装即可

0067
在Linux下如何解压rar文件(hmkart)
[url]http://www.linuxeden.com/download/softdeta....php?softid=883 [/url]
下载rar for Linux 3.2.0,解压开后make
然后可以用unrar e youfilename.rar解压rar文件

0068
硬盘安装后怎么添加/删除rpm包(sakulagi)
redhat-config-packages --isodir=<PATH> 

可以指定iso文件所在的目录

0069
字符下控制音量(grub007)
aumix


0070
用dd做iso(grub007)
dd if=/dev/cdrom of=/tmp/aaa.iso


0071
删除几天以前的所有东西(包括目录名和目录中的文件)(shally5)
find . -ctime +3 -exec rm -rf {} \; 


find ./ -mtime +3 -print|xargs rm -f -r


0072
用户的crontab在哪里(hutuworm)
/var/spool/cron/下以用户名命名的文件

0073
以不同的用户身份运行程序(bjchenxu)
su - username -c "/path/to/command" 

有时候需要运行特殊身份的程序, 就可以让su来做

0074
如何清空一个文件(bjchenxu)
> filename


0075
为什么OpenOffice下不能显示中文(allen1970)
更改字体设置
tools->options->font replacement 
Andale Sans UI -> simsun


0076
如何备份Linux系统(Purge)
Symantec Ghost 7.5以后的版本支持Ext3 native复制

0077
linux上的partition magic(wwwzc)
Linux下一个有用的分区工具: parted
可以实时修改分区大小, 删除/建立分区.

0078
/proc/sys/sem中每项代表什么意思? (sakulagi)
/proc/sys/sem内容如下
250 32000 32 128
这4个参数依次为SEMMSL(每个用户拥有信号量最大数量),SEMMNS(系统信号量最大数量),SEMOPM(每次semop系统调用操作数),SEMMNI(系统信号量集最大数量)

0079
Grub 引导菜单里 bigmem smp up 都是什么意思?(lnx3000)
smp: (symmetric multiple processor)对称多处理器模式
bigmem: 支持1G 以上内存的优化内核
up:(Uni processor) 单处理器的模式

0080
Oracle的安装程序为什么显示乱码?(lnx3000)
现在Oracle的安装程序对中文的支持有问题,只能使用英文界面来安装,在执行runinstaller之前,执行:export LANG=C;export LC_ALL=C

0081
linux下文件和目录的颜色代表什么(sakulagi,弱智)
蓝色表示目录;绿色表示可执行文件;红色表示压缩文件;浅蓝
色表示链接文件;灰色表示其它文件;红色闪烁表示链接的文件有问题了;黄色是设备文件,包括block, char, fifo。
用dircolors -p看到缺省的颜色设置,包括各种颜色和“粗体”,下划线,闪烁等定义。

0082
mysql的数据库存放在什么地方(bjchenxu)
1. 如果使用rpm包安装,应该在/var/lib/mysql目录下,以数据库名为目录名
2. 如果源码安装在/usr/local/mysql中,应该在/usr/local/mysql/var中,以数据库名为目录名

0083
如何新增一块硬盘(好好先生)
一、关机,物理连接硬盘
如果是IDE硬盘,注意主、从盘的设置;如果是SCSI硬盘,注意选择一个没有被使用的ID号。
二、开机,检查硬盘有没有被linux检测到
dmesg |grep hd*(ide硬盘)
dmesg |grep sd*(SCSI硬盘)
或者 less /var/log/dmesg
如果你没有检测到你的新硬盘,重启,检查连线,看看bios有没有认出它来。
三、分区
你可以使用fdisk,Sfdisk或者parted(GNU分区工具,linux下的partition magic)
四、格式化
mkfs
五、修改fstab
vi /etc/fstab


0084
linux下怎么看分区的卷标啊 (q1208c)
e2label /dev/hdxn, where x=a,b,c,d....; n=1,2,3...

0085
RH8,9中安装后如何添加新的语言包(好好先生)
一.8.0中
1.放入第一张光盘
2.cd /mnt/cdrom/Redhat/RPMS
3.rpm -ivh ttfonts-ZH_CN-2.11-29.noarch.rpm(简体中文,你可以用tab键来补齐后面的部分,以免输入有误)
4.rpm -ivh ttfonts-ZH_TW-2.11-15.noarch.rpm(繁体中文)
如果你还想装日文、韩文,试试第二张光盘上的ttfonts*.rpm.
二.9.0中
9.0不在第一张盘上,在第三张盘上.rpm包名分别为:
ttfonts-zh_CN-2.12-1.noarch.rpm(简体中文)
ttfonts-zh_TW-2.11-19.noarch.rpm (繁体中文)

0086
终端下抓屏(tsgx)
cat /dev/vcsX >screenshot 其中,X表示第X个终端
还可以运行script screen.log,记录屏幕信息到screen.log里。一会记录到你exit为此。这也是抓屏的好方法。
这是在debian的cookbook上看到的。在RH9上能用。没有在其它的系统上测试过。请原谅

0087
让一个程序在退出登陆后继续运行(NetDC)
#nohup 程序名 &

0088
man命令不在路径中,如何查看非标准的man文件(bjchenxu)
nroff -man /usr/man/man1/cscope.1 | more

0089
以不同的用户身份运行程序(bjchenxu)
su - username -c "/path/to/file" 

有时候需要运行特殊身份的程序...就可以让su来做...

0090
编辑/etc/inittab后直接生效(bjchenxu)
#init q


0091
让linux连续执行几个命令,出错停止(bjchenxu)
command1 && command2 && command3

0092
如何将grub安装到mbr(bjchenxu, NetDC)
grub> root (hd0, 0) 
grub> setup (hd0) 

也可以用#grub-install /dev/hda来安装grub。

0093
安装时把grub(lilo)写到linux分区的引导区还是主引导扇区(MBR)(bjchenxu)
如果你想电脑一启动就直接进入操作系统启动菜单就把grub(lilo)写到MBR上,如果写到linux分区的引导区则要用引导盘引导。建议写到 MBR,方便点,至于说写到MBR不安全,该怎么解释呢?每装一次win98,MBR都会被修改一次,大家觉得有什么不安全的吗?

0094
如何让多系统共存(bjchenxu)
98系统的话用lilo(grub)引导,2k/nt则使用osloader引导多系统

0095
如何在图形界面和控制台(字符界面)之间来回切换(bjchenxu)
a.图形界面到控制台:Ctr+Alt+Fn(n=1,2,3,4,5,6)。
b.各控制台之间切换:Alt+Fn(n=1,2,3,4,5,6)。
c.控制台到图形:Alt+F7

0096
Redhat linux常用的命令(bjchenxu)
<1>ls:列目录。
用法:ls或ls dirName,参数:-a显示所有文件,-l详细列出文件。
<2>mkdir:建目录。
用法:mkdir dirName,参数:-p建多级目录,如:mkdir a/b/c/d/e/f -p
<3>mount:挂载分区或镜像文件(.iso,.img)文件。
用法:
a.磁盘分区:mount deviceName mountPoint -o options,其中deviceName是磁盘分区的设备名,比如/dev/hda1,/dev/cdrom,/dev/fd0,mountPoint 是挂载点,它是一个目录,options是参数,如果分区是linux分区,一般不用-o options,如果是windows分区那options可以是iocharset=cp936,这样windows分区里的中文文件名就能显示出来了。用例:比如/dev/hda5是linux分区,我要把它挂到目录a上(如没目录a那就先mkdir a),mount /dev/hda5 a,这样目录a里的东西就是分区hda5里的东西了,比如hda1是windows分区,要把它挂到b上,mount /dev/hda1 b -o iocharset=cp936。
b.镜像文件:mount fileName mountPoint -o loop,fileName是镜像文件名(*.iso,*.img),其它的不用说了,跟上面一样。用例:如我有一个a.iso光盘镜像文件,mount a.iso a -o loop,这样进入目录a你就能浏览a.iso的内容了,*.img文件的用法一样。
<4>find:查找文件。
用法:find inDir -name filename,inDir是你要在哪个目录找,filename是你要找的文件名(可以用通配符),用通配符时filename做好用单引号引起来,否则有时会出错,用例:find . -name test*,在当前目录查找以test开头的文件。
<5>grep:在文件里查找指定的字符串。
用法:grep string filename,在filename(可用通配符)里查找string(最好用双引号引起来)。参数:-r在所有子目录里的filename里找。用例:grep hello *.c -r在当前目录下(包括子目录)的所有.c文件里查找hello。
<5>vi:编辑器。
用法:vi filename。filename就是你要编辑的文本文件。用了执行vi filename后,你可能会发现你无法编辑文本内容,不要着急,这是因为vi还没进入编辑状态,按a或i就可以进入编辑状态了,进入编辑状态后你就可以编辑文本了。要退出编辑状态按Esc键就可以了。以下操作均要在非编辑状态下。查找文本:输入/和你要查找的文本并回车。退出:输入: 和q并回车,如果你修改了文本,那么你要用:q!回车才能退出。保存:输入: w回车,如果是只读文件要用: w!。保存退出:输入: wq回车,如果是只读就: wq!回车。取消:按u就可以了,按一次就取消一步,可按多次取消多步。复制粘贴一行文本:把光标移到要复制的行上的任何地方,按yy(就是连按两次 y),把光标移到要粘贴地方的上一行,按p,刚才那行文本就会被插入到光标所在行的下一行,原来光标所在行后面所有行会自动下移一行。复制粘贴多行文本:跟复制一行差不多,只是yy改成先输入要复制的行数紧接着按yy,后面的操作一样。把光标移到指定行:输入:和行号并回车,比如移到123行:123回车,移到结尾:$回车。

0097
linux文本界面下如何关闭pc喇叭(labrun)
将/etc/inputrc中的set bell-style none 前的#去掉,或echo "set bell-style none" >> ~/.bashrc

0098
重装windows导致linux不能引导的解决办法(好好先生)
如果没有重新分区,拿linux启动盘(或者第一张安装光盘)引导,进入rescue模式。首先找到原来的/分区mount在什么地方。redhat通常是/mnt/sysimage. 执行"chroot /mnt/sysimage". 如果是grub,输入grub-install /dev/hd*(根据实际情况);如果是lilo,输入lilo -v,然后重新启动。如果分区有所改变,对应修改/etc/lilo.conf和/boot/grub/grub.conf然后再执行上述命令。

0099
为什么装了LINUX后win2K很慢(lnx3000,好好先生)
老问题了,你在2000是不是能看见Linux的逻辑盘,但不能访问?
在磁盘管理里,选中这个盘,右击->更改"驱动器名和路径"->"删除"就可以了,注意不是删除这个盘!

0100
windows中刻录iso的方法(bjchenxu)
windows中,使用nero,选择映象文件刻录,选择iso文件,刻录!
还得借用windows呀,呵呵,等nero的linux版出来就不用找它了,呵呵

0101
linux中刻录iso的方法(hutuworm)
方法一:使用xcdroast,选择制作光碟,选择ISO文件,刻录!
参见[url]http://www.xcdroast.org/xcdr098/faq-a15.html#17 [/url]
方法二:找刻录机的命令:
cdrecord --scanbus 

输出结果为:
0,0,0 0) 'ATAPI ' 'CD-R/RW 8X4X32 ' '5.EZ' Removable CD-ROM 

刻录的命令:
cdrecord -v speed=8 dev=0,0,0 hutuworm.iso


0102
屏幕变花时怎么办(双眼皮的猪)
当您一不小心cat了一个并不是文本的文件的时候,这时屏幕会变花,那么您可以按两下"Enter"键,再敲"reset",那么屏幕就恢复正常了....

0103
卸载软件包时如何得知具体包名(diablocom)
大家知道删除软件包的命令是rpm -e XXX,但是当我们不知道这个XXX的确切拼写时,可以用rpm -q -a查询所有安装的软件包或者用rpm -qa |grep xxxx查询出名字

0104
使用内存作linux下的/tmp文件夹(yulc)
在/etc/fstab中加入一行:
none /tmp tmpfs default 0 0 

或者在/etc/rc.local中加入
mount tmpfs /tmp -t tmpfs -o size=128m 

注:size=128m 表示/tmp最大能用128m
不管哪种方式,只要linux重启,/tmp下的文件全部消失

0105
用ls只列出目录(yulc)
ls -lF | grep ^d 
ls -lF | grep /$ 
ls -F | grep /$


0106
在命令行下列出本机IP地址,而不是得到网卡信息(yulc)
ifconfig |grep "inet" |cut -c 0-36|sed -e 's/[a-zA-Z: ]//g' 
hostname -i
分享到:
评论

相关推荐

    LinuxC编程实战电子书

    于一体的160多段代码实例,帮助读者快速掌握在Linux平台下进行C语言程序开发的方法和技巧,并通 过一个原创的BT软件下载综合案例的讲解,引导读者具备开发大型应用程序的能力。  《LinuxC编程实战》内容翔实,主要...

    LINUX操作系统(电子教案,参考答案)

    本章主要介绍了Linux的文件结构、目录结构,同时还介绍了链接,并用大量的实例形象生动地说明了Linux下各种文件的操作。 第4章:文本编辑。本章主要介绍了Linux下的文本编辑器,这是使用Linux的一些基本技能。学好本...

    RED HAT LINUX 6大全

    本书全面系统地介绍了Red Hat Linux 6。全书共分为五个部分,包括35章和四个附录。第一部分为Red Hat Linux的介绍和安装;第二部分为服务配置;第三部分为系统管理;第四部分为Linux编程;第五部分为附录。本书内容...

    《精通LINUX C编程》书中源代码

    本书系统地介绍了在Linux操作系统下用C语言进行程序设计的方法,并通过列举大量的程序实例,使读者很快地掌握在Linux操作系统下进行C程序开发的方法和技巧,培养开发大型应用程序的能力。 本书内容主要包括Linux...

    LINUX网站建设技术指南

    第1章 了解Linux及其网络结构 1.1 Linux简介 1.1.1 何谓Linux 1.1.2 Linux的功能 1.1.3 Linux当前的版本 1.2 Linux的TCP/IP网络结构 1.3 IPv6简介 1.3.1 IPv6与IPv4头标的比较 1.3.2 简化的头标 1.3.3 参数的修订 ...

    深入理解linux内核中文第三版(高清有目录)

     《深入理解Linux内核》第三版将引领你畅游内核中用到的最主要数据结构、算法和编程技巧。如果你的确想了解计算机内部的实现机理,那么作者透过现象探寻本质,提供了颇有价值的深入分析。本书针对具体的Intel平台,...

    深入理解Linux内核(第三版) (英文版) Understanding the Linux Kernel

    《深入理解Linux内核》第三版将引领你畅游内核中用到的最主要数据结构、算法和编程技巧。如果你的确想了解计算机内部的实现机理,那么作者透过现象探寻本质,提供了颇有价值的深入分析。本书针对具体的Intel平台,...

    用户空间使用Linux 数据结构系列导读篇

    Linux内核代码给了我们很好的启示,用一些经典的宏和封装的数据结构及对外接口,来构建内核一些复杂的数据结构,Linux内核的技巧是封装一些通用的数据结构,并把这个通用结构以通用对象定位器(通用结构的指针)的方式...

    12本精彩的Linux书籍

    这本书以一种结构化且符合逻辑的方式阐述了Linux 2.6内核的工作原理。这本书介绍了内核的内存管理,进程调度, I/O架构以及块设备管理等内容。这本书是为那些想深入了解Linux的Geek们而量身打造的。 9. HULinux ...

    深入理解Linux内核 第三版 中文高清完整pdf版.part6.rar

     《深入理解linux内核》第三版将引领你畅游内核中用到的最主要数据结构、算法和编程技巧。如果你的确想了解计算机内部的实现机理,那么作者透过现象探寻本质,提供了颇有价值的深入分析。本书针对具体的intel平台,...

    实验5--Linux-高级程序设计.doc

    实验5 Linux 高级程序设计 1、实验目的 (1)了解Linux操作系统下应用程序开发流程 (2)掌握gun工具链的使用 (3)了解Linux高级编程技巧(例如IPC机制、系统调用等) 2、实验内容 1. 编写一个简单的C语言程序,编写...

    Linux管理员指南

    第1章集中介绍NT和Linux之间体系结构方面的不同,并且帮助你了解为什么Linux环境中的某些方面是它们现在的这个形式。第2章介绍Linux的安装过程,但是又有一些独到的内容:我们没有机械地重复软件本身提供的安装事项...

    Embedded Linux Primer: A Practical, Real-World Approach

    本书是嵌入式 Linux的经典教程,介绍了引导装入程序、系统初始化、文件系统、闪存和内核、应用程序调试技巧等,还讲述了构建 Linux系统的工作原理,用于驱动不同体系结构的配置,Linux内核源码树的特性,如何根据...

    吉林大学Linux课件PPT

    通过实例演示与实际操作练习,使学生能够熟练掌握Linux的基本操作技巧,提高解决实际问题的能力。 此外,课件还深入剖析了Linux系统的工作原理与核心组件。通过对内核、文件系统、进程管理等的讲解,帮助学生建立起...

    集合go的编程技巧 分布式 数据库MySQL Linux操作系统讲解 设计模式 主流的框架设计,结构设计.zip

    集合go的编程技巧 分布式 数据库MySQL Linux操作系统讲解 设计模式 主流的框架设计,结构设计

    Linux C编程实战.童永清(带详细书签)

    本书系统地介绍了在Linux平台下用C语言进行程序开发的过程,集趣味性、实战性于一体的160多段代码实例,帮助读者快速掌握在Linux平台下进行C语言程序开发的方法和技巧,并通过一个原创的BT软件下载综合案例的讲解,...

    深入理解linux内核(中文).pdf

    本书将引导你畅游Linux内核中使用的最主要的数据结构、算法和编程技巧,讨论了具体的Intel平台的重要特点。但是本书涵盖的内容绝不限于代码所起的作用,它还阐明了Linux为什么如此运作的理论基础。本书涵盖Linux 2.4...

    linux内核调试方法总结

    8 内核printk和日志系统的总体结构 9 动态调试 六 内存调试工具 1 MEMWATCH 2 YAMD 3 Electric Fence 七 strace 八 OOPS 1 ksymoops 2 kallsyms 3 Kdump 九 KGDB 1 kgdb的调试原理 2 Kgdb的安装与设置 3 在VMware中...

Global site tag (gtag.js) - Google Analytics