论坛首页 综合技术论坛

Linux菜鸟开始学

浏览 4862 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-04-01  
在Linux中,分区是这样表示的
    /dev/hda
    /dev/hda1
    /dev/hda2
    /dev/hda5
    /dev/sdb1

  以 /dev/hda5 为例:

  因为在Linux中,每一个设备都是用 /dev/ 文件夹下的一个文件来表示,所以 /dev/hda5 中, /dev/ 表示的是根目录下的dev目录,我们来看剩下的部分 hda5 。

  前两位的字母 hd 表示这是一块IDE硬盘,如果是 sd ,则代表SATA硬盘,或者闪存等外设。

  第三位的字母 a 表示这是该类型接口上的第一个设备。同理, b、c、d…… 分别代表该类型接口上的第二三四……个设备。例如 hdc 表示第二个IDE接口上的主硬盘(每个IDE接口上允许一个主设备和一个从设备)。

  第四位的数字 5 ,并不表示这是该硬盘中的第5个分区,而是第一个逻辑分区。因为在Linux中,为了避免不必要的混乱,分区的顺序是不能改变的,分区标识则由它们在硬盘中的位置决定。系统又要为所有可能的主分区预留标识,所以 1-4 一定不会是逻辑分区, 5 则是第一个逻辑分区,以此类推。

PS:举了一个书本的事例,有点象,目录,前言,章节;

目录通常都是用来作什么

  /
  根目录,唯一必须挂载的目录。不要有任何的犹豫,选一个分区,挂载它!(在绝大多数情况下,有2G的容量应该是够用了。当然了,很多东西都是多多益善的。

  swap
  交换分区,可能不是必须的,不过按照传统,并且照顾到您的安全感,还是挂载它吧。它的容量只要大于您的物理内存就可以了,如果超过了您物理内存两倍的容量,那绝对是一种浪费。

  /home
  前面已经介绍过了,这是您的家目录,通常您自己创建的文件,都保存在这里,您最好给它分配一个分区

  /usr
  应用程序目录。大部分的软件都安装在这里。如果您计划安装许多软件,建议您也给它分配一个分区

  /var
  如果您要作一些服务器方面的应用,可以考虑给它分配一个较大的分区

  /boot
  如果您的硬盘不支持LBA模式(我想那不太可能:),您最好挂载它,如果挂载硬盘的第一个分区,应该比较稳妥。一般来说,挂载的分区只要100M大小就足够了

  在文件系统这一环节中,我们建议您选择: ReiserFS

  也许您注意到了,Windows中,盘符既用于表示硬件(硬盘上的分区),又用于表示系统中的路径。而Linux中,硬件就是硬件,路径就是路径,不会混淆在一起,简单直接!

PS:死都要记!

路径相关命令

    cd (change directory) 更改目录。
    pwd (print working directory)显示当前路径。
    ls (list) 显示当前目录中的文件列表。

    cd /etc 进入“/etc”目录,这里使用的是绝对路径
    pwd 显示当前路径,这个命令返回结果“/etc”
    cd init.d 进入“/etc”目录的子目录“init.d”,这里使用的是相对路径
    cd .. 进入上一级目录“/etc”
    cd ../home “/etc” 目录的上一级目录为“/”,它的子目录“home”为“/home”
    cd - 回到上一次的目录,我们在“/etc”目录跳转到“/home”目录,所以这次是回到“/etc”目录
    cd ~ “~”代表当前用户的“$HOME”目录,也就是“/home/{用户名}”目录。
    ls 在任何时候,您都可以使用“ls”命令,来了解当前目录下都有哪些文件。

  远程路径:

  远程路径的表示方法为 协议://用户名:密码@位置/路径:端口

  大多数的远程路径可以使用默认端口匿名访问,由此用户名、密码、端口通常不需要填写。例如:

  http://www.ubuntu.org.cn/.../index.html

  要求身份验证的远程路径,您可以使用下面的方式访问:

  ftp://user:passwd@ftp.ubuntu.org.cn:21

PS:试试身手;

软件

  Linux中没有 注册表 这个概念。安装软件,理论上讲,只要拷贝所有相关文件,并运行它的主程序就可以了。

  按照传统,一个软件通常分别拷贝到同级目录下的 bin、etc、lib、share等文件夹。

  bin
  可执行文件,程序的可执行文件通常在这个目录下。在环境变量中设定搜索路径,就可以直接执行,而不需要定位其路径。

  etc
  配置文件,大部分系统程序的配置文件保存于 /etc 目录,便于集中修改。

  lib
  库文件,集中在一起,方便共享给不同程序。相较不同的软件单独保存库文件,能够节约一些磁盘空间。

  share
  程序运行所需要的其它资源,例如图标、文本。这部分文件是专有的,不需要共享;而且目录结构相对复杂,混放在一起比较混乱,所以单独存放。

  还有一些软件,占用一个单独的目录,所有的资源都在这个目录中。类似于Windows下的绿色软件,不推荐在Linux系统下这样作。

  执行时,系统找不到可执行文件(搜索所有路径,资源开销过大,是不现实的),需要定位其位置,像这样 /home/user/bin/可执行文件 ,不够方便。

  许多系统软件需要协作运行,配置文件分别保存,定位它们非常麻烦

  如果程序使用的库文件,像图形库文件,都单独存放,那么磁盘空间的浪费会非常严重。


  有一些大型软件,或者您布署的重要应用,您可以将它们单独安装在一个文件夹下。(通常源码安装支持这种方式,将在 软件安装 部分介绍)

PS:可记

文件类型

  Linux系统主要根据文件头信息来判断文件类型,扩展名并非决定因素。

  现在使用 ls -l 命令,查看详细信息格式的文件列表,您将会看到如下内容:

    total 5
    drwxr-x--- 4 user group 4096 Mar 10 00:37 filename
    drwxr-xr-x 21 user group 4096 Mar 10 20:16 文件名
    -rw------- 1 user group 524 Mar 10 00:40 a
    -rw-r--r-- 1 user group 24 Jun 11 2000 b
    drwx------ 2 user group 4096 Mar 9 11:06 c

  共显示了七列信息,从左至右依次为:权限、文件数、归属用户、归属群组、文件大小、创建日期、文件名称

  其中要特别留意的是第一列:

    drwxr-xr-x

  一共有10个位置,可以分为4组:

    d rwx r-x r-x

  第一组只有一个字符:
  d 文件夹
  - 普通文件
  l 链接
  b 块设备文件
  c 字符设备文件。

  剩下的3组分别为归属用户、归属群组、其它用户或群组对于该文件的权限。我们看它的格式

  rwx rwx rwx
  r 可读
  w 可写
  x 可执行

  它们的顺便不能颠倒,某一位置为空(-),则表示不具有相应的权限。

  Tip
  Linux下的可执行文件并不是由扩展名(例如 .exe )决定的,而是由其可执行权限位决定。

Ctrl+S
出于意外,有时您会按下 Ctrl+s 这个组合键,Shell便被冻结。尝试使用 Ctrl+q 组合键,看能否恢复正常。

任务管理

  &
  在命令的末尾加上一个 & 符号,表示背景任务,例如:

  wget http://www.download.net/xxx/mp3 &

  ;
  使用 ; 将多个命令连结起来,则表示任务按顺序执行

  &&
  使用 && 将多个命令连结起来,则表示只有前面的命令执行成功,后面的命令才能得以执行

  ``
  `<命令>` ,如果一个命令中包含以 `` (Esc键下方的按键)括起来的子命令,那么子命令将被优先执行,执行结果被代入上一级命令继续执行,例如创建一个以当前时间命名的文件:

    touch `date +%m.%d_%H:%M:%S`

  touch 命令能够创建一个文件,它的操作对象,为 date +%m%d%H%M%S 命令的输出 06.06_06:06:60

  这样,我们创建了一个名为 06.06_06:06:60 的文件(六月六日六时六分刚过六十秒-_-!)

  Ctrl+z
  将当前Shell中的任务挂起

  这个时候任务的状态为

    [1]+ Stopped xxx

  bg
  将挂起的任务背景运行。这时它的状态为

    [1]+ xxx &

  fg
  将背景任务调到前台执行

  jobs
  方括号中的数字为命令的任务编号,您可以使用 jobs 命令来查看所有背景任务

  如果后台运行多个任务,您可以在 bg 或者 fg 后跟任务编号,作为操作对象,例如:

    bg 2

管道、重定向

  >
  重定向符号,它的作用是将命令的输出重定向到一个文件中。比如我们想把命令 ls 的结果保存为 FileList 文件,作一个清单,我们可以使用重定向符号来完成它:

    ls -l > FileList

  >>
  作用与 > 基本相同,不同点在于, >> 以追加的方式,将命令的输出写入文件的末尾。

  <
  是从文件到命令的重定向,将文件的内容作为命令的输入。

  |
  为管道符号,它的作用是将前一个命令的输出,作为下一个命令的输入。假设一个目录下的文件太多,使用 ls 命令不能够在屏幕中完全显示,这个时候您可以将 ls 命令的输出,通过管道符号,作为浏览器 less 的输入。就可以使用浏览器的功能翻页、查找:

    ls -al | less

  Tip: less 浏览器的键绑定几乎与 man 相同,请参阅 在线帮助系统。
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics