前言
Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
互联网Linux运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够7×24小时为用户提供高质量的服务。运维的职责覆盖了产品从设计到发布、运行维护、变更升级及至下线的生命周期。
运维团队的工作分类
1-应用运维(SRE):应用运维负责线上服务的变更、服务状态监控、服务容灾和数据备份等工作,对服务进行例行排查、故障应急处理等工作,工作职责如下:设计评审、服务管理、资源管理、例行检查、预案管理、数据备份。
2-系统运维(SYS):负责IDC、网络、CDN和基础服务的建设(LVS、NTP、DNS);负责资产管理,服务器选型、交付和维修,工作职责如下:IDC数据中心建设、网络建设、LVS负载均衡和SNAT建设、CDN规划和建设、服务器选型、交付和维护、内核选型和OS相关维护工作、资产管理、基础服务建设。
3-数据库运维(DBA):数据库运维负责数据存储方案设计、数据库表设计、索引设计和SQL优化,对数据库进行变更、监控、备份、高可用设计等工作,详细的工作内容如下:设计评审、容量规划、数据备份与灾备、数据库监控、数据库安全、数据库高可用和性能优化、自动化系统建设、运维研发、运维平台、监控系统、自动化部署系统。
4-运维安全(SEC):运维安全负责网络、系统和业务等方面的安全加固工作,进行常规的安全扫描、渗透测试,进行安全工具和系统研发以及安全事件应急处理,工作内容如下:安全制度建立、安全培训、风险评估、安全建设、安全合规、应急响应。
软件和技能
-
Web服务器:apache、tomcat、nginx、lighttpd
-
监控:nagios、ganglia、cacti、zabbix
-
自动部署:ansible、sshpt、salt
-
配置管理:puppet、cfengine
-
负载均衡:lvs、haproxy、nginx
-
传输工具:scribe、flume
-
备份工具:rsync、wget
-
数据库:mysql、oracle、sqlserver
-
分布式平台:hdfs、mapreduce、spark、storm、hive
-
分布式数据库:hbase、cassandra、redis、MongoDB
-
容器:lxc、docker
-
虚拟化:openstack、xen、kvm
-
安全:kerberos、selinux、acl、iptables
-
问题追查:netstat、top、tcpdump、last
新时代运维
传统的运维该如何转型呢?这里给出一点小的建议: 大致需要学习下这四个部分:
- 自动化运维(Ansible,Puppet,Saltstack等)
- Devops(Docker,K8s,Jenkins,Jira等),
- 云服务技术(虚拟化、OpenStack、AWS及阿里云各种产品服务架构等)
- python
计算机的组成及其功能
冯.诺伊曼体系中,计算机有五大基本部件:控制器、运算器、存储器、输入设备、输出设备。(电子专业学过,哈哈)
实际应用中,计算机包括CPU(控制器和运算器)、存储器(Memory内存和Disk外存)、Input输入设备、Output输出设备。
CPU由运算器、控制器、寄存器、缓存、指令集组成。
a、运算器是实现算术运算和逻辑运算的部件
Linux发行版有三大主流分支:Debian、Slackware、Redhat,包含的主要发行版分别如下:
- Debian
- Ubuntu
Linux mint - Knopix
- Ubuntu
- Slackware
- S.u.S.E
SLES-SuSE Linux Enterprise
OpenSuSE
- S.u.S.E
- Redhat
- RHEL-RedHat Enterprise Linux
CentOS-Community ENTerprise - Fedore Core
- RHEL-RedHat Enterprise Linux
Linux的哲学思想
1. 一切皆文件
把几乎所有资源统统抽象为文件形式,包括硬件设备,甚至通信接口等,便于统一管理和定义;
对文件的操作有:open,read,write,close,delete,create
2. 由众多功能单一的程序组成
一个程序只做一件事,并且做好,保证了Linux内核的高效运行;
3. 组合小程序完成复杂任务
通过连接多个简单的程序实现复杂的功能;
4. 尽量避免和用户交互
更贴近编程,易于以编程的方式实现自动化任务;
5. 使用文本文件保存配置信息
修改配置信息只需要任意一款文本编辑器就可以进行。
Linux基础教程之基础命令总结
基本命令
ls命令 list 列出指定目录下的内容
pwd命令 printing working directory 显示当前工作目录
cd 命令 change directory 切换目录
cp命令 copy 用于复制源文件或者目录到
-f:强制覆盖目标文件;
-r, -R:递归复制目录;
mkdir命令 创建目录make directories
-r 将参数中列出的全部目录和子目录均递归地删除
注意:删除命令是一个非常危险的操作,所有不用的文件建议不要直接删除,而是移动至某个专用目录;(模拟回收站),过段时间后,非常明确肯定不要了再删除。
关机
shutdnow -h -now马上关机 shutdnow +30 :30分钟后关机
文本查看类命令
cat命令 concatenate查看文本文件内容
less命令 翻屏查看文件
less file
more命令 从头到尾查看文件,不可以回头,不是很好用
head命令 显示文件的前n行,默认是显示前十行
语法格式:head [参数]… [文件]…
-c<字节> 显示字节数。 head -c 50 /etc/rc.d/init.d/functions 显示前50字节,要是改为-50.则显示文件后50字节。
-n<行数> 显示的行数。显示文件的前50行:head -50 /etc/rc.d/init.d/functions
stat命令:显示文件和文件的系统熟性,包括文件名,大小,时间戳等信息,通俗地说就像我们看到windows右键,文件属性看到的信息类似。
网络相关类
ifconfig 或ip addr list 查看活动接口的ip地址
ss命令 ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。
例如查看22端口状态 :ss -tnl
搜索和查询类
file命令 查看文件内容类型
type命令 判断一个命令是外部命令还是内部命令
语法格式 type COMMAND
help命令 用于shell内部命令的帮助信息
语法格式 help COMMAND
man 命令 帮助手册
语法格式 man COMMAND
tty 显示当前终端 虚拟终端tty,centos7启动后默认有6个tty1–tty6,alt+F1-F6键切换
伪终端是pty