610 likes | 832 Views
Linux 基础培训. Linux 发展史版本 Linux 安装与常用命令 Linux 服务器搭建 Linux 目录和用户管理 磁盘管理. 一、 Linux 发展史与版本. Linux 发展史. Linux 是一套免费使用和自由传播的类 Unix 操作系统 ,以高效性和灵活性著称。它能够在 PC 计算机上实现全部的 Unix 特性,具有多任务、多用户的能力。 Linux 内核最初只是由芬兰人李纳斯 · 托瓦兹( Linus Torvalds )在赫尔辛基大学上学时出于个人爱好而编写的 1994 年 3 月, Li nux1.0 版正式发布。
E N D
Linux发展史版本 Linux安装与常用命令 Linux服务器搭建 Linux目录和用户管理 磁盘管理
Linux发展史 Linux是一套免费使用和自由传播的类Unix操作系统 ,以高效性和灵活性著称。它能够在PC计算机上实现全部的Unix特性,具有多任务、多用户的能力。 Linux内核最初只是由芬兰人李纳斯·托瓦兹(LinusTorvalds)在赫尔辛基大学上学时出于个人爱好而编写的 1994年3月,Linux1.0版正式发布。 1996年6月,Linux2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux已经进入了实用阶段,全球大约有350万人使用。
Linux版本 linux有两种版本,一个是核心(kernel)版,一个是发行(distribution)版。 核心版的序号由三部分数字构成,其形式为:major.minor.patchlevel其中,majoro为主版本号,minor为次版本号,二者共同构成了当前核心版本号。patchlevel表示对当前版本的修订次数。例如,2.6.18表示对核心作用2.6版本的第18次修订。 根据约定,次版本号为奇数时,表示该版本加入新内容,但不一定稳定,相当于测试版;次版本号为偶数时,表示这是一个可以使用的稳定版本。
Linux版本 Linux发行版众多,流传于世的 Linux发行版数目上百种,现今主流的几种免费linux版本: • Ubuntu • openSUSE • Fedora • Debian GNU/Linux • Mandriva Linux • PCLinuxOS ……
Linux系统安装 • 语言选择 • 时区选择 • 磁盘划分 • 软件安装
Linux系统安装 /bin /boot /media /dev /sbin /etc /usr / init.d /lib sysconfig /var /home /tmp user1 user2 /mnt /lost+found /opt /proc
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盘系统自动挂载后,会在这个目录下产生一个目录
Linux文件类型 在Linux中,带有扩展名的文件,只能代表程序的关联,并不能说明文件是可以执行,从这方面来说,Linux的扩展名没有太大的意义,主要看文件的属性有关。 普通文件 计算机用户和操作系统用于存放数据、程序等信息的文件。一般都长期地存放在外存储器(磁盘等)中。普通文件一般又分为文本文件和二进制文件。目录文件 是文件系统中一个目录所包含的目录项组成的文件。目录文件只允许系统进行修改。用户进程可以读取目录文件,但不能对它们进行修改。
Linux文件类型 设备文件用于为I/O设备提供连接的一种文件,分为字符设备文件和块设备文件,对应于字符设备和块设备。Linux把对设备的I/O做为普通文件的读取/写入操作内核提供了对设备处理和对文件处理的统一接口。每一种I/O设备对应一个设备文件,存放在/dev目录中,如行式打印机对应/dev/lp。 链接文件 又称符号链接文件,它提供了共享文件的一种方法,在链接文件中不是通过文件名实现文件共享,是通过链接文件中含的指向文件的指针来实现对文件的访问。普通用户可以建立链接文件,并通过其指针所指向的文件。
Linux文件类型 管道文件主要用于在进程间传递数据。管道是进程间传递数据的“媒介”。某进程数据写入管道的一端,另一个进程从管道另一端读取数据。Linux对管道的操作与文件操作相同,它把管道作为文件进行处理。管道文件又称先进先出(FIFO)文件。
Linux常用命令 • ls • cat,less • mv • cp • rm • mkdir • find • chmod • top、ps
ls命令 • 作用:显示目录内容,类似DOS下的dir • 格式:ls [options] [filename] • 常用参数: • -a:all,不隐藏任何以“.”开头的文件 • -l:使用较长的格式列出信息 • -r:按照文件名的逆序打印输出 • -F:加上文件类型的指示符
cat命令 • 作用:显示文件内容,concatenate的缩写,类似dos的type命令。 • 格式:cat [options] [filename] • 常用参数: • -n:显示文件内容的行号 • -b:类似-n,但是不对空白行进行编号 • -s:当遇到有连续两行以上的空白行时,就代换为一行的空白行。
mv命令 • 作用:更改文件或目录的名字,移动文件 • 格式:mv [options] sourcedestination • 常用参数: • -f:强制模式,覆盖文件不提示 • -i:交互模式,当要覆盖文件时给提示
rm命令 • 作用:删除文件命令,类似dos的del命令 • 格式:rm [options] filenames • 常用参数: • -f:强制模式,不给提示 • -r:删除目录
mkdir命令 • 作用:创建目录,类似dos的md命令。 • 格式:mkdir [options] directory • 常用参数: • -p:创建目录和它的父目录。 • -m:指定模式,类似chmod。
find命令 • 作用:搜索指定目录下的文件 • 格式:find [path] [options] [expression] • 常用参数: • -name:搜索指定文件名字的文件,支持通配符。 • -atimen:搜索过去n天之内访问的文件。 • -ctimen:搜索过去n天之内修改的文件。 • -groupgname:搜索指定组属的文件。
chmod命令 • 作用:改变文件存取权限 • 格式:chmod [options] modefilename • 常用参数: • -R:对目录下的文件进行递归操作。 • +r:增加读权限 • +w:删除写权限 • +x:增加执行权限
ps命令 ps是用来报告程序执行状况的指令,您可以搭配kill指令随时中断,删除不必要的程序。 • -a显示所有终端机下执行的程序,除了阶段作业领导者之外。 • -e此参数的效果和指定“A”参数相同。 • -f显示UID,PPIP,C与STIME栏位。 • -u此参数的效果和指定“-U”参数相同 • -x显示所有程序,不以终端机来区分。
top命令 • top命令和ps命令的基本作用是相同的,显示系统当前的进程和其它状况;但是top是 一个动态显示过程,即可以通过用户按键来不断刷新当前状态 • top命令提供了实时的对系统处理器的状态监视。它将显示系统中CPU最“敏感”的任务列表。该命令可以按CPU使用、内存使用和执行时间对任务进行排序。
top命令 • k 终止一个进程。系统将提示用户输入需要终止的进程PID,以及需要发送给该进程什幺样的信号。一般的终止进程可以使用15信号;如果不能正常结束那就使用信号9强制结束该进程。默认值是信号15。 • l 切换显示平均负载和启动时间信息。 • m切换显示内存信息 • M根据驻留内存大小进行排序。 • P 根据CPU使用百分比大小进行排序。 • q退出程序。
top命令 top - 05:20:35 up 13 min, 4 users, load average: 0.03, 0.54, 0.48 Tasks: 171 total, 1 running, 169 sleeping, 0 stopped, 1 zombie Cpu(s): 0.2%us, 0.5%sy, 0.0%ni, 99.2%id Mem: 2059572k total, 1131016k used, 928556k free, 110556k buffers Swap: 4088532k total, 0k used, 4088532k free, 678044k cached 第一行的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行为进程情况,依次为进程总数、运行进程数、休眠进程数、 终止进程数、僵死进程数。第三行为CPU状态,依次为用户占用、系统占用、优先进程占用、闲置进程占用。第四行为内存状态,依次为平均可用内存、已用内存、空闲内存、缓存使用内存。第五行为交换状态,依次为平均可用交换容量、已用容量、闲置容量、高速缓存容量。
vi编辑器 早期,当键盘和视频终端成为最新的计算机交互手段时,人们开发了vi。那时候的键盘不具有目前熟悉的全部功能键,所以,vi就设计成只需要打字机的键盘加上退格键就能完成对文本的输入和修改(现在有的还接受一些其他的键输入方式,如光标控制键)。 尽管看起来受了限制,不能充分利用现代键盘新增的许多键,可是限制中带来的好处是手指不离开打字区就能完成所有的编辑工作。
vi编辑器模式 • normalmode:命令模式,使用a、i、A、I、o、O等进入insertmode。 • insert mode:编辑模式,使用ESC进入normal mode或者ctrl+o临时进入normalmode • command-line mode • visual mode • select mode • replace mode
进入和退出vi vi:直接进入 • vi filename 如果文件存在,就是打开文件,否则就是创建新文件 退出vi • 首先按ESC键进入normalmode • :wq / :x保存文件并退出 • :q!退出不保存 • ZZ:保存文件并退出
编辑模式insert mode • 进入编辑模式 i 在光标前插入; I在行首插入 a在光标后插入; A在行末插入 o在下一行插入; O在上一行插入
命令模式normal mode • 光标移动 • h j k l • 箭头键 • 行操作 • dd删除当前行 • yy拷贝当前行 • p粘贴
命令模式normal mode • 替换、搜索和定位行操作 • :%s/mmm/nnn/g从在整个文件范围内把mmm替换成nnn,g=global • /www搜索指定的字符串www n(next) • :3光标定位在第三行 • D从当前位置开始删除到行尾 • w快速定位到行尾 • 0快速定位到行首
环境变量配置 • Linux环境变量使用export关键字设置 • 运行“.”命令可以使设置的环境变量生效 • 使用“$”获得环境变量值 • 配置环境变量的三种方法: • 编辑/etc/profile文件 • 编辑用户家目录下的.bash_profile文件 • 直接在终端使用export命令设置环境变量
安装JDK • 从官网下载bin文件:http://java.sun.com/javase/downloads/index.jsp • 下载完成后,通过ls –l命令查看该文件是否具有“x”权限,确保可以被执行。 • 被赋予“x”后,可以直接在终端执行该文件,它会自动解压到当前目录。 • 配置jdk的JAVA_HOME和PATH环境变量 • 在终端输入java–version确认版本是刚刚解压的版本
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
Linux下安装Apache • --enable-MODULE=shared :该参数是使得相关的模块编译为可动态加载模块(DSO模式),如果不选用该选项,apache默认的选项是: --enable-MODULE=static,表示将相关的模块静态编译。 • 两者的区别是:前者使得可以需要更新、重编译某模块(核心模块不受限于这种模式,如core、mod_so)时,只需单独编译该模块即可,而不需重新编译整个apache source code,做到单独升级。前者弊端是导致apache启动时慢20%左右,在运行阶段慢5%左右,另外DSO模式不是所有OS都支持的,和软件环境有关系。
Linux下安装Apache • --enable-so:该参数表示支持用mod_so模块提供的功能,用LoadModule在httpd.conf文件或包含的conf文件中动态加载某个模块。 • --with-mpm=worker:该参数是配置apache将以何种模式编译的。Apache网站文档指出不同操作系统下的不同的默认模式. 在安装完apache后,在类unixOS下,可以在./bin目录下用./httpd–l命令查看安装的模块。
Linux下安装Tomcat6.x • 从官网下载tomcat二进制免安装压缩包 • 选择tomcat放置目录,解压到当前目录即可,不需要编译安装。 • 目录结构和windows下免安装的tomcat目录结构完全一样。 • Tomcat本身没有32位和64位的区分,但是可以选择使用32位或64位的jvm来运行。 • 设置TOMCAT_HOME和PATH环境变量
安装vsftp服务器 VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是VerySecureFTP。 • 安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。 • 在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。 • 在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器(ftp.redhat.com)的数据,VSFTP服务器可以支持15000个并发用户。
安装vsftp服务器 • 在安装系统的时候选择安装ftp • 单独运行rpm包 • yum命令安装 • 下载源码包,进行编译安装
vsftp配置访问 • anonymous_enable=YES|NO控制是否允许匿名用户登录 • local_enable=YES|NO控制是否允许本地用户登录 • local_root= 配置本地用户登录的根目录 • write_enable=YES|NO控制是否允许用户上传文件 • local_umask=022控制文件上传后的权限
vsftp配置访问 • userlist_enable= YES|NO此选项激活后,vsftpd将读取userlist_file参数所指定的文件中的用户列表。 • userlist_file=/etc/vsftpd.user_list指出userlist_enable选项生效后,被读取的包含用户列表的文件。默认值是/etc/vsftpd.user_list。
安装配置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
NFS安装配置 NFS是linux主机之间进行网络文件共享的一种方式 • yum方式安装 • vi /etc/exportfs编辑配置文件 • rw:可读写的权限; • ro:只读的权限; • no_root_squash:登入到NFS主机的用户如果是ROOT用户,他就拥有ROOT的权限。
NFS安装配置 • /etc/rc.d/init.d/portmap start (在REDHAT中PORTMAP是默认启动的) • servicenfsrestart启动nfs服务 • exportfs -rv 查看共享情况 • showmount-e ip测试访问 • mount -t nfs 192.168.0.1:/tmp /mnt/nfs进行挂载 • umount /mnt/nfs取消挂载
目录和用户管理 -rwxrwxrwx 组1 组2 用户1 用户4 用户2 用户3 用户5 用户6
Linux用户与用户组 • Linux是真正多用户、多任务的系统。不同用户所具有的权限也不同,要完成不同的任务得需要不同的用户,也可以说不同的用户,可能完成的工作也不一样。 • Linux在多用户下表现最佳,Linux能很好的保护每个用户的安全 • 用户与用户组是多对多的关系 • 不同用户组、用户之间文件访问受限。