【Linux】【Hadoop】大数据基础实验一

news2024/11/16 9:25:27

实验一:熟悉常用的Linux操作和Hadoop操作

一、实验目的

        Hadoop运行在Linux系统上,因此,需要学习实践一些常用的Linux命令。本实验旨在熟悉常用的Linux操作和Hadoop操作,为顺利开展后续其他实验奠定基础。

二、实验平台

  1. 操作系统:Linux(建议Ubuntu16.04);
  2. Hadoop版本:2.7.1。

三、实验步骤

3.1 熟悉常用的Linux操作

  • cd命令:切换目录

(1)切换到目录“/usr/local”

(2)切换到当前目录的上一级目录

(3)切换到当前登录Linux系统的用户的自己的主文件夹

  • ls命令:查看文件与目录

(4)查看目录“/usr”下的所有文件和目录

  • mkdir命令:新建目录

(5)进入“/tmp”目录,创建一个名为“a”的目录,并查看“/tmp”目录下已经存在哪些目录

(6)进入“/tmp”目录,创建目录“a1/a2/a3/a4” 

  • rmdir命令:删除空的目录

(7)将上面创建的目录a(在“/tmp”目录下面)删除

(8)删除上面创建的目录“a1/a2/a3/a4” (在“/tmp”目录下面),然后查看“/tmp”目录下面存在哪些目录

  • cp命令:复制文件或目录

(9)将当前用户的主文件夹下的文件.bashrc复制到目录“/usr”下,并重命名为bashrc1

(10)在目录“/tmp”下新建目录test,再把这个目录复制到“/usr”目录下

  • mv命令:移动文件与目录,或更名

(11)将“/usr”目录下的文件bashrc1移动到“/usr/test”目录下

(12)将“/usr”目录下的test目录重命名为test2

  • rm命令:移除文件或目录

(13)将“/usr/test2”目录下的bashrc1文件删除

(14)将“/usr”目录下的test2目录删除

  • cat命令:查看文件内容

(15)查看当前用户主文件夹下的.bashrc文件内容

  • tac命令:反向查看文件内容

(16)反向查看当前用户主文件夹下的.bashrc文件的内容

  • more命令:一页一页翻动查看

(17)翻页查看当前用户主文件夹下的.bashrc文件的内容

  • head命令:取出前面几行

(18)查看当前用户主文件夹下.bashrc文件内容前20行

(19)查看当前用户主文件夹下.bashrc文件内容,后面50行不显示,只显示前面几行

  • tail命令:取出后面几行

(20)查看当前用户主文件夹下.bashrc文件内容最后20行

(21)查看当前用户主文件夹下.bashrc文件内容,并且只列出50行以后的数据

  • touch命令:修改文件时间或创建新文件

(22)在“/tmp”目录下创建一个空文件hello,并查看文件时间

(23)修改hello文件,将文件时间整为5天前

  • chown命令:修改文件所有者权限

(24)将hello文件所有者改为root帐号,并查看属性

  • find命令:文件查找

(25)找出主文件夹下文件名为.bashrc的文件

  • tar命令:压缩命令

(26)在根目录“/”下新建文件夹test,然后在根目录“/”下打包成test.tar.gz

(27)把上面的test.tar.gz压缩包,解压缩到“/tmp”目录

  • grep命令:查找字符串

(28)从“~/.bashrc”文件中查找字符串'examples'

  • 配置环境变量

(29)请在“~/.bashrc”中设置,配置Java环境变量

(30)查看JAVA_HOME变量的值

3.2 熟悉常用的Hadoop操作

(31)使用hadoop用户登录Linux系统,启动Hadoop(Hadoop的安装目录为“/usr/local/hadoop”),为hadoop用户在HDFS中创建用户目录“/user/hadoop”

(32)接着在HDFS的目录“/user/hadoop”下,创建test文件夹,并查看文件列表

(33)将Linux系统本地的“~/.bashrc”文件上传到HDFS的test文件夹中,并查看test

(34)将HDFS文件夹test复制到Linux系统本地文件系统的“/usr/local/hadoop”目录下

四、实验报告

4.1 实验环境

4.1.1硬件环境

  • 处理器:Intel(R) Core(TM) i5-11320H @ 3.20GHz
  • 内存:16GB DDR4
  • 硬盘:512GB SSD
  • 网络:1Gbps 以太网连接

4.1.2软件环境

  • 操作系统:Ubuntu 16.04 LTS 64位
  • Linux 内核版本:4.15.0-20-generic
  • Hadoop 版本:2.7.1
  • Java 版本:Java SE 1.8.0_131 (由Oracle提供)
  • 虚拟化软件:Oracle VM VirtualBox 6.0.8

4.2 实验内容与完成情况

4.2.1熟悉常用的Linux操作:

  • cd命令:切换目录

(1)切换到目录“/usr/local”

cd /usr/local

【说明】:cd 是“change directory”(改变目录)的缩写,用于更改当前的工作目录。 /usr/local 是你要切换到的目标目录的绝对路径。

(2)切换到当前目录的上一级目录

cd ..

【说明】: .. 是一个特殊的目录名,表示当前目录的父目录。cd .. 这个命令由两部分组成,中间有一个空格,用于分隔命令 (cd) 和其参数 (..)。

(3)切换到当前登录Linux系统的用户的自己的主文件夹

cd ~

【说明】:~ 是一个符号,代表当前用户登录时的默认目录。 

  • ls命令:查看文件与目录

(4)查看目录“/usr”下的所有文件和目录

ls /usr

【说明】:ls: 列出当前目录下的文件和子目录。

  • mkdir命令:新建目录

(5)进入“/tmp”目录,创建一个名为“a”的目录,并查看“/tmp”目录下已经存在哪些目录

cd /tmp
mkdir a
ls /tmp

【说明】:-l:是一个选项,用于以长格式列出文件和目录的详细信息,包括权限、链接数、所有者、组、大小、最后修改时间和文件名。/tmp:指定了要列出内容的目录路径。

(6)进入“/tmp”目录,创建目录“a1/a2/a3/a4” 

cd /tmp
mkdir -p a1/a2/a3/a4
ls /tmp

【说明】: 可以使用 mkdir -p 命令来一次性创建多级目录。-p 选项表示 “parents”,即创建所有必要的中间目录。

  • rmdir命令:删除空的目录

(7)将上面创建的目录a(在“/tmp”目录下面)删除

cd /tmp
rmdir a
ls /tmp

【说明】:可以使用 rmdir 命令来删除空目录。如果目录不为空,则无法删除。要先确保目录 a 是空的,然后使用命令。

(8)删除上面创建的目录“a1/a2/a3/a4” (在“/tmp”目录下面),然后查看“/tmp”目录下面存在哪些目录

cd /tmp
rmdir -p a1/a2/a3/a4
ls /tmp

【说明】:这个命令将会删除 a4 目录,如果 a3 目录在删除 a4 后也变成空的,那么 a3 也会被删除,依此类推。如果在这个过程中遇到任何一个非空目录,命令将会停止,并返回错误。 如果你想要删除一个可能包含文件或其他目录的目录树,你应该使用 rm -r 命令,而不是 rmdir

  • cp命令:复制文件或目录

(9)将当前用户的主文件夹下的文件.bashrc复制到目录“/usr”下,并重命名为bashrc1

cp ~/.bashrc /usr/bashrc1
ls /tmp

【说明】: 使用 cp 命令来复制文件并重命名。请注意,这可能需要管理员权限,因为 /usr 目录通常需要特殊权限才能写入。如果是普通用户,你可能需要在命令前加上 sudo 来执行。注意:在Linux的终端中输入密码,终端是不会显示任何你当前输入的密码,也不会提示你已经输入了多少字符密码。

(10)在目录“/tmp”下新建目录test,再把这个目录复制到“/usr”目录下

写法一:

mkdir /tmp/test && cp -r /tmp/test /usr/

写法二:

cd /tmp
mkdir test
cp -r /tmp/test /usr/

 【说明】: -r 或 --recursive:这个选项告诉 cp 命令递归地复制整个目录的内容,包括所有子目录和文件。

  • mv命令:移动文件与目录,或更名

(11)将“/usr”目录下的文件bashrc1移动到“/usr/test”目录下

mv /usr/bashrc1 /usr/test/

(12)将“/usr”目录下的test目录重命名为test2

mv /usr/test /usr/test2
  • rm命令:移除文件或目录

(13)将“/usr/test2”目录下的bashrc1文件删除

rm /usr/test2/bashrc1

(14)将“/usr”目录下的test2目录删除

rm -r /usr/test2
  • cat命令:查看文件内容

(15)查看当前用户主文件夹下的.bashrc文件内容

cat ~/.bashrc
  • tac命令:反向查看文件内容

(16)反向查看当前用户主文件夹下的.bashrc文件的内容

tac ~/.bashrc
  • more命令:一页一页翻动查看

(17)翻页查看当前用户主文件夹下的.bashrc文件的内容

more ~/.bashrc
  • head命令:取出前面几行

(18)查看当前用户主文件夹下.bashrc文件内容前20行

head -n 20 ~/.bashrc

(19)查看当前用户主文件夹下.bashrc文件内容,后面50行不显示,只显示前面几行

head -n -50 ~/.bashrc
  • tail命令:取出后面几行

(20)查看当前用户主文件夹下.bashrc文件内容最后20行

tail -n 20 ~/.bashrc

(21)查看当前用户主文件夹下.bashrc文件内容,并且只列出50行以后的数据

tail -n +51 ~/.bashrc
  • touch命令:修改文件时间或创建新文件

(22)在“/tmp”目录下创建一个空文件hello,并查看文件时间

touch /tmp/hello

(23)修改hello文件,将文件时间整为5天前

touch -t 202309100000.00 /tmp/hello
  • chown命令:修改文件所有者权限

(24)将hello文件所有者改为root帐号,并查看属性

chown root:root /tmp/hello
ls -l /tmp/hello
  • find命令:文件查找

(25)找出主文件夹下文件名为.bashrc的文件

find ~ -name .bashrc
  • tar命令:压缩命令

(26)在根目录“/”下新建文件夹test,然后在根目录“/”下打包成test.tar.gz

mkdir /test && tar -czvf /test.tar.gz /test

(27)把上面的test.tar.gz压缩包,解压缩到“/tmp”目录

tar -xzvf /test.tar.gz -C /tmp
  • grep命令:查找字符串

(28)从“~/.bashrc”文件中查找字符串'examples'

grep 'examples' ~/.bashrc
  • 配置环境变量

(29)请在“~/.bashrc”中设置,配置Java环境变量

nano ~/.bashrc
echo 'export JAVA_HOME=/path/to/java' >> ~/.bashrc
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> ~/.bashrc
source ~/.bashrc
echo $JAVA_HOME

(30)查看JAVA_HOME变量的值

echo $JAVA_HOME

4.2.2 熟悉常用的Hadoop操作

(31)使用hadoop用户登录Linux系统,启动Hadoop(Hadoop的安装目录为“/usr/local/hadoop”),为hadoop用户在HDFS中创建用户目录“/user/hadoop”

start-dfs.sh
start-yarn.sh
hdfs dfs -mkdir /user/hadoop

(32)接着在HDFS的目录“/user/hadoop”下,创建test文件夹,并查看文件列表

hdfs dfs -mkdir /user/hadoop/test
hdfs dfs -ls /user/hadoop

(33)将Linux系统本地的“~/.bashrc”文件上传到HDFS的test文件夹中,并查看test

hdfs dfs -put ~/.bashrc /user/hadoop/test/

(34)将HDFS文件夹test复制到Linux系统本地文件系统的“/usr/local/hadoop”目录下

hdfs dfs -copyToLocal /user/hadoop/test/.bashrc /usr/local/hadoop/

4.3 出现的问题及解决方案

4.3.1熟悉常用的Linux操作中遇到的问题:

4.3.2熟悉常用的Hadoop操作中遇到的问题:

4.3.3未解决的问题:


一些翻译:

1. bin games include lib local sbin share src

        这些是常见的 Linux 文件系统目录名称,它们通常在 /usr/ 目录下找到,用于组织和存储不同类型的文件。下面是它们的英文翻译和简要说明:

  • bin:Binary 的缩写,存放用户常用的可执行文件。
  • games:存放游戏相关的可执行文件和数据。
  • include:通常包含头文件,用于软件开发。
  • lib:Library 的缩写,存放库文件,这些文件被系统或应用程序用于功能扩展。
  • local:用于存放本地安装的程序和文件。
  • sbin:System Binary 的缩写,存放系统管理员使用的可执行文件。
  • share:存放多个用户或多个程序之间共享的数据。
  • src:Source 的缩写,存放源代码文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2155819.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从 Affine Particle-In-Cell (APIC) 到 Material Point Method (MPM 物质点法)

APIC与MPM Particle-In-Cell (PIC)Affine Particle-In-Cell (APIC)Material Point Method (MPM)关于边界投影等额外操作 Material Point Method (MPM 物质点法)是一种混合欧拉-拉格朗日视角物理仿真方法。 欧拉视角即网格视角,将空间划分为网格,通过表示…

【永磁同步电机(PMSM)】 5. PMSM 的仿真模型

【永磁同步电机(PMSM)】 5. PMSM 的仿真模型 1. 基于 Simulink 的仿真模型1.1 PMSM 的数学模型1.2 Simulink 仿真模型1.3 模块封装(mask)1.4 三相PMSM矢量控制仿真模型 2. Simscape 的 PMSM 模块2.1 PMSM 模块的配置2.2 PMSM 模块…

秃头篇——二叉树进阶算法题

一、根据二叉树创建字符串 题目: 思路:这个题很明显需要我们采用二叉树的递归实现(前序遍历),但有一个注意的点:空括号能不能省略的问题,其实我们发现只要左为空,右不为空不能省略括…

[JavaEE] 网络初识(网络通信 及 TCP / UDP / IP 封装分用 )

Author:MTingle major:人工智能 --------------------------------------- Build your hopes like a tower! 文章目录 目录 文章目录 一. 网络通信基础 1. 局域网LAN 2. ⼴域⽹WAN 3. IP地址 4. 端口号 二.协议 1. 五元组 2. 协议分层 协议分层的优点: 3. OSI七层协…

OJ在线评测系统 后端开发数据库初始化工作 开发库表 建立数据库索引 Mybatis映射初始化接口开发

后端接口开发库表设计 项目主业务流程的开发 1.用户模块 注册(后端已实现) 登录(后端已实现 前端已实现) 2.题目模块 创建题目(管理员) 删除题目(管理员) 修改题目&#xff0…

基于SpringBoot+Vue+MySQL的校园一卡通系统

系统展示 用户前台界面 管理员后台界面 系统背景 随着现代社会的快速发展,校园一卡通已成为大学生活中不可或缺的一部分。它不仅承载着校园消费的功能,还集成了学生身份证明、图书馆借阅、门禁系统等多种服务。然而,传统的一卡通管理系统往往…

阿里HPN-用于大型语言模型训练的数据中心网络

阿里巴巴HPN:用于大型语言模型训练的数据中心网络 探索大规模语言模型训练新方法:阿里巴巴HPN数据中心网络论文。 摘要 本文介绍了阿里云用于大型语言模型(LLM)训练的数据中心网络HPN。由于LLM和一般云计算之间的差异(例如,在流量模式和容错性方面)&…

【机器学习】12-决策树1——概念、特征选择

机器学习10-决策树1 学习样本的特征,将样本划分到不同的类别(分类问题)或预测连续的数值(回归问题)。 选择特征,划分数据集,划分完成形成模型(树结构),一个…

新手必看:一步步教你绑定常见邮箱到第三方应用(如何绑定QQ、163、Hotmail、Gmail等邮箱)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 邮箱绑定 📒📫 QQ邮箱📫 163邮箱📫 Hotmail邮箱📫 Gmail邮箱📫 Yahoo邮箱📫 iCloud邮箱📫 其他邮箱⚓️ 相关链接 ⚓️📖 介绍 📖 你是否曾经为绑定第三方邮箱而感到困惑?你不是一个人!许多人在尝试将QQ邮…

QT创建菜单

增加显示信息

MySQL数据库的增删改查以及基本操作分享

1、登录MySQL数据库 首先找到你安装MySQL数据库的目录,然后在终端打开该目录,输入以下命令 mysql -u root -p然后输入密码就可以登录数据库了,看到如下页面就是登陆成功了 ***注意在终端操纵数据库时所有语句写完之后一定要加 &#xff1…

【线程】线程的同步

本文重点:理解条件变量和生产者消费者模型 同步是在保证数据安全的情况下,让我们的线程访问资源具有一定的顺序性 条件变量cond 当一个线程互斥地访问某个变量时,它可能发现在其它线程改变状态之前,它什么也做不了,…

CSS 选择器的分类与使用要点一

目录 非 VIP 用户可前往公众号进行免费阅读 标签选择器 id 选择器 类选择器 介绍 公共类 CSS 中优先用 class 选择器,慎用 id 选择器 后代选择器 交集选择器 以标签名作为开头 以类名作为开头 连续交集 并集选择器(分组选择器) 通配符* 儿子选择器 >(IE7…

Elasticsearch——介绍、安装与初步使用

目录 1.初识 Elasticsearch1.1.了解 ES1.1.1.Elasticsearch 的作用1.1.2.ELK技术栈1.1.3.Elasticsearch 和 Lucene1.1.4.为什么不是其他搜索技术?1.1.5.总结 1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排 1.3.Elasticsearch 的一些概念1.3.1.文档和字…

基于单片机的智能温控风扇系统的设计

[摘 要] 设计一种基于单片机的智能温控风扇系统,系统由 STC 系列的 51 单片机 、 温度传感器 、 LED 数码管和风扇等模块组成。 本系统具有对外界温度感知以及对感知数据进行分析处理 、 智能调节等功能,避免因温度过高而产生…

【全部更新】2024华为杯数学建模研赛F题思路代码文章全国研究生数学建模-X射线脉冲星光子到达时间建模

截止9.22 14:00 已更新全部文章内容完整求解代码(正版授权) ### https://docs.qq.com/doc/DVVBUREF2SmFhRUl3X射线脉冲星光子到达时间建模 摘要 脉冲星是一类高速自转的中子星,其自转形成规律性脉冲信号,类似于“宇宙中的灯塔”,因此被认为是…

鸿蒙 WebView 如何 Debug

前置: hdc chrome //----------------------------------------------------------------------------------------------- hdc shell cat /proc/net/unix | grep devtools 0: 00000002 0 10000 1 1 81134005 webview_devtools_remote_62479exit执行&…

[001-02-001].第2节:java开发环境搭建

4.1.书籍推荐: 4.2.人机交互方式 1.图形化界面(Graphical User Interface GUI)这种方式简单直观,使用者易于接受,容易上手操作2.命令行方式(Command Line Interface CLI):需要有一个控制台,输入特定的指令&#xff0c…

828华为云征文|云服务器Flexus X实例|MacOS系统-宝塔部署Nuxt项目

文章目录 1. Flexus云服务器X实例1.1 与Flexus应用服务器L实例相比具备以下优势1.2 服务器的详细配置 2.宝塔部署Nuxt项目2.1 登录实例2.1 宝塔面板 3. Nuxt 项目与部署3.1 Nuxt3.2创建Nuxt项目3.3 部署3.4 部署成功 4.结语 1. Flexus云服务器X实例 华为云的Flexus云服务是为中…

股指期权交易详细基础介绍

股指期权是期权市场中的一种特定类型,其标的资产为股票指数。简而言之,它允许投资者在未来某个特定时间,以预先约定的价格,买入或卖出股票指数的权利。在中国,已上市的股指期权包括上证50、沪深300和中证1000股指期权&…