Hadoop入门必备——Linux与Hadoop基础操作实践
前言
Hadoop作为大数据处理领域的核心框架,其稳定运行高度依赖Linux操作系统环境。想要熟练驾驭Hadoop完成各类大数据处理任务,扎实掌握Linux常用命令是基础前提,再结合Hadoop基础操作的实操训练,才能为后续开展复杂的大数据实验筑牢根基。本文将详细分享我在Linux与Hadoop基础操作实验中的完整实践过程、实操技巧以及遇到的问题与解决思路。
实验环境
-
操作系统:Linux(Ubuntu 16.04 或 Ubuntu 18.04)
-
Hadoop版本:3.1.3
核心实验内容
一、常用Linux命令实践
1. 目录切换与查看
cd命令是目录切换的核心工具,常用场景包括: -
切换至指定绝对路径目录,如
cd /usr/local; -
返回上一级目录:
cd ..; -
快速进入当前用户主文件夹:
cd ~或直接执行cd。
ls命令用于查看目录下的文件与目录信息: -
查看指定目录全部内容:
ls /usr; -
查看详细属性(权限、所有者、大小、修改时间等):
ls -l /usr(可简写为ll /usr)。2. 目录与文件操作
-
创建目录:
mkdir命令支持单层或多级目录创建,递归创建多级目录需加-p参数,如mkdir -p a1/a2/a3/a4; -
删除空目录:
rmdir仅可删除空目录,如rmdir a1/a2/a3/a4; -
复制操作:
cp命令用于复制文件/目录,复制目录时必须加-r(递归)参数,如cp -r 源目录 目标目录; -
移动与重命名:
mv命令兼具双重功能,移动文件/目录:mv 源路径 目标路径;重命名文件/目录:mv 原名称 新名称; -
删除操作:
rm命令删除文件时直接执行rm 文件名,删除目录需加-r参数(rm -r 目录名),删除非空目录且无需确认可使用rm -rf 目录名(谨慎使用,避免误删重要数据)。3. 文件内容查看
-
全量查看:
cat 文件名正向输出文件所有内容,tac 文件名反向输出内容; -
分页查看:
more 文件名支持按页翻动查看(空格键翻页、q键退出),适合大文件浏览; -
指定行数查看:
head -n 20 文件名查看文件前20行,tail -n 15 文件名查看文件后15行(-n可省略,直接写数字,如head 20 文件名)。4. 文件属性与查找
-
文件创建/时间修改:
touch 文件名可创建空文件,若文件已存在则修改其访问/修改时间;修改文件时间为指定时间(如5天前):touch -d "5 days ago" 文件名; -
修改文件所有者:
chown root 文件名将文件所有者改为root账号(需root权限执行); -
文件查找:
find ~ -name .bashrc在用户主文件夹下精准查找.bashrc文件; -
内容检索:
grep "指定字符串" 文件名在文件中查找包含目标字符串的行,支持正则表达式匹配。5. 压缩与环境配置
-
文件打包压缩/解压缩:
- 打包并压缩为tar.gz格式:
tar -czf 压缩包名.tar.gz 待压缩文件/目录; - 解压缩tar.gz文件:
tar -xzf 压缩包名.tar.gz -C 目标目录(-C指定解压缩路径);
- 打包并压缩为tar.gz格式:
-
Java环境变量配置:
-
编辑环境变量配置文件:
vim ~/.bashrc; -
在文件末尾添加Java环境变量(示例):
export JAVA_HOME=/usr/local/jdk1.8.0 export PATH=$PATH:$JAVA_HOME/bin-
使配置立即生效:
source ~/.bashrc; -
验证配置结果:
echo $JAVA_HOME,若输出正确的JDK路径则配置成功。
二、Hadoop基础操作
1. Hadoop启动
以hadoop用户登录Linux系统,切换至Hadoop安装目录并启动Hadoop集群:
cd /usr/local/hadoop # 进入Hadoop安装目录 ./sbin/start-dfs.sh # 启动HDFS ./sbin/start-yarn.sh # 启动YARN2. HDFS目录操作
-
-
创建HDFS用户目录:
hdfs dfs -mkdir -p /user/hadoop(-p确保父目录不存在时自动创建); -
在用户目录下创建test文件夹:
hdfs dfs -mkdir /user/hadoop/test; -
查看HDFS目录文件列表:
hdfs dfs -ls /user/hadoop(查看test文件夹:hdfs dfs -ls /user/hadoop/test)。3. HDFS文件上传与下载
-
本地文件上传至HDFS:将Linux本地的
.bashrc文件上传到test文件夹,执行hdfs dfs -put ~/.bashrc /user/hadoop/test; -
HDFS文件下载至本地:将test文件夹下载到Hadoop安装目录,执行
hdfs dfs -get /user/hadoop/test /usr/local/hadoop。遇到的问题与解决方案
问题1:执行cp命令复制文件到/usr目录时提示权限不足
原因:/usr目录属于系统核心目录,普通用户无写入权限。
解决方案:切换至root用户获取操作权限后再执行复制命令,步骤如下:su root # 切换到root用户(输入root密码) cp 源文件 /usr # 执行复制操作 exit # 退出root用户,返回普通用户问题2:本机文件夹结构与示例不同,导致部分命令执行路径出错
原因:不同环境下目录部署存在差异,按固定示例路径执行命令无法定位目标文件/目录。
解决方案:通过ls命令逐层查看目录结构,准确定位目标路径后重新执行命令。例如:ls /usr # 查看/usr目录下内容 ls /usr/local # 查看/usr/local目录下内容,确认Hadoop安装路径总结
Linux命令是操作Hadoop集群的基础工具,熟练掌握目录操作、文件管理、权限配置等核心命令,能大幅提升大数据实验的操作效率,减少路径、权限类基础错误。而Hadoop基础操作的实操训练,不仅让我掌握了HDFS的基本文件存储操作,更初步理解了分布式文件系统的核心机制,为后续学习HDFS高级操作、MapReduce计算框架、HBase数据库等进阶内容奠定了坚实的基础。在后续学习中,需持续强化命令实操熟练度,结合更多场景练习,进一步夯实大数据入门的核心技能。