Hdoop伪分布式集群搭建

文章目录

  • Hadoop安装部署
  • 前言
    • 1.环境
    • 2.步骤
    • 3.效果图
  • 具体步骤
    • (一)前期准备
      • (1)ping外网
      • (2)配置主机名
      • (3)配置时钟同步
      • (4)关闭防火墙
    • (二)正文
      • (1)配置hosts列表
      • (2)SSH免密钥登录配置
        • ①master虚拟机上
        • ②slave01虚拟机上
        • ③slave02虚拟机上
        • ④验证免密登录
      • (3)安装JDK
      • (4)安装部署Hadoop集群(chenqi用户)
        • 1.解压缩包
        • 2.配置文件
        • 3.创建Hadoop数据目录
        • 4.将配置好的hadoop文件夹复制到从节点
        • 5.配置Hadoop环境变量
        • 6.格式化Hadoop文件目录
        • 7.启动Hadoop集群
      • (5)测试
        • ①Web UI查看集群是否成功启动
        • ②运行PI实例检查集群是否成功


Hadoop安装部署

前言

1.环境

  • 虚拟机数量:3个 (1个master,2个slave:slave01,slave02)
  • 操作系统:Ubuntu 22.04.2

2.步骤

在这里插入图片描述

3.效果图

hadoop集群安装部署后,启动集群,效果如下:

效果图1:master虚拟机上,出现这4个进程表示主节点进程启动成功。

在这里插入图片描述

效果图2:slave01虚拟机上,出现这3个进程表示从节点进程启动成功。

在这里插入图片描述

效果图3:slave02虚拟机上,出现这3个进程表示从节点进程启动成功。

在这里插入图片描述

具体步骤

(一)前期准备

首先要确保各台虚拟机能ping通外网

(1)ping外网

在三台虚拟机中使用ping命令,确保各台虚拟机能ping通外网。

(2)配置主机名

将三台主机名分别设置为master,slave01,slave02,便于后期的操作

说明:此处以界面虚拟机master的操作为例,slave01和slave02的操作如法炮制。

不同操作系统可能操作方法不同,百度对应操作即可

  1. 以下操作需要root用户权限,所以先切换成root用户。

    chenqi@localhost:~$ sudo su
    
  2. 使用vi命令编辑主机名(或使用gedit)。

    root@localhost:~# vi /etc/hostname
    

    将hostname文件中原来内容替换为master,如果已经是master,可以直接按冒号“:“键,再输入“wq”保存退出

  3. 临时设置主机名为master。

    root@localhost:~# hostname master
    
  4. 检测主机名是否修改成功,使用bash命令让上一步操作生效。

    root@localhost:~# bash
    
  5. localhost变为master

(3)配置时钟同步

说明:此处以界面虚拟机master的操作为例,slave01和slave02的操作如法炮制。

不同操作系统可能操作方法不同,百度对应操作即可

Linux服务器运行久了,系统时间就会存在一定的误差,一般情况下可以使用date命令进行时间设置,但在做数据库集群等操作时对多台机器的时间差是有要求的,此时就需要使用ntpdate进行时间同步

  1. 使用root用户权限

  2. 执行命令同步,如果没有ntpdate需要先安装:apt-get install ntpdate

    root@master:~# sudo ntpdate cn.pool.ntp.org
    

(4)关闭防火墙

说明:此处以界面虚拟机master的操作为例,slave01和slave02的操作如法炮制。

不同操作系统可能操作方法不同,百度对应操作即可

  1. 查看防火墙状态(默认已经关闭防火墙)

    root@master:~# sudo ufw status
    
  2. 两条命令分别是打开防火墙和关闭防火墙)

    root@master:~# sudo ufw enable 
    root@master:~# sudo ufw disable
    

(二)正文

(1)配置hosts列表

说明:此处以界面虚拟机master的操作为例,slave01和slave02的操作如法炮制。

不同操作系统可能操作方法不同,百度对应操作即可

  1. 运行ifconfig命令,获得当前master虚拟机的ip地址,如图6-10所示是master的ip地址。(用相同方法获得当前slave01和slave02虚拟机的ip地址。)

    ifconfig没安装可以先安装,也可以使用ip addr

  2. 编辑主机名列表文件hosts。将下面三行添加到/etc/hosts文件中,保存退出。

    root@master:~# vi /etc/hosts
    
    "自己的maser主机地址" master
    "自己的slave01主机地址" slave01
    "自己的slave02主机地址" slave02
    
  3. 测试

    root@master:~# ping master -c 3
    root@master:~# ping slave01 -c 3
    root@master:~# ping slave02 -c 3
    

    说明:参数-c 3表示只返回三行响应就中止。ping通就代表成功

(2)SSH免密钥登录配置

①master虚拟机上
  1. 先从root用户,退回到普通用户

    root@master:~# su chenqi
    
  2. 在终端生成密钥,命令如下(一路按回车完成密钥生成)

    chenqi@master:~$ ssh-keygen -t rsa
    

    在这里插入图片描述

  3. 生成的密钥在用户根目录中的.ssh子目录中,进入.ssh目录查看

    在这里插入图片描述

  4. 执行以下命令复制公钥文件

    chenqi@master:~/.ssh$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
  5. 修改authorized_keys文件的权限

    chenqi@master:~/.ssh$ chmod 600 ~/.ssh/authorized_keys
    
  6. 将专用密钥添加到 ssh-agent 的高速缓存中

    chenqi@master:~/.ssh$ ssh-add ~/.ssh/id_rsa
    

    Could not open a connection to your authentication agent:

    原因:未启动ssh agent

    先执行一下ssh-agent bash

  7. 将authorized_keys文件复制到slave01、slave02虚拟机的zkpk用户的根目录,

    chenqi@master:~$ scp ~/.ssh/authorized_keys zkpk@slave01:~/
    chenqi@master:~$ scp ~/.ssh/authorized_keys zkpk@slave02:~/
    
②slave01虚拟机上
  1. 生成密钥,命令如下(一路点击回车生成密钥)。

    chenqi@slave01:~$ ssh-keygen -t rsa
    
  2. 将authorized_keys文件移动到.ssh目录,

    chenqi@slave01:~$ mv authorized_keys ~/.ssh/
    
③slave02虚拟机上
  1. 生成密钥,命令如下(一路点击回车生成密钥)。

    chenqi@slave02:~$ ssh-keygen -t rsa
    
  2. 将authorized_keys文件移动到.ssh目录,

    chenqi@slave02:~$ mv authorized_keys ~/.ssh/
    
④验证免密登录
  1. 在master虚拟机上远程登录slave01

    chenqi@master:~$ ssh slave01
    

    如果出现如图所示的内容表示免密钥配置成功。

    在这里插入图片描述

  2. 退出slave01远程登录

    chenqi@slave01:~$ exit
    
  3. slave02同理

(3)安装JDK

说明:此处以界面虚拟机master的操作为例,slave01和slave02的操作如法炮制。

不同操作系统可能操作方法不同,百度对应操作即可

  1. 删除系统自带的jdk(如若出现如图6-21效果,说明系统自带java,需要先卸载)

    chenqi@master:~$ rpm -qa | grep java
    

    在这里插入图片描述

  2. 移除系统自带的jdk

    root@master:~# yum remove java-1.*
    
  3. 创建存放jdk文件目录

    root@master:~# mkdir /usr/java
    
  4. 解压JDK压缩包,将/home/chenqi/tgz下的JDK压缩包解压到/usr/java目录下

    root@master:~# tar -xzvf /home/chenqi/tar/jdk-8u371-linux-x64.tar.gz -C /usr/java
    

    hdoop和jdk的压缩包去官网上下载一个版本下来即可

    在这里插入图片描述

    slave01和02都要解压jdk

  5. 退出root用户

    root@master:~# exit
    
  6. 配置chenqi用户环境变量。

    chenqi@master:~$ vi .profile
    

    复制以下内容添加到上面打开的文件.bash_profile中,然后保存退出。

    export JAVA_HOME=/usr/java/jdk1.8.0_371/
    export PATH=$JAVA_HOME/bin:$PATH
    
  7. 使环境变量生效

    chenqi@master:~$ source /home/chenqi/.profile
    
  8. 测试是否配置成功

    chenqi@master:~$ java -version
    

(4)安装部署Hadoop集群(chenqi用户)

注意:每个虚拟机上的Hadoop配置基本相同,在master虚拟机上操作,然后复制到slave01、slave02两个虚拟机即可。

1.解压缩包
chenqi@master:~$ tar -xzvf /home/chenqi/tar/hadoop-3.3.6.tar.gz -C /home/chenqi
2.配置文件

• workers : 配置从节点( DataNode )有哪些
• hadoop-env.sh : 配置 Hadoop 的相关环境变量
• core-site.xml : Hadoop 核心配置文件
• hdfs-site.xml : HDFS 核心配置文件

①配置hadoop-env.sh文件

chenqi@master:~$ vi /home/chenqi/hadoop-3.3.6/etc/hadoop/hadoop-env.sh

复制以下内容添加到上面打开的文件hadoop-env.sh中,然后保存退出。

export JAVA_HOME=/usr/java/jdk1.8.0_371/

②配置yarn-env.sh文件。

chenqi@master:~$ vi ~/hadoop-3.3.6/etc/hadoop/yarn-env.sh

复制以下内容添加到上面打开的文件yarn-env.sh中,然后保存退出。

export JAVA_HOME=/usr/java/jdk1.8.0_371/

③配置core-site.xml 文件。

chenqi@master:~$ vi ~/hadoop-3.3.6/etc/hadoop/core-site.xml

复制以下内容替换core-site.xml中的内容,然后保存退出。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>    <property>        <name>fs.defaultFS</name>       <value>hdfs://master:9000</value>    </property>   <property>        <name>hadoop.tmp.dir</name>        <value>/home/chenqi/hadoopdata</value>    </property>
</configuration>

fs.defaultFS:HDFS的默认访问路径,也是NameNode的访问地址。

hadoop.tmp.dir:Hadoop数据文件的存放目录。该参数如果不配置默认指向/tmp目录,而/tmp目录在系统重启后会自动清空,从而导致Hadoop的文件系统数据丢失。

最后测试的时候如果没有9000端口,将master改成对应的地址

④配置hdfs-site.xml文件。

chenqi@master:~$ vi ~/hadoop-3.3.6/etc/hadoop/hdfs-site.xml

复制以下内容替换hdfs-site.xml中的内容,然后保存退出。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>     <!-- 测试环境指定HDFS副本的数量1 --><property><name>dfs.replication</name>        <value>2</value>    </property>
</configuration>

dfs.replication:文件在HDFS系统中的副本数。

dfs.permission.enabled:是否检查用户权限。

dfs.namenoder:NameNode节点数据在本地文件系统的存放位置。

dfs.datanode.data.dir:DataNode节点数据在本地文件系统的存放位置。

⑤配置yarn-site.xml文件。

chenqi@master:~$ vi ~/hadoop-3.3.6/etc/hadoop/yarn-site.xml

6.9.6.2复制以下内容替换yarn-site.xml中的内容,然后保存退出。(如果已经有这样的内容,直接退出。)

<?xml version="1.0"?>
<configuration>    <property>        <name>yarn.nodemanager.aux-services</name>        <value>mapreduce_shuffle</value>    </property>    <property>        <name>yarn.resourcemanager.address</name>        <value>master:18040</value>    </property>    <property>        <name>yarn.resourcemanager.scheduler.address</name>       <value>master:18030</value>    </property>    <property>        <name>yarn.resourcemanager.resource-tracker.address</name>        <value>master:18025</value>    </property>    <property>        <name>yarn.resourcemanager.admin.address</name>        <value>master:18141</value>    </property>    <property>        <name>yarn.resourcemanager.webapp.address</name>        <value>master:18088</value>    </property>
</configuration>

yarn.nodemanager.aux:NodeManager上运行的附属服务,需配置成mapreduce_shuffle才可运行Mapreduce程序。YARN提供了该配置项用于在NodeManager上扩展自定义服务,Mapreduce的Shuffle功能正是一种扩展服务。


yarn.resourcemanager.address:指定ResourceManager所在的节点与访问端口,如果不添加,ResourceManager则默认执行在YARN启动命令的节点上启动。

⑥配置mapred-site.xml文件。

chenqi@master:~$ vi ~/hadoop-3.3.6/etc/hadoop/mapred-site.xml

复制以下内容替换mapred-site.xml中的内容,然后保存退出。

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>    <property>        <name>mapreduce.framework.name</name>        <value>yarn</value>    </property>
</configuration>

mapreduce.framework.name:指定 Mapreduce 程序运行在 YARN上

⑦配置workers文件。

chenqi@master:~$ vi ~/hadoop-3.3.6/etc/hadoop/workers

通过workers文件定义数据节点,根据集群规划,我们将两个节点都要作为数据节点,添上:

slave01
slave02
3.创建Hadoop数据目录
chenqi@master:~$ mkdir hadoopdata
4.将配置好的hadoop文件夹复制到从节点

用scp命令将文件夹复制到slave01、slave02上。

注意:因为之前已经配置了免密钥登录,这里可以直接免密钥远程复制。

chenqi@master:~$ scp -r hadoop-3.3.6 chenqi@slave01:~/chenqi@master:~$ scp -r hadoop-3.3.6 chenqi@slave02:~/

复制完成后,可以在slave01和slave02上检验是否复制成功。在用户主目录下ls一下就行

5.配置Hadoop环境变量

说明:此处以界面虚拟机master的操作为例,slave01和slave02的操作如法炮制。

使用vi命令编辑.bash_profile文件。

chenqi@master:~$ vi .profile

复制以下内容添加到.bash_profile末尾,然后保存退出。(如果已经有这样的内容,直接退出。)

#HADOOP
export HADOOP_HOME=/home/chenqi/hadoop-3.3.6
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

使环境变量生效。

chenqi@master:~$ source ~/.profile
6.格式化Hadoop文件目录

注意:此操作在master虚拟机上执行。

格式化命令如下。

chenqi@master:~$ hdfs namenode –format

在这里插入图片描述

图6-45 格式化master虚拟机(1)

在这里插入图片描述

图 6-46格式化master虚拟机(2)

7.启动Hadoop集群

在master虚拟机上运行start-all.sh命令。(格式化后首次执行此命令,提示输入yes/no时,输入yes。)

chenqi@master:~$ start-all.sh

查看进程是否启动。

注意:前面那些数字是进程号,可能因为自己的实验环境不同而不同。

在这里插入图片描述

在slave01虚拟机上的终端执行jps命令,出现如图 :

在这里插入图片描述

在slave02虚拟机上的终端执行jps命令,出现如图:

!在这里插入图片描述

(5)测试

①Web UI查看集群是否成功启动

在浏览器地址栏中输入http://master:50070,检查namenode和 datanode 是否正常,如图6-50、6-51、6-52所示。

netstat -ntpl查看自己的

在这里插入图片描述

查看集群namenode 和 datanode情况、检查Yarn是否正常
在这里插入图片描述

②运行PI实例检查集群是否成功

执行下面的命令。(Pi后面的第一个参数10是Map任务的数量,第二个10是求圆周率Pi的算法的参数。)

[zkpk@master~]$ hadoop jar ~/hadoop-3.3.6/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.6.jar pi 10 10

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

最后输出:Estimated value of Pi is 3.20000000000000000000,这个值还不够精确,可以通过调整那两个参数逐渐逼近3.1415926……。

问题描述:Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster

解决方法:

第一种:在mapred-site.xml中添加以下配置

<property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=${hadoop-3.3.6}</value>
</property>
<property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=${hadoop-3.3.6}</value>
</property>
<property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=${hadoop-3.3.6}</value>
</property>

第二种:如果上述方法不行,采用下面方式

执行下面命令

hadoop classpath

拿到运行的类的路径,如下图:

img

在Hadoop安装目录下找到yarn-site.xml文件($HADOOP_HOME/etc/hadoop/yarn-site.xml),把刚才得到的信息配置进去,如下:

<configuration><property><name>yarn.application.classpath</name><value>复制的Hadoop classpath信息</value></property>
</configuration>

img

在所有的Master和Slave节点进行如上设置,设置完毕后重启Hadoop集群,重新运行刚才程序,成功运行。

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

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

相关文章

ddns有什么作用?无公网IP怎么将内网IP端口映射外网访问

DDNS是什么&#xff1f; DDNS英文全称Dynamic Domain Name Server&#xff0c;中文含义是指动态域名服务。很多普通路由器或者智能路由器设置中&#xff0c;都可以找到DDNS&#xff08;动态DNS&#xff09;功能。 上面的解释可能过于专业&#xff0c;其实DDNS通俗点说&#xf…

小程序社区团购demo

概述 实现了用户登录或者手机号&#xff0c;加入团长&#xff0c;邀请团长&#xff0c;各种佣金明细等页面 详细 需求&#xff1a; 根据市场信息反馈&#xff0c;社区团购比较火&#xff0c;有流量的用户可以推广页面 实现了功能&#xff1a; 实现了用户微信登录自动获取…

BottomNavigationView3个以上图标不显示文字

问题 当BottomNavigationView设置的菜单中超过三个图标时&#xff0c;出现只有焦点聚集到图标时才会显示底部设置的文字描述&#xff0c;当没有焦点聚集则只显示图标&#xff0c;效果如下&#xff1a; 解决办法 设置labelVisibilityMode值 如果BottomNavigationItemView类并…

Clock时钟电路PCB设计布局布线要求

时钟电路就是类似像时钟一样准确运动的震荡电路&#xff0c;任何工作都是依照时间顺序&#xff0c;那么产生这个时间的电路就是时钟电路&#xff0c;时钟电路一般是由晶体振荡器、晶振、控制芯片以及匹配电容组成&#xff0c;如图1所示。 图1 时钟电路 针对时钟电路PCB设计有以…

k8s pod概念、分类及策略

目录 一.pod相关概念 &#xff12;.Kubrenetes集群中Pod两种使用方式 &#xff13;.pause容器的Pod中的所有容器共享的资源 &#xff14;.kubernetes中的pause容器主要为每个容器提供功能&#xff1a; &#xff16;.Pod分为两类&#xff1a; 二.Pod容器的分类 1.基础容器…

【C++心愿便利店】No.6---C++之拷贝构造函数

文章目录 一、拷贝构造函数的引入二、拷贝构造函数 &#x1f467;个人主页&#xff1a;小沈YO. &#x1f61a;小编介绍&#xff1a;欢迎来到我的乱七八糟小星球&#x1f31d; &#x1f4cb;专栏&#xff1a;C 心愿便利店 &#x1f511;本章内容&#xff1a;拷贝构造函数 记得 评…

PythonWeb服务器(HTTP协议)

一、HTTP协议与实现原理 HTTP&#xff08;Hypertext Transfer Protocol&#xff0c;超文本传输协议&#xff09;是一种用于在网络上传输超文本数据的协议。它是Web应用程序通信的基础&#xff0c;通过客户端和服务器之间的请求和响应来传输数据。在HTTP协议中连接客户与服务器的…

【Tomcat】Tomcat 运行原理

Tomcat 运行原理 一. Servlet 运行原理1. 接收请求2. 根据请求计算响应3. 返回响应 二. Tomcat 的伪代码1. Tomcat 初始化流程2. Tomcat 处理请求流程3. Servlet 的 service 方法的实现 一. Servlet 运行原理 在 Servlet 的代码中我们并没有写 main 方法, 那么对应的 doGet 代…

Oracle for Windows安装和配置——Oracle for Windows数据库创建及测试

2.2. Oracle for Windows数据库创建及测试 2.2.1. 创建数据库 1&#xff09;启动数据库创建助手&#xff08;DBCA&#xff09; 进入%ORACLE_HOME%\bin\目录并找到“dbca”批处理程序&#xff0c;双击该程序。具体如图2.1.3-1所示。 图2.1.3-1 双击“%ORACLE_HOME%\bin\dbca”…

Python之网络编程

一、网络编程 互联网时代,现在基本上所有的程序都是网络程序,很少有单机版的程序了。 网络编程就是如何在程序中实现两台计算机的通信。 Python语言中,提供了大量的内置模块和第三方模块用于支持各种网络访问,而且Python语言在网络通信方面的优点特别突出,远远领先其他语…

Spring学习笔记7 Bean的生命周期

Spring其实就是一个管理Bean对象的工厂.它负责对象的创建,对象的销毁. 这样我们才可以知道在哪个时间节点上调用了哪个类的哪个方法,知道代码该写在哪里 Bean的生命周期之粗略5步 Bean生命周期的管理可以参考Spring的源码: AbstractAutowireCapableBeanFactory Bean的生命周期…

ardupilot的编译过程

环境 树莓派4b ubuntu20.04 git 2.25.1 python3.8.10 pixhawk2.4.8 下载源码 &#xff08;已经配置好git环境和ssh&#xff09; git clone --recurse-submodules gitgithub.com:ArduPilot/ardupilot.gitcd ardupilotgit status使用git status检查是否下载完整 如果不完整&a…

自主研究,开发并产业化的一套UWB精确定位系统源码 UWB源码

UWB (ULTRA WIDE BAND) 技术是一种无线载波通讯技术&#xff0c;它不采用正弦载波&#xff0c;而是利用纳秒级的非正弦波窄脉冲传输数据&#xff0c;因此其所占的频谱范围很宽。UWB定位系统研发团队依托在移动通信&#xff0c;雷达&#xff0c;微波电路&#xff0c;云计算与大数…

黑马JVM总结(二十)

&#xff08;1&#xff09;GC_调优老年代 CMS是低响应时间的&#xff0c;并发的一个垃圾回收器 &#xff0c;有这样一个缺点&#xff0c;因为在垃圾回收的同时&#xff0c;其他的用户线程也在运行&#xff0c;就会产生新的垃圾这个新的垃圾称为浮动垃圾&#xff0c;如果浮动垃…

基于Xml方式Bean的配置-命名空间种类

Spring的标签 Spring的xml标签大体上分为两类&#xff0c;一种是默认标签&#xff0c;一种是自定义标签 默认标签&#xff1a;就是不用额外导入其它命名空间约束的标签&#xff0c;例如<bean>标签 标签作用 <beans> 一般作为xml配置根标签&#xff0c;其他标签都是…

网络防御--防火墙

拓扑 Cloud 1 作为电脑与ENSP的桥梁 防火墙配置 登录防火墙 配置IP地址及安全区域 添加地址对象 配置策略 1、内网可以访问服务器 结果 2、内网可以访问公网 结果 配置NAT策略 结果

uniapp中vue3使用uni.createSelectorQuery().in(this)报错

因为VUE3中使用setup没有this作用域&#xff0c;所以报错 解决办法&#xff1a;使用getCurrentInstance()方法获取组件实例 import { getCurrentInstance } from vue;const instance getCurrentInstance(); // 获取组件实例 const DOMArr uni.createSelectorQuery().in(ins…

在Idea中调试本地Docker

报错&#xff1a; Error running myApp: Unable to open debugger port (localhost:5005): java.net.SocketException "Connection reset" 原因&#xff1a; Docker配置里边没有配置环境变量JAVA_TOOL_OPTIONS. 解决&#xff1a; 在Docker下加入运行时的环境变量JAVA…

如何使用固态硬盘+硬盘盒子+U盘创造移动双系统

本文背景 这学期上了一节鸟水课《大数据实践》&#xff0c;老师要求扩展硬盘盒&#xff0c;以部署大数据工具进行 机器挖掘等大数据领域工作 参考视频链接&#xff1a;无需启动盘&#xff0c;用虚拟机将ubuntu安装到移动硬盘上_哔哩哔哩_bilibili 项目使用设备 1.绿联&#…

Linux 查看权限控制

1、认知权限信息 通过ls -l 可以以列表形式查看内容&#xff0c;并显示权限细节 序号1&#xff0c;表示文件、文件夹的权限控制信息 序号2&#xff0c;表示文件、文件夹所属用户 序号3&#xff0c;表示文件、文件夹所属用户组 2、权限细节 权限细节总共分为10个槽位 举例&…