环境准备:
1、Redhat 7.4 64位
2、JDK 1.8 64位
3、VMware12
4、Putty 远程登录命令工具(命令行)
第一章
一、Linux的实验环境
1、在虚拟机中安装Linux
重点: (1)选择网卡的类型
选择“仅主机模式”:注意一个问题:设置虚拟机的IP地址的时候
对应一个主机虚拟的网卡:vmnet1---->对应IP:192.168.160.1(这个是我自己机器上的),而且要把IP设置为静态的不要自动获取
(2)选择:Development Tools ---->自带了gcc编译器 ----->安装Redis
Server with GUI
(3)设置虚拟机的网卡
介质:fhel-server-7.4-x86_64-dvd.iso
安装RedHatLinux7
二、配置Linux和Linux的目录结构
清屏快捷键:ctrl + L
1、Linux 的体系结构(操作系统体系结构)
2、Linux和UNIX
3、关闭防火墙(目的是因为:防火墙的存在可能会造成一些端口的访问拦截,所以学习期间为了方便先把防火墙关闭掉,在正真的环境中可以增加一些访问的端口来增加信任而不是关闭防火墙)
systemctl status firewalld.service 查看防火墙的状态
systemctl stop firewalld.service 关闭防火墙,但是系统重启后防火墙也会重启
systemctl disable firewalld.service 永久关闭防火墙
4、配置主机名和IP的对应关系
编辑配置文件 vi /etc/hosts
192.168.160.111 bigdata111
三、vi编辑器:相当于Windows的记事本
1、命令格式 vi 文件名
如果文件存在,打开
如果不存在,创建
2、三种模式
(1)编辑模式(默认):等待命令的输入
按i -----> 进入到了:插入模式
按: 进入了命令模式
按/ 进入搜索模式
(2)插入模式:输入文本
按esc键,回到编辑模式
(3)命令模式
w 保存
q 退出
wq 保存退出
!强制***(强制退出q!)
set number 打开行号
set nonumber 关闭行号
set wrap 换行显示
set nowrap 不换行显示
四、文件目录操作命令(Linux的重点,这些命令跟HDFS的命令非常像)
(1)ls 显示文件和目录列表
-l 列出文件的详细信息,等同于 ll命令
-a 列出当前文件目录所有文件,包括隐藏文件和隐藏目录
带.的就是隐藏
隐藏文件:/root/.bash_profile 设置环境变量
隐藏目录:/root/.ssh 保存公钥和私钥,用于免密码登录(Hadoop、spark需要配置免密码登录)
查看HDFS: hdfs dfs -ls / (/为hdfs的根目录)
(2)mkdir 创建目录
-p 父目录在不存在的情况下生成父目录
学习的时候约定一下:mkdir /root/training 安装目录
mkdir /root/tools 介质
在HDFS上创建目录:hdfs dfs -mkdir /data
(3)cd 切换目录
注意:~代表当前用户的家目录 /root
(4)touch生成一个空文件
echo生成一个带内容文件;更常用的方式是用它查看环境变量
echo $JAVA_HOME
(5)cat、tac显示文件内容
cat是从第一行开始显示;tac是从最后一行开始显示
more命令:分页显示
more data.txt
查看HDFS目录下文件的内容 hdfs dfs -cat /data/data.txt
(6)cp复制文件或目录
基本拷贝:cp data.txt a.txt
想在HDFS上拷贝文件:hdfs dfs -cp /data/data.txt /data/b.txt
scp 在网络上拷贝文件命令
(7)rm 删除文件
-r 同时删除该目录下的所有文件
-f 强制删除文件或目录
例子:rm -rf a.txt
如果想在HDFS上删除:hdfs dfs -rmr /data -----> hdfs dfs -rm -r /data
(8)tar命令:打包压缩命令
一般安装介质的后缀:.tar.gz格式 hadoop-2.7.3.tar.gz jdk-8u144-linux-x64.tar.gz
(9)kill命令,最常用的参数 -9 PID
kill -9 PID
另一个参数:kill -3 PID 对应Java来说,打印出Java的Thread Dump信息(死锁、性能瓶颈)
(10)find在文件系统中查找指定的文件 -name 文件名
举例:find . -name *.txt
. 代表当前目录和子目录
(11)man 命令帮助信息查询
举例 man ls
(12)Linux 通道: 命令1 | 命令2
把命令1的输出 作为 命令2 的输入
cat data.txt | more
ps -ef --------->查看所有的进程
ps -ef | grep java -------> 把所有的进程进行过滤 查看Java的进程
五、Linux的权限管理(原因:HDFS也有权限的管理,类似Linux的权限管理)
1、权限的类型:3种
r 读 w 写 x 执行
六、安装常用软件
使用一个ftp的工具:winscp 免费的ftp
1、JDK:版本:1.8 64位
(1)使用tar命令解压
tar -zxvf jdk-8u144-linux-x64.tar.gz -C ~/training/
(2)设置环境变量:vi ~/.bash_profile
JAVA_HOME=/root/training/jdk1.8.0_144
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
(3)生效环境变量 source ~/.bash_profile
2、tree命令:安装包: .rmp
命令: rmp -ivh tree-1.6.0-10.el7.x86_64.rpm
tree -d -L 2
-d:只显示目录
-L:表示显示的层数
[root@bigdata111 ~]# tree -d -L 2
.
├── Desktop
├── Documents
├── Downloads
├── Music
├── Pictures
├── Public
├── Templates
├── tools
├── training
│ └── jdk1.8.0_144
└── Videos