现在的位置: 首页 > 综合 > 正文

LINUX基础知识

2013年08月05日 ⁄ 综合 ⁄ 共 10707字 ⁄ 字号 评论关闭
  

 
 
 
 
l         /bin 该目录中存放Linux的常用命令,在有的版本中是一些和根目录下相同的目录。
l         /boot 该目录下存放的都是系统启动时要用到的程序,当用lilo引导Linux时,会用到这里的一些信息。
l         /dev 该目录包含了Linux系统中使用的所有外部设备,它实际上是访问这些外部设备的端口,你可以访问这些外部设备,与访问一个文件或一个目录没有区别。例如在系统中键入“cd /dev/cdrom”,就可以看到光驱中的文件;键入“cd /dev/mouse”即可看鼠标的相关文件。
l         /etc 该目录存放了系统管理时要用到的各种配置文件和子目录,例如网络配置文件、文件系统、X系统配置文件、设备配置信息、设置用户信息等。
l         /sbin 该目录用来存放系统管理员的系统管理程序。
l         /home 如果建立一个名为“xx”的用户,那么在/home目录下就有一个对应的“/home/xx”路径,用来存放该用户的主目录。
l         /lib 该目录用来存放系统动态连接共享库,几乎所有的应用程序都会用到该目录下的共享库 。
l         /lost+found 该目录在大多数情况下都是空的。但当突然停电、或者非正常关机后,有些文件就临时存放在这里。
l         /mnt 该目录在一般情况下也是空的,你可以临时将别的文件系统挂在该目录下。
l         /proc 可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的
l         /root 如果你是以超级用户的身份登录的,这个就是超级用户的主目录
l         /tmp 用来存放不同程序执行时产生的临时文件。
l         /usr 用户的很多应用程序和文件都存放在该目录下
l         /usr/X11R6:X-Window目录;
l         /usr/src:Linux源代码;
l         /usr/include:系统头文件;
l         /usr/lib:存放常用动态链接共享库、静态档案库;
 
该命令的一般形式为: useradd [选项] 用户名
该命令必须有系统管理员权限才能执行
出于系统安全考虑,Linux系统中的每一个用户除了有其用户名外,还有其对应的用户口令。因此使用useradd命令增加时,还需使用passwd命令为每一位新增加的用户设置口令;用户以后还可以随时用passwd命令改变自己的口令。
  该命令的一般格式为: passwd [用户名] 其中用户名为需要修改口令的用户名。只有超级用户可以使用“passwd 用户名”修改其他用户的口令,普通用户只能用不带参数的passwd命令修改自己的口令。
  该命令的使用方法如下:
  输入
  passwd< Enter>;
  在(current) LINUX passwd:下输入当前的口令
  在new password:提示下输入新的口令(在屏幕上看不到这个口令):
  系统提示再次输入这个新口令。
  输入正确后,这个新口令被加密并放入/etc/shdow文件.选取一个不易被破译的口令是很重要的.
  选取口令应遵守如下规则:
  口令应该至少有六位(最好是八位)字符;
  口令应该是大小写字母、标点符号和数字混杂的。
  超级用户修改其他用户(xxq)的口令的过程如下,
  # passwd xxq
  New LINUX password:
  Retype new LINUX password:
  passwd: all authentication tokens updated successfully
  #
功能:ls是英文单词list的简写,其功能为列出目录的内容。这是用户最常用的一个命令之一,因为用户需要不时地查看某个目录的内容。该命令类似于DOS下的dir命令。
  语法:ls [选项] [目录或是文件]
  对于每个目录,该命令将列出其中的所有子目录与文件。对于每个文件,ls将输出其文件名以及所要求的其他信息。默认情况下,输出条目按字母顺序排序。当未给出目录名或是文件名时,就显示当前目录的信息。
  参数:
  - a 显示指定目录下所有子目录与文件,包括隐藏文件。
  - A 显示指定目录下所有子目录与文件,包括隐藏文件。但不列出“.” “..”
  - b 对文件名中的不可显示字符用八进制字符显示。
  - c 按文件的修改时间排序。
  - C 分成多列显示各项。
  - d 如果参数是目录,只显示其名称而不显示其下的各文件。往往与l选项一起使用,以得到目录的详细信息。
  - f 不排序。该选项将使lts选项失效,并使aU选项有效。
  - i 在输出的第一列显示文件的i节点号。
  - l 以长格式来显示文件的详细信息。这个选项最常用。
  每行列出的信息依次是:
文件类型与权限链接数文件所有者文件属组文件大小最近修改的时间名字
  对于符号链接文件,显示的文件名之后有“—和引用文件路径名。
  对于设备文件,其文件大小字段显示主、次设备号,而不是文件大小。
  目录中的总块数显示在长格式列表的开头,其中包含间接块。
  - L 若指定的名称为一个符号链接文件,则显示链接所指向的文件。
  - m 输出按字符流格式,文件跨页显示,以逗号分开。
  - n 输出格式与l选项相同,只不过在输出中文件所有者和属组是用相应的UID号和 GID号来表示,而不是实际的名称。
  - o l选项相同,只是不显示拥有者信息。
  - p 在目录后面加一个“/”
  - q 将文件名中的不可显示字符用“?”代替。
  - r 按字母逆序或最早优先的顺序显示输出结果。
  - R 递归式地显示指定目录的各个子目录中的文件。
  - s 给出每个目录项所用的块数,包括间接块。
  - t 显示时按修改时间(最近优先)而不是按名字排序。若文件修改时间相同,则按字典顺序。修改时间取决于是否使用了cu选顶。缺省的时间标记是最后一次修改时间。
  - u 显示时按文件上次存取的时间(最近优先)而不是按名字排序。即将-t的时间标记修改为最后一次访问的时间。
  - x 按行显示出各排序项的信息。
  用ls - l命令显示的信息中,开头是由10个字符构成的字符串,其中第一个字符表示文件类型,它可以是下述类型之一:
  - 普通文件
  d 目录
  l 符号链接
  b 块设备文件
  c 字符设备文件
  后面的9个字符表示文件的访问权限,分为3组,每组3位。
  第一组表示文件所有者的权限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字符分别表示对文件的读、写和执行权限。
  各权限如下所示:
  r
  w
  x 执行。对于目录,表示进入权限。
  s 当文件被执行时,把该文件的UIDGID赋予执行进程的UID(用户ID)或GID(组 ID)。
例如:ls -l /usr/bin/passwd
  t 设置标志位(留在内存,不被换出)。如果该文件是目录,在该目录中的文件只能被超级用户、目录拥有者或文件所有者删除。如果它是可执行文件,在该文件执行后,指向其正文段的指针仍留在内存。这样再次执行它时,系统就能更快地装入该文件。
  - 没有设置权限。
  例1:列出当前目录的内容。
  $ ls
  例2:列出某个目录的内容。
  $ ls /home/xu Mai1/
  map1e/ mm/ ptr/ telnetd*
  fd/ mbox mount sobsrc. tgz tmp/
  例3:列出某个目录下所有的文件(包括隐藏文件)。
  $ 1s -aF /home/xu
  ./ . .e1m/ .netscape/ map1e ptr/
  ../ .fvwin2rc95 .term/ mbox sobsrc. tgz
  .Xauthority .kermrc Mai1/ mm/ te1netd*
  .bash-history .ncftp/ fd/ mount tmp/
  例4:用长格式列出某个目录下所有的文件(包括隐藏文件)。
  $ 1s -laF /home/xu
  total 584
  drwxr-xr-x l2 root root 1024 Nov 02 22:07 ./
  drwxr-xr-x 15 bbs bbs 1024 Jul 29 07:08 ../
  -rw-r--r-- 1 yu users 4343 Ju1 29 22:20 .bash-history
  drwx------ 2 yu users 1024 May 17 06:36 .e1m/
  --rw------ 1 root root 4628 Jun 2 1l:34 mbox
  lrwxrwxrwx 1 root root l4 Ju1 29 03:08 mount->/mnt
  drwxrwxr-x 4 root root 1024 Ju1 23 03:43 ptr/
  -rw--r--r- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz
  -rwxr-xr-x l root users 60177 Jun 8 01:29 telnetd*
  drwxr-xr-x 2 root root 1024 Mar 6 22:32 tmp/  
  例5:用长格式列出某个目录下所有的文件包括隐藏文件和它们的i节点号。并把文件所有者和属组以UID号和GID号的形式显示。
  $ 1s -1ainF /home/xu tota1 584 399672
  drwxr-xr-x l2 0 0 l024 Nov 30 22:07 ./ 333907
  drwxr-xr-x 15 9999 99 l024  Ju1 29 07:08 ../ 39980l
  -rw------- l 0 0 0 Jun 2 2:09 .Xauthority 399679
  -rw-r--r-- 1 505 l00 4343 Jul 29 22:20 .bash-hist0ry 30l763
  drwxr----- 2 505 100 l024  May 17 06:36 .e1m/ ……
 
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。
  文件或目录的访问权限分为只读,只写和可执行三种。以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。可执行权限表示允许将该文件作为一个程序执行。文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。用户也可根据需要把访问权限设置为需要的任何组合。
  有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。
  每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件所有者的读、写和执行权限;与所有者同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。例如:
$ ls -l sobsrc. tgz
-rw-r--r-- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz
横线代表无该项权限。r代表只读,w代表写,x代表可执行。注意这里共有10个位置。第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。
  例如:
  -     rw-   r--   r--
  普通文件 文件主 组用户 其他用户
  是文件sobsrc.tgz 的访问权限,表示sobsrc.tgz是一个普通文件;sobsrc.tgz的所有者有读写权限;与sobsrc.tgz所有者同组的用户只有读权限;其他用户也只有读权限。
  确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。也可以利用chown命令来更改某个文件或目录的所有者。利用chgrp命令来更改某个文件或目录的用户组。
  下面分别对这些命令加以介绍。
功能:chmod命令是非常重要的,用于改变文件或目录的访问权限.用户用它控制文件或目录的访问权限.
  语法:该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
  1. 文字设定法
  chmod [who] [+ | - | =] [mode] 文件名?
  参数:
  操作对象who可是下述字母中的任一个或者它们的组合:
  u 表示“用户(user)”,即文件或目录的所有者。
  g 表示“同组(group)用户”,即与文件所有者有相同组ID的所有用户。
  o 表示“其他(others)用户”。
  a 表示“所有(all)用户”。它是系统默认值。
  操作符号可以是:
  + 添加某个权限。
  - 取消某个权限。
  = 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
  r 可读。
  w 可写。
  x 可执行。

  x 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
  s 在文件执行时把进程的所有者或组ID置为该文件的文件所有者。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。
  t 保存程序的文本到交换设备上。
  u 与文件所有者拥有一样的权限。
  g 与和文件所有者同组的用户拥有一样的权限。
  o 与其他用户拥有一样的权限。
  文件名:以空格分开的要改变权限的文件列表,支持通配符。
  在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example
  使同组和其他用户对文件example 有读权限。
  2. 数字设定法
  我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
  例如,如果想让某个文件的所有者有"读/写"二种权限,需要把4(可读)+2(可写)=6(读/写).
  数字设定法的一般形式为:
  chmod [mode] 文件名?
  例子:
  (1)文字设定法:
  例1:$ chmod a+x sort
  即设定文件sort的属性为:
  文件所有者(u) 增加执行权限
  与文件所有者同组用户(g) 增加执行权限
  其他用户(o) 增加执行权限
  例2:$ chmod ug+w,o-x text
  即设定文件text的属性为:
  文件所有者(u) 增加写权限
  与文件所有者同组用户(g) 增加写权限
  其他用户(o) 删除执行权限
  例3:$ chmod u+s a.out
  假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):
  –rws--x--x 1 inin users 7192 Nov 4 14:22 a.out
  并且这个执行文件要用到一个文本文件shiyan1.c,其文件存取权限为“–rw-------”,即该文件只有其所有者具有读写权限。
  当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为其他人不具备任何权限),这就是s的功能。
  因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵。
  例4:$ chmod a–x mm.txt
  $ chmod –x mm.txt
  $ chmod ugo–x mm.txt
  以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者。
  (2)数字设定法:
  例1: $ chmod 644 mm.txt
  $ ls –l
  即设定文件mm.txt的属性为:
  -rw-r--r-- 1 inin users 1155 Nov 5 11:22 mm.txt
  文件所有者(u)inin 拥有读、写权限
  与文件所有者同组人用户(g) 拥有读权限
  其他人(o) 拥有读权限
  例2: $ chmod 750 wch.txt
  $ ls –l
  -rwxr-x--- 1 inin users 44137 Nov 12 9:22 wchtxt
  即设定wchtxt这个文件的属性为:
  文件主本人(u)inin 可读/可写/可执行权
  与文件主同组人(g) 可读/可执行权
  其他人(o) 没有任何权限
umask指文件创建时在全部权限中要去掉的一些权限,普通用户缺省时umask的值为002,超级用户为022
002表示创建文件时文件所有者的权限不去掉
                           文件所属组权限不去掉
文件其他组权限写属性
则普通用户创建一文件以后,缺省的权限为664
则普通用户创建一目录以后,缺省的权限为775
 
su命令可以让一个普通用户拥有超级用户或其他用户的权限,也可以让超级用户以普通用户的身份做一些事情。普通用户使用这个命令时必须有超级用户或其他用户的口令。如要离开当前用户的身份,可以打exit。
  该命令的一般形式为: su [选项] [使用者帐号]
  说明:若没有指定使用者帐号,则系统预设值为超级用户root。
  参数:
  例1: 变成root用户
  $ su root
  password: 【输入超级用户的密码】  

功能:创建一个目录
语法:mkdir [选项] dirname
  说明:该命令创建由dirname命名的目录。要求创建目录的用户在当前目录中dirname的父目录中)具有写权限,并且dirname不能是当前目录中已有的目录或文件名称。
  参数:
  - m 对新建目录设置存取权限。也可以用chmod命令设置。
  - p 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
  例如:在当前目录中建立inin inin下的/mail目录,也就是连续建两个目录。
  $ mkdir - p - m 700 ./inin/mail/
  该命令的执行结果是在当前目录中创建嵌套的目录层次inin /mail,权限设置为只有文件主有读、写和执行权限。
功能:删除空目录。
  语法:rmdir [选项] dirname
  说明:dirname表示目录名。该命令从一个目录中删除一个或多个子目录项。需要特别注意的是,一个目录被删除之前必须是空的。(注意,rm - r dir命令可代替 rmdir,但是有很大危险性。)删除某目录时也必须具有对父目录的写权限。
  参数:
  - p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。
  例如:
  $ rmdir - p /usr/xu/txt /usr/xu/txt目录删除。
  改变工作目录、显示目录内容命令

功能:改变工作目录。
  语法:cd [dirname]
  说明:该命令将当前目录改变至dirname所指定的目录。若没有指定dirname则回到用户的主目录。为了改变到指定目录,用户必须拥有对指定目录的执行和读权限。
  该命令可以使用通配符(通配符含义请参见第十章)。
  例如:假设用户当前目录是:/home/xu,现需要更换到/home/xu/pro目录中,
  $ cd pro 此时,用户可以执行pwd命令来显示工作目录。
  $ pwd /home/xu/pro
 
功能:在Linux层次目录结构中,用户可以在被授权的任意目录下利用mkdir命令创建新目录,也可以利用cd命令从一个目录转换到另一个目录。然而,没有提示符来告知用户目前处于哪一个目录中。要想知道当前所处的目录,可以使用pwd命令,该命令显示整个路径名。
  语法:pwd
  说明:此命令显示出当前工作目录的绝对路径。
  例:
  $ pwd /home/xu 显示的路径名为/home/xu,每个目录名都用“/”隔开,根目录以开头的“/”示。

功能:改变文件或目录所属的组。
  语法:chgrp [选项] group filename
  该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的所有者或超级用户,则不能改变该文件的组。
  参数:
  - R 递归式地改变指定目录及其下的所有子目录和文件的属组。
  例1:$ chgrp - R book /opt/local /book
  改变/opt/local /book/及其子目录下的所有文件的属组为book。
功能:更改某个文件或目录的所有者和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,root用户应该把这个文件的所有者设为xu,否则,用户xu无法存取这个文件。
  语法:chown [选项] 用户或组 文件
  说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。
  参数:
  - R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。
  - v 显示chown命令所做的工作。
  例1:把文件shiyan.c的所有者改为wang。
  $ chown wang shiyan.c
  例2:把目录/his及其下的所有文件和子目录的所有者改成wang,属组改成users。
  $ chown - R wang.users /his
 
功能:将给出的文件或目录拷贝到另一文件或目录中。
  语法:cp [选项] 源文件或目录 目标文件或目录
  说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
  参数:
  - a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
  - d 拷贝时保留链接。
  - f 删除已经存在的目标文件而不提示。
  - i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
  - p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
  - r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
  - l 不作拷贝,只是链接文件。
  需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名是一个已存在的文件名,用cp命令拷贝文件后,这个文件就会被新拷贝的源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。
  $ cp - i exam1.c /usr/wang/shiyan1.c
  该命令将文件exam1.c拷贝到/usr/wang 这个目录下,并改名为 shiyan1.c。若不希望重新命名,可以使用下面的命令:
  $ cp exam1.c /usr/ wang/
  $ cp - r /usr/xu/ /usr/liu/ 将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中。

功能:为文件或目录改名或将文件由一个目录移入另一个目录中。该命令如同DOS下的ren和move的组合。
  语法:mv [选项] 源文件或目录 目标文件或目录
  说明:视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。
  参数:
  -i 交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答y或n,这样可以避免误覆盖文件。
  -f 禁止交互操作。在mv操作要覆盖某已有的目标文件时不给任何指示,指定此选项后,i选项将不再起作用。
  如果所给目标文件(不是目录)已存在,此时该文件的内容

抱歉!评论已关闭.