店铺推荐
【推荐语】
1.本书语言通俗简练、易上手、实践性很强,特别适合初学者。可谓是学习Linux第一本书,甚至是小白和女友也能轻松学会的Linux入门书。

2.早在2011年,作者就已经在网上发表过《跟阿铭学Linux》的电子版教程,并于2013年出了第2版,市场反响很好,我们基于第2版电子版出版了《跟阿铭学Linux》一书。

3.第4版基于CentOS8改版,新增了Docker技术,购买图书即加入阿铭Linux圈子,共享人脉和资源

好书就像好酒,历久弥香。本书在传承精华的基础上及时将系统更新到CentOS 8, 更是

加了容器技术Docker。好书,你值得拥有。

--萧田国 DAOPS基金会中国区董事,高效运维社区发起人

学习Linux有两个主要条件:不懈的努力和一本通俗易懂的书。本书正是为初学者打造

的、从0到1学习Linux的好帮手,并且书中的很多案例可以即刻用于实际工作。作者阿铭拥有十多年的Linux运维经验,既是运维领城的老兵,也是Linux专家,值得信赖。打开本书,跟随作者开启你的Linux之旅吧!

-赵舜东 新运维社区发起人

Linux是在服务器领域使用非常广泛的操作系统,每个IT运维人员都无法绕开它。作名经验丰富,将Linux方方面面的知识点总结、提炼为本书。本书是一本非常棒的Linux指南,细读之后,必将受益良多!

一王津银 优维科技CEO
【作者】
李世明,阿铭Linux培训创办者,猿课联合创始人,从事互联网运维工作8年多,先后就职于Discuz、腾讯、好贷,从最基础的运维到高级运维工程师,再到运维部门负责人,运维过的网站从访问量十几万PV到上亿PV,经历过各种各样的突发事故,运维实战经验非常丰富。2011年编写的《跟阿铭学Linux》电子版入门教程,阅读量高达几十万,对初学者提供了莫大的帮助。近些年,在从事Linux运维培训工作中积累了丰富的教学经验,培训过的学生薪资大多在8000元以上。
【内容】
本书是一本入门级的Linux学习教材,内容由浅入深,案例丰富,通俗易懂!书中分两部分:前面为基础知识,涉及安装、登录、文件和目录管理、磁盘管理、Vim、压缩和解压缩等;后面为进阶知识,包括LAMP、LNMP、NFS、FTP、Linux集群和Zabbix监控等。与上一版相比,这版不仅将虚拟机软件由VMware 10改为VMware 14,基于CentOS 8进行了全面修订,删掉了LAMP环境搭建与配置,还增加了Docker等内容。
【目录】
第1章学习之初1
1.1Linux是什么1
1.1.1Linux的由来1
1.1.2Linux怎么读2
1.1.3常见Linux发行版2
1.1.4我们要学习哪个Linux发行版2
1.2Linux系统管理员要养成的习惯3
1.2.1要习惯使用命令行3
1.2.2操作要严谨4
1.2.3安全不可忽视4
1.3学习建议5
1.3.1稳中求进5
1.3.2善于总结文档5
1.3.3复习很关键5
1.3.4举一反三6
1.4课后习题6
第2章安装CentOS7
2.1安装虚拟机7
2.1.1下载虚拟机软件7
2.1.2安装虚拟机8
2.1.3新建一个虚拟机10
2.2安装Linux操作系统14
2.2.1下载CentOS镜像文件14
2.2.2设置虚拟光驱14
2.2.3安装CentOS16
2.3第一次亲密接触22
2.3.1初次使用命令行登录22
2.3.2设置网络22
2.3.3学会使用快捷键26
2.3.4学会查询帮助文档——man命令26
2.3.5Linux系统目录结构27
2.3.6如何正确关机、重启30
2.3.7忘记root密码怎么办30
2.3.8学会使用救援模式32
2.4课后习题35
第3章远程登录Linux系统36
3.1安装PuTTY36
3.1.1下载PuTTY36
3.1.2安装37
3.2远程登录37
3.2.1使用密码直接登录37
3.2.2使用密钥认证38
3.3两台Linux相互登录41
3.3.1克隆CentOS41
3.3.2使用密码登录42
3.3.3使用密钥登录43
3.4课后习题45
第4章Linux文件和目录管理46
4.1绝对路径和相对路径46
4.1.1命令cd46
4.1.2命令mkdir47
4.1.3命令rmdir48
4.1.4命令rm48
4.2环境变量PATH49
4.2.1命令cp50
4.2.2命令mv51
4.3几个与文档相关的命令52
4.3.1命令cat52
4.3.2命令tac53
4.3.3命令more53
4.3.4命令less53
4.3.5命令head53
4.3.6命令tail54
4.4文件的所有者和所属组54
4.5Linux文件属性55
4.6更改文件的权限56
4.6.1命令chgrp56
4.6.2命令chown57
4.6.3命令chmod57
4.6.4命令umask59
4.6.5修改文件的特殊属性60
4.7在Linux下搜索文件62
4.7.1用which命令查找可执行文件的绝对路径62
4.7.2用whereis命令查找文件62
4.7.3用locate命令查找文件63
4.7.4使用find搜索文件63
4.8Linux文件系统简介65
4.9Linux文件类型66
4.9.1常见文件类型66
4.9.2Linux文件后缀名66
4.9.3Linux的链接文件66
4.10课后习题68
第5章Linux系统用户与用户组管理70
5.1认识/etc/passwd和/etc/shadow70
5.1.1解说/etc/passwd71
5.1.2解说/etc/shadow71
5.2用户和用户组管理72
5.2.1新增组的命令groupadd72
5.2.2删除组的命令groupdel73
5.2.3增加用户的命令useradd73
5.2.4删除用户的命令userdel74
5.3用户密码管理74
5.3.1命令passwd74
5.3.2命令mkpasswd75
5.4用户身份切换75
5.4.1命令su76
5.4.2命令sudo76
5.4.3不允许root远程登录Linux78
5.5课后习题78
第6章Linux磁盘管理80
6.1查看磁盘或者目录的容量80
6.1.1命令df80
6.1.2命令du81
6.2磁盘的分区和格式化83
6.2.1增加虚拟磁盘83
6.2.2命令fdisk84
6.3格式化磁盘分区92
6.3.1命令mke2fs、mkfsext2、mkfsext3、mkfsext4和mkfsxfs92
6.3.2命令e2label95
6.4挂载/卸载磁盘95
6.4.1命令mount95
6.4.2/etc/fstab配置文件97
6.4.3命令blkid99
6.4.4命令umount100
6.5建立一个swap文件增加虚拟内存101
6.6课后习题101
第7章文本编辑工具Vim103
7.1Vim的3种常用模式103
7.1.1一般模式103
7.1.2编辑模式104
7.1.3命令模式105
7.2Vim实践105
7.3课后习题107
第8章文档的压缩与打包108
8.1gzip压缩工具108
8.2bzip2压缩工具109
8.3xz压缩工具109
8.4tar打包工具110
8.4.1打包的同时使用gzip压缩112
8.4.2打包的同时使用bzip2压缩112
8.5使用zip压缩113
8.6zcat、bzcat命令的使用114
8.7课后习题114
第9章安装RPM包或源码包115
9.1RPM工具115
9.1.1安装RPM包116
9.1.2升级RPM包116
9.1.3卸载RPM包116
9.1.4查询一个包是否已安装117
9.1.5得到一个已安装的RPM包的相关信息117
9.1.6列出一个RPM包的安装文件118
9.1.7列出某个文件属于哪个RPM包119
9.2yum工具119
9.2.1列出所有可用的RPM包119
9.2.2搜索RPM包120
9.2.3安装RPM包120
9.2.4卸载RPM包121
9.2.5升级RPM包122
9.2.6更改yum仓库为国内镜像站122
9.2.7利用yum工具下载RPM包123
9.3安装源码包124
9.3.1下载源码包124
9.3.2解压源码包124
9.3.3配置相关的选项并生成Makefile125
9.3.4进行编译126
9.3.5安装126
9.4课后习题127
第10章shell基础知识128
10.1什么是shell128
10.1.1记录命令历史128
10.1.2命令和文件名补全129
10.1.3别名129
10.1.4通配符130
10.1.5输入/输出重定向130
10.1.6管道符130
10.1.7作业控制131
10.2变量132
10.2.1命令env132
10.2.2命令set134
10.3系统环境变量与个人环境变量的配置文件137
10.4Linuxshell中的特殊符号137
10.41*代表零个或多个任意字符137
10.4.2?只代表一个任意的字符137
10.4.3注释符号#138
10.4.4脱义字符\138
10.4.5再说管道符|138
10.4.6特殊符号$142
10.4.7特殊符号;142
10.4.8特殊符号~143
10.4.9特殊符号&143
10.4.10重定向符号>、>>、2>和2>>143
10.4.11中括号[]143
10.4.12特殊符号&&和||144
10.5课后习题144
第11章正则表达式146
11.1grep/egrep工具的使用146
11.1.1过滤出带有某个关键词的行,并输出行号147
11.1.2过滤出不带有某个关键词的行,并输出行号147
11.1.3过滤出所有包含数字的行148
11.1.4过滤出所有不包含数字的行148
11.1.5过滤掉所有以#开头的行148
11.1.6过滤出任意一个字符和重复字符149
11.1.7指定要过滤出的字符出现次数150
11.1.8过滤出一个或多个指定的字符150
11.1.9过滤出零个或一个指定的字符151
11.1.10过滤出字符串1或者字符串2151
11.1.11egrep中()的应用151
11.2sed工具的使用152
11.2.1打印某行152
11.2.2打印包含某个字符串的行152
11.2.3删除某些行153
11.2.4替换字符或者字符串153
11.2.5调换两个字符串的位置154
11.2.6直接修改文件的内容155
11.2.7sed练习题155
11.3awk工具的使用156
11.3.1截取文档中的某个段157
11.3.2匹配字符或者字符串157
11.3.3条件操作符158
11.3.4awk的内置变量159
11.3.5awk中的数学运算160
11.3.6awk练习题161
11,4课后习题162
第12章shell脚本163
12.1什么是shell脚本163
12.1.1shell脚本的创建和执行164
12.1.2命令date165
12.2shell脚本中的变量165
12.2.1数学运算166
12.2.2和用户交互166
12.2.3shell脚本预设变量167
12.3shell脚本中的逻辑判断168
12.3.1不带else168
12.3.2带有else168
12.3.3带有elif169
12.3.4和文件相关的判断170
12.3.5case逻辑判断171
12.4shell脚本中的循环172
12.4.1for循环172
12.4.2while循环173
12.5shell脚本中的函数173
12.6shell脚本中的中断和继续174
12.6.1break174
12.6.2continue175
12.6.3exit175
12.7shell脚本练习题176
12.8课后习题178
第13章Linux系统管理技巧179
13.1监控系统的状态179
13.1.1使用w命令查看当前系统的负载179
13.1.2用vmstat命令监控系统的状态182
13.1.3用top命令显示进程所占的系统资源183
13.1.4用sar命令监控系统状态184
13.1.5用nload命令查看网卡流量186
13.1.6用free命令查看内存使用状况186
13.1.7用ps命令查看系统进程187
13.1.8用netstat命令查看网络状况189
13.2抓包工具191
13.2.1tcpdump工具191
13.2.2wireshark工具192
13.3Linux网络相关192
13.3.1用ifconfig命令查看网卡IP193
13.3.2给一个网卡设定多个IP193
13.3.3查看网卡连接状态194
13.3.4更改主机名195
13.3.5设置DNS195
13.4Linux的防火墙196
13.4.1SELinux196
13.4.2netfilter197
13.4.3firewalld204
13.5Linux系统的任务计划210
13.5.1命令crontab210
13.5.2cron练习题211
13.6Linux系统服务管理212
13.6.1chkconfig服务管理工具212
13.6.2systemd服务管理213
13.7Linux下的数据备份工具rsync216
13.7.1rsync的命令格式217
13.7.2rsync常用选项217
13.7.3rsync应用实例222
13.8Linux系统日志227
13.8.1/var/log/messages228
13.8.2dmesg229
13.8.3安全日志229
13.9xargs与exec230
13.9.1xargs应用230
13.9.2exec应用230
13.10screen工具介绍231
13.10.1使用nohup231
13.10.2screen工具的使用231
13.11课后习题232
第14章LNMP环境配置234
14.1安装MySQL234
14.1.1下载软件包234
14.1.2初始化235
14.1.3MySQL配置文件236
14.2安装PHP236
14.3安装Nginx239
14.4Nginx配置242
14.4.1默认虚拟主机242
14.4.2用户认证244
14.4.3域名或链接重定向245
14.4.4Nginx的访问日志247
14.4.5配置静态文件不记录日志并添加过期时间248
14.4.6Nginx防盗链250
14.4.7访问控制251
14.4.8Nignx解析PHP253
14.4.9Nginx代理253
14.4.10Nignx配置SSL257
14.5php-fpm配置261
14.5.1php-fpm的pool261
14.5.2php-fpm的慢执行日志262
14.5.3php-fpm定义open_basedir263
14.5.4php-fpm进程管理263
14.6课后习题264
第15章常用MySQL操作265
15.1更改MySQL数据库root的密码265
15.2连接数据库268
15.3MySQL基本操作的常用命令268
15.3.1查询当前库268
15.3.2查询某个库的表269
15.3.3查看某个表的全部字段270
15.3.4查看当前是哪个用户271
15.3.5查看当前所使用的数据库271
15.3.6创建一个新库272
15.3.7创建一个新表272
15.3.8查看当前数据库的版本272
15.3.9查看MySQL的当前状态272
15.3.10查看MySQL的参数273
15.3.11修改MySQL的参数273
15.3.12查看当前MySQL服务器的队列273
15.3.13创建一个普通用户并授权274
15.4常用的SQL语句274
15.4.1查询语句274
15.4.2插入一行275
15.4.3更改表的某一行275
15.4.4清空某个表的数据275
15.4.5删除表276
15.4.6删除数据库276
15.5MySQL数据库的备份与恢复276
15.5.1MySQL备份276
15.5.2MySQL的恢复276
15.6课后习题276
第16章NFS服务配置278
16.1服务端配置NFS278
16.2客户端挂载NFS279
16.3命令exportfs280
16.4课后习题281
第17章配置FTP服务282
17.1使用vsftpd搭建FTP服务282
17.1.1安装vsftpd282
17.1.2建立账号282
17.1.3创建和用户对应的配置文件283
17.1.4修改全局配置文件/etc/vsftpd/vsftpdconf284
17.2安装配置pure-ftpd284
17.2.1安装pure-ftpd284
17.2.2配置pure-ftpd285
17.2.3建立账号285
17.2.4测试pure-ftpd286
17.3课后习题286
第18章配置Tomcat287
18.1安装Tomcat287
18.1.1安装JDK287
18.1.2安装Tomcat288
18.2配置Tomcat290
18.2.1配置Tomcat服务的访问端口290
18.2.2Tomca的虚拟主机290
18.3测试Tomcat解析JSP292
18.4Tomcat日志293
18.5Tomcat连接MySQL293
第19章MySQLReplication配置296
19.1配置MySQL服务296
19.2配置Replication297
19.2.1设置master(主)298
19.2.2设置slave(从)299
19.3测试主从300
19.4课后习题301
第20章Linux集群302
20.1搭建高可用集群302
20.1.1keepalived的工作原理303
20.1.2安装keepalived303
20.1.3keepalived+Nginx实现Web高可用303
20.2搭建负载均衡集群309
20.2.1介绍LVS309
20.2.2LVS的调度算法313
20.2.3使用keepalived+LVSDR模式实现负载均衡315
20.2.4使用Nginx实现负载均衡317
20.3课后习题319
第21章配置监控服务器320
21.1Zabbix监控介绍320
21.1.1Zabbix组件321
21.1.2Zabbix架构321
21.2Zabbix监控安装和部署322
21.2.1用yum安装Zabbix322
21.2.2配置MySQL323
21.2.3配置Web界面324
21.2.4部署Zabbix客户端327
21.3Zabbix配置和使用328
21.3.1忘记Admin密码328
21.3.2添加主机328
21.3.3添加模板330
21.3.4主机链接模板332
21.3.5图形中的中文乱码332
21.3.6添加自定义监控项目333
21.3.7配置告警335
第22章Docker容器338
22.1在CentOS8上安装Docker338
22.1.1下载Docker338
22.1.2在CentOS8上安装Docker339
22.2Docker镜像340
22.3容器342
22.4创建镜像345
22.4.1通过容器创建镜像345
22.4.2使用模板创建镜像345
22.4.3使用Dockerfile创建镜像346
22.4.4Dockerfile实践349
22.5Docker私人仓库350
22.5.1部署harbor前的准备工作351
22.5.2部署harbor351
22.5.3使用harbor352
返回顶部