分享

循序渐进Linux:基础知识、服务器搭建、系统管理、性能调优、集群应用

 筠珑枫绦 2010-10-16
2010年10月03日
《循序渐进Linux:基础知识、服务器搭建、系统管理、性能调优、集群应用》
作者: 高俊峰 编著(2009年12月第1版第1次)
人民邮电出版社 POSTS & TELECOM PRESS
http://www.
北京市崇文区夕照寺街14号(100061)
 
 
内容简介
本书从基础知识入手,系统讲解了Linux系统结构、shell、主流服务器搭建及故障排除、用户权限管理、磁盘存储管理、文件系统管理、内存管理和系统进程管理等关键技术,深入研究了系统性能优化思路、系统性能评估与优化、集群技术、负载均衡等Linux热点主题。.
全书强调学习方法以及技术能力的培养,在每个知识点后都给出了大量操作案例,包括了详细的操作步骤,具有很强的可操作性,并对案例进行分析,提供了解决问题的思路和方法,做到了授人以渔。..
本书适合想要系统、全面学习Linux技术的初学者作为教材,也适合Linux系统管理员、数据库管理人员、网络安全管理人员、系统集成人员和系统架构师参考。...
 
高俊峰,网名南非蚂蚁,经常活跃于国内著名技术社区IXPUB(www.ixpub.net)、ITPUB(www.itpub.net)、ChinaUnix(WWW.chinaunix.net),在IXPUB任“Linux与开源世界”及“存储设备与容灾技术”版主,多年专注于Linux+Oracle技术方面的研究与实践,擅长Linux系统管理与应用,实战经验丰富。关于作者与本书的更多信息可以访问作者个人博客(http://www.ixdba.net)。
 
P4,Linux的主要发行版本
RedHat系列(Fedora Core,RHEL,CentOS,红旗Redflag,中标Linux,OracleEnterpriseLinux)
SuSE Linux、Ubuntu Linux、Debian GNU/Linux、Mandriva、Gentoo、Slackware、Knoppix、MEPIS和Xandros等
 
P8,Linux学习基本步骤
初级阶段
1、学会80个左右的命令
2、软件包的常用安装方法,源码安装和RPM安装
3、添加外部设备,安装设备驱动程序
4、熟悉GRUB/LILO引导程序及简单的修复操作
5、熟悉Linux文件系统和目录结构以及Linux基本运行原理
6、掌握vi, gcc, gdb等常用编辑器、编译器和调试器
7、理解shell别名、管道、I/O重定向、输入和输出以及shell简单脚本编程
8、学习Linux环境下的网络基本组件
高级阶段
1、尝试阅读Linux内核源码
2、尝试编译安装和调试自己的Linux内核
3、深入学习shell, perl和cgi等脚本语言
4、构建企业级Linux高可用集群系统
 
P30,Linux分区
1、Linux系统下必要的分区为根分区/和交换swap分区
2、swap分区用于交换内存数据和硬盘;物理内存与swap的大小关系:4G以下,2倍;4G-16G,相等;16G以上,可设置为0或一定大小
3、建议把/boot(100M), /usr, /var 分区与根分区独立分配硬盘空间
 
P50,Linux系统由桌面控制台和字符控制台组成
1、在图形界面要转入字符界面,只需按下“Ctrl+Alt+F1--F6”即可
2、在字符界面要切换到X-WINDOW下,可以输入“startx”或者按下“Ctrl+Alt+F7”即可
 
P50,Linux硬件资源管理
1、查看系统PCI设备:lspci
2、查看CPU信息:more /proc/cpuinfo
3、查看系统内存信息:more /proc/meminfo
4、查看磁盘分区信息:fdisk -l
 
P54,设备文件
1、软盘:/dev/fdx,x是编号,例如:/dev/fd0表示系统中第一个软盘驱动器
2、U盘:U盘被认为是SCSI设备,对应为 /dev/sdax;abcd是设备编号,1234表示分区编号;例如:/dev/sda1 表示第一块SCSI设备的第一个分区
3、光驱:IDE光驱对应为 /dev/had;SCSI光驱对应为 /dev/srx。另外,/dev/cdrom是一个指向光驱的符号链接。
4、磁带:SCSI磁带驱动器对应为 /dev/stx,x是编号,例如:/dev/st0表示系统中第一个磁带驱动器
设备的挂载命令:mount -t 文件系统类型 设备名 挂载点
1、挂载软盘:mount -t modos   /dev/fd0  /mnt/floppy
2、挂载U 盘:mount -t vfat    /dev/sda1 /mnt/usb
3、挂载光盘:mount -t iso9660 /dev/hda  /mnt/cdrom
3、挂载光盘:mount /dev/cdrom  /mnt/cdrom
设备的卸载命令:umount 挂载点
umount /mnt/floppy
umount /mnt/cdrom
 
P56,文件系统结构
1、/etc目录,存放系统管理相关的配置文件以及子目录。
passwd,用户库文件
shadow,用户口令文件
group,用户组文件
inittab,init进程的配置文件,完成整个系统的初始化配置
crontab,系统级别的守护进程配置文件
hosts,IP与域名对应表文件
X11,X-Window的配置文件
profile 系统全局环境变量配置文件
sysctl.conf,系统内核参数配置文件
services,定义了系统服务与端口的对应关系
init.d,此目录包含所有服务启动脚本,开机由系统自动启动这些服务
2、/usr目录,存放应用程序和文件
X11R6,X-Window的安装目录
src,包含了所有程序的源代码
Local,本地安装的软件和其他文件,与Linux系统无关
3、/var目录,存放系统运行以及软件运行的日志信息
log,各种应用程序的日志文件,需要定期清理
lib,存放系统运行时需要改变的库文件
account,已经格式化的man页
4、/dev目录,包含了系统所有的设备文件。
lp*,代表并行串口
pty*,代表网络中登录的远程终端设备
ram*,代表系统内存
tty*,代表字符控制台
ttys*,代表串行端口
console,代表系统控制台,也就是桌面控制台
5、/proc目录,内存映射目录,可以获取有关进程的信息
filesystems,当前系统支持的文件系统类型
devices,内核中的设备驱动程序列表
6、其他目录
/boot目录,存放Linux启动的核心文件
/bin,/sbin目录,存放可执行的二进制文件;/sbin存放的是只有超级用户才可以执行的文件
/home目录,用户的工作目录
/tmp目录,临时文件目录,需要定期清理
 
P60,一个完整的Linux内核一般由5个部分组成:内存管理、进程管理、进程间通信、虚拟文件系统和网络接口。
 
P61,系统运行级
0:关机模式
1:单用户模式
2:多用户模式,不支持NFS服务
3:完全多用户模式,字符界面(默认)
4:特定登录请求模式
5:完全多用户模式,图形界面
6:重启模式
inittab文件的内容格式:
label:runlevel:action:process
比如:
id:5:initdefault:    #表示系统默认启动到X-Window界面下
ca::ctrlaltdel:/sbin/shutdown -t3 -r now     #表示当按下“Ctrl+Alt+Del”组合键时,系统重启
 
P64,系统启动过程
1、内核引导:打开系统电源,开始BIOS自检,系统按照BIOS里的设置启动设备(一般是硬盘启动),接着进入Linux引导程序。一旦Linux引导程序载入内存后,显示一个图形界面给用户,这个界面包含了不同的内核选项供用户选择。当引导程序成功完成引导后,Linux接管对CPU的控制权,接着CPU开始执行Linux内核映像程序,加载内核,在预定的地方找到initrd镜像的压缩包,对它进行解压和挂载,并载入所有必须的驱动。然后,Kernel会创建root设备,以只读方式挂载root分区,并释放所有没有被使用的内存。此时,Kernel已经被装载到内存里运行起来了。
2、运行init:Linux在完成内核引导以后,就开始运行init程序。init程序需要读取配置文件/etc/inittab文件。
3、系统初始化:init程序启动后首先调用 rc.sysinit和rc程序。rc.sysinit程序主要完成系统初始化的工作;rc程序主要启动系统对应运行级别的守护进程。
4、建立终端:系统的基本环境已经设置好后,init程序会打开6个终端,以便用户登录。
5、登录系统:当出现mingetty登录界面时,可以输入用户名和口令。当login程序执行成功后,最后就进入了shell控制台。
P65,系统关机过程
1、shutdown 命令是用shell编写的程序,一般会调用init程序来完成关机动作;
2、halt关机命令,相当于 shutdown -h now
3、reboot重启命令,相当于 shutdown -r now
4、init命令,init 0 就是关机;init 6 就是重启。
 
P67,SecureCRT是终端仿真程序,支持SSH*,类似于Telnet和FTP,但比后者更安全和高速。
 
P77,Linux常用命令列表
1、系统管理和维护(17个)
显示指定工作目录下的内容:ls
显示当前工作目录:pwd
改变当前工作目录:cd
显示或修改系统日期时间:date
设置用户口令:passwd
改变身份:su
清除屏幕信息:clear
显示指定命令的帮助信息:man
显示当前登录到系统的用户:who
显示当前登录到系统的用户信息:w
显示操作系统相关信息:uname
输出系统任务队列信息:uptime
列出目前和过去登入系统的用户相关信息:last
显示开机信息:dmesg
显示系统内存状态:free
显示系统进程瞬间的运行状态:ps,pstree,lsof
实时监控系统处理器状态:top
2、文件管理与编辑(13个)
创建目录:mkdir
逐屏显示内容:more,less
将文件内容打印到标准输出:cat
比较文件的差异:diff
过滤文本:grep
删除某个目录及其所有文件及子目录:rm
改变指定文件的访问时间和修改时间:touch
在文件或目录之间创建链接:ln(硬链接使一个文件有多个有效路径名;软链接是符号链接,类似快捷方式)
显示文件类型:file
拷贝文件或目录:cp
在指定路径下查找指定文件:find
分隔文档:split
移动文件或目录:mv
文本编辑工具:vi
3、压缩和解压(6个)
压缩/解压缩文件或者目录:zip/unzip
压缩/解压缩文件:gzip/gunzip
压缩/解压缩文件:bzip2/bunzip2
将文件或者目录打包归档:tar
转换或拷贝文件:dd
重定向方式打包备份还原恢复文件:cpio
4、磁盘管理与维护(6个)
检查磁盘空间占用情况:df
显示文件或目录所占用的磁盘空间:du
检查文件系统并尝试修复错误:fsck
强制把内存中的数据写回硬盘:sync
退出抽取式设备:eject
挂载/卸载指定的文件系统:mount/umount
5、网络设置与维护(6个)
配置网络或显示当前网络接口状态:ifconfig
将文件目录拷贝到另一个Linux系统:scp
显示本机网络连接、运行端口和路由表等信息:netstat -atunp
显示网络数据包传输到指定主机的路径信息:traceroute
与远程的主机通信或获取远程主机对应端口的信息:telnet
从网络上下载软件的命令:wget url
 
P130,Linux软件安装方式
1、源码安装
tar -jxvf httpd-2.2.9.tar.bz2
./configure
make
make install
2、RPM安装
rpm -ivh ipsadm-1.12-6.i386.prm
rpm -qp gcc-3.4-2.i386.rpm
rpm -V rsh-0.17-25.3
rpm -Uvh rsh-0.17-37.e15.i386.rpm
rpm -e gcc
3、二进制安装
tar -zxvf xx.tar.gz
tar -jxvf xx.tar.bz2
chmod 755 jdk1.6.0_07.bin
./jdk1.6.0_07.bin
 
P146,网卡安装的一般步骤
1、检查网卡芯片型号(常见Intel RC82545EM, Realtek8139D, Broadcom NetXtreme, 3Com3C940, sis900, VIA VT6105L等)
要么是打开机箱查看芯片,或者使用命令 lspci 查看
2、查看系统是否包含对应型号的网卡驱动(.ko结尾的文件就是网卡芯片对应的驱动程序)
ll /lib/modules/2.6.18-53.e15/kernel/drivers/net/
3、检查网卡驱动是否加载
lsmod
modprobe -rv vfat #卸载vfat模块(检查依赖性)
modprobe -nv vfat #显示vfat模块(显示依赖性)
modprobe -av vfat #装载vfat模块(检查依赖性)
insmod [option] 模块名称或模块文件  #装载模块,不检查依赖性
rmmod [option] 模块名称或模块文件   #卸载模块,不检查依赖性
depmod [option] 模块名              #分析模块依赖性
4、激活/失效网卡
ifconfig eth0 up/down
 
P156,RHEL网络配置文件
1、网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0
2、本地回环配置文件:/etc/sysconfig/network-scripts/ifcfg-lo
3、主机名和网关配置文件:/etc/sysconfig/network
4、DNS配置文件:/etc/resolv.conf
5、设置主机和IP地址绑定文件:/etc/hosts
P159,RHEL下网卡绑定多个IP地址
1、创建一个新网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0:0
2、ifconfig [device] [IP] netmask [netmask ip] [up/down]
P160,开启Linux代理转发功能
1、echo "1" > /proc/sys/net/ipv4/ip_forword
2、修改内核配置文件 /etc/sysctl.conf
net.ipv4.ip_forword=1
sysctl -p  #立即生效命令
 
P161,路由配置
route [-n|ee]
route add [-net|-host] [网络或主机] netmask [mask ip] [gw|dev]
route del [-net|-host] [网络或主机] netmask [mask ip] [gw|dev]
route add -net 192.168.1.8 netmask 255.255.255.0 gw 192.168.1.1
 
P173,网络传输安全一般由网络安全设备构成,常见的网络安全设备有硬件防火墙、网络入侵检测(IDS)、路由器和交换机。操作系统安全设置有系统内核定期升级、系统自带软件保持最新、配置系统软件防火墙iptables防范策略、配置杀毒软件防范病毒、关闭无关的服务和端口、密码安全管理等。
 
P174,软件升级
yum(yellowdog updater modified)是进行Linux自动升级的工具。
yum install dhcp
yum remove dhcp
yum check-update
yun update [kernel kernel-source]
yum upgrade #大规模的版本升级,与 yum update 不同的是,无用的包也会升级
yum info
 
P179,端口与服务
1、查看当前服务器的端口监听状态:netstat -tunl
2、显示已经联机的连接状态:netstat -tun
3、查看端口对应的是什么服务:netstat -antlp
4、检查服务的开启关闭状态:chkconfig --list sshd
5、开启或者关闭不同运行级别的服务:chkconfig --level 35 sendmail off/on
6、禁止系统响应ping请求:echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all  #可以加命令到 /etc/rc.d/rc.local 文件,实现重启自动运行
7、修改 /etc/inittab 文件后,可以运行 telinit q 使修改立即生效
8、限制 shell 记录历史大小:/etc/profile  HISTSIZE=30
9、检查SELinux是否启用:getenforce
10、启用/关闭SELinux状态:/etc/sysconfig/selinux SELINUX=enforcing/disabled
11、设定tcp_wrappers防火墙(Linux默认安装2层防火墙,第一层是iptables,第二层是tcp_wrappers):
/etc/hosts.allow
/etc/hosts.deny
sshd:222.90.66.4 61.22.123.1 qq.com
12、远程容灾备份:rsyns是Linux系统下的数据镜像备份工具。
 
P236,Samba的概念和功能
SMB是基于C/S的协议,因此一台Samba服务器可以充当文件共享服务器,也可以充当一个Samba的客户端。例如,一台在Linux下的Samba服务器,Windows客户端(Samba在Windows下使用的是NetBIOS协议,必须安装和启用)可以通过SMB协议共享Samba服务器上的资源文件;同样,Samba服务器也可以访问网络中其他Windows系统或者Linux系统共享出来的文件。
 
P248,Linux内核参数
kernel.shmall=2097152 #表示可用共享内存的总量,单位是页(一页等于4kB)
kernel.shmmax=4294967295 #表示单个共享内存段的最大值,单位是字节
kernel.shmmin=4096 #表示单个共享内存段的最小值,单位是字节
kernel.sem=250 32000 100 1128 #表示设置的信号量,这4个参数固定
fs.file-max=6553600 #表示文件句柄的最大数量
net.core.rmem.default=4194304 #表示接受套接字缓冲大小的缺省值,单位是字节
net.core.rmem.max=4194304 #表示接受套接字缓冲大小的最大值,单位是字节
net.core.wmem.default=262144 #表示发送套接字缓冲大小的缺省值,单位是字节
net.core.wmem.max=262144 #表示发送套接字缓冲大小的最大值,单位是字节
 
P257,/etc/fstab 文件存放了系统文件系统的相关信息。
 
P273,用户权限管理
1、用户及组相关配置文件:/etc/passwd  /etc/shadow  /etc/group
2、创建用户的创建设置文件:/etc/login.defs
3、创建用户的默认参数文件:/etc/useradd
4、新用户默认配置文件目录:/etc/skel
5、添加组命令:groupadd [-g -o] gid groupname
6、当前用户在多个用户组之间切换命令:newgrp <用户组>
7、删除用户组:groupdel [组名]
8、添加、修改和删除用户命令:useradd/usermod/userdel
9、修改文件的属主和属组:chown [-R] 用户名称:组名称 文件或者目录
10、修改文件的访问权限:chmod u=rwx,g+r,o-r install.log  或者 chmod 755 install.log
 
P298,LVM术语
1、物理存储设备:指系统的存储设备文件,比如 /dev/sda;
2、物理卷(PV):指硬盘分区或者RAID设备;
3、卷组(VG):一个VG由一个或多个PV组成;
4、逻辑卷(LV):LV建立在VG上,并在LV上创建文件系统(一个LV对应一个文件系统);
5、PE/LE:PV/LV中可以分配的最小存储单元,在同一个卷组中,LE=PE。
 
P300,LVM的创建和管理
1、创建物理分区:fdisk 分区类型为 Linux LVM,对应的ID为 80e,分区后不需要格式化
2、创建物理卷PV:pvcreate 磁盘分区或者整个磁盘   #在这里,每个逻辑分区可以创建为一个物理卷,例如 pvcreate /dev/sdb5 /dev/sdb6 /dev/sdc5
3、创建卷组VG:vgcreate 卷组名 物理卷 #vgcreate myvg1 /dev/sdb5 /dev/sdb6 /dev/sdc5
4、激活卷组VG:vgchange -a y|n 卷组名  # 激活或者停用卷组,vgchange -a y myvg1
5、显示卷组、物理卷属性:vgdisplay|pvdisplay
6、创建逻辑卷LV:lvcreate [-L 逻辑卷大小|-l PE数] -n 逻辑卷名称 所属卷组 # lvcreate -L 4G -n mylv11 myvg1
7、格式化逻辑卷、创建文件系统:mkfs.ext3 /dev/myvg1/mylv11
8、挂载目录:mkdir /mylv11   mount //dev/myvg1/mylv11 /mylv11
9、修改 /etc/fstab 文件,增加新增的逻辑分区,以使开机自动挂载
10、添加新的物理卷到卷组:vgextend 卷组名 新加入的物理卷 #先将某个设备转换为物理卷,然后添加到一个卷组中
11、从卷组中移除物理卷:vgreduce
12、删除物理卷、卷组和逻辑卷的命令:pvremove vgremove lvremove
 
P341,任务调度进程crond,使用 /etc/crontab 任务调度的配置文件。每一行代表一项任务:
minute hour day month week command
【*】 表示所有值;【,】表示散列值;【-】表示连续值;【/】表示频度
比如:
0 */3 * * * /usr/local/apache2/apachectl restart #表示每隔3小时重启Apache服务一次
30 3 * * 6 /webdata/bin/backup.sh #表示每周六的3点30分执行指定脚本的操作
 
P344,关闭进程
kill [信号类型] 进程PID
killall [信号类型] 进程名称
信号类型:-9 强制结束;-2 结束;-15 正常结束(默认值)
 
P352,常用性能分析工具:vmstat, iostat, sar, uptime, free, watch
ping, netstat -i, netstat -r, sar -n
 
P372,Linux集群技术
1、集群的特点:高可用性和可扩展性,负载均衡和错误恢复,心跳检测和漂移IP。
2、集群的分类:高可用HAC,负载均衡LBC,高性能计算HPC
3、高可用集群开源软件:Heartbeat
4、传统的数据统一存储方案:通过镜像软件实现数据的块级同步;通过数据同步软件实现文件系统级的文件或目录同步
5、常见集群文件系统:GFS, OCFS2, Lustre
6、Linux负载均衡软件:LVS(Linux Virtual Server)
7、IP负载均衡技术:VS/NAT, VS/TUN, VS/DR
8、负载调度算法:轮叫调度、加权轮叫调度, 最少链接调度、加权最少链接调度、基于局部性最少链接、带复制的基于局部性最少链接、目标地址散列、源地址散列。
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多