扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、解释下什么是GPL,GNU,自由软件?
创新互联建站自2013年起,是专业互联网技术服务公司,拥有项目成都网站建设、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元利州做网站,已为上家服务,为利州各地企业和个人服务,联系电话:18980820575
GPL:(通用公共许可证):一种授权,任何人有权取得、修改、重新发布自由软件的权力。
GNU:(革奴计划):目标是创建一套完全自由、开放的的操作系统。
自由软件:是一种可以不受限制地自由使用、复制、研究、修改和分发的软件。主要许可证有GPL和BSD许可证两种。
2、linux系统里,buffer和cache如何区分?
buffer和cache都是内存中的一块区域,
当CPU需要写数据到磁盘时,由于磁盘速度比较慢,所以CPU先把数据存进buffer,
然后CPU去执行其他任务,buffer中的数据会定期写入磁盘;
当CPU需要从磁盘读入数据时,由于磁盘速度比较慢,
可以把即将用到的数据提前存入cache,CPU直接从Cache中拿数据要快的多。
3、描述Linux运行级别0-6的各自含义
0:关机模式
1:单用户模式==破解root密码
2:无网络支持的多用户模式
3:有网络支持的多用户模式(文本模式,工作中最常用的模式)
4:保留,未使用
5:有网络支持的X-windows支持多用户模式(桌面)
6: 重新引导系统,即重启
4、描述Linux系统从开机到登陆界面的启动过程
⑴开机BIOS自检,加载硬盘。
⑵读取MBR,MBR引导。
⑶grub引导菜单(Boot Loader)。
⑷加载内核kernel。
⑸启动init进程,依据inittab文件设定运行级别
⑹init进程,执行rc.sysinit文件。
⑺启动内核模块,执行不同级别的脚本程序。
⑻执行/etc/rc.d/rc.local
⑼启动mingetty,进入系统登陆界面。
5、描述Linux下软链接和硬链接的区别
在Linux系统中,链接分为两种,一种是硬链接(Hard link),另一种称为符号链接或软链接(Symbolic Link)。
①默认不带参数的情况下,ln创建的是硬链接,带-s参数的ln命令创建的是软链接。
②硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号,与源文件不同,
③ln命令不能对目录创建硬链接,但可以创建软链接。对目录的软链接会经常使用到。
④删除软链接文件,对源文件和硬链接文件无任何影响。
⑤删除文件的硬链接文件,对源文件及软链接文件无任何影响。
⑥删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状)。
⑦同时删除源文件及其硬链接文件,整个文件才会被真正的删除。
⑧很多硬件设备的快照功能,使用的就是类似硬链接的原理。
⑨软链接可以跨文件系统,硬链接不可以跨文件系统。
6、shell脚本中“$?”标记的用途是什么?
在写一个shell脚本时,如果你想要检查前一命令是否执行成功,在if条件中使用“ ?
如果结束状态是0,说明前一个命令执行成功。
root@localhost:~# ls /usr/bin/share
ls: cannot access /usr/bin/share: No such file or directory
root@localhost:~# echo $?
2
如果结束状态不是0,说明命令执行失败。
7、如何让history命令显示具体时间?
$ HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S"
$ export HISTTIMEFORMAT
重新开机后会还原,可以写/etc/profile
8、用shell统计ip访问情况,要求分析nginx访问日志,找出访问页面数量在前10位的IP数。以下是nginx的访问日志节选
202.101.129.218- - [26/Mar/2006:23:59:55 +0800] "GET /online/stat_inst.php?pid=d065HTTP/1.1" 302 20-"-" "-" "Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1)"
1}' access.log |sort|uniq -c |head -n 10
31 202.101.129.218
21 123.93.29.11
11 13.92.19.31
9、将本地的80端口的请求转发到8080端口,本机地址10.0.0.254,写出命令
$ iptables -t nat -A PREROUTING -d 10.0.0.254 -p tcp --dprot 80 -j DNAT --to-destination 10.0.0.254:8080
10、Load过高的可能性有哪些?
排查思路:
其他经验:
cpu load的飙升,一方面可能和full gc的次数增大有关,一方面可能和死循环有关
11、描述/etc/fstab 文件中每个字段的含义?
(1)第一列:将被加载的文件系统名;
(2)第二列:该文件系统的安装点;
(3)第三列:文件系统的类型;
(4)第四列:设置参数;
(5)第五列:供备份程序确定上次备份距现在的天数;
(6)第六列:在系统引导时检测文件系统的顺序。
12、 如何在打包时排除指定目录?
$ tar --exclude=/home/dmtsai --exclude= .tar -zcvf myfile.tar.gz /home/ /etc
mysql update user set password=password('123123') where user='root';
运维工程师使用的运维平台和工具包括: Web服务器:apache、tomcat、nginx、lighttpd 监控:nagios、ganglia、cacti、zabbix 自动部署:ansible、sshpt 配置管理:puppet、cfengine 负载均衡:lvs、haproxy 传输工具: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 广义上所有开源的软件都是运维工程师会使用到的平台和工具,同时也包括运维各个技术方向上自行研发的各类平台。
Linux运维工程师的职责1
职责:
1、 负责服务台排班,管理服务台日常运营,业务及时上传下达。
2、 保证服务台服务提供效率,及时发现问题、解决问题。
3、 负责服务纠纷及突发事件的处理工作。
4、 负责对组内员工进行监督和评审。
5、 负责对组内员工进行培训工作。
6、 对服务台运营机制不断优化和改进。
任职要求:
1、大专及以上学历,计算机专业优先。
2、3年以上工作经验,在IT行业1年以上同岗位工作经验,带过团队。
3、强有力的组织协调能力,有有效调动团队积极性的能力和方法,。
4、责任心强,有良好团队协作和服务意识,有良好的沟通表达能力、随机应变能力。
Linux运维工程师的职责2
职责:
1.负责服务器的搭建、部署、监控、调优、升级、日常维护和管理工作;
2.负责处理系统方面日常变更、控制突发情况,对疑难问题进行分析并解决;
3.支持服务器系统部署、应用调整和优化,提高操作效率,增强系统可用性;
4.云台与产品发布迭代,升级部署。
【任职要求】
1.了解各种计算机软硬件,可独立进行安装、调试及故障排除;
2.了解局域网的维护及网络安全知识,可熟练进行局域网的搭建和网络设备的基本维护和故障处理;
3.知道运用LINUX服务器进行维护与管理;
4.了解nginx,tomcat等相关服务部署;
5.了解MySQL数据库管理、监控和备份优先;
6.了解常见云如阿里云使用。
Linux运维工程师的职责3
职责:
1、 对线上网站系统进行版本更新、应用部署、数据迁移,问题分析和跟进,及时处理突发故障;
2、 网站日常维护工作,包含定期的服务器、系统、应用、数据库巡检等工作;
3、 支撑公司部门业务数据统计和提取;
4、 分析系统存在隐患,并能提出合理的调整优化方案;
5、 制定和改进应急预案、策略和流程,提高系统服务的运行稳定性、质量及效率;
任职要求:
1、 全日制大专或以上学历,计算机及相关专业毕业,3年及以上专职大型系统维护经验;
2、 熟练使用Linux操作系统常用运维命令,能熟练编写shell或python脚本,可独立编写维护自动化及监控脚本;
3、 具有一定网络链路分析能力,可排查简单的网络问题;
4、 熟练使用Nginx、Tomcat、Redis、RabbitMQ等开源应用软件,并能快速进行部署,具有丰富的调优经验;
5、 熟悉常用的SQL语句;
6、 对Mysql数据库具有丰富的维护经验,熟悉mysql主从、集群配置,并能提出优化建议;
7、 5年以上网站/软件维护经验,有大型网站的web架构部署和实践经验优先。
Linux运维工程师的职责4
职责:
1、负责项目在客户现场的系统搭建、初始化设定和系统升级、功能测试、用户验收
2、负责项目运维阶段应用回访、跟进、改善和报告编写,定期分析客户数据并沟通记录新需求;
3、根据要求参与项目各个阶段的工作例会并完成相关报告
4、编制参与项目各个阶段的项目文件:如工作记录等;
5、与项目相关方日常沟通协调,保证项目顺利执行;
6、负责客户使用培训及客户使用问题答疑。
岗位要求
1、计算机相关专业,具备2年以上项目实施工作经验;
2、能够适应不定期的出差工作;
3、具备较强的沟通和协调能力,问题发现和解决的能力;
4、具备高度的自我激励能力、团队管理能力、有责任心、使命感以及诚信度;
5、熟练应用sql语句,熟悉sqlserver/mysql/oracle任何一种数据库,熟悉office 有良好的文档编写能力;
6、熟悉tomcat,熟练使用Linux等主流服务器操作系统。
Linux运维工程师的职责5
职责:
负责银行各产品的平台搭建,部署,迁移,以及常规的产品升级;
负责后台系统的优化,数据库的调优;
负责编写脚本实现自动化运维;
负责监控系统相关性能和运行情况;
负责快速定位系统故障,并第一时间解决或协调相关人员解决;
负责产品维护手册以及相关文档的编写;
任职资格:
2年左右相关工作经验;
熟练掌握,Linux,AIX,windows的基本命令,对常见的系统性能问题有初步的认识;
熟练使用SQL语言,并了解数据库(ORACLE,MYSQL等)的运行机制,并有数据库操作经验;
熟练并能使用shell,python,Perl等其中一种脚本语言,并能编写相关脚本;
熟悉中间件的使用,(MQ,WAS等),熟悉负载均衡,有高并发的负载调优的经验;
需要一定的沟通的能力;
Linux运维工程师的.职责6
职责:
1、 负责维护短信管理平台的系统部署、日志监控、应急响应、平台升级以及日常的维护等。
2、 负责linux服务器的日常维护及文件备份,保护文件安全和权限分配,维护系统的正常运作,Linux应用程序的配置,管理。
3、 负责对接落地资源、接入资源。配置客户数据,为客户提供技术支持。优化落地线路、资源调度,使客户质量指标达到。
4、 检测短信通道的运行情况,远程重启短信平台服务器,激活短信通道。
5、 用mysql进行各种业务的数据统计分析。
任职资格:
1、 计算机或相关专业大专以上学历,1年以上系统运维或相关工作经验。
2、 熟练使用VOS系统、linux、mysql、shell等脚本命令。
3、 对公有云产品(阿里云)有一定的经验和了解。
4、 丰富的IT平台监控、系统运维经验。
5、 熟悉Mysql、oracle数据库以及redis编程者优先。
6、 熟悉Java/Shell/PHP/Python等一种语言者优先。
7、 有团队精神,具有钻研精神、具有较强的自主学习性。
8、 沟通能力强,有强烈的客户服务意识。
9、 具有较强的责任心,能够在一定压力下工作,积极主动、认真踏实、独立解决问题的能力。
Linux运维工程师的职责7
1. 负责持续集成/自动化运维平台搭建。
2. 产品上线部署与发布。
3. 对系统、WEB、数据库日志收集分析,发现潜在隐患。
4. 服务器日常监控及报警处理。
5. 突发情况应急预案、应急处理。
6. 阿里云相关产品应用。
7. Docker镜像制作,K8S环境搭建。
8. Nginx、MQ等中间件的搭建、配置、管理、优化和维护。
9. Centos、GitLab、MYSQL的安装、配置、管理和维护。
10. mysql安装、配置、排错、备份还原、性能优化及监控。
11. 其他监控软件搭建及应用。
Linux运维工程师的职责8
职责:
1、负责系统基础运维工作、云平台IT组件的日常维护。
2、与相关团队展开合作,确保系统的日常运行正常。
3、负责突发事件管理与跟踪,确保业务稳定运行等。
4、自我学习,主动提升技术水平。
任职要求:
1、本科以上学历,计算机相关专业,一年以上IT运维经验
2、精通Linux、Windows操作系统故障处理及使用
3、熟悉Shell/Python/Perl至少一种编程语言
4、熟悉网络基础知识TCP/IP、HTTP等网络协议
5、熟悉RAID原理,对存储设备有一定了解的优先
6、有较好的文字组织能力,能参与一定的文档编写的优先
Linux运维工程师的职责9
职责:
1、负责公司计算机、打印机等软硬件设备的配置、维护与管理,保障日常工作正常运行。
2、负责应用系统的部署,更新,优化等工作。
3、负责应用服务故障的排查与解决,编制和汇总故障处理经验。
4、负责应用系统的日常监控。编制和汇总服务器状态性能报告。
5、负责运维文档的编写与归纳。
任职要求
1、计算机相关专业本科及以上学历。
2、具备优秀的计算机软、硬件知识。并具备快速判断和解决故障的能力。
3、三年以上Linux系统管理、网络管理及应用跨平台部署等相关工作经验。
4、熟练掌握主流的Web应用软件的配置和优化,并且有自动化运维经验,能够编写日常运维脚本。
5、精通shell/perl/php/python中的一种或两种编程语言。
6、熟练掌握各类开源监控系统(nagios,cacti,zabbix,puppet)的安装和使用。
7、三年以上MySQL、mongodb、redis等数据库使用经验,精通sql语句。
8、能够独立分析问题、解决问题,具有较强的学习能力,有较强的责任心,善于团队交流与合作。
Linux运维工程师的职责10
职责:
1、负责Windows、Linux系统平台下的各服务应用部署,日常维护分析解决。
2、改进业务监控方式,辅助完成持续实现7*24全链路监控。
3、针对服务器出现紧急故障或时间,需及时响应并处理解决。
4、负责数据中心应用系统搭建、优化和日常维护,以及服务器操作系统、应用系统、数据库系统的维护和优化。
5、有进行过自动化,容器方面的独立操作。docker,k8s,jenkins的部署和操作经验丰富
6、按规范流程执行,并周期完善。
【岗位要求】
1、大专以上学历,计算机网络相关专业,二年以上相关工作经验。
2、具有良好的沟通能力、文档编写和文字表达能力、学习钻研能力、问题分析与解决能力。
3、熟悉Shell编程,熟练掌握其他Python 或 Perl其中一个。
4、熟悉消息队列、Zabbix、Jenkins、Redis、Docker、k8s、git等软件的配置管理及应用。
5、熟悉MySQL,Sqlserver 数据库安装、配置。
6、有运维自动化平台相关经验者优先。
7、细心、负责任、上进心、分享、协作,良好自我提升学习驱动意识态度。
Linux运维人员必会的120个命令
跟老男孩学Linux运维:核心系统命令实战
前言
第1章 Linux命令行简介 / 1
1.1Linux命令行概述 / 1
1.2在Linux命令行下查看命令帮助 / 4
1.3Linux shutdown reboot halt / 9
关机:
shutdown -h now
halt
init 0
第2章 文件和目录操作命令 / 13
2.1pwd:显示当前所在的位置 / 13
2.2cd:切换目录 / 16
2.3tree:以树形结构显示目录下的内容 / 18
2.4mkdir:创建目录 / 22
2.5touch:创建空文件或改变文件的时间戳属性 / 27
2.6ls:显示目录下的内容及相关属性信息 / 30
2.7cp:复制文件或目录 / 39
2.8mv:移动或重命名文件 / 42
2.9rm:删除文件或目录 / 45
2.10rmdir:删除空目录 / 48
2.11ln:硬链接与软链接 / 49
2.12readlink:查看符号链接文件的内容 / 54
2.13find:查找目录下的文件 / 55
2.14xargs:将标准输入转换成命令行参数 / 68
2.15rename:重命名文件 / 71
2.16basename:显示文件名或目录名 / 72
2.17dirname:显示文件或目录路径 / 72
2.18chattr:改变文件的扩展属性 / 73
2.19lsattr:查看文件扩展属性 / 75
2.20file:显示文件的类型 / 76
2.21md5sum:计算和校验文件的MD5值 / 77
2.22chown:改变文件或目录的用户和用户组 / 80
2.23chmod:改变文件或目录权限 / 81
2.24chgrp:更改文件用户组 / 85
2.25umask:显示或设置权限掩码 / 86
2.26老男孩从新手成为技术大牛的心法 / 90
第3章 文件过滤及内容编辑处理命令 / 91
3.1cat:合并文件或查看文件内容 / 91
3.2tac:反向显示文件内容 / 103
3.3more:分页显示文件内容 / 104
3.4less:分页显示文件内容 / 107
3.5head:显示文件内容头部 / 109
3.6tail:显示文件内容尾部 / 111
3.7tailf:跟踪日志文件 / 114
3.8cut:从文本中提取一段文字并输出 / 115
3.9split:分割文件 / 117
3.10paste:合并文件 / 118
3.11sort:文本排序 / 123
3.12join:按两个文件的相同字段合并 / 127
3.13uniq:去除重复行 / 129
3.14wc:统计文件的行数、单词数或字节数 / 131
3.15iconv:转换文件的编码格式 / 133
3.16dos2unix:将DOS格式文件转换成UNIX格式 / 134
3.17diff:比较两个文件的不同 / 135
3.18vimdiff:可视化比较工具 / 138
3.19rev:反向输出文件内容 / 139
3.20tr:替换或删除字符 / 140
3.21od:按不同进制显示文件 / 143
3.22tee:多重定向 / 145
3.23vi/vim:纯文本编辑器 / 147
3.24老男孩逆袭思想:做Linux运维的多个好处 / 152
第4章 文本处理三剑客 / 153
4.1grep:文本过滤工具 / 153
4.2sed:字符流编辑器 / 159
4.3awk基础入门 / 165
第5章 Linux信息显示与搜索文件命令 / 176
5.1uname:显示系统信息 / 176
5.2hostname:显示或设置系统的主机名 / 178
5.3dmesg:系统启动异常诊断 / 179
5.4stat:显示文件或文件系统状态 / 181
5.5du:统计磁盘空间使用情况 / 183
5.6date:显示与设置系统时间 / 186
5.7echo:显示一行文本 / 190
5.8watch:监视命令执行情况 / 193
5.9which:显示命令的全路径 / 195
5.10whereis:显示命令及其相关文件全路径 / 196
5.11locate:快速定位文件路径 / 197
5.12updatedb:更新mlocate数据库 / 199
5.13老男孩逆袭思想:新手在工作中如何问问题不会被鄙视 / 200
第6章 文件备份与压缩命令 / 201
6.1tar:打包备份 / 201
6.2gzip:压缩或解压文件 / 208
6.3zip:打包和压缩文件 / 211
6.4unzip:解压zip文件 / 212
6.5scp:远程文件复制 / 214
6.6rsync:文件同步工具 / 216
6.7老男孩逆袭思想:新手如何高效地提问 / 220
第7章 Linux用户管理及用户信息查询命令 / 222
7.1 useradd:创建用户 / 222
7.2usermod:修改用户信息 / 227
7.3userdel:删除用户 / 229
7.4groupadd:创建新的用户组 / 230
7.5groupdel:删除用户组 / 231
7.6passwd:修改用户密码 / 232
7.7chage:修改用户密码有效期 / 237
7.8chpasswd:批量更新用户密码 / 238
7.9su:切换用户 / 240
7.10visudo:编辑sudoers文件 / 242
7.11sudo:以另一个用户身份执行命令 / 244
7.12id:显示用户与用户组的信息 / 248
7.13w:显示已登录用户信息 / 249
7.14who:显示已登录用户信息 / 250
7.15users:显示已登录用户 / 252
7.16whoami:显示当前登录的用户名 / 253
7.17last:显示用户登录列表 / 253
7.18lastb:显示用户登录失败的记录 / 254
7.19lastlog:显示所有用户的最近登录记录 / 255
第8章 Linux磁盘与文件系统管理命令 / 257
8.1fdisk:磁盘分区工具 / 257
8.2partprobe:更新内核的硬盘分区表信息 / 265
8.3tune2fs:调整ext2/ext3/ext4文件系统参数 / 266
8.4parted:磁盘分区工具 / 268
8.5mkfs:创建Linux文件系统 / 272
8.6dumpe2fs:导出ext2/ext3/ext4文件系统信息 / 274
8.7resize2fs:调整ext2/ext3/ext4文件系统大小 / 275
8.8fsck:检查并修复Linux文件系统 / 278
8.9dd:转换或复制文件 / 281
8.10mount:挂载文件系统 / 284
8.11umount:卸载文件系统 / 288
8.12df:报告文件系统磁盘空间的使用情况 / 289
8.13mkswap:创建交换分区 / 293
8.14swapon:激活交换分区 / 294
8.15swapoff:关闭交换分区 / 295
8.16sync:刷新文件系统缓冲区 / 296
第9章 Linux进程管理命令 / 298
9.1ps:查看进程 / 298
9.2pstree:显示进程状态树 / 305
9.3pgrep:查找匹配条件的进程 / 306
9.4kill:终止进程 / 307
9.5killall:通过进程名终止进程 / 310
9.6pkill:通过进程名终止进程 / 311
9.7top:实时显示系统中各个进程的资源占用状况 / 313
9.8nice:调整程序运行时的优先级 / 320
9.9renice:调整运行中的进程的优先级 / 323
9.10nohup:用户退出系统进程继续工作 / 324
9.11strace:跟踪进程的系统调用 / 325
9.12ltrace:跟踪进程调用库函数 / 332
9.13runlevel:输出当前运行级别 / 334
9.14init:初始化Linux进程 / 335
9.15service:管理系统服务 / 335
第10章 Linux网络管理命令 / 338
10.1ifconfig:配置或显示网络接口信息 / 338
10.2ifup:激活网络接口 / 343
ifup eth0
10.3ifdown:禁用网络接口 / 343
ifdown eth0
service network restart(/etc/init.d/network restart) 激活整个网络,所有网卡。
10.4route:显示或管理路由表 / 344
10.5arp:管理系统的arp缓存 / 350
10.6ip:网络配置工具 / 351
10.7netstat:查看网络状态 / 358
10.8ss:查看网络状态 / 362
10.9ping:测试主机之间网络的连通性 / 363
10.10traceroute:追踪数据传输路由状况 / 366
10.11arping:发送arp请求 / 367
10.12telnet:远程登录主机 / 369
10.13nc:多功能网络工具 / 370
10.14ssh:安全地远程登录主机 / 373
10.15wget:命令行下载工具 / 376
10.16mailq:显示邮件传输队列 / 379
10.17mail:发送和接收邮件 / 381
10.18nslookup:域名查询工具 / 386
10.19dig:域名查询工具 / 389
10.20host:域名查询工具 / 393
10.21nmap:网络探测工具和安全/端口扫描器 / 394
10.22tcpdump:监听网络流量 / 398
第11章 Linux系统管理命令 / 407
11.1lsof:查看进程打开的文件 / 407
11.2uptime:显示系统的运行时间及负载 / 411
11.3free:查看系统内存信息 / 411
11.4iftop:动态显示网络接口流量信息 / 413
11.5vmstat:虚拟内存统计 / 415
11.6mpstat:CPU信息统计 / 419
11.7iostat:I/O信息统计 / 420
11.8iotop:动态显示磁盘I/O统计信息 / 423
11.9sar:收集系统信息 / 425
11.10chkconfig:管理开机服务 / 430
11.11ntsysv:管理开机服务 / 433
11.12 setup:系统管理工具 / 434
11.13ethtool:查询网卡参数 / 436
11.14mii-tool:管理网络接口的状态 / 437
11.19rpm:RPM包管理器 / 443
11.20yum:自动化RPM包管理工具 / 446
top命令
第12章 Linux系统常用内置命令 / 450
12.1Linux内置命令概述 / 450
12.2Linux内置命令简介 / 450
12.3Linux常用内置命令实例 / 452
Linux常用的命令可以分为以下几类:安装和登录命令、文件处理命令、系统管理相关命令、网络操作命令、系统安全相关命令、其它命令。
安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。
文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。
系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。
网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup。
系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。
其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
Linux简介
Linux,全称GNU/Linux,是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。伴随着互联网的发展,Linux得到了来自全世界软件爱好者、组织、公司的支持。
它除了在服务器方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该操作系统的实现机制,而且可以根据自身的需要来修改完善Linux,使其最大化地适应用户的需要。
Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux不仅仅是被网络运维人员当作服务器使用,甚至当作网络防火墙,这是Linux的一大亮点。
1) Linux运维岗位及工作内容
互联网Linux运维工程师是一个融合多学科(网络、系统、开发、数据库、安全、存储等)的综合性技术岗位,甚至还需要沟通、为人处世、培训、销售、管理等非技术能力,这给运维工程师提供了一个广阔的发展空间。
2) Linux运维工程师岗位职责
一般从企业入门到中级Linux运维工程师的工作大致有:挑选IDC机房及带宽、购买物理服务器或云服务、购买及使用CDN服务、搭建部署程序开发及用户的访问系统环境(例如:网站运行环境)、对数据进行备份及恢复、处理网站运行中的各种故障(例如:硬件故障、软件故障、服务故障、数据损坏及丢失等)、对网站的故障进行监控、解决网站运行的潜在安全问题、开发自动化脚本程序提高工作效率、规划网站架构、程序发布流程和规范,制定运维工作制度和规范、配合开发人员部署及调试产品研发需要的测试环境、代码发布等工作需求,公司如果较小可能还会兼职网管、网络工程师、数据库管理员、安全工程师、技术支持等职责。
涉及到的Linux平台上的运维工具有:Linux系统,Linux基础命令,Nginx,Apache,MySQL,PHP,Tomcat,Lvs,Keepalived,SSH,Ansible,Rsync,NFS,Inotify,Sersync,Drbd,PPTP,OpenVPN,NTP,Kickstart/Cobbler,KVM,OpenStack,Docker,,K8S,Mongodb,Redis,Memcached,Iptables,SVN,GIT,Jenkins,网络基础,Shell/Python开发基础等,除此之外还可能涉及到交换机、路由器、存储、安全、开发等知识。
运维工程师还包括一些低端的岗位,例如:网络管理员、监控运维、IDC运维,值班运维
职业发展方向:Linux运维工程师、系统架构师、数据库工程师、运维开发工程师、系统网络安全工程师、运维经理、运维总监
3) Linux中级运维工程师应用软件阶段。
Linux系统,Linux基础命令,Nginx,Apache,MySQL,PHP,Tomcat,Lvs,Keepalived,SSH,Ansible,Rsync,NFS,Inotify,Sersync,Drbd,PPTP,OpenVPN,NTP,Kickstart/Cobbler,KVM,OpenStack,Docker,Mongodb,Redis,Memcached,Iptables,SVN,GIT,Jenkins,网络基础,Shell/Python开发基础
4)Linux运维架构师岗位职责
运维架构师是运维工程师的高级阶段,并没有明确的岗位界限区分,运维架构师一般来说是除了对运维工程师应用的开源工具熟练掌握之外,更多的是用思想来运维了,即DevOps的落地,各种企业运行过程中的解决方案提出和执行,例如:根据公司的现状可以设计各类运维解决方案的能力:
1、自动化代码上线(SVN/GIT+Jenkins+MVN)解决方案;
2、云计算部署架构及Docker微服务架构方案;
3、服务自动化扩容方案(KVM/OpenStack/Docker+Ansible+Zabbix);
4、10万并发的网站架构、秒杀系统的架构及解决发你个案;
5、多IDC机房互联方案、全网数据备份解决方案、账号统一认证方案;
6、数据库、存储及各重要服务节点的集群和高可用方案。
7、各网络服务的极端优化方案、服务解耦/拆分。
8、运维流程、制度、规范等的建设和推行。
9、沟通能力、培训能力、项目管理、业务需求分析及落地执行力等。
这里仅举几个例子,实际工作中会有更多,运维架构师的工作,其实就是解决企业中的用户访问量不断增大带来的痛点,最终达到高效、优质的为客户提供网站及业务服务。
总的来说:Linux运维架构师更多的是根据企业日益增长的访问量需求,利用若干运维工具组合加上经验思想,形成解决业务需求方案的阶段,当然也不排除对运维工具进行二次开发以及可视化展示运维数据的阶段(开发软件平台),这个阶段涉及的工具会非常多,几乎市面好用的开源工具都在备选之列,在一线城市互联网公司的薪资范围15000-50000/月。
职业方向:高级数据库工程师、运维开发工程师、运维经理、运维总监、技术总监
运维架构师:将多个工具组合,加上思想经验,形成方案,用思想和经验赚钱的阶段。
技术的提升仅是量的积累,思想的提升才是质的飞跃!——老男孩
5)数据库运维工程师
众所周知,数据几乎是所有企业的生命线,所以数据库工程师的地位和薪水一般会比普通运维工程师高一些,主要工作内容就是保证数据库数据的安全以及高效地为用户提供各种服务。工作内容主要有:数据库环境搭建、数据库优化、数据库备份恢复、数据库集群高可用、数据库数据统计分析、数据库数据可视化展示等。
涉及到的工具从早期传统的Oracle、Sql Server,到当前互联网最火爆的MySQL,以及近年来崛起的NOSQL数据库Redis,Mongodb,Hbase, Cassandra等,对于高级数据库管理员、数据库架构师,还需要网络、系统、开发(Python)等的能力。
数据库工程师岗位细分:数据库运维工程师、数据库架构工程师、数据库开发工程师。数据库工程师需要有Linux运维工程师的基础,否则难以成才。
职业方向:运维开发工程师、数据库主管、运维经理、运维总监、技术总监
6) Python运维开发工程师
运维开发工程师是介于运维工程师和开发工程师之间的岗位,简单地说就是开发和运维工作相关的工具、软件以及让运维数据自动化、智能化、可视化的平台产品(例如:CMDB平台、跳板机平台、监控平台、自动化运维管理工具、可视化Web展示等)。
由于是开发运维相关的工具和产品,因此运维开发工程师既需要运维工程师的能力,也需要开发工程师的能力,运维开发涉及的语言最多的就是Shell、Python、Go、Perl、Php等语言,其中以前三者居多。
运维开发工程师一线城市互联网公司的薪资范围15000-50000/月。
职业方向:运维架构师、转开发方向、运维经理、运维总监、技术总监
7)运维经理/运维总监
运维经理和运维总监是运维岗位的管理岗,和其他的部门领导领导一样,该岗位不但需要运维工程师、运维架构师的能力,同时还需要善于沟通、懂得团队激励、有培训能力、说服力。
职业方向:CTO、CEO
特别说明下,运维总监岗位转换CTO或CEO岗位还是机会蛮大的(很多网友觉得很困难,但老男孩就是个成功的例子,身边也有多个成功的例子),但也不是随随便便就能转成的,需要运维总监有较高的认知和格局,特别是运维能力以外的知识和格局,例如:需要具备产品、销售、管理、财务、演讲、说服力等综合能力才行,这些都是需要此岗位的人要提前蓄积能力,如果只是本位主义,那确实转CTO、CEO成功的机会渺茫,这也是很多运维经理和总监困惑但又无法自我突破的地方。
8) Linux运维岗位前景
行业前景:
1、互联网、移动高速再持续高速发展,现在的繁荣场景仅仅是刚开始。
2、Linux的优秀特性作为互联网后台服务器系统无可替代。
3、上网用户量激增、网站等企业应用规模快速扩大,必然需要大量的运维人员,现在企业上网浏览网页,购物,以后企业要靠网络赚钱,因为靠网络赚钱,就不能轻易宕机了,据说携程宕机10个小时,损失1200万美金,这就是企业需要运维人员的原因,就算没工作也得有,起个保险的工作,有问题快速解决,当然不可能没有得干。
职位前景:
关键本质:是否有发展前景,是否工资高,关键是在于人,而不在于具体哪个方向。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流