134
Linux操作系统初级培训 DSC认证培训体系 Linux系统初级培训 曙光信息产业(北京)有限公司

Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

Linux操作系统初级培训

DSC认证培训体系

Linux系统初级培训

曙光信息产业(北京)有限公司

Page 2: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

目录

• 第一章:Linux操作系统简介–1.1 Linux操作系统起源–1.2 Linux操作系统特性–1.3 Linux操作系统结构–1.4 Linux操作系统内核版本–1.5 Linux操作系统发行版本–1.6 Linux操作系统特点

• 第二章: Linux操作系统安装和基本配置• 第三章: Linux操作系统的文件系统结构• 第四章: Linux操作系统的用户管理• 第五章: Linux操作系统常用命令详解• 第六章: Linux操作系统的进程管理

Page 3: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第一章:Linux操作系统简介

• Linux 以它的高效性和灵活性著称。具有多任务、多用户的能力。•Linux 之所以受到广大计算机爱好者的喜爱,其主要原因有两个,一是它属于自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要的修改。另一个原因是,它具有 Unix 的全部功能,任何使用 Unix 操作系统或想要学习 Unix 操作系统的人都可以从 Linux 中获益。

Page 4: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

1.1 Linux操作系统起源

• Linux是一个诞生于网络、成长于网络且成熟于网络的操作系统。• 1991年,芬兰大学生Linus Torvalds萌发了开发一个自由的UNIX操作系统

的想法,当年Linux诞生,为了不让这个羽毛未丰的操作系统夭折,Linus将自已的作品Linux通过Internet发布。从此一大批知名的、不知名的hack、编程人员加入到开发过程中来,Linux逐渐成长起来。

• Linux一开始是要求所有的源码必须公开,并且任何人均不得从Linux交易中获利。然而这种纯粹的自由软件的理想对于Linux的普及和发展是不利的,于是Linux开始转向GPL,成为GNU阵营中的主要一员。

• Linux凭借优秀的设计,不凡的性能,加上IBM、INTEL、CA、ORACLE等国际知名企业的大力支持,市场份额逐步扩大,逐渐成为主流操作系统之一。

• Linux只是内核,即操作系统中允许用户的软件与硬件通信的那部分。• Linux产商借网络爱好者升级的内核,通过优化、增加功能出售各个版本的

linux操作系统

Page 5: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

1.2 Linux操作系统特点

• 开放性:指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。• 多用户:是指系统资源可以被不同用户使用,每个用户对自己的资源(例如:文

件、设备)有特定的权限,互不影响。• 多任务:它是指计算机同时执行多个程序,而且各个程序的运行互相独立。• 良好的用户界面 :Linux向用户提供了两种界面:用户界面和系统调用。Linux还

为用户提供了图形用户界面。它利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易操作、交互性强的友好的图形化界面

• 设备独立性:是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。 Linux是具有设备独立性的操作系统,它的内核具有高度适应能力

• 提供了丰富的网络功能:完善的内置网络是Linux一大特点。• 可靠的安全系统:Linux采取了许多安全技术措施,包括对读、写控制、带保护的

子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。

• 良好的可移植性:是指将操作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。

Page 6: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

1.3 Linux操作系统结构

hardware

multitasking

device

interfaces

vi

sh

ls

bashkernel

TCP/IP

stack

shell

gcc

diff grep

wc

who

cat

utilities

• Kernel

–系统启动时将内核装入内存

–管理系统各种资源

• Shell

–用户界面,提供用户与内核交互处理接口

–是命令解释器,提供强大的编程环境

–bash,ash,pdksh,tcsh,ksh,sh,csh,zsh„.

• Utility

–提供各种管理工具,应用程序

Page 7: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

1.4 Linux操作系统内核版本

版本号码

稳定版本 开发版本2.4.32 2.6.19-6

主版本号.稳定(偶)/开发版本(奇).发布号-patch号

http://www.kernel.org/pub/linux/kernel/

当前最新版本linux-2.6.28.tar.gz

Page 8: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

1.5 Linux操作系统发行版本

Page 9: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

目录

• 第一章: Linux操作系统简介• 第二章: Linux操作系统安装和基本配置

– 2.1 Linux系统安装前的准备– 2.2 Linux系统安装方式的选择– 2.3 Linux系统安装内容的选择– 2.4 服务器磁盘控制器类型– 2.5 Linux系统磁盘分区– 2.6 Linux系统分区优点– 2.7 Linux系统分区识别– 2.8 Linux系统主要分区介绍– 2.9 Linux 操作系统安装简解– 2.10 Linux系统基本配置

• 第三章: Linux操作系统的文件系统结构• 第四章: Linux操作系统的用户管理• 第五章: Linux操作系统常用命令详解• 第六章: Linux操作系统的进程管理

Page 10: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第二章:Linux操作系统安装和基本配置

Page 11: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.1 Linux系统安装前的准备

• Linux安装前须知

安装前要了解所安装服务器的硬件配置方面的信息,主要包括磁盘控制器型号、网卡型号、内存大小及CPU类型等,根据相关信息和用户使用情况安装合适的Linux操作系统。在安装Linux前要了解Linux的一些基础知识。

• 服务器硬盘分区要求

根据需要,硬盘的分区可以自己定义,建议最少安装三个分区:/根分区、/swap 交换分区、/boot引导分区。

• 多操作系统的安装

可以在硬盘上安装一个以上的操作系统,不同的操作系统必须有自己的分区,在安装Windows及Linux双操作系统时,请先安装Windows再安装Linux。

Page 12: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.2 Linux系统安装方式的选择

• 通过光盘介质引导安装

CD、DVD

• 通过网络引导安装

NFS,HTTP,FTP

• 通过软盘(DOS)引导安装

需将操作系统拷贝到硬盘某个分区

• 通过网络传输镜像文件安装

曙光公司DCIS采用的方式

Page 13: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.3 Linux系统安装内容的选择

• 根据实际需要来选择将要安装的软件包 作为网络服务器专用,提供用户服务

作为办公专用,处理日常事务

作为企业工作站专用,提供内部资源管理

如果将来有别的需要,可以很方便的安装相应软件,实现各种所需功能

Page 14: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.4 服务器磁盘控制器类型

• 磁盘类型: SATA,SCSI,SAS• RAID卡型号:

Adaptec:www.adaptec.comLSI :www.lsilogic.com

Page 15: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.5 Linux系统磁盘分区

• 磁盘分区:

主分区:最多4个主分区,其中一个主分区必须被标志为是

“活动的”,而且包含一个引导装入程序

扩展分区:将主分区之一转换成一个扩展分区,然后将扩展

分区再细分成任意个逻辑分区,不可将目录安装在扩展分区

逻辑分区:每个物理驱动器上最多只能有11个逻辑分区

Page 16: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.6 Linux系统分区优点

增强可用性:如果系统一个分区由于故障而不能使用,其余好

的分区仍然可以使用;

减少关闭时间:如果系统故障只影响一部分分区,那么只有这

部分分区需要修复,故能比整个分区修复花的时间更少;

维护轻松:如果需要修复分区,单独修复每个分区比修复整个

大分区要轻松得多;

均衡I/O:可以把分区分配到不同的磁盘来平衡I/O改善性能;

分区对用户透明,最终用户感觉不到分区的存在。

Page 17: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.7 Linux系统分区识别

•第一SCSI/SATA/SAS的主盘:/dev/sda分区:/dev/sda1、/dev/sda2 、/dev/sda3 ……..

•第二SCSI/SATA/SAS的从盘:/dev/sdb分区:/dev/sdb1、/dev/sdb2 、/dev/sdb3 ……..

•第三SCSI/SATA/SAS的主盘:/dev/sdc分区:/dev/sdac1、/dev/sdc2 、/dev/sdc3 ……..

•主分区被命名为sda1-sda3,如超过3个分区,则/dev/sda4被定义为扩展分区,在/dev/sda4下生成/dev/sda5逻辑分区,Linux操作系统最多能分11个逻辑分区

Page 18: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.8 Linux系统主要分区介绍—/boot• /boot引导分区:该目录放置系统内核及驱动模块引导程序,需要独立分区:

1 独立有利于避免文件系统损坏造成的无法启动问题,如果独立出来,而/根文件系统因为别的原因损坏了,可以正常引导进入linux内核,并有很大几率进入一个可用的shell来修复系统,如果不独立,则很可能/文件系统损坏导致找不到/boot下的内核镜像,从而无法引导内核。

2 若使用lilo作为引导,避免1024柱面问题。使用grub引导不存在该问题。3 文件系统支持问题。若安装多操作系统,/boot分区独立可以很方便的管理

多系统引导• /boot修复若由于操作或别的原因导致系统引导损坏,可以通过以下方法修复:进入grub模式

grub> find /boot/grub/stage1 注:找到/boot分区位置返回 (hd0,0) 注:说明/boot分区在第一块硬盘的第一个分区grub>root (hd0,0) 注:这是/boot所在的分区;grub>setup (hd0) 注:把GRUB写到MBR上;

Page 19: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.8 Linux系统主要分区介绍—/swap

• Swap空间的作用 当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,

以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。

有一点要声明的是,并不是所有从物理内存中交换出来的数据都会被放到Swap中(如果这样的话,Swap会不堪重负),有相当一部分的数据直接交换到文件系统

• 分区规则:

Swap space 比内存要慢5-6个数量级

在安装时,系统会尝试将交换分区安装到磁盘外端

当有多个磁盘控制器时,在每个磁盘上都建立交换分区

尽量将交换分区安装在访问最频繁的数据区附近

Page 20: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.8 Linux系统主要分区介绍—/swap

• 创建Swap文件1.以超级用户(root)身份登陆

# dd if=/dev/zero of=swapfile bs=1024 count=32000创建一个有连续空间的交换文件。大小为1024*32000=32G

2.激活Swap文件#/usr/sbin/swapon swapfileswapfile指的是上一步创建的交换文件。

3. 在/etc/fstab/path/swapfile none Swap default 0 0

4.检验Swap文件是否加上/usr/sbin/swapon -s

• 删除多余的Swap空间。1.成为超级用户2.使用Swapoff命令收回Swap空间。#/usr/sbin/swapoff swapfile

3.编辑/etc/fstab文件,去掉此Swap文件的实体。4.从文件系统中回收此文件。#rm swapfile

Page 21: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.8 Linux系统分区介绍—/

/—根目录 /root —超级用户主目录 /bin-基本命令/boot-kernel 和boot配置文件 /etc-各种配置文件/usr-用户程序 /opt--- 附加的应用软件包/home-用户目录 /mnt--- 设备/文件系统挂载点/tmp-临时文件/var-可变信息区(file spool,logs,requests,mail,etc.)

/proc-进程信息 /dev-设备/sbin-系统管理员执行程序 /lib--- 基本的共享库和核心模块

Page 22: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.9 Linux 操作系统安装简解• 以光盘介质安装简解

•若加载软盘驱动,输入linux dd

•若进入修复模式,输入 linux rescue

•若进入单用户模式,输入linux single

Page 23: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.9.1 Linux系统安装分区

• 自动分区:默认为自动分区,系统会分三个分区/boot 、/swap、/根• 手工分区:根据应用分区,/boot、/swap为独立分区,可以定义

Page 24: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.9.2 Linux系统手工分区

Page 25: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.9.2 系统安装需关闭的服务

•配置防火墙及SElinux 选择无防火墙

no firwallSelinux不活跃

disable SElinux

Page 26: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.9.3 系统安装完毕后的工作

• 在系统安装的过程中,按需求选择,无要求的默认即可,根据系统安装提示将系统安装完毕

• 系统安装完毕重新启动后,进行用户登录

Page 27: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.9.4 系统安装完毕后用户的登录

• 超级用户root (password 在安装时已设定)

–root为系统管理员,可以完成任何事情,建议不用root登录

–login: rootpassword: ******[root@localhost root]#

• 普通用户同样需要输入name &password[xyz@localhost xyz]$

Page 28: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.10 Linux系统基本配置-网络配置

• 网络的配置

#cd /etc/sysconfig/network-scripts

#vi ifcfg-eth0 写入网络IP等

#vi ifcfg-eth1 写入网络IP等

设置完IP后,重启网络系统

# /etc/init.d/network restart

网关:在ifcfg-eth0、 ifcfg-eth1 添加GATEWAY=网关IP

DNS: 在ifcfg-eth0、 ifcfg-eth1 添加NAMESERVER=DNSIP

• 网络相关配置文件

Page 29: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.10 Linux系统基本配置-网络文件

• /etc/hosts

如果系统的 IP 不是动态获取,简单的主机名解析

文件格式: ip地址 主机名

cat /etc/hosts :127.0.0.1 localhost.localdomain localhost

• /etc/services

Internet网络服务文件,将网络服务名转换为端口号/协议。由 inetd、telnet、tcpdump 和一些其它程序读取。文件中的每一行对应一种服务,它由4个字段组成,中间用TAB或空格分隔,分别表示“服务名称”、“使用端口”、“协议名称”以及“别名”。

文件格式: 服务 端口/端口类型 别名

• /etc/sysconfig/network(redhat linux)、/etc/hostname(suse)

主机名配置文件,记录着本机的主机名

• /root/.rhosts

网络名认证

Page 30: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.10 Linux系统基本配置-服务的管理

• 服务的启动

chkconfig 服务名称 on

• 服务的关闭

chkconfig 服务名称 off

• 服务关于运行级别的定义

chkconfig --level 35 服务名称 on/off

• 服务的察看

chkconfig --list |grep 服务名称

Page 31: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

2.10 Linux系统基本配置-运行级别的定义

• runlevel 运行级别runlevels :定义在/etc/inittab中的不同模式。

• Linux Runlevels0 Bootstrap or power-down levels1 Administration mode2 Basic multiuser level (no networking)3 Multiuser with DFS and networking4 Not used5 XII mode: log in and out from X prompts/S Single-user mode

Page 32: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第三章:Linux系统的文件系统及其结构

Page 33: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.1 文件与目录的基本概念

• 文件:是用来存储信息的基本结构,它是被命名(文件名)的存储在某种介质(磁盘,光盘,磁带等)上的一组信息的集合。

• 从技术上讲,文件不能存贮任何数据,它只是一个用来指向它们相应的索引节点(inode)的名字,索引节点包含了文件的真正信息。

• 文件名:是文件的标识,由字母,数字,下划线,圆点组成。

• 扩展名:为了便于识别和管理,用扩展名作为文件名的一部分,中间用.隔开

• 目录文件:用来管理和组织大量的文件,常称为目录

Page 34: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.2 文件系统基本概念

• 文件系统是包括在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区的目录结构;一个可应用的磁盘设备可以包含一个或多个文件系统;如果您想进入一个文件系统,首先您要做的是挂载(mount)文件系统;为了挂载(mount)文件系统,您必须指定一个挂载点;

• 文件系统是在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区组织文件的方法,如NTFS或FAT ;

• 文件系统是文件的数据结构或组织方法。在Linux中,文件系统涉及两个非常独特的事情,目录树或在磁盘或分区上文件的排列;文件系统是基于操作系统的,建立在磁盘媒质上的可见体系结构,例如这种结构对于一个Linux用户来说可以用ls 或其它工具可以看到;

• 文件系统是基于被划分的存储设备上的逻辑上单位上的一种定义文件的命名、存储、组织及取出的方法;

• 在计算机业,一个文件系统是有组织存储文件或数据的方法,目的是易于查询和存取。文件系统是基于一个存储设备,比如硬盘或光盘,并且包含文件文件物理位置的维护;也可以说文件系统也是虚拟数据或网络数据存储的方法,比如NFS。

Page 35: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.3 Linux文件系统类型

•ext2 文件系统ext2文件系统应该说是Linux正宗的文件系统,早期的Linux都是用ext2,但随着

技术的发展,大多Linux的发行版本目前并不用这个文件系统了;比如Redhat和Fedora 大多都建议用ext3 ,ext3文件系统是由ext2发展而来的。对于Linux新手,我们还是建议您不要用ext2文件系统;ext2支持undelete(反删除),如果您误删除文件,有时是可以恢复的,但操作上比较麻烦;•ext3 文件系统:是由ext2文件系统发展而来

ext3 is a Journalizing file system for Linux(ext3是一个用于Linux的日志文件系统),ext3支持大文件;但不支持反删除(undelete)操作; Redhat和Fedora都力挺ext3;•reiserfs 文件系统

reiserfs 文件系统是一款优秀的文件系统,支持大文件,支持反删除(undelete);操作反删除比较容易;reiserfs 支持大文件;

Page 36: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.4 常用文件系统比较

Filesystem File Size LimitFilesystem Size Limit

ext2/ext3 with 1 KiB blocksize 16448 MiB (~ 16 GiB) 2048 GiB (= 2 TiB)

ext2/3 with 2 KiB blocksize 256 GiB 8192 GiB (= 8 TiB)

ext2/3 with 4 KiB blocksize 2048 GiB (= 2 TiB) 8192 GiB (= 8 TiB)

ext2/3 with 8 KiB blocksize (Systems with 8 KiB pages like Alpha only)

65568 GiB (~ 64 TiB) 32768 GiB (= 32 TiB)

ReiserFS 3.5 2 GiB 16384 GiB (= 16 TiB)

ReiserFS 3.6 (as in Linux 2.4) 1 EiB 16384 GiB (= 16 TiB)

XFS 8 EiB 8 EiB

JFS with 512 Bytes blocksize 8 EiB 512 TiB

JFS with 4KiB blocksize 8 EiB 4 PiB

NFSv2 (client side) 2 GiB 8 EiB

NFSv3 (client side) 8 EiB 8 EiB

1024 Bytes = 1 KB; 1024 KB = 1 MB; 1024 MB = 1 GB; 1024 GB = 1 TB; 1024

TB = 1 PB; 1024 PB = 1 EiB

Page 37: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.5 文件系统的创建

• 文件系统的创建

这个过程是存储设备建立文件系统的过程,一般也被称为格式化或初始化,通过一些初始化工具来进行。一般的情况下每个类型的操作系统都有这方面的工具。在Linux中有mkfs系列工具

• 创建方法

以系统第二块硬盘为例:/dev/sdb

分区:#fdisk /dev/sdb

分区完毕后,硬盘识别为/dev/sdb1

文件系统创建:#mkfs –t 文件系统类型 /dev/sdb1

Page 38: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.6 Linux系统的文件结构

Page 39: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.6.1 Linux文件类型的定义

• 普通文件

文本文件:ASCII码形式存储–开头,如:-rw-r--r-- 1 root root 39599 Mar 8 12:15 x

二进制文件:以二进制形式存储在计算机中,不可直接读,要通过相应的软件读取–开头,如:-rwxrwxrwx 1 root root 46888960 Dec 9 2005 x.sh

• 目录文件:d字母开头

如:drwxr-xr-x 2 root root 4096 Aug 2 2006 bin

• 设备文件

块设备文件:b字母开头如:brw-rw---- 1 root disk 3, 1 Jan 30 2003 hda1

字符设备文件:c字母开头

如:crw------- 1 root root 4, 1 Jul 31 13:49 tty1

Page 40: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.6.2 Linux文件属性的定义[root@localhost ~]# ls -lih总计 104K2408830 drwxr-xr-x 2 root root 4.0K 04-21 12:46 mkuml-2004.07.172408260 drwxr-xr-x 2 root root 4.0K 04-21 22:15 mydir2408258 lrwxrwxrwx 1 root root 7 04-21 22:16 sun001.txt -> sun.txt2408263 -rw-r--r-- 2 root root 39K 04-20 14:17 sun.txt

解释:第一字段:inode;

inode :索引节点。每个存储设备或存储设备的分区(存储设备是硬盘、软盘、U盘 ... ... )被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,Block是用来存储数据用的。而inode是用来存储这些数据的信息,这些信息包括文件大小、属主、归属的用户组、读写权限等。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令,能通过inode值最快的找到相对应的文件。第二字段:文件种类和权限;第三字段:硬链接个数;第四字段:属主;第五字段:所归属的组;第六字段:文件或目录的大小;第七字段和第八字段:最后访问或修改时间;第九字段:文件名或目录名

Page 41: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.6.3 Linux文件权限的定义

[root@zhz home]# ls -ltotal 32drwxrwxrwx 38 down root 4096 Jul 5 19:09 downdrwx------ 9 glh glh 4096 Mar 26 19:08 glhdrwx------ 4 lei lei 4096 Mar 21 08:40 leidrwxr-xr-x 5 root root 4096 Apr 12 2006 software

•Linux文件或目录的权限位是由 9 个权限位来控制,每三位为一组,它们分别是:

文件属主(Ower)的读r、写w、执行x用户组(Group)的读r、写w、执行x(Other)其它用户的读r、写w、执行x;如果权限位不可读、不可写、不可执行,是用

-来表示。

Page 42: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.6.3 系统目录内容介绍/ Linux系统根目录,包含所有目录

/binBinary的缩写,存放用户的可执行程序,例如ls,cp,也包含其它的SHELL如:bash等

/boot包含vmlinuz,initrd.img等启动文件,随便改动可能无法正常开机

/dev 接口设备文件目录,如你的硬盘:sda

/etc Passwd等系统设置与管理的文件

/etc/x11 X Windows System的设置目录

/home 一般用户的主目录

/lib(/lib64) 包含执行/bin和/sbin目录的二进制文件时所需的共享函数库library

/mnt各项装置的文件系统加载点,例如:/mnt/cdrom是光驱的加载点

/opt 提供空间,较大的且固定的应用程序存储文件之用

/procPS命令查询的信息与这里的相同,都是系统内核与程序执行的信息

/root 管理员的主目录

Page 43: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

3.6.3 系统目录内容介绍

/sbin 系统启动时所需的二进制程序

/tmp Temporary,存放暂存盘的目录

/usr 存放用户使用系统命令和应用程序等信息

/usr/bin 存放用户可执行程序,如grep,mdir等

/usr/doc 存放各式程序文件的目录

/usr/include 保存提供C语言加载的header文件

/usr/include/X11 保存提供X Windows程序加载的header文件

/usr/info GNU程序文件目录

/usr/lib(/lib64) 函数库

/usr/lib(/lib64)/X11 函数库

/usr/local 提供自行安装的应用程序位置

/usr/man 存放在线说明文件目录

/usr/sbin 存放经常使用的程序,如showmount

/usr/src 保存系统的源码文件

/usr/X11R6/bin 存放X Windows System的执行程序

/var Variable,具有变动性质的相关程序目录,如log

Page 44: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第四章:Linux操作系统的用户管理

Page 45: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.1 Linux系统用户与任务的关系

• 理解Linux的单用户多任务,多用户多任务概念 Linux 的单用户多任务

单用户多任务;一个用户,为了完成工作,执行了多个任务;当然其它的人还能以远程登录过来,也能做其它的工作。

Linux 的多用户、多任务有时可能是很多用户同时用同一个系统,但并不所有的用户都一定都

要做同一件事,所以这就有多用户多任务之说;举个例子,比如一台服务器,上面有FTP用户、系统管理员、web 用

户、常规普通用户等,在同一时刻,有的可能在上传软件包管理子站;在与此同时,可能还会有系统管理员在维护系统;不同用户所具有的权限也不同,要完成不同的任务得需要不同的用户,也可以说不同的用户,可能完成的工作也不一样;

值得注意的是:多用户多任务并不是大家同时挤到一起在一台机器的的键盘和显示器前来操作机器,多用户可能通过远程登录来进行,比如对服务器的远程控制,只要有用户权限任何人都是可以上去操作或访问的;

Page 46: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.2 Linux系统用户和组的概念• 用户(user)的概念

Linux 是真正意义上的多用户操作系统,Linux系统中可建若干用户(user),在Linux系统中的一些用户是用来完成特定任务的。

• 用户组(group)的概念;

用户组(group)就是具有相同特征的用户(user)的集合体;比如有时要让多个用户具有相同的权限,比如查看、修改某一文件或执行某个命令,这时需要用户组,把用户都定义到同一用户组,通过修改文件或目录的权限,让用户组具有一定的操作权限,这样用户组下的用户对该文件或目录都具有相同的权限,这是通过定义组和修改文件的权限来实现的;

• 用户和用户组的对应关系是:一对一、多对一、一对多或多对多

一对一:某个用户可以是某个组的唯一成员;多对一:多个用户可以是某个唯一的组的成员,不归属其它用户组;一对多:某个用户可以是多个用户组的成员;多对多:多个用户对应多个用户组,并且几个用户可以是归属相同的组;其实多对多的关系是前面三条的扩展;理解了上面的三条,这条也能理解

Page 47: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3 Linux系统用户和组的配置

• 与用户(user)和用户组(group)相关的配置文件

与用户(user)相关的配置文件

/etc/passwd 注:用户(user)的配置文件;/etc/shadow 注:用户(user)影子口令文件;

与用户组(group)相关的配置文件

/etc/group 注:用户组(group)配置文件;/etc/gshadow 注:用户组(group)的影子文件;

Page 48: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.1 Linux系统用户管理的命令• 管理用户(user)的工具或命令

useradd 注:添加用户adduser 注:添加用户userdel 注:删除用户passwd 注:为用户设置密码usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等pwconv 注:同步用户从/etc/passwd 到/etc/shadowpwck 注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;pwunconv 注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;finger 注:查看用户信息工具id 注:查看用户的UID、GID及所归属的用户组chfn 注:更改用户信息工具su 注:用户切换工具sudo 注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;visudo 注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的;sudoedit 注:和sudo 功能差不多

Page 49: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.2 Linux系统用户组管理的命令

• 管理用户组(group)的工具或命令groupadd 注:添加用户组;groupdel 注:删除用户组;groupmod 注:修改用户组信息;groups 注:显示用户所属的用户组;grpck/grpconv 注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group,然后删除gshadow文件。

Page 50: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.3 Linux系统用户主目录文件

• /etc/skel 目录/etc/skel目录一般是存放用户启动文件的目录,这个目录是由root权限控制,当添加用户时,这个目录下的文件自动复制到新添加的用户的家目录下;/etc/skel 目录下的文件都是隐藏文件,也就是类似.file格式的;我们可通过修改、添加、删除/etc/skel目录下的文件,来为用户提供一个统一、标准的、默认的用户环境。

• /etc/skel 目录下的文件,一般是用useradd 和adduser 命令添加用户(user)时,系统自动复制到新添加用户(user)的家目录下;如果我们通过修改 /etc/passwd 来添加用户时,我们可以自己创建用户的家目录,然后把/etc/skel 下的文件复制到用户的家目录下,然后要用chown 来改变新用户家目录的属主。

Page 51: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.4 Linux系统用户管理相关文件

• /etc/default/useradd 文件

通过useradd 添加用户时的规则文件内容如下:

# useradd defaults fileGROUP=100HOME=/home 注:把用户的家目录建在/home中;INACTIVE=-1 注:是否启用帐号过期停权,-1表示不启用;EXPIRE= 注:帐号终止日期,不设置表示不启用;SHELL=/bin/bash 注:所用SHELL的类型;SKEL=/etc/skel 注: 默认添加用户的目录默认文件存放位置;也就是说,当我们用adduser添加用户时,用户家目录下的文件,都是从这个目录中复制过去的;

Page 52: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.5 Linux系统用户管理相关文件

• /etc/login.defs 配置文件/etc/login.defs 文件是当创建用户时的一些规划,比如创建用户时,是否需要家目录,UID和GID的范围;用户的期限等等,这个文件是可以通过root来定义的;比如Fedora 的 /etc/logins.defs 文件内容(注释删除后的内容)MAIL_DIR /var/spool/mail 注:创建用户时,要在目录/var/spool/mail中创建一个用户mail文件;PASS_MAX_DAYS 99999 注:用户的密码不过期最多的天数;PASS_MIN_DAYS 0 注:密码修改之间最小的天数;PASS_MIN_LEN 5 注:密码最小长度;PASS_WARN_AGE 7 注:UID_MIN 500 注:最小UID为500 ,也就是说添加用户时,UID 是从500开始的;UID_MAX 60000 注:最大UID为60000;GID_MIN 500 注:GID 是从500开始;GID_MAX 60000CREATE_HOME yes 注:是否创用户家目录,要求创建;

Page 53: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.6 Linux系统用户文件权限定义-umask• 默认权限分配的命令 umask

umask 是通过八进制的数值来定义用户创建文件或目录的默认权限,umask 表示的是禁止权限,不过文件和目录有点不同:新创建的文件默认不具有可执行允可权限:-rw-------新创建的目录默认具有可执行允可权限: drwx--x--x 对于文件来说,umask 的设置是在假定文件拥有八进制666权限上进行,文件的权限就是是666减去umask的掩码数值;对于目录来说,umask 的设置是在假定文件拥有八进制777权限上进行,目录八进制权限777减去umask的掩码数值

umask 文件 目录

0 6 7

1 5 6

2 4 5

3 3 4

4 2 3

5 1 2

6 0 1

7 0 0

系统用户的家目录的权限是通过在配置文件中指定的,比如Fedora 中是用的 /etc/login.defs文件;其中有这样一段:CREATE_HOME yesUMASK 077表示的意思是,当我们创建用户时,他的家目录umask的数值是077 。我们怎么理解这个077呢。当用户添加时,系统自动在/home中创建用户的家目录,并且设置它的权限为777-077=700 ,也就是rwx------

Page 54: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.7 Linux系统用户文件权限定义-setuid/gid

• setuid和setgid 位setuid 和setgid位是让普通用户可以以root用户的角色运行只有root帐

号才能运行的程序或命令• setuid和setgid的设置方法;

第一种方法:八进制方法:setuid位设置用八进制的4000,setgid占用的是八进制的2000

至于setuid的设置方法,只是在我们通过chmod设置文件或目录权限位的八进制方法的前面多加一个数字,也就是4。比如:

[root@localhost ~]# chmod 4755 /bin/rm 注:设置rm的权限为4755 ,就把setuid 位设置好了-rwsr-xr-x 1 root root 26556 Feb 19 2003 /bin/rm作为setgid 位占用的是八进制的2000位,同时设置setuid和setgid,就是把setuid和setgid两个八进位的值相加(4000+2000=6000),然后加上文件或目录的权限位的三位数值,然后通过chmod 运行就行了。

Page 55: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

4.3.8 Linux系统用户管理举例

• 添加test用户,该用户属于workgroup组

添加组:

#groupadd –u 1000 workgroup

添加用户:

#useradd –u 1000 –g 1000 –d /home/test –s /bin/bash test

若系统为suse,则要在添加用户时生成用户目录,需要加-m参数

#useradd –u 1000 –g 1000 –m /home/test –s /bin/bash test

• 删除test用户

#userdel test

#rm –rf /home/test

Page 56: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第五章:Linux操作系统常用命令详解

Page 57: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

本章内容

• 文件目录类命令

• 系统信息类命令

• 通信网络类命令

Page 58: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1 文件目录类命令

• 浏览目录命令:cd dir ls

• 浏览文件命令:cat more less

• 目录操作命令:mkdir rmdir

• 文件操作命令:touch vi rm cp mv ln tar gzip

gunzip whereis whatis

Page 59: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.1 列出文件列表的ls命令

• ls(list)是一个非常有用的命令,用来显示当前目录下的内容。配合参数的使用,能以不同的方式显示目录内容。下面是一些常用的范例。

• 格式:ls[参数] [路径或文件名]

Page 60: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.2 切换目录的cd命令

cd (change directory)命令可以让用户切换当前目录。范例如下:

[test@linux home]$ cd test 切换到当前目录下的test子目录[test@linux test]$ cd .. 切换到上一层目录[test@linux home]$ cd / 切换到系统根目录[test@linux /]$ cd 切换到用户自家目录(或执行cd~)[test@linux test]$ cd /usr/bin 切换到/usr/bin目录

Page 61: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.3 mkdir、rmdir命令

• mkdir(make directory)命令可用来创建子目录。

格式:mkdir [参数] <目录名>

[test@linux test]$ mkdir dir 在当前目录下建立dir目录

[test@linux test]$ mkdir -p dir1/dir2

在当前目录下创建dir1目录,并在dir1目录下创建dir2目录,也就是连续创建两个目录(dir1/和dir1/dir2)

• 格式:rmdir [参数]<目录名>

rmdir(remove directory)命令可用来删除“空”的子目录:

[test@linux test]$ rmdir dir 删除“空”的子目录dir

[test@linux test]$ rmdir –p dir1/dir2 删除dir1下的dir2目录,若dir1目录为空也删除它

Page 62: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.4 复制文件的cp命令

• cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp命令时将一个文件复制成另一个文件或复制到某目录时,需要指定源文件名与目标文件名或目录。

格式:cp[参数]<源文件路径><目标文件路径>

[test@linux test]$ cp test1.txt test2.txt

将test1.text复制成test2.txt

[test@linux test]$ cp test3.txt /tmp

将test3.txt复制到/tmp目录中

[test@linux test]$ cp –r test1(目录) test2(目录)

加-r参数,拷贝目录

Page 63: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

• 功能:删除文件或目录

格式:rm[参数] <目标文件路径>

[test@linux test]$ rm myfiles 删除一个文件

[test@linux test]$ rm *

删除当前目录下的所有文件

-f参数:强迫删除文件

[test@linux test]$ rm –f *.txt

强迫删除所有以后缀名为txt文件

-r参数:删除目录,等同于rmdir命令

5.1.5 删除文件或目录rm命令

Page 64: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.5 rm命令参数-i使用

-i参数:删除文件时询问[test@linux test]$ rm –i * 删除当前目录下的所有文件rm:backup: is a directory 遇到目录会略过rm : remove ‘myfiles.txt’ ? Y删除文件时会询问,可按Y或N键表示允许或拒绝删除文件注意:在系统的默认状态下,rm命令会对每个删除的文件一一询问。如果用户确定要删除这些文件,则可以使用参数-f来避免询问。

Page 65: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.6 cat命令

• 功能:用于显示文件的内容,也可以将数个文件合并成一个文件。

格式:cat[参数]<文件名>

[test@linux test]$cat test.txt 显示test.txt文件内容

[test@linux test]$cat test.txt | more

逐页显示test.txt文件中的内容

[test@linux test]$cat test.txt >>test1.txt

将test.txt的内容附加到test1.txt文件之后

[test@linux test]$cat test.txt test2.txt >readme.txt

将test.txt和test2.txt文件合并成readme.txt文件

Page 66: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.7 more命令

• more命令是一般用于要显示的内容会超过一个画面长度的情况。为了避免画面显示时瞬间就闪过去,用户可以使用more命令,让画面在显示满一页时暂停,此时可按空格健继续显示下一个画面,或按Q键停止显示。

[test@linux test]$ more /etc/named.conf

显示 etc/named.conf文本文件的内容

当用ls命令查看文件列表时,如果文件太多,则可配合more命令使用:

[test@linux etc]$ ls -al | more

以长格形式显示etc目录下的文件列表,显示满一个画面便暂停,可按空格键继续显示下一画面,或按Q键跳离

Page 67: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.8 less命令

• less命令的用法与more命令类似,也可以用来浏览超过一页的文件。所不同的是less命令除了可以按空格键向下显示文件外,还可以利用上下键来卷动文件。当要结束浏览时,只要在less命令的提示符“:”下按Q键即可。

[test@linux etc]$less named.conf

显示/etc/named.conf的文本文件内容

[test@linux etc]$ls -al | less

以长格形式列出/etc目录中所有的内容。用户可按上下键浏览或按Q键跳离

Page 68: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.9 显示命令head、tail

• head功能:用于显示文件前几行的内容

格式:head[参数]<文件名>

[root@linux root]# head -10 /etc/passwd

显示/etc/passwd/文件的前10行内容

• tail功能:用于显示文件后几行的内容

格式:tail[参数]<文件名>

[root@linux root]# tail -10 /etc/passwd

显示/etc/passwd/文件的倒数10行内容

[root@linux root]# tail +10 /etc/passwd

显示/etc/passwd/文件的从第10行开始到末尾的内容

Page 69: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.10 移动或更改文件、目录名称的mv命令

• 功能:可以将文件及目录移到另一目录下,或更改文件及目录的名称

格式:[参数]<源文件或目录> <目标文件或目录>

[test@linux dir1]$ mv a.txt ../

将a.txt文件移动上层目录

[test@linux dir1]$ mv a.txt b.txt

将a.txt改名为b.txt

[test@linux dir1]$ mv dir2 ../

将dir2目录上移一层

Page 70: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.11 显示当前目录的pwd命令

• 功能:显示用户正在工作或当前所在的目录

格式:pwd

[test@linux test]$ pwd

/home/test

显示用户test所在的当前目录是/home/test

Page 71: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.12 find命令

• Find功能:用来寻找文件或目录

格式:find [<路径>] [匹配条件]

[root@linux root]# find / -name httpd.conf

搜索系统根目录下名为httpd.conf的文件

/etc/httpd/httpd.conf 显示搜索结果

[root@linux root]# find /etc –name httpd.conf

搜索/etc目录下名为httpd.conf的文件,并显示结果

/etc/httpd/httpd.conf 显示搜索结果

Page 72: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.13 grep命令

• 功能:在文件中搜索匹配的字符并进行输出

格式:grep[参数] <要找的字串> <要寻找字 串的源文件>

[root@linux root]# grep linux test.txt

搜索test.txt文件中字符串linux并输出

[root@linux root]# rpm -qa | grep httpd

搜索rpm包中含有httpd包的文件名

例:who | grep tty1

Page 73: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.14 vi命令详解

• 进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次进行编辑

• 移动光标类命令w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾

Page 74: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.14 vi命令详解

• 屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

• 插入文本类命令i :在光标前I :在当前行首a:光标后A:在当前行尾o:在当前行之下新开一行O:在当前行之上新开一行r:替换当前字符R:替换当前字符及其后的字符,直至按ESC键s:从当前光标位置处开始,以输入的文本替代指定数目的字符S:删除指定数目的行,并以所输入文本代替之ncw或nCW:修改指定数目的字nCC:修改指定数目的行

Page 75: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.14 vi命令详解

• 最后行方式命令:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下:n1,n2 d :将n1行到n2行之间的内容删除:w :保存当前文件:e filename:打开文件filename进行编辑:x:保存当前文件并退出:q:退出vi :q!:不保存文件并退出vi :!command:执行shell命令command :n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入:r!command:将命令command的输出结果放到当前行

Page 76: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.14 vi命令详解

• 删除命令ndw或ndW:删除光标处开始及其后的n-1个字do:删至行首d$:删至行尾ndd:删除当前行及其后n-1行x或X:删除一个字符,x删除光标后的,而X删除光标前的Ctrl+u:删除输入方式下所输入的文本

搜索及替换命令/pattern:从光标开始处向文件尾搜索pattern ?pattern:从光标开始处向文件首搜索pattern n:在同一方向重复上一次搜索命令N:在反方向上重复上一次搜索命令:s/p1/p2/g:将当前行中所有p1均用p2替代:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代:g/p1/s//p2/g:将文件中所有p1均用p2替换

Page 77: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.14 vi命令详解

• 寄存器操作?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。

Page 78: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.15 touch命令

• 功能:生成一个空文件或修改文件的存取/修改的时间记录值。

格式:touch[参数]<文件名>

[test@linux test]$ touch *

将当前下的文件时间修改为系统的当前时间

[test@linux test]$ touch –d 20070806 test

将test文件的日期改为20070806

[test@linux test]$ touch abc

若abc文件存在,则修改为系统的当前时间;若不存在,则生成一个为当前时间的空文件

Page 79: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.16 who或w命令

• 功能:查看当前系统中有哪些用户登录

格式:who/w[参数]

[root@linux root]# who

root tty1 1个本地用户登录

test pts/0 1个远程登录用户

Page 80: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.17 ln命令

• 功能:在文件和目录之间建立链接

格式:ln [参数] <源文件或目录> <目标文件或目录>

链接分“软链接”和“硬链接”

1.软链接:

[root@linux test]# ln –s /usr/share/doc doc

创建一个链接文件doc,并指向目录/usr/share/do

2.硬链接:

[root@linux test]# ln /usr/share/test hard

创建一个硬链接文件hard,这时对于test文件对应的存

储区域来说,又多了一个文件指向它。

Page 81: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.18 硬链接与软链接

• 文件名称用箭头指到另一个文件此为文件链接数

• 简单地说,软链接就是为同一个文件或目录创建2、3个名字,如同在Windows下创建的快捷方式

Page 82: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.19 软件包管理命令(RPM)

• RPM的全名是Red Hat Package Manager,它是由Red Hat 公司所开发的一个开放性软件包管理系统。其优点:

易于安装、升级与删除软件包

有强大的查询功能

能够进行软件包验证

支持代码形式的软件包

Page 83: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.19 软件包的安装

使用RPM命令的安装模式可以将软件包内所有的组

件放到系统中的正确路径,安装软件包的命令是:

[root@linux root]#rpm –ivh vsftpd-2.6.2-x86-64.rpm

i:作用rpm的安装模式

v: 校验文件信息

h: 以#号显示安装进度

Page 84: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.19 软件包的删除

删除模式会将指定软件包的内容全部删除,但并不包括已更

改过的配置文件,删除RPM软件包的命令如下:

[root@linux /]# rpm –e vsftpd

删除参数 软件包名称

注意:这里必须使用软件名“vsftpd”或”vstpd-2.6.2-x86-64而不是使用当初安装时的软件包名.

vsftpd-2.6.2-x86-64.rpm

Page 85: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.19 软件包升级

升级模式会安装用户所指定的更新版本,并删除已安装在系

统中的相同软件包,升级软件包命令如下:

[root@linux /]# rpm –Uvh vsftpd-2.6.2-x86-64.rpm

升级参数

Page 86: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.19 软件包更新

更新模式下,rpm命令会检查在命令行中所指定的软件包是否比

系统中原有的软件包更新。如果情况属实,rpm命令会自动更新

指定的软件包;反之,若系统中并没有指定软件包的较旧版

本,rpm命令并不会安装此软件包。而在升级模式下,不管系统

中是否有较旧的版本,rpm命令都会安装指定的软件包。

[root@linux /]# rpm –Fvh vsftpd-2.6.2-x86-64.rpm

更新参数

Page 87: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.19 软件包查询

若要获取RPM软件包的相关信息,可以使用查询模式。使用-q参数可查询一个已安装的软件包的内容。[root@linux /]# rpm –q vsftpdvsftpd-2.6.2-x86-64 显示软件包的名称、版本及次版本查询软件包所安装的文件:安装某个软件包之后,常常困扰用户是,不知道该软件包究竟安装到哪里,此时执行rpm –ql package-name 命令可得知[root@linux /]# rpm –ql xv (l参数:显示文件列表)

/etc/x11/wmconfig/xv/usr/x11R6/bin/bggen 查询结果/usr/X11R6/bin/vdcomp

Page 88: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.20 打包命令tar

• tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Unix上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。

• 注意:tar不仅可以打包文件,也可以将硬盘数据备份

• 常用参数:

-c:创建一个新tar文件

-v:显示运行过程的信息

-f:指定文件名

-z:调用gzip压缩命令进行压缩

-t:查看压缩文件的内容

-x:解开tar文件

Page 89: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.20 tar命令范例

• [root@linux test]# tar -cvf test.tar *• 将所有文件打包成test.tar,扩展名.tar需自行加上• [root@linux test]# tar -zcvf test.tar.gz *• 将所有文件打包成test.tar,再用gzip命令压缩• [root@linux ljr]# tar -tf test.tar• 查看test.tar文件中包括了哪些文件• [root@linux test]# tar -xvf test.tar

将test.tar解开• [root@linux test]# tar -zxvf foo.tar.gz

将foo.tar.gz解压缩

Page 90: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.20 gzip和gunzip

• 除了.zip文件的压缩格式外,在Linux系统下更常见的是.gz文件的压缩格式,这种文件一般是由gzip命令所产生。zip命令具有将许多文件压缩成一个文件的功能,但gzip却不能,所以gzip一般会和tar一起使用。目前,大部分或见到的压缩文件都是用tar将所有文件打包成一个文件,再用gzip进行压缩,所以我们所看到的扩展名为.tar.gz或.tgz的文件,大多数就是这种类型的文件。

Page 91: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.20 gzip各gunzip命令

• [root@linux test]# gzip test.txt

压缩文件时,不需要任何参数

• [root@linux test]# gizp –l test.txt.gz

显示压缩率

• [root@linux test]# gunzip test.txt.gz

解压缩

Page 92: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.21 date、cal、clock

• date命令可以显示/修改当前的日期时间

• [root@linux root]# date 121010232004

• 将时间更改为12月10日10点23分2004年 [MMDDhhmmYY]

• [root@linux root]# cal 显示日历

• [root@linux root]# clock 显示日期时间

Page 93: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.1.21 显示日历或年历的cal命令

• cal(calendar)

• 功能:显示一个日历

• 格式:cal [参数] 月 年

• [root@linux root]# cal 显示当月的日历

• [root@linux root]# cal 4 2004

显示2004年4月的日历

• [root@linux root]# cal - y 2003

显示2003年的日历

Page 94: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.2 系统信息类命令

• dmesg命令

• df命令

• du命令

• free命令

• w命令

Page 95: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.2.1 dmesg命令

• 功能:显示系统诊断信息、操作系统版本号、物理内存的大小以及其它信息

Page 96: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.2.2 df命令

• 功能:用于查看文件系统的各个分区的占用情况

Page 97: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.2.3 du命令

• 功能:查看某个目录中各级子目录所使用的硬盘空间数

• 格式:du [参数] <目录名>

Page 98: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.2.4 free命令

• 功能:用于查看系统内存,虚拟内存(交换空间)的大小占用情况

Page 99: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3 网络通讯类命令

• ftp 传输文件

• telnet 登录到远程计算机上

• netstat 查看网络的状况

• finger 查询某个使用者的信息

• ping 查询某个机器是否在工作

• route 设置系统网络路由

Page 100: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.1 ftp传输文件

• ftp登录后执行命令:ls 列出远程机的当前目录cd 在远程机上改变工作目录lcd 在本地机上改变工作目录ascii 设置文件传输方式为ASCII模式binary 设置文件传输方式为二进制模式close终止当前的ftp会话hash 每次传输完数据缓冲区中的数据后就显示一个#号get(mget) 从远程机传送指定文件到本地机put(mput) 从本地机传送指定文件到远程机open 连接远程ftp站点quit断开与远程机的连接并退出ftp? 显示本地帮助信息! 转到Shell中passive:进入被动传输方式prompt:设置多个文件传输时的交互提示

Page 101: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.2 telnet 登录到远程计算机上

• telnet命令的一般形式

telnet 主机名/IP

其中“主机名/IP”是要连接的远程机的主机名或IP地址

• telnet只为普通终端提供终端仿真,而不支持 X Wndow等图形环境

Page 102: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.3 netstat 查看网络的状况

• netstat1.作用检查整个Linux网络状态。2.格式netstat [-acCeFghilMnNoprstuvVwx][-A][--ip]3.主要参数-a--all:显示所有连线中的Socket。-c--continuous:持续列出网络状态。-e--extend:显示网络其它相关信息。-g--groups:显示多重广播功能群组组员名单。-i--interfaces:显示网络界面信息表单。-l--listening:显示监控中的服务器的Socket。-n--numeric:直接使用IP地址,而不通过域名服务器。-r--route:显示Routing Table。-s--statistice:显示网络工作信息统计表。-t--tcp:显示TCP传输协议的连线状况。-u--udp:显示UDP传输协议的连线状况。-v--verbose:显示指令执行过程。-w--raw:显示RAW传输协议的连线状况。

Page 103: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.4 finger查询某个使用者的信息

• Finger命令是显示有关运行 Finger 服务或 Daemon 的指定远程计算机(通常是运行 UNIX 的计算机)上用户的详细信息。该远程计算机指定显示用户信息的格式和输出。

• 命令中各选项的含义如下:-s 显示用户的注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。-l 除了用-s选项显示的信息外,还显示用户主目录、登录shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。-p 除了不显示.plan文件和.project文件以外,与-l选项相同。

Page 104: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.5 ping查询某个机器是否在工作

• ping [选项] 主机名/IP地址命令中各选项的含义如下:-c 数目 在发送指定数目的包后停止-f 大量且快速地送网络封包给一台机器,看它的回应-I 秒数 设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次-l 次数 在指定次数内,以最快的方式送封包数据到指定机器(只有超级用户可以使用此选项)-q 不显示任何传送封包的信息,只显示最后的结果-r 不经由网关而直接送封包到一台机器,通常是查看本机的网络接口是否有问题-s 字节数 指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节

Page 105: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.6 route 设置系统网络路由

• 在本地 IP 路由表中显示和修改条目

• route [-f] [-p] [Command] [Destination] [mask Netmask] [metric Metric] [Gateway] dev [Interface]-f 清除所有网关入口的路由表;-p 与 add 命令一起使用时使路由具有永久性;Command 指定您想运行的命令 (Add/Change/Delete/Print);Destination 指定该路由的网络目标;mask Netmask 指定与网络目标相关的网络掩码(也被称作子网掩码);

metric Metric 为路由指定一个整数成本值标(从 1 至9999),当在路由表(与转发的数据包目标地址最匹配)的多个路由中进行选择时可以使用;

Gateway 指定网络目标定义的地址集和子网掩码可以到达的前进或下一跃点 IP 地址。

Page 106: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.3.6 route路由设置• [root@linux /]# route • Kernel IP routing table • Destination Gateway Genmask Flags Metric Ref Use Iface

127.0.0.0 127.0.0.1 255.0.0.0 U 0 0 0 lo • 192.168.1.0 192.168.1.5 255.255.255.0 U 0 0 0 eth0 • 第一项是到 localhost 的回送路由,它是在配置 lo 时自动创建的。• 第二项是通过接口 eth0 到网络 192.168.1.0 的路由。地址 192.168.1.5 不是

远程网关地址。它是分配给 eth0 的地址。• 注意每项的标志。它们都设置了 U(启动)标志,这表示准备使用它们,但它们

都未设置 G(网关)标志。不设置 G 标志是因为这两个路由都是通过本地接口,而不是通过外部网关的直接路由。

为了规范,在/etc/sysconfig/下建立static-routes文件:eth1 net 192.168.0.0/24 gw 192.168.0.254any net 192.168.0.0/24 gw 192.168.0.6

Page 107: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.4 磁盘管理类命令-fdisk

• fdisk硬盘容量及分区大小的算法;我们通过fdsik -l 可以发现如下的信息:Disk /dev/sda: 73.5 GB, 73543163904 bytes255 heads, 63 sectors/track, 8941 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 535 4192965 82 Linux swap/dev/sda3 536 8941 67521195 83 Linux其中 heads 是磁盘面;sectors 是扇区;cylinders 是柱面;每个扇区大小是512byte,也就是0.5M;通过上面的例子,我们发现此硬盘有 255个磁盘面,有63个扇区,有8941个柱面;所以整个硬盘体积换算公式应该是:磁面个数 x 扇区个数 x 每个扇区的大小512 x 柱面个数 = 硬盘体积 (单位bytes)

Page 108: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.4 磁盘管理类命令-fdisk fdisk 分区管理[root@node1 ~]# fdisk /dev/sdb Command (m for help): mCommand action

a toggle a read only flagb edit bsd disklabelc toggle the mountable flagd delete a partitionl list known partition typesm print this menun add a new partitiono create a new empty DOS partition table p print the partition tableq quit without saving changess create a new empty Sun disklabelt change a partition's system idu change display/entry unitsv verify the partition tablew write table to disk and exitx extra functionality (experts only) Command (m for help):

Page 109: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

5.4 磁盘管理类命令-fdisk[root@node1 ~]# fdisk /dev/sda

The number of cylinders for this disk is set to 8941.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs

(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): p

Disk /dev/sda: 73.5 GB, 73543163904 bytes255 heads, 63 sectors/track, 8941 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 535 4192965 82 Linux swap/dev/sda3 536 8941 67521195 83 Linux

Command (m for help):

Page 110: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

[root@node1 ~]# fdisk /dev/sda

The number of cylinders for this disk is set to 8941.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs

(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): nCommand action

e extendedp primary partition (1-4)

输入P若分区仅作一个,则默认enterCommand (m for help):w

5.4 磁盘管理类命令-fdisk

Page 111: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第六章:Linux操作系统的进程管理

Page 112: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.1 程序和进程

• 程序是为了完成某种任务而设计的软件,比如OpenOffice是程序。什么是进程呢?进程就是运行中的程序。

• 一个运行着的程序,可能有多个进程。 比如WWW服务器是apache服务器,当管理员启动服务后,可能会有好多人来访问,也就是说许多用户来同时请求httpd服务,apache服务器将会创建有多个httpd进程来对其进行服务。

Page 113: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.1.1 进程分类

• 进程一般分为交互进程、批处理进程和守护进程三类。

• 值得一提的是守护进程总是活跃的,一般是后台运行,守护进程一般是由系统在开机时通过脚本自动激活启动或超级管理用户root来启动。比如在Fedora或Redhat中,我们可以定义httpd 服务器的启动脚本的运行级别,此文件位于/etc/init.d目录下,文件名是httpd,/etc/init.d/httpd 就是httpd服务器的守护程序,当把它的运行级别设置为3和5时,当系统启动时,它会跟着启动。

• [root@localhost ~]# chkconfig --level 35 httpd on

• 由于守护进程是一直运行着的,所以它所处的状态是等待请求处理任务。比如,是不是访问网站,网站的httpd服务器都在运行,等待着用户来访问,也就是等待着任务处理。

Page 114: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.1.2 进程的属性

• 进程ID(PID):是唯一的数值,用来区分进程;子进程和父进程的ID(PPID);启动进程的用户ID(UID)和所归属的组(GID);进程状态:状态分为运行R、休眠S、僵尸Z;进程执行的优先级;进程所连接的终端名;进程资源占用:比如占用资源大小(内存、CPU占用量)。

Page 115: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.1.3 父进程和子进程

• 他们的关系是管理和被管理的关系,当父进程终止时,子进程也随之而终止。但子进程终止,父进程并不一定终止。比如httpd服务器运行时,我们可以杀掉其子进程,父进程并不会因为子进程的终止而终止。

• 在进程管理中,当我们发现占用资源过多,或无法控制的进程时,应该杀死它,以保护系统的稳定安全运行;

Page 116: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.2 进程管理

• 对于Linux进程的管理,是通过进程管理工具实现的,比如ps、kill、pgrep等工具

Page 117: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.2.1 ps 监视进程工具

• ps 的参数说明;获得线程信息: ps -eLfps axms

获得进程树:ps -ejHps axjf

l 长格式输出;u 按用户名和启动时间的顺序来显示进程;j 用任务格式来显示进程;f 用树形格式来显示进程;a 显示所有用户的所有进程(包括其它用户);x 显示无控制终端的进程;r 显示运行中的进程;

Page 118: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.2.1 ps aux 或lax输出的解释

• USER 进程的属主;• PID 进程的ID;• PPID 父进程的ID;• %CPU 进程占用的CPU百分比;• %MEM 占用内存的百分比;• NI 进程的NICE值,数值大,表示较少占用CPU时间;• VSZ 进程虚拟大小;• RSS 驻留中页的数量;• TTY 终端ID• WCHAN 正在等待的进程资源;• START 启动进程的时间;• TIME 进程消耗CPU的时间;• COMMAND 命令的名称和参数;

Page 119: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.2.1 ps aux显示的进程状态

• STAT 进程状态• D Uninterruptible sleep (usually IO)• R 正在运行可中在队列中可过行的;• S 处于休眠状态;• T 停止或被追踪;• W 进入内存交换(从内核2.6开始无效);• X 死掉的进程(从来没见过);• Z 僵尸进程;• < 优先级高的进程• N 优先级较低的进程• L 有些页被锁进内存;• s 进程的领导者(在它之下有子进程);• l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do) • + 位于后台的进程组;• WCHAN 正在等待的进程资源; START 启动进程的时间; TIME 进程消耗

CPU的时间; COMMAND 命令的名称和参数。

Page 120: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.2.2 pgrep

• pgrep 是通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行。在服务器的配置和管理中,这个工具常被应用,简单明了

Page 121: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.2.2 pgrep 用法

• #pgrep 参数选项 程序名• 常用参数

-l 列出程序名和进程ID;-o 进程起始的ID;-n 进程终止的ID;

• 举例:[root@localhost ~]# pgrep -l httpd4557 httpd4560 httpd4561 httpd4562 httpd4563 httpd4564 httpd4565 httpd4566 httpd

Page 122: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.3终止进程的工具 kill 、killall、

pkill、xkill

• 终止一个进程或终止一个正在运行的程序,一般是通过kill 、killall、pkill、xkill 等进行。比如一个程序已经死掉,但又不能退出,这时就应该考虑应用这些工具。

• 另外应用的场合就是在服务器管理中,在不涉及数据库服务器程序的父进程的停止运行,也可以用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀死呢?原因很简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎片达到一定程度的时候,数据库就有崩溃的危险。比如mysql服务器最好是按其正常的程序关闭,而不是用pkill mysqld 或killall mysqld 这样危险的动作;当然对于占用资源过多的数据库子进程,我们应该用kill来杀掉。

Page 123: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.3.1 kill

• kill的应用是和ps 或pgrep 命令结合在一起使用的

• kill [信号代码] 进程ID

• 注:信号代码可以省略;我们常用的信号代码是 -9 ,表示强制终止

• 对于僵尸进程,可以用kill -9 来强制终止退出

• 例:

[root@localhost ~]# pgrep -l gaim5031 gaim

[root@localhost ~]# kill -9 5031

Page 124: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.3.2 killall

• killall 通过程序的名字,直接杀死所有进程

• 用法:killall 正在运行的程序名

• killall 也和ps或pgrep 结合使用,比较方便

• 通过ps或pgrep 来查看哪些程序在运行

• 举例:

[root@localhost test]# pgrep -l gaim2979 gaim[root@localhost test]# killall gaim

Page 125: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.3.3 pkill

• pkill 和killall 应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill 来杀掉

• 应用方法:

• #pkill 正在运行的程序名

• 举例:

[root@localhost test]# pgrep -l gaim2979 gaim[root@localhost test]# pkill gaim

Page 126: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.3.4 xkill

• xkill 是在桌面用的杀死图形界面的程序。比如当firefox 出现崩溃不能退出时,点鼠标就能杀死firefox 。当xkill运行时出来人脑骨的图标,哪个图形程序崩溃一点就OK了。如果您想终止xkill ,就按右键取消;

• xkill 调用方法:

• [root@localhost ~]# xkill

Page 127: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.4 top监视系统任务的工具

• 和ps 相比,top是动态监视系统任务的工具,top 输出的结果是连续的

Page 128: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.4.1 top 命令用法及参数

• 参数:

-b 以批量模式运行,但不能接受命令行输入;-c 显示命令行,而不仅仅是命令名;-d N 显示两次刷新时间的间隔,比如 -d 5,表示两次刷新间隔为5秒;-i 禁止显示空闲进程或僵尸进程;-n NUM 显示更新次数,然后退出。比如 -n 5,表示top更新5次数据就退出;-p PID 仅监视指定进程的ID;PID是一个数值;-q 不经任何延时就刷新;-s 安全模式运行,禁用一些效互指令;-S 累积模式,输出每个进程的总的CPU时间,包括已死的子进程;

Page 129: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.5进程的优先级:nice和renice

• 在当前程序运行优先级基础之上调整指定值得到新的程序运行优先级。优先级的范围为-20 ~ 19 ,40个等级,其中数值越小优先级越高,数值越大优先级越低,既-20的优先级最高, 19的优先级最低。若调整后的程序运行优先级高于-20,则就以优先级-20来运行命令行;若调整后的程序运行优先级低于19,则就以优先级19来运行命令行。若 nice命令未指定优先级的调整值,则以缺省值10来调整程序运行优先级,既在当前程序运行优先级基础之上增加10。

• 若不带任何参数运行命令nice,则显示出当前的程序运行优先级。

Page 130: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

6.5 nice/renice

• -n, 指定程序运行优先级的调整值。

• 优先级的范围为-20~19,当调整后的优先级小于-20时,以优先级-20 来运行程序;当调整后的优先级大于19时,则以19的优先级运行程序

• 还可以使用参数“-ADJUST”的形式来指定程序运行优先级的调整值,其中,ADJUST为指定的程序运行优先级调整值,可以为负数,也可以为正数,

参数“--1”、“-+1”和 “-1”中的第一个字符“-”都是语法定义的指定程序运行优先级调整值的标志符,第一个字符“-”之后的值为指定的程序运行优先级的调整值。

• 在nice命令中,可以同时指定多个程序运行优先级调整值,但只有最后一次指定的数值有效

• 通过命令行同时指定了优先级调整值“-20”、“+9”和“3”,但最后生效的程序运行优先级调整值为最后指定的数值“3”。

• 注意:只有具有root权限的用户才可以调整高程序运行的优先级,既指定的调整值可以为负数

• 系统nice程序使用的是相对nice值,renice是使用nice的绝对值:nice -n -5 /bin/sh nice值降低5renice -5 -u /bin/sh 把sh的nice值设置为5

Page 131: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

第七章:Linux操作系统的网络配置

Page 132: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

7.1 Linux网络配置的相关文件

• /etc/modprobe.conf该文件定义了网卡的型号,如:

alias eth1 forcedethalias eth0 forcedeth

• /etc/sysconfig/networking-scripts/ifcfg-ethX该文件设置网络的IP地址、DNS及网关

DEVICE=eth0 #设备名字ONBOOT=yes #系统启动过程中,网络是否启动BOOTPROTO=static #网络启动是以静态的获得IP还是动态(DHCP)获得IPIPADDR=11.11.11.49 #IP地址NETMASK=255.0.0.0 #子网掩码NAMESERVER=IP #设置DNS对应的IPGATEWAY=IP #设置网关对应的IP

• /etc/sysconfig/network该文件设置系统名字

• /etc/sysconfig/static-routes 该文件设置系统的静态路由any net 192.168.0.0/24 gw 192.168.1.6

Page 133: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

7.2 网络启动命令

• 配置好网络的相关文件后,进行网络启动:

/etc/init.d/network restart

ifconfig eth0 down = ifdown eth0

ifconfig eth0 up = ifup eth0

ifconfig eth0:0 192.168.0.1 netmask 255.0.0.0 网卡第二个IP绑定,临时生效

Page 134: Linux系统初级培训 - CAS€¦ · 自身的方式运行的能力。 Linux是一种可移植的操作系统,能够在从微型计 算机到大型计算机的任何环境中和任何平台上运行。

谢谢!!