优秀是一种习惯
- 知识点01:回顾
- 知识点02:目标
- 知识点03:计算机组成结构
- 知识点04:Linux操作系统简介
- 知识点05:虚拟机使用需求及VM安装
- 知识点06:虚拟机构建及Linux系统安装
- 知识点07:远程工具及虚拟机连接测试
- 知识点08:Linux文件系统结构与命令规则
- 知识点09:文件管理:列举、切换、创建、删除
- 知识点10:文件管理:复制、剪切、打包压缩
- 知识点11:文件管理:下载、查找、查看
- 知识点12:用户管理及组管理
- 知识点13:权限管理
- 知识点14:系统管理:进程、服务
- 知识点15:系统管理:网络、资源、关机重启
- 知识点16:特殊符号及链接命令
知识点01:回顾
-
Java
- 原因
- 大数据的大多数软件都是Java源码写的
- 数据处理的本质就是开发程序对数据进行处理
- step1:读取数据:文件、数据库
- step2:处理数据
- step3:输出结果
- 核心
- IO流、JDBC/API、集合
- 调用集合的方法/函数:Java中的工具类:字符串、日期、JSON、Office[Excel]
- 字符串:substring/trim/replaceAll/+
- 日期
- 转换
- 标准日期格式:yyyy-MM-dd HH:mm:ss:取时间的
- 时间戳:Long类型的ms数:时间计算的
- 取值
- 转换
- IO流、JDBC/API
- 提升:多进程多线程、JVM【垃圾回收、GC算法】
- 原因
-
MySQL
-
原因
- RDBMS:存储数据 + SQL
- 存储数据
- SQL:实现数据的处理
- 以后开发的工作:60%以上都是写SQL
-
核心
-
基本SQL语法
select 1 from 2 where 3 group by 4 having 5 order by 6 limit 7
- 1-结果中的列,列的过滤
- 2-数据源:表、视图、Join、子查询
- 3-对行的过滤:分组前
- 4-分组,搭配聚合:每个、每、不同、各个
- 5-对行的过滤:分组后
- 6-排序
- 7-限制输出
-
函数
- 字符串函数
- 日期函数
- 窗口函数
- 判断:if / case when
-
提升:视图、触发器、binlog、存储过程
-
-
知识点02:目标
-
Linux整体目标
-
大数据本质:利用大数据软件对大量的数据进行处理,获取数据价值
-
原因:使用大数据软件都部署在Linux操作系统中
-
使用:安装软件,使用软件【启动、关闭、操作】
-
核心
- Linux中的基本管理:文件管理和用户管理、系统管理
- Shell脚本:自动化
-
-
今日目标
- Linux环境构建:计算机构成、Linux、VM、系统**【了解实现即可】**
- 文件管理 【重点】:增删改查
- 用户管理和权限管理 【重点】:创建用户,修改密码、删除用户
- 系统管理 【掌握】:网络、服务……
- 特殊命令 【掌握】:特殊命令
-
学习建议
-
多练习:多练习才能掌握
-
提高解决问题的能力:多问问题
-
找到错误
-
明显的报错:语法异常
-
NullPointEception:空指针
-
ArrayOutOfIndex:数组越界
-
OutOfMemoy:OOM,内存溢出
-
CastException:转换异常
-
ClassNotFound:找不到类
-
-
不明显:结果不对
-
-
分析记录错误:现象、原因、分析过程
-
建议
- 遇到问题:找到问题,百度
- 自己尝试解决:超过5分钟还没搞定
- 可以问老师:自己记录这个问题
- 注意:带图提问
- 遇到问题:找到问题,百度
-
-
学习过程
- 技术点:代码、命令
- 练习
- 理论点:理解
- 问,查资料
- step1:学习基础的理论和使用
- 功能:它能解决什么问题
- 特点:同类型的工具为什么用这个
- 应用:什么时候需要用这个
- 设计思想
- 基本使用
- step2:学习企业中的应用
- 核心设计理论
- 工作中的使用方式
- step3:问题和优化
- 工作中遇到的问题
- 怎么优化
- 技术点:代码、命令
-
知识点03:计算机组成结构
-
目标:了解计算机的基本组成结构
- 一台计算机由几部分组成?
-
路径
- step1:计算机中的硬件
- step2:操作系统
- step3:计算机中的软件
-
实施
- 计算机中的硬件
- CPU:负责运算
- 内存:负责缓存数据,容量小,易丢失,速度快
- 磁盘:负责持久化数据存储,容量大,相对安全,相对速度慢
- 显卡
- ……
- 所有硬件只能0和1
- 操作系统
- 功能:为了让用户能以人类的思想操作硬件
- 组成
- 内核:用于将用户的操作翻译给硬件听
- 驱动
- 文件系统:管理数据
- Shell:用于将用户的操作翻译给内核
- 用户软件:用于满足用户不同的需求分类
- 计算机硬件 =》 内核 =》 Shell =》 用户
- 计算机中的软件
- 用于用户实现不同的操作需求
- 软件必须基于操作系统
- 计算机中的硬件
-
小结
-
一台计算机由几部分组成?
-
硬件:最终实现
-
操作系统:翻译和管理
-
软件:实现用户交互
-
知识点04:Linux操作系统简介
-
目标:了解Linux系统的应用及发型版本
- 什么是Linux操作系统?
- 常见的Linux系统有哪些?
-
路径
- step1:市场上常见的操作系统
- step2:Linux系统的诞生及特点
- step3:常见的Linux发型版本
-
实施
- 市场上常见的操作系统
- 个人:PC
- Windows、 MAC OS
- 企业:服务器
- Windows Server
- Unix
- Linux
- 个人:PC
- Linux系统的诞生及特点
- 定义:基于网络型得到操作系统
- 特点
- 网络数据传输时性能特别好
- Linux是一个基于文件系统的操作系统:Linux一切皆文件
- 应用:高性能和稳定的数据传输
- 开源:Linux内核
- 常见的Linux发型版本
- RedHat:商业化版本的Linux
- Centos:社区版本,免费的
- Suse linux
- Ubuntu
- ……
- RedHat:商业化版本的Linux
- 市场上常见的操作系统
-
小结
-
什么是Linux操作系统?
-
定义:Linux是一个基于网络类型操作系统
-
特点
- 高性能的网络传输
-
-
常见的Linux系统有哪些?
- RedHat
- Suse
- Ubuntu
-
知识点05:虚拟机使用需求及VM安装
-
目标:掌握大数据学习的虚拟机使用需求及实现VM的安装部署
- 为什么要使用虚拟机?
- 如何实现VM的安装部署?
-
路径
- step1:虚拟机使用需求
- step2:安装VM workstation
-
实施
-
虚拟机使用需求
- 大数据需要构建分布式Linux集群:多台Linux机器
- 学习阶段:只有一台笔记本
- 解决方案:虚拟化
- 将硬件进行虚拟,构建统一的资源,在虚拟化平台中创建机器
- 虚拟化工具:VM WorkStation
-
安装VM workstation
-
版本:尽量保持一致:15.5及以上版本
-
安装:参考《01_安装VMware虚拟机.doc》
-
重装:如果虚拟机正常使用,没有问题,不必重装
-
重装的场景:不能用的情况下
-
step1:先从控制面板卸载
-
step2:用CCleaner清理注册表,重启
-
step3:重装VM15
-
-
-
-
小结
- 为什么要使用虚拟机?
- 为了构建分布式集群,构建多台Linux
- 如何实现VM的安装部署?
- 自己参考文档进行安装即可
- 为什么要使用虚拟机?
知识点06:虚拟机构建及Linux系统安装
-
目标:实现基于VM的虚拟机的构建及Linux系统安装
- VM中如何构建一台虚拟机?
- 如何给虚拟机安装Linux操作系统?
-
路径
- step1:创建虚拟硬件
- step2:安装Linux操作系统
-
实施
-
创建虚拟硬件
-
删除之前基础班的虚拟机
-
创建一台新的机器的硬件
-
-
- 安装Centos 7
-
小结
- 安装步骤一步步安装即可
知识点07:远程工具及虚拟机连接测试
-
目标:实现远程工具连接虚拟机及命令测试
- 工作场景中如何连接服务器?
- 常用的远程工具有哪些?
- 如何实现连接虚拟机?
-
路径
- step1:工作中使用Linux的场景
- step2:常用的远程连接工具
- step3:远程连接测试
-
实施
-
工作中使用Linux的场景
- 工作中不论服务器是云服务器或者是实体服务器
- 都是通过远程连接
- 云服务器:给你一个公网地址和内网地址
- 用户名和密码
- 通过公网地址登陆访问
- 自己的实体服务器:内网地址
- 用户名和密码
- 通过内网地址进行访问
- 云服务器:给你一个公网地址和内网地址
-
常用的远程连接工具
- Xmanager:功能比较多,收费
- SecureCRT/SecureFX:收费,界面简洁
- Final shell:中文,友好性不是特别好
-
远程连接测试
-
-
小结
- 工作场景中如何连接服务器?
- 远程连接实现
- 常用的远程工具有哪些?
- Xmanager
- SecureCRT
- Final shell
- Iterm2 (mac os)
- 如何实现连接虚拟机?
- IP或者机器名称
- 在安装过程中有显示或者通过ifconfig命令查看ip
- 用户名
- 密码
- IP或者机器名称
- 工作场景中如何连接服务器?
知识点08:Linux文件系统结构与命令规则
-
目标:掌握Linux文件系统结构及命令使用规则
- Linux文件系统是什么样的结构?
- Linux中的命令是如何使用的
-
路径
- step1:Linux文件系统结构
- step2:Linux命令语法规则
-
实施
- Linux文件系统结构
- 结构:Linux文件系统是一个树形结构
- 第一层:/
- 第二层:系统自带的目录
- bin:普通命令,所有用户都可以使用的命令
- sbin:管理命令,只有管理员才能执行的命令
- etc:配置目录,存储配置文件
- etc
- conf
- home:用于存放普通用户的家目录,每个普通用户都会在这个目录下生成一个同名的目录
- 用户:itcast
- 目录:/home/itcast
- root:管理员的家目录
- lib:存储依赖库
- opt:可选的,一般用于存放一些可选性的内容
- proc:用于记录系统正在运行的信息
- usr:用户共享目录,安装软件的目录
- var:Linux日志存储目录
- tmp:临时目录,存储临时数据
-
Linux命令语法规则
-
语法
命令 [选项] [参数]
-
查看一个命令的使用文档
- man:查看一个命令的用法
- 语法:man command
-
-
小结
- Linux文件系统是什么样的结构?
- 树形结构
- 第一级目录:/
- 第二级目录
- bin
- etc
- usr
- home
- root
- Linux中的命令是如何使用的
- 语法:命令 [选项] [参数]
- Linux文件系统是什么样的结构?
知识点09:文件管理:列举、切换、创建、删除
-
目标:掌握Linux中文件的列举、切换、创建及删除命令的使用
- 如何实现对Linux中文件的列举、切换、创建及删除?
-
路径
- step1:列举命令:ls
- step2:切换命令:cd
- step3:创建命令:touch、mkdir
- step4:删除命令:rm
-
实施
-
列举命令:ls
-
功能:list,列举某个目录下的内容
-
语法
ls [-ladh] [dirPath]
- 选项
- l:显示详细的信息,一般不写ls -l ,直接使用ll
- a:显示所有文件,包含隐藏文件
- d:自己本身
- h:人性化的显示
- 参数:要列举的路径
- 如果不指定,默认为当前路径
- 选项
-
测试
ls -h / ls -l / ls -a / ls -alh / ls -d /
-
-
切换命令:cd
-
功能:change directory ,实现路径的切换
-
语法
cd 路径
-
测试
cd /var/log/
-
-
查看路径:pwd
-
功能:print work directory,打印当前所在的路径
-
语法
pwd
-
测试
-
-
-
创建命令:touch、mkdir
-
功能
- touch:创建文件
- mkdir:创建目录
-
语法
-
touch
touch file1 file2 fiile3……
-
mkdir
mkdir [-p] dirPath
- p:表示递归
-
-
测试
- 后缀名只用于标记文件类型,不影响文件的类型
-
-
删除命令:rm
-
功能:remove,删除文件或者目录
-
语法
rm -rf 文件或者目录
- r:递归,删除目录必须递归
- f:免确认删除
-
测试
-
-
小结
- 如何实现对Linux中文件的列举、切换、创建及删除?
- 列举:ls,alhd
- 切换:cd
- 查看:pwd
- 创建:touch/mkdir [-p]
- 删除:rm -rf
- 如何实现对Linux中文件的列举、切换、创建及删除?
知识点10:文件管理:复制、剪切、打包压缩
-
目标:掌握Linux中文件的复制、剪切、压缩及打包命令的使用
- 如何实现对Linux中文件的复制、剪切、压缩及打包?
-
路径
- step1:复制命令:cp
- step2:剪切命令:mv
- step3:压缩命令:gzip 、gunzip
- step4:打包命令:tar
-
实施
-
复制命令:cp
-
功能:copy,实现对数据文件或者目录的复制
-
语法
cp [-r] 要拷贝谁…… 拷贝到哪去
- r:递归,用于拷贝目录
-
测试
-
问题1:拷贝除了这种写法,能不能有另外一种写法
cp -r /root/test01 /root/test02 cp -r test01 test03
- 绝对路径与相对路径?
- 绝对路径:从/开始进行逐级访问
- 相对路径:相对当前路径进行操作
-
问题2:拷贝时候,如何看这个命令是否做了名称的修改?
-
Linux会自动判断,如果拷贝的目标不存在,就是做了重命名,如果已存在,就是放到目标下面去
-
如果要重命名,在目标的最后不加/
-
如果不要重命名,在目标的后面加上/
-
-
-
剪切命令:mv
-
功能:move,实现文件或者目录的剪切或者重命名
-
语法
mv 你要移动谁 你要移动到哪
-
测试
-
-
-
压缩命令
-
功能:压缩和解压
- gz:gzip 、gunzip
- 后缀:.gz
- zip:zip、unzip
- 后缀:.zip
- bzip2:bzip2、bunzip2
- 后缀:.bz2
- gz:gzip 、gunzip
-
语法
gzip FilePath gunzip xxxx.gz
-
特点
- 不能压缩文件夹
- 不能满足实际的工作需求
-
-
打包命令:tar
-
功能:打包和解包,集成了压缩方案
- 打包:将多个文件合并为一个文件
- .tar
- 解决:将一个打包的文件解包成多个文件
- 打包:将多个文件合并为一个文件
-
语法
-
打包并压缩
tar -zcvf 打包并压缩以后的文件名和路径 你要打包谁
-
解压并解包
tar -zxvf 你要解压并解包的文件路径 -C 你要解压到什么位置
-
z:gzip格式
- 文件的后缀:.tar.gz / .tgz
-
j:bzip2格式
- 文件的后缀:.tar.bz2
-
c:打包
-
x:解包
-
t:查看
- cxt在一个命令中只能出现一个
-
v:显示具体的过程
-
f:档名,后面跟压缩的文件
-
-C:指定解压的路径
-
-
测试
-
-
小结
- 如何实现对Linux中文件的复制、剪切、压缩及打包?
- 复制:cp [-r]
- 剪切:mv
- 压缩格式:gzip
- 压缩:tar -zcvf
- 解压:tar -zxvf xxx.tar.gz -C
- 如何实现对Linux中文件的复制、剪切、压缩及打包?
知识点11:文件管理:下载、查找、查看
-
目标:掌握Linux中如何实现文件的下载及查看
-
Linux中怎么下载文件以及怎么查找文件和查看内容?
-
路径
- step1:下载命令:wget
- step2:查找命令:find
- step3:查看命令:cat、more、less、head、tail
-
实施
-
下载命令:wget
-
功能:用于实现通过网络进行文件下载
-
语法
wget 下载的连接地址
-
测试
-
-
wget http://download.redis.io/releases/redis-4.0.2.tar.gz
-
查找命令:find
-
功能:查找文件的命令
-
语法
find 你要查找的路径 查找的条件
- 查找的条件
- 文件名称:-name ‘文件的名称’
- 文件大小:-size
- +:大于
- -:小于
- 文件类型:-type
- 条件关系
- -a:and,表示并列条件
- -o:or,表示或者条件
-
测试
-
-
查看命令:cat、more、less、head、tail
-
功能
- cat:一次性查看整个文件的所有内容,一般用于查看小文件
-
more:分页查看,按空格下一页,如果结束,自动退出,只能向下,不能向上
- less:分页查看,按空格下一页,不会自动退出,需要手动按q退出,支持向上翻页
- head:查看文件的头部
- tail:查看文件的尾部
-
语法
-
cat 文件路径
more 文件路径
less 文件路径
head [-n] N 文件路径,查看文件的前N行,默认N为10
tail [-n|f] 文件路径,查看文件的后N行 | 或者动态查看文件的尾部,N默认为10
-
tail -f:用于动态的监听一个文件的尾部
- 测试
-
小结
- Linux中怎么下载文件以及怎么查找文件和查看内容?
- 下载:wget url
- 查找:find 范围 条件
- 查看
- cat:看小文件
- more:分页查看
- less:分页查看
- head:查看头部
- tail:查看尾部
- -f:动态监听文件的尾部
- Linux中怎么下载文件以及怎么查找文件和查看内容?
知识点12:用户管理及组管理
-
目标:掌握Linux用户管理及组管理命令
- Linux中如何实现添加用户、删除用户、添加组和删除组?
-
路径
- step1:用户管理
- step2:组管理
-
实施
-
用户和组的设计
- Linux是一个多用户的操作系统:允许多个不同的用户同时登陆同一台机器
- 组的设计:对用户的分类,可以基于组来划分权限
-
用户管理
-
添加用户:useradd
useradd 用户名
-
设置密码:passwd
passwd 用户名
-
切换用户:su
su - 用户名 exit:退出当前的登录
-
-
如果在root下 在进行退出 会断开连接,如果su 进入普通用户 退出 会返回root管理员权限
- 删除用户:userdel
```
userdel -r 用户名
```
-r 删除 /home/username 文件
不加r /home/下还会有用户文件
-
组管理
-
添加组:groupadd
groupadd 组的名称
-
删除组:groupdel
groupdel 组的名称
-
-
小结
- Linux中如何实现添加用户、删除用户、添加组和删除组?
- 添加用户:useradd
- 修改密码:passwd
- 切换:su - username
- 退出:exit
- 删除用户:userdel
- 添加组:groupadd
- 删除组:groupdel
- Linux中如何实现添加用户、删除用户、添加组和删除组?
知识点13:权限管理
-
目标:掌握Linux中用户的权限管理
- 如何控制不同的人访问不同的文件,互不干扰?
-
路径
- step1:文件的权限分类
- step2:文件的用户分类
- step3:修改权限
-
实施
-
文件的权限分类
-
任何一个文件都有基础的三种权限
-
字母表示
- r:可读权限
- w:可写权限
- x:可执行权限
- -:没有权限
-
数字
- 4:可读权限
- 2:可写权限
- 1:可执行权限
-
查看:通过ll来看这个文件的权限
- rw- rw- r-- 文件类型 所有者权限 同组用户的权限 其他人的权限
-
-
文件的用户分类
-
任何一个文件的权限为都由三类人的权限表示,共9位
-
u:所有者
-
g:同组用户
-
o:其他人
-
a:所有人
-
-
修改权限
-
chmod:修改权限的
-
语法
#所有者添加可执行权限 chmod u+x /file01.txt #同组用户可写,其他人可执行 chmod g+w,o+x /file01.txt #用三位8进制来修改 chmod 777 /file01.txt
- +:添加权限
- -:删除权限
-
-
chown:修改所有者
-
语法
chown username:groupname 文件或者目录
-
-
选项:-R,递归,对目录所有文件执行
-
-
-
小结
- 如何控制不同的人访问不同的文件,互不干扰?
- 权限划分
- r:读
- w:写
- x:执行【Linux中的脚本】
- 用户划分
- u:所有者
- g:同组用户
- o:其他人
- 修改权限:chmod
知识点14:系统管理:进程、服务
-
目标:掌握Linux中的进程管理及服务管理命令
- Linux中怎么查看、关闭进程?
- Linux中怎么管理服务的启动、关闭、重启以及设置开启自启动?
-
路径
- step1:进程管理
- step2:服务管理
-
实施
-
进程管理
-
查看进程:ps、jps
ps -ef ps -ef | grep ssh #一般搭配关键字进行过滤 jps #专门用于查看Java进程,属于JDK中的命令
-
关闭进程:kill
kill -9 pid
-
进程监控:top
-
一般用于监控当前某个进程使用的资源
-
按q退出
-
-
-
服务管理:systemctl
-
启动服务
systemctl start 服务的名称
-
关闭服务
systemctl stop 服务的名称
-
重启服务
systemctl restart 服务的名称
-
查看状态
systemctl status 服务的名称
-
设置开机自启
systemctl enable 服务的名称
-
关闭开机自启
systemctl disable 服务的名称
-
-
-
小结
-
Linux中怎么查看、关闭进程?
- 查看
- ps:所有进程
- jps:Java进程
- 强制关闭:kill -9 pid
- 监控:top
- 查看
-
Linux中怎么管理服务的启动、关闭、重启以及设置开启自启动?
systemctl start|stop|stauts|restart|disable|enable 服务的名称
-
知识点15:系统管理:网络、资源、关机重启
- 目标:掌握Linux中网络、资源、及电源管理
- Linux中怎么查看网络信息?
- Linux中怎么查看内存和磁盘信息?
- Linux中怎么关机和重启?
- 路径
- step1:网络管理
- step2:资源管理
- step3:电源管理
- 实施
-
网络管理
-
查看网络:ifconfig / ip addr /ip a
-
查看端口:netstat
netstat -atunlp | grep 端口
-
-
- 测试网络:ping
```
ping IP或者机器名称
```
- 强制终止前端运行程序:Ctrl + c
-
资源管理
-
查看内存:free
free -m
-
查看磁盘:df
df -h
-
-
电源管理
-
关机:shutdown / poweroff
shutdown -h now poweroff halt //只关机不关电源
-
重启:reboot
reboot
-
-
小结
- Linux中怎么查看网络信息?
- 查看网络信息:ifconfig
- 端口信息:netstat -atunlp
- 测试连接:ping
- Linux中怎么查看内存和磁盘信息?
- 内存:free -m
- 磁盘:df -h
- Linux中怎么关机和重启?
- 关机:shuttdown -h now / poweroff
- 重启:reboot
- Linux中怎么查看网络信息?
知识点16:特殊符号及链接命令
-
目标:了解Linux中常见的符号命令及链接命令
- 常用的符号命令有哪些?
- 如何构建链接?
-
路径
- step1:常用符号命令
- step2:链接命令
-
实施
-
常用符号命令
| :管道符号,用于实现数据传递的 ps -ef | grep ssh :将ps -ef的结果通过管道传递给了grep
~ :表示当前用户的家目录 [itcast@node1 /]$ cd ~ [itcast@node1 ~]$ pwd /home/itcast [itcast@node1 ~]$
输出重定向符号 > :覆盖 >> :追加 Linux中默认StdIn和StdOut都是命令行 [itcast@node1 ~]$ echo "hehe" hehe [itcast@node1 ~]$ echo "hehe" > hehe.txt [itcast@node1 ~]$ cat hehe.txt hehe [itcast@node1 ~]$ echo "hehe" > hehe.txt [itcast@node1 ~]$ cat hehe.txt hehe [itcast@node1 ~]$ echo "hehe" >> hehe.txt [itcast@node1 ~]$ cat hehe.txt hehe hehe [itcast@node1 ~]$
` :飘号,执行符号
. :当前路径 .. :上一级路径
\ :命令换行符,用于命令太长,一行写不完 cat \ > /etc/passwd
-
链接命令:ln
-
语法:建立软连接,类似于Windows的快捷方法
ln -s 你为谁创建连接 你要创建的连接文件名称
-
-
- 小结
-
常用的符号命令有哪些?
|:实现数据传递 ~:当前用户的家目录 >:输出重定向,覆盖 >>:输出重定向,追加 .:当前目录 ..:上一级目录 `:执行符号 \:命令换行符,表示命令没有结束
-
如何构建链接?
ln -s 你要为谁构建 连接的地址
-
更多推荐
Day01:Linux进阶(一)
发布评论