linux 基础培训

60
Linux Linux 基基基基 基基基基

Upload: sylvester-evans

Post on 02-Jan-2016

139 views

Category:

Documents


5 download

DESCRIPTION

Linux 基础培训. Linux 发展史版本 Linux 安装与常用命令 Linux 服务器搭建 Linux 目录和用户管理 磁盘管理. 一、 Linux 发展史与版本. Linux 发展史. Linux 是一套免费使用和自由传播的类 Unix 操作系统 ,以高效性和灵活性著称。它能够在 PC 计算机上实现全部的 Unix 特性,具有多任务、多用户的能力。 Linux 内核最初只是由芬兰人李纳斯 · 托瓦兹( Linus Torvalds )在赫尔辛基大学上学时出于个人爱好而编写的 1994 年 3 月, Li nux1.0 版正式发布。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Linux 基础培训

LinuxLinux 基础培基础培训 训

Page 2: Linux 基础培训

一.Linux 发展史版本

二.Linux 安装与常用命令

三.Linux 服务器搭建

四.Linux 目录和用户管理

五.磁盘管理

Page 3: Linux 基础培训

一、 Linux 发展史与版本

Page 4: Linux 基础培训

Linux 发展史

Linux 是一套免费使用和自由传播的类 Unix 操作系统 ,以高效性和灵活性著称。它能够在 PC 计算机上实现全部的 Unix 特性,具有多任务、多用户的能力。

Linux 内核最初只是由芬兰人李纳斯 · 托瓦兹( Linus

Torvalds )在赫尔辛基大学上学时出于个人爱好而编写的

1994 年 3 月, Linux1.0 版正式发布。

1996 年 6 月, Linux 2.0 内核发布,此内核有大约 40 万行代码,并可以支持多个处理器。此时的 Linux 已经进入了实用阶段,全球大约有 350 万人使用。

Page 5: Linux 基础培训

Linux 版本

linux 有两种版本,一个是核心( kernel) 版,一个是发行(distribution) 版。

核心版的序号由三部分数字构成,其形式为:major.minor.patchlevel

其中, majoro 为主版本号, minor 为次版本号,二者共同构成了当前核心版本号。 patchlevel 表示对当前版本的修订次数。例如, 2.6.18 表示对核心作用 2.6 版本的第 18 次修订。 根据约定,次版本号为奇数时,表示该版本加入新内容,但不一定稳定,相当于测试版;次版本号为偶数时,表示这是一个可以使用的稳定版本。

Page 6: Linux 基础培训

Linux 版本

Linux 发行版众多,流传于世的 Linux 发行版数目上百种,现今主流的几种免费 linux 版本:

•Ubuntu

•openSUSE

•Fedora

•Debian GNU/Linux

•Mandriva Linux

•PCLinuxOS

……

Page 7: Linux 基础培训

二、 Linux 系统安装

Page 8: Linux 基础培训

Linux 系统安装

•语言选择

•时区选择

•磁盘划分

•软件安装

Page 9: Linux 基础培训

Linux 系统安装

/

/bin

/dev

/etc

/boot

/lib

/home

/mnt

/opt

/proc

init.d sysconfig

user1 user2

/sbin

/usr

/media

/var

/tmp

/lost+found

Page 10: Linux 基础培训

Linux 系统安装

•/etc :开机与系统数据文件均在这个目录之下•/bin,/sbin,/usr/bin,/usr/sbin: 系统预设的执行文件的放置目录•/usr/local: 这是系统预设的让你安装后升级的套件的目录•/home: 系统将有账号的人的根目录设置的位置•/var: www , ftp,db,mail,logmessage

•/usr/share/man,/usr/local/man: 放置各类套件说明文档的目录•/media 即插即用型存储设备的挂载点自动在这个目录下创

建,比如 USB 盘系统自动挂载后,会在这个目录下产生一个目录

Page 11: Linux 基础培训

Linux 文件类型在 Linux 中,带有扩展名的文件,只能代表程序的关联

,并不能说明文件是可以执行,从这方面来说, Linux 的扩展名没有太大的意义,主要看文件的属性有关。

普通文件

计算机用户和操作系统用于存放数据、程序等信息的文件。一般都长期地存放在外存储器(磁盘等)中。普通文件一般又分为文本文件和二进制文件。 目录文件 是文件系统中一个目录所包含的目录项组成的文件。目录文件只允许系统进行修改。用户进程可以读取目录文件,但不能对它们进行修改。

Page 12: Linux 基础培训

Linux 文件类型

设备文件用于为 I/O 设备提供连接的一种文件,分为字符设备文件和块设备文件,对应于字符设备和块设备。 Linux把对设备的I/O做为普通文件的读取 / 写入操作内核提供了对设备处理和对文件处理的统一接口。每一种 I/O 设备对应一个设备文件,存放在 /dev 目录中,如行式打印机对应 /dev/lp 。

链接文件 又称符号链接文件,它提供了共享文件的一种方法,在链接文件中不是通过文件名实现文件共享,是通过链接文件中含的指向文件的指针来实现对文件的访问。普通用户可以建立链接文件,并通过其指针所指向的文件。

Page 13: Linux 基础培训

Linux 文件类型

管道文件主要用于在进程间传递数据。管道是进程间传递数据的“媒介”。某进程数据写入管道的一端,另一个进程从管道另一端读取数据。 Linux 对管道的操作与文件操作相同,它把管道作为文件进行处理。管道文件又称先进先出(FIFO) 文件。

Page 14: Linux 基础培训

三、 Linux 常用命令

Page 15: Linux 基础培训

Linux 常用命令

•ls

•cat , less

•mv

•cp

•rm

•mkdir

•find

•chmod

•top 、 ps

Page 16: Linux 基础培训

•作用:显示目录内容,类似 DOS 下的 dir

•格式: ls [options] [filename]

•常用参数: -a : all, 不隐藏任何以“ .” 开头的文件 -l :使用较长的格式列出信息 -r :按照文件名的逆序打印输出 -F :加上文件类型的指示符

ls 命令

Page 17: Linux 基础培训

•作用:显示文件内容, concatenate 的缩写,类似 dos

的 type 命令。

•格式: cat [options] [filename]

•常用参数: -n :显示文件内容的行号 -b :类似 -n ,但是不对空白行进行编号 -s :当遇到有连续两行以上的空白行时,就代换为一行的空白行。

cat 命令

Page 18: Linux 基础培训

•作用:更改文件或目录的名字,移动文件

•格式: mv [options] source destination

•常用参数: -f :强制模式,覆盖文件不提示 -i :交互模式,当要覆盖文件时给提示

mv 命令

Page 19: Linux 基础培训

•作用:删除文件命令,类似 dos 的 del 命令

•格式: rm [options] filenames

•常用参数: -f :强制模式,不给提示 -r :删除目录

rm 命令

Page 20: Linux 基础培训

mkdir 命令

•作用:创建目录,类似 dos 的 md 命令。

•格式: mkdir [options] directory

•常用参数: -p :创建目录和它的父目录。 -m :指定模式,类似 chmod 。

Page 21: Linux 基础培训

•作用:搜索指定目录下的文件

•格式: find [path] [options] [expression]

•常用参数:

-name :搜索指定文件名字的文件,支持通配符。

-atime n :搜索过去 n天之内访问的文件。

-ctime n :搜索过去 n天之内修改的文件。

-group gname :搜索指定组属的文件。

find 命令

Page 22: Linux 基础培训

chmod 命令

•作用:改变文件存取权限•格式: chmod [options] mode filename

•常用参数: -R :对目录下的文件进行递归操作。 +r :增加读权限 +w :删除写权限 +x :增加执行权限

Page 23: Linux 基础培训

ps 命令

ps 是用来报告程序执行状况的指令,您可以搭配 kill指令随时中断,删除不必要的程序。

•-a 显示所有终端机下执行的程序,除了阶段作业领导者之外。

•-e 此参数的效果和指定“ A”参数相同。 •-f 显示 UID,PPIP,C 与 STIME栏位。 •-u 此参数的效果和指定“ -U”参数相同•-x 显示所有程序,不以终端机来区分。

Page 24: Linux 基础培训

top 命令

•top 命令和 ps 命令的基本作用是相同的,显示系统当前的进程和其它状况;但是 top 是 一个动态显示过程,即可以通过用户按键来不断刷新当前状态

•top 命令提供了实时的对系统处理器的状态监视。它将显示系统中 CPU 最“敏感”的任务列表。该命令可以按CPU 使用、内存使用和执行时间对任务进行排序。

Page 25: Linux 基础培训

top 命令

•k 终止一个进程。系统将提示用户输入需要终止的进程 PID ,以及需要发送给该进程什幺样的信号。一般的终止进程可以使用 15 信号;如果不能正常结束那就使用信号 9强制结束该进程。默认值是信号 15 。

•l 切换显示平均负载和启动时间信息。 •m 切换显示内存信息 •M 根据驻留内存大小进行排序。

•P 根据 CPU 使用百分比大小进行排序。 •q 退出程序。

Page 26: Linux 基础培训

top 命令top - 05:20:35 up 13 min, 4 users, load average: 0.03, 0.54, 0.48Tasks: 171 total, 1 running, 169 sleeping, 0 stopped, 1 zombieCpu(s): 0.2%us, 0.5%sy, 0.0%ni, 99.2%idMem: 2059572k total, 1131016k used, 928556k free, 110556k buffersSwap: 4088532k total, 0k used, 4088532k free, 678044k cached

第一行的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行为进程情况,依次为进程总数、运行进程数、休眠进程数、 终止进程数、僵死进程数。第三行为 CPU状态,依次为用户占用、系统占用、优先进程占用、闲置进程占用。第四行为内存状态,依次为平均可用内存、已用内存、空闲内存、缓存使用内存。第五行为交换状态,依次为平均可用交换容量、已用容量、闲置容量、高速缓存容量。

Page 27: Linux 基础培训

早期,当键盘和视频终端成为最新的计算机交互手段时,人们开发了 vi 。那时候的键盘不具有目前熟悉的全部功能键,所以, vi就设计成只需要打字机的键盘加上退格键就能完成对文本的输入和修改(现在有的还接受一些其他的键输入方式,如光标控制键)。

尽管看起来受了限制,不能充分利用现代键盘新增的许多键,可是限制中带来的好处是手指不离开打字区就能完成所有的编辑工作。

vi 编辑器

Page 28: Linux 基础培训

vi 编辑器模式

•normal mode: 命令模式,使用 a 、 i 、 A 、 I 、 o 、 O 等进入 insert mode 。

•insert mode :编辑模式,使用 ESC 进入 normal mode或者 ctrl+o临时进入 normal mode

•command-line mode

•visual mode

•select mode

•replace mode

Page 29: Linux 基础培训

进入和退出 vi

vi:直接进入

•vi filename

如果文件存在,就是打开文件,否则就是创建新文件

退出 vi

•首先按 ESC键进入 normal mode

•:wq / :x 保存文件并退出

•:q!退出不保存•ZZ :保存文件并退出

Page 30: Linux 基础培训

编辑模式 insert mode

•进入编辑模式

i 在光标前插入 ; I 在行首插入

a 在光标后插入 ; A 在行末插入

o 在下一行插入 ; O 在上一行插入

Page 31: Linux 基础培训

命令模式 normal mode

•光标移动 h j k l

箭头键 •行操作

dd 删除当前行 yy 拷贝当前行 p 粘贴

Page 32: Linux 基础培训

命令模式 normal mode

•替换、搜索和定位行操作

:%s/mmm/nnn/g 从在整个文件范围内把 mmm替换成nnn , g=global

/www 搜索指定的字符串 www n ( next )

:3 光标定位在第三行

D 从当前位置开始删除到行尾

w 快速定位到行尾

0 快速定位到行首

Page 33: Linux 基础培训

vi键盘图

Page 34: Linux 基础培训

四、 Linux 服务器搭建

Page 35: Linux 基础培训

环境变量配置

•Linux环境变量使用 export 关键字设置

•运行“ .” 命令可以使设置的环境变量生效

•使用“ $”获得环境变量值

•配置环境变量的三种方法: 编辑 /etc/profile 文件 编辑用户家目录下的 .bash_profile 文件 直接在终端使用 export 命令设置环境变量

Page 36: Linux 基础培训

安装 JDK

•从官网下载 bin 文件:http://java.sun.com/javase/downloads/index.jsp

•下载完成后,通过 ls –l 命令查看该文件是否具有“ x”

权限,确保可以被执行。

•被赋予“ x” 后,可以直接在终端执行该文件,它会自动解压到当前目录。

•配置 jdk 的 JAVA_HOME 和 PATH环境变量

•在终端输入 java –version确认版本是刚刚解压的版本

Page 37: Linux 基础培训

Linux 下安装 Apache

Linux 下没有类似 windows 系统下的 .exe 安装文件,在Linux 下大部分软件都是通过编译源码进行安装的。

Apache 的编译安装:

# tar zxvf httpd-2.2.11.tar.gz

# cd /httpd-2.2.11

# ./configure --enable-MODULE=shared   --enable-so --

with-mpm=worker

# make

# make install

Page 38: Linux 基础培训

Linux 下安装 Apache

•--enable-MODULE=shared : 该参数是使得相关的模块编译为可动态加载模块 (DSO模式 ) ,如果不选用该选项, apache默认的选项是 : --enable-MODULE=static, 表示将相关的模块静态编译。

•两者的区别是:前者使得可以需要更新、重编译某模块( 核心模块不受限于这种模式,如 core 、 mod_so) 时,只需单独编译该模块即可,而不需重新编译整个 apache

source code ,做到单独升级。前者弊端是导致 apache启动时慢 20%左右,在运行阶段慢 5%左右 ,另外 DSO模式不是所有 OS 都支持的,和软件环境有关系。

Page 39: Linux 基础培训

Linux 下安装 Apache

•--enable-so: 该参数表示支持用 mod_so模块提供的功能,用 LoadModule 在 httpd.conf 文件或包含的 conf 文件中动态加载某个模块。

•--with-mpm=worker :该参数是配置 apache 将以何种模式编译的。 Apache网站文档指出不同操作系统下的不同的默认模式 .

在安装完 apache 后,在类 unix OS 下,可以在 ./bin 目录下用 ./httpd –l 命令查看安装的模块。

Page 40: Linux 基础培训

Linux 下安装 Tomcat6.x

•从官网下载 tomcat 二进制免安装压缩包

•选择 tomcat 放置目录,解压到当前目录即可,不需要编译安装。

•目录结构和 windows 下免安装的 tomcat 目录结构完全一样。

•Tomcat 本身没有 32 位和 64 位的区分,但是可以选择使用 32 位或 64 位的 jvm 来运行。

•设置 TOMCAT_HOME 和 PATH环境变量

Page 41: Linux 基础培训

安装 vsftp 服务器

VSFTP 是一个基于 GPL 发布的类 Unix 系统上使用的 FTP

服务器软件,它的全称是 Very Secure FTP 。

•安全性是编写 VSFTP 的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是 VSFTP 的两个重要特点。

•在速度方面,使用 ASCII 代码的模式下载数据时, VSFTP 的速度是 Wu-FTP 的两倍,如果 Linux 主机使用2.4.* 的内核,在千兆以太网上的下载速度可达 86MB/S 。

•在稳定方面, VSFTP就更加的出色, VSFTP 在单机(非集群)上支持 4000 个以上的并发用户同时连接,根据Red Hat 的 Ftp 服务器 (ftp.redhat.com) 的数据, VSFTP 服务器可以支持 15000 个并发用户。

Page 42: Linux 基础培训

安装 vsftp 服务器

•在安装系统的时候选择安装 ftp

•单独运行 rpm包

•yum 命令安装

•下载源码包,进行编译安装

Page 43: Linux 基础培训

vsftp配置访问

•anonymous_enable=YES|NO控制是否允许匿名用户登录

•local_enable=YES|NO控制是否允许本地用户登录

•local_root= 配置本地用户登录的根目录

•write_enable=YES|NO 控制是否允许用户上传文件

•local_umask=022控制文件上传后的权限

Page 44: Linux 基础培训

vsftp配置访问

•userlist_enable= YES|NO 此选项激活后, vsftpd 将读取userlist_file参数所指定的文件中的用户列表。

•userlist_file=/etc/vsftpd.user_list指出 userlist_enable 选项生效后,被读取的包含用户列表的文件。默认值是 /etc/

vsftpd.user_list 。

Page 45: Linux 基础培训

安装配置 samba

samba 能够让 linux 和 windows 之间共享文件和打印•yum 安装 samba

•vi /etc/samba/smb.conf; 设置共享目录和参数

•建立 smb 用户,并把共享目录的所有者改为 smb 用户

•用 linux 测试 samba访问,再用 windows 测试•smbclinet -L 192.168.1.213

•smbclinet //192.168.1.213/share -U user

Page 46: Linux 基础培训

NFS 安装配置

NFS 是 linux 主机之间进行网络文件共享的一种方式•yum 方式安装•vi /etc/exportfs 编辑配置文件

rw :可读写的权限; ro :只读的权限; no_root_squash :登入到 NFS 主机的用户如果是

ROOT 用户,他就拥有 ROOT 的权限。

Page 47: Linux 基础培训

NFS 安装配置

•/etc/rc.d/init.d/portmap start ( 在 REDHAT 中 PORTMAP 是默认启动的)

•service nfs restart 启动 nfs 服务•exportfs -rv 查看共享情况•showmount -e ip 测试访问•mount -t nfs 192.168.0.1:/tmp /mnt/nfs 进行挂载•umount /mnt/nfs 取消挂载

Page 48: Linux 基础培训

四、用户与目录管理

Page 49: Linux 基础培训

目录和用户管理

组 1 组 2

用户 1

用户 2 用户 3

用户 4

用户 5 用户 6

-rwxrwxrwx

Page 50: Linux 基础培训

Linux 用户与用户组

•Linux 是真正多用户、多任务的系统。不同用户所具有的权限也不同,要完成不同的任务得需要不同的用户,也可以说不同的用户,可能完成的工作也不一样。

•Linux 在多用户下表现最佳, Linux 能很好的保护每个用户的安全

•用户与用户组是多对多的关系

•不同用户组、用户之间文件访问受限。

Page 51: Linux 基础培训

Linux 用户与用户组

•管理用户组( group )的工具或命令; groupadd 添加用户组 groupdel 删除用户组

•管理用户( user )的工具或命令; useradd 添加用户 passwd 为用户设置密码 su 用户切换工具

Page 52: Linux 基础培训

Linux 目录管理文件与目录属性drwxr-xr-x 2 root root 3072 Apr 23 11:12 bin

[ 1 ][ 2 ][ 3 ][ 4 ][ 5 ][ 6 ]

[ 7 ]

[ 文件属性 ][连结 ][拥有者 ][群组 ][文件容量 ][ 修改日期 ][

文件名 ]

•第一个属性代表这个档案是 [ 目录、档案或连结文件 ]

[d]代表目录 [-]代表普通文件 [l] 表示为连结挡

Page 53: Linux 基础培训

Linux 目录管理

•第二栏表示连结占用的节点:这个和连结挡有关系,如果是目录的话,第二栏的这个数字与该目录下有多少目录有关(这个数字包括当前目录,上一级目录和当前目录所包含的目录所占用的节点数的总和)修改文件属性•chgrp :改变档案所属群组•chown :改变档案所属人•chmod :改变档案的属性如果要连目录下的所有子目录或文件同时更改档案属性

的话,直接加上 -R 的参数。

Page 54: Linux 基础培训

Linux 目录管理

目录的属性意义•r(read contents in directory): 表示具有读取目录结构清单的权限,当用户具有读取一个目录的权限时,使用 ls 这个指令就能将目录的内容列表显示出来。

•w ( modify contents of directory):

1. 建立新的档案与目录2.删除已存在的文件或目录(不论该文件或目录属于谁)3. 将已存在的档案或目录重命名4.改变该目录内的文件、目录位置•x(access directory): 与能否进入该目录有关

Page 55: Linux 基础培训

五、 Linux 磁盘管理

Page 56: Linux 基础培训

Linux 的分区规定

•设备管理

在 Linux 中,每一个硬件设备都映射到一个系统的文件,对于硬盘、光驱等 IDE 或 SCSI 设备也不例外。

Linux 把各种 IDE 设备分配了一个由 hd 前缀组成的文件;而对于各种 SCSI 设备,则分配了一个由 sd

前缀组成的文件。

Page 57: Linux 基础培训

Linux 的分区规定

•分区数量

对于每一个硬盘( IDE 或 SCSI )设备, Linux 分配了一个 1 到 16 的序列号码,这就代表了这块硬盘上面的分区号码

•各分区的作用

在 Linux 中规定,每一个硬盘设备最多能有 4 个主分区(其中包含扩展分区)构成,任何一个扩展分区都要占用一个主分区号码,也就是在一个硬盘中,主分区和扩展分区一共最多是 4 个。

Page 58: Linux 基础培训

Linux 的分区规定

•分区指标 分区的类型规定了这个分区上面的文件系统的格式

容量的大小读者很容易理解,但是分区的类型就不是那么容易接受了。

Linux 支持多种的文件系统格式,其中包含了我们熟悉的 FAT32 、 FAT16 、 NTFS 、 HP-UX ,以及各种 Linux 特有的 Linux Native 和 Linux Swap 分区类型。

Page 59: Linux 基础培训

磁盘管理常用命令

•fdisk 磁盘分区

1.fdisk –l 显示磁盘分区

2.fdisk [/dev/sda] 对磁盘进行分区 D 删除一个分区 N 创建一个分区 Q 不保存退出 T 改变分区 ID

W 保存退出

Page 60: Linux 基础培训

磁盘管理常用命令

•mkfs 磁盘格式化命令

mkfs [格式 ] [磁盘分区 ]

mkfs  -t ext3 /dev/sdb1

•mount 磁盘挂载命令

mount -t ext3 /dev/sdb1  /mnt/backup