当前位置:文档之家› shell常用命令详解及基本操作

shell常用命令详解及基本操作

Linux网络嵌入架构工程师培训班第二课1、介绍:文件系统和磁盘分区是Linux操作系统下非常重要的概念,文件系统是所有文件和文件夹的基础,是用户创建文件的基本的要求,磁盘是文件系统的基础,文件系统是逻辑概念,磁盘是物理概念,文件系统以磁盘为基础存储文件。

2、内容:介绍Linux文件系统管理的基本概念。

Linux可支持的文件系统有很多,其默认的文件系统为ext3。

讲解Linux下文件系统的挂载mount操作,如何有效地在双操作系统下挂载Windows下分区,如何挂载光盘,移动U盘等外部设置。

Minix(只可以使用64MB的硬盘分区) Linux最早的操作系统。

Cat /etc/fstab iocharset=gb2312 rw dumpext 文件系统:ext是第一个专门为Linux使用的文件系统类型,称为扩展文件系统。

它在1992年4月完成,对Linux的发展起到了重要作用。

但是其在性能和兼容上存在许多缺陷,现在已经很少用了。

ext2 文件系统:ext2文件系统应该说是Linux正宗的文件系统,早期的Linux都是用ext2,但随着技术的发展,大多Linux的发行版本目前并不用这个文件系统了;比如Redhat和Fedora 大多都建议用ext3 ,ext3文件系统是由ext2发展而来的。

对于Linux新手,我们还是建议您不要用ext2文件系统;ext2支持undelete(反删除),如果您误删除文件,有时是可以恢复的,但操作上比较麻烦;ext2支持大文件;ext2文件系统的官方主页是:/ext2.htmlext3 文件系统:是由ext2文件系统发展而来;ext3 is a Journalizing file system for Linux(ext3是一个用于Linux的日志文件系统),ext3支持大文件;但不支持反删除(undelete)操作;Redhat和Fedora都力挺ext3;至于ext3文件系统的更多特性,请访问《Linux 文件系统(filesystem)资源索引》;jsf 文件系统:jsf提供了基于日志的字节级文件系统,该文件系统是为了面向事务的高性能系统而开发的。

在AIX上,jsf已经受住了考验。

它是可靠,快速和容易使用的。

2000年2月,IBM公司宣布在一个开放资源许可证下,移植Linux版的jsf文件,jsf 也是一个有大量用户安装使用的企业级文件系统,它具有可伸缩性和健壮性,与非日志文件系统相比,它的优点是其快速的重启能力。

Jsf能够在几秒或几分钟内就把文件系统恢复到一致状态,虽然jsf主要为满足服务器(从单处理器系统到高级多处理器和群集系统)的高吞吐量和可靠性需求设计的,但是jsf还可用于想得到高性能和可靠性的客户机的配置,因为在系统崩溃时,jsf能提供快速的文件系统重启时间,所以它是因特网文件服务器的关键技术。

使用数据库日志处理技术,jsf能够在几秒或几分钟之内把文件系统恢复到一致状态。

在非日志文件系统中,文件恢复可能花费几小时或几天。

reiserfs 文件系统:reiserfs 文件系统是一款优秀的文件系统,支持大文件,支持反删除(undelete);在我的测试ext2、reiserfs 反删除文件功能的过程中,我发现reiserfs文件系统表现的最为优秀,几乎能恢复90%以上的数据,有时能恢复到100%;操作反删除比较容易;reiserfs 支持大文件;smb 文件系统:smb是支持Windows for workgroups,Windows NT和Lan Manager的基于SMB协议的网络操作系统。

Sysv 文件系统:Sysv文件系统实际上是System V/Coherent 在Linux平台上的文件系统.Proc 文件系统:Proc是Linux系统作为一种伪文件系统出现的,它用于作为连接内核数据结构的界面,不用来存储文件。

NTFS 文件系统微软Windows NT内核的系列操作系统支持的,特别为网络和磁盘配额,文件加密等管理安全特性设计的磁盘格式。

iso9660(标准的CDROM系统)Nfs(network file system,多计算机公用一个文件系统)msdosms-dos的fat。

hpfsos/2文件系统。

Windows NT 3.51之前版本的文件系统。

/sbin这个目录包含了所有使系统运行的关键二进制可执行文件。

包含了系统管理和维护硬件配置的程序。

你可以在这里找到lilo, fdisk, init, ifconfig等等。

这里有所有用户都需要的关键程序。

/usr/sbin另一个包含系统可执行文件的目录。

这个目录包含了系统管理员使用的一些其他程序。

这里你可以找网络守护程序以及一些不需要维护和修理系统的管理员所使用的程序。

/bin相对于/sbin, bin目录包含一些系统管理员和普通用户都可以使用的命令。

这个目录通常包含诸如bash, csh等shell,以及诸如cp, mv, rm, cat, ls等非常有用的命令。

这些命令对于用户来说是不可缺少的。

/usr/bin包含一些其它的用户命令。

从另一方面看,这些命令本质上并不是为用户准备的。

/boot这个目录包含system.map文件以及Linux kernel。

Lilo将启动扇区的备份放在这里。

/dev这是一个非常有趣的目录,是Linux文件系统的一个闪亮的特性- 所有对象都是文件或目录。

仔细观察这个目录你会发现hda1, hda2等, 它们代表系统主硬盘的不同分区。

/dev/cdrom和/dev/fd0代表你的CDROM驱动器和floppy驱动器。

看上去可能有些奇怪,但比较文件和硬件的特性这却是十分合理的。

它们都可以读出和写入。

例如/dev/dsp,这个文件代笔你的扬声器。

那么写入这个文件的数据都回传送到喇叭。

试一试'cat /etc/lilo.conf > /dev/dsp' 你会听到一些声音。

这是你的lilo.conf 文件的声音!同样,向/dev/ttyS0 ( COM 1 ) 读出或写入数据你可以和接到上面的设备进行通讯。

/homeLinux 是多用户环境,所以每一个用户都有一个只有自己可以访问的目录(当然管理员也可以访问)。

它们以/home/username 的方式存在。

这个目录也保存一些应用对于这个用户的配置,比如IRC, X 等。

/lib这里包含了系统程序所需要的所有共享库文件,类似于Windows 的共享库DLL 文件。

/lost+foundLinux 应该正确的关机。

但有时你的系统也可能崩溃掉或突然断电使系统意外关机。

那么启动的时候fsch 将会进行长时间的文件系统检查。

Fsck 会检测并试图恢复所发现的不正确的文件。

被恢复的文件会放置在这个目录中。

所恢复的文件也许并不完整或并不合理,但毕竟提供了一些恢复数据的机会。

/mnt这是一个普通的加载目录,在这里你可以加载你的文件系统或设备。

加载是使一个文件系统对于系统可用的过程。

在加载后你的文件可以在加载目录下访问。

这个目录通常包含加载目录或用于加载软驱和光驱的子目录。

如果需要,你也可以在这里建立其它的加载目录。

对于加载目录的位置并没有强制性的要求,你可以在系统的任意位置建立加载目录。

建立/mnt 只是为了使系统更工整的惯例。

/opt这个目录包含所有默认系统安装之外的软件和添加的包。

一般来说你可以在这里找到KDE 和StarOffice 。

这个目录一般并不会经常被启用,这是Unix系统安装的标准。

/proc这是系统中极为特殊的一个目录,实际上任何分区上都不存在这个目录。

它实际是个实时的、驻留在内存中的文件系统。

/root这是root的用户用户目录。

/tmp这里包含大多数要用到的临时文件。

许多程序在这里建立lock文件和存储临时数据。

有些系统会在启动或关机时清空此目录。

/usr这是系统中很重要的一个目录,这里包含所有用户的二进制文件。

X,及其库文件,用户程序比如telnet, ftp 等等都在这里。

<b>/usr/doc</b>包含系统文档。

<b>/usr/src/linux</b>包含Linux kernel 的源码。

/var这里存储假脱机(spooling)数据,比如mail 以及打印机守护的输出。

系统日志也存放在这里。

你还可以在/var/named下找到BIND的数据库,在/var/yp下找到NIS的数据库。

mount命令详解功能:加载指定的文档系统。

语法:mount [-afFhnrvVw] [-L] [-o] [-t] [设备名] [加载点]用法说明:mount可将指定设备中指定的文档系统加载到Linux目录下(也就是装载点)。

可将经常使用的设备写入文档/etc/fastab,以使系统在每次启动时自动加载。

mount加载设备的信息记录在/etc/mtab文档中。

使用umount命令卸载设备时,记录将被清除。

常用参数和选项:-a 加载文档/etc/fstab中配置的任何设备。

-f 不实际加载设备。

可和-v等参数同时使用以查看mount的执行过程。

-F 需和-a参数同时使用。

任何在/etc/fstab中配置的设备会被同时加载,可加快执行速度。

-h 显示在线帮助信息。

-L 加载文档系统标签为的设备。

-n 不将加载信息记录在/etc/mtab文档中。

-o 指定加载文档系统时的选项。

有些选项也可在/etc/fstab中使用。

这些选项包括:iocharset=gb2312 async 以非同步的方式执行文档系统的输入输出动作。

atime 每次存取都更新inode的存取时间,默认配置,取消选项为noatime。

auto 必须在/etc/fstab文档中指定此选项。

执行-a参数时,会加载配置为auto的设备,取消选取为noauto。

defaults 使用默认的选项。

默认选项为rw、suid、dev、exec、anto nouser和async。

dev 可读文档系统上的字符或块设备,取消选项为nodev。

exec 可执行二进制文档,取消选项为noexec。

noatime 每次存取时不更新inode的存取时间。

noauto 无法使用-a参数来加载。

nodev 不读文档系统上的字符或块设备。

noexec 无法执行二进制文档。

nosuid 关闭set-user-identifier(配置用户ID)和set-group-identifer(配置组ID)配置位。

nouser 使一位用户无法执行加载操作,默认配置。

remount 重新加载设备。

通常用于改变设备的配置状态。

ro 以只读模式加载。

rw 以可读写模式加载。

suid 启动set-user-identifier(配置用户ID)和set-group-identifer(配置组ID)配置位,取消选项为nosuid。

相关主题