Linux系统管理
Linux概述
GNU项目及GPL、LGPL协议
-
GNU (GNU is Not Unix)
目标是编写大量兼容于Unix系统的自由软件
-
GPL (GNU General Public License)
GNU自由软件的通用许可协议
-
LGPL (Lesser General Public License)
LGPL相对于GPL较为宽松,允许不公开全部源代码
linux系统
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux内核版本
由Linux内核项目团体统一进行发布
版本XX.YY.ZZ:分别代表:主版本号,次版本号(奇数:开发版,偶数:稳定版),修订版本号
优点
完全免费,完全兼容POSIX 1.0标准,多平台支持,多用户、多任务可靠的安全,稳定性能,良好的界面,丰富的网络功能等等。
发行版本
Linux发行版本构成
- Linux内核 + 各种自由软件 = 完整的操作系统
- 厂商提供的辅助安装、软件包管理等程序
Linux发行版本:Red Hat,Centos,Suse,Debian,openEuler,麒麟等等
linux的安装部署和图形界面应用
linux的安装部署
服务器简介
-
服务器
用于提供服务访问的主机
-
客户机
用于访问服务器的主机
-
PC
personal computer:个人电脑
服务器分类
机架式服务器:外形看来不像计算机,而像交换机,占用空间小,价格便宜,功能型服务器。服务器数量较多的大型企业使用。
塔式服务器:单独放置。塔式服务器适合常见的入门级和工作组级服务器应用,性能能满足大部分中小企业用户的要求。
刀片式服务器:叠放。应用于大型的数据中心或者需要大规模计算的领域。
安装过程
-
启动安装程序
设置主机引导设备为光盘驱动器,从安装光盘(U盘)启动主机。
-
检测光盘介质的完整性
-
配置安装程序
选择语言安装信息摘要,安装源软件选择(选择合适的安装源很重要),设置网络和主机名,修改Root密码等等。
-
软件包复制及安装过程
终端
对应程序: gnome-terminal
提示符:
[登录用户@主机名 工作目录]
[root@localhost ~]#:管理员
[XXX@localhost ~]$:普通用户
命令
-
重启
shutdown -r now
shutdown -r +15“警告:系统将于1 5分钟后重启”
reboot
-
关机
shutdown -h now
poweroff
Linux图形界面应用
X Windows系统简介
Linux系统中独立于系统内核之外的用户界面系统。用户可以方便的同系统进行交互。系统可以展示给用户非常友好的界面效果。
X Window采用的是Client/Server的运行机制,即参与运行的主体划分为客户端(X Client)和服务端(X Server)。
X Server负责跟踪用户终端的输入设备(如键盘、鼠标等),并提供显示功能,而X Client则使用X Server所提供的功能来显示其运行的结果(界面)。
X Window的这种工作方式为用户提供了两个重要特性:平台无关性和网络透明性。
Linux操作系统上常用的桌面环境有两个: GNOME 和KDE
介绍linux命令行界面和shell脚本
shell
shell是Linux的一个特殊程序,是内核与用户的接口,它是命令语言、命令解释程序及程序设计语言的统称。Shell是一 个命令语言解释器,它拥有自己内建的Shell命令集。
Linux命令的通用命令格式
命令字 [选项] [参数]
-
内部命令help
查看Bash内部命令的帮助信息
-
命令的"–help"选项
适用于大多数外部命令
-
man命令阅读手册页
-
目录操作命令
pwd(查看工作目录)、cd(切换工作目录)、ls(显示目录内容)、 mkdir(创建新目录) -
文件操作命令
touch(新建空文件)、cp(复制文件/目录)、rm(删除文件/目录)、mv(移动文件/目录)、find(寻找文件/目录) -
文件内容操作命令
cat(显示出文件的全部内容)、 less(全屏方式分页显示文件内容)、 grep(在文件中查找并显示包含指定字符串的行) -
归档及压缩命令
tar(打包/解包)
Bash
重定向:
将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上。
Vim
文本编辑器的作用
- 维护Linux系统中的各种配置文件
- 编写shell脚本
三种工作模式
命令模式、输入模式、末行模式
Shell脚本
用途:完成特定的、较复杂的系统管理任务
格式:集中保存多条Linux命令,普通文本文件
执行方式:按照预设的顺序依次解释执行
“#!"是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,
即使用哪一种Shell。
echo命令用于向窗口输出文本。
linux系统管理服务
用户和组管理
用户帐号:
- 超级用户root
- 普通用户
- 程序用户
组帐号:
- 基本组(私有组)
- 附加组(公共组)
UID和GID:
- UID (User Identity,用户标识号)
- GID (Group Identify,组标识号)
权限管理
访问权限
- 读取:允许查看文件内容、显示目录列表–r
- 写入:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录–w
- 可执行:允许运行程序、切换目录–x
归属(所有权)
- 属主:拥有该文件或目录的用户帐号
- 属组:拥有该文件或目录的组帐号
设置文件/目录的归属
chown命令格式:
- chown 属主 文件或目录
- chown :属组 文件或目录
- chown 属主:属组 文件或目录
磁盘管理
硬盘和分区的结构:
- 主分区,一个硬盘允许4个主分区
- 扩展分区:一个硬盘允许3个主分区,一个扩展分区
- 逻辑分区:在扩展分区上创建
逻辑卷管理
Logical Volume Manager, 逻辑卷管理
它是Linux环境下对磁盘分区进行管理的一种机制
分为PV(物理卷,硬盘/分区),VG(卷组,一个或多个物理卷),LV(逻辑卷,卷组的一块空间)
屏蔽了底层磁盘布局,便于动态调整磁盘容量
进程和程序
程序:在硬盘,光盘中保存的可执行代码和数据,静态保存
进程:CPU和内存中运行的代码,动态执行
线程:进程中一个单一顺序的控制流,一个进程中可以并发多个线程。
软件管理
RPM软件包:建立统一的数据库文件,详细记录软件包安装、卸载等变化信息,能够自动分析软件包依赖关系。
使用yum工具可以管理软件包
服务
分为系统服务(磁盘监视服务),网络服务(网站服务)
linux服务管理
http服务:Apache服务器,开启网络,安装httpd服务,启动http服务,设置开机自启动服务
ftp服务:文件传输服务,可以建立一个FTP服务器,通过网络进行上传下载文件。
FTP连接方式
- 控制连接:标准端口为21,用于发送FTP命令信息
- 数据连接:标准端口为20,用于上传、下载数据
- 数据连接的建立类型:
- 主动模式:服务端从20端口主动向客户端发起连接
- 被动模式:服务端等待客户端发起连接.
FTP传输模式
- 文本模式: ASCII模式,以文本序列传输数据
- 二进制模式: Binary模式,以二进制序列传输数据
DNS服务:域名解析服务,
作用:
- 正向解析:根据主机名称(域名)查找对应的IP地址
- 反向解析:根据IP地址查找对应的主机域名
DNS查询方式:
- 递归查询
- 大多数客户机向DNS服务器解析域名的方式
- 迭代查询
- 大多数DNS服务器向其他DNS服务器解析域名的方式
DHCP:动态主机配置协议,在网段上给主机动态分配IP地址和配置,减轻TCP/IP的网络规划,管理负担。
SMTP:即简单邮件传输协议,属于TCP/IP,
iSCSI:Internet小型计算机系统接口,基于TCP/IP的协议,
用于通过IP网络仿真SCSI高性能本地存储总线,从而为远程块存储设备提供数据传输和管理,作为存储区域网络(SAN) 协议,iSCSI跨本地和广域网络(LAN、 WAN以及Internet)扩展SAN,通过分布式服务器和数组提供独立于位置的数据存储检索。
IQN: iSCSI限定名称,全球唯一名称, 用以强制命名格式来识
别启动器和目标。
chrony服务:时钟同步
SSH:强化安全的远程登录方式