【笔记】OpenHarmony设备开发:搭建开发环境(Ubuntu 20.04,VirtualBox 7.0.14)

参考:搭建开发环境(HarmonyOS Device)

Note:Windows系统虚拟机中Ubuntu系统安装完成后,根据指导完成Ubuntu20.04基础环境配置(HarmonyOS Connect 开发工具系列课)

系统要求

  • Windows系统要求:Windows10 64位系统。
  • Ubuntu系统要求:推荐使用20.04版本,内存16 GB及以上(注意:Ubuntu系统的用户名不能包含中文字符。)

基础环境配置:安装增强功能

目标:实现从Windows下拷贝文件和粘贴板到Ubuntu下

1、设置Ubuntu当前用户获取sudo权限的密码

sudo passwd

先输入当前账号的登录密码,然后可以在New password中输入设置新的密码(用于使用sudo权限时的密码,设置成一样的也不会报错)

2、测试:sudo命令测试权限

# 更新镜像源
sudo apt-get update

3、设置Ubuntu 增强功能

(菜单)设备->安装增强功能,等待弹窗,选择Run

【VitrualBox】(菜单)设备->安装增强功能
【VitrualBox】(菜单)设备->安装增强功能

弹窗提示,选择Run(点击了Cancel后,再重新菜单就不弹窗了,问题区解决)

【VitrualBox】Ubuntu VBox_GAs_7.0.14 dialog prompt
【VitrualBox】Ubuntu VBox_GAs_7.0.14 dialog prompt

首次安装会提示系统还没准备好环境去编译kernel modules,需要手动安装gcc、make、perl

执行下面命令安装:

# 手动安装 gcc\make\perl 等
sudo apt-get install gcc make perl

提示磁盘使用,根据提示输入y回车确认继续:

安装完成后,输入reboot重启:

重启后输入密码登录后,点击菜单VBox_GAs_xxxxx进入目录可看到 VBoxLinuxAdditions.run程序。

菜单点击“拖放”、“共享粘贴板”选项,都选择双向,然后可以打开中断测试功能,实现虚拟机和本地Windows复制粘贴。

设备-共享粘贴板
【VitrualBox】设备-共享粘贴板
【VitrulBox】设备-拖放
【VitrualBox】设备-共享粘贴板

搭建Ubuntu环境

1、将Ubuntu Shell环境修改为bash。

# 执行如下命令,确认输出结果为bash。
ls -l /bin/sh# 如果输出结果不是bash,请输入下方指令,选择No,将Ubuntu shell修改为bash。
sudo dpkg-reconfigure dash

输入密码,然后选择No,将Ubuntu shell由dash修改为bash。

【Ubuntu】Configuring dash
【Ubuntu】Configuring dash

修改完成后:

2、下载DevEco Device Tool最新Linux版本软件包。

3、解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。

# 解压下载好的安装包,unzip + 空格 + tab可以自动补全,如:
# unzip devicetool-linux-tool-4.0.0.400.zip
unzip devicetool-linux-tool-{Version}.zip# 授权:赋予安装文件可执行权限
# 其中devicetool-linux-tool-{Version}.sh请根据实际进行修改成本地文件
chmod u+x devicetool-linux-tool-{Version}.sh

4、安装DevEco Device Tool

在用户协议和隐私声明签署界面,默认选中2,需要签署同意用户协议和隐私声明才能进行下一步的安装,上下键可以选择:

选择了1,回车直接就执行安装:

安装完成:界面输出“DevEco Device Tool successfully installed." 标志DevEco Device Tool安装成功。

问题区

(一)VirtualBox虚拟机Ubuntu20.04 点击安装增强功能无弹框

解决方案:

1、安装gcc/make/perl后重启

su#更新镜像源
apt-get update # 手动安装 gcc\make\perl 等
sudo apt-get install build-essential gcc make perl dkms#重启
reboot 

提示占用171MB空间,输入y,确认安装

安装完成后重启reboot

重启

way2:

在文件夹中VBox找到VBoxLinuxAdditions.run文件(因为直接执行VBoxLinuxAdditions.run报错,找不到)

右键查看属性可以获取路径:

在文件夹中直接右键打开终端,输入命令,等待安装完成

sudo sh VBoxLinuxAdditions.run

安装过程:

Kernel modules and services 7.0.14 r161095 reloaded 

3、去文件系统(上述界面)里面找到自动挂载的盘,然后运行VBoxLinuxAdditions.run

用户运行时会提示没有权限:must be run with administrator provileges.

所以通过 su 切换到root,再运行VBoxLinuxAdditions.run

# 通过 ./ 运行文件
./VBoxLinuxAdditions.run

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

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

相关文章

OC 技术 苹果内购

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络&#xff0…

Springboot 3中,使用jacoco插件生成单元测试覆盖率报告

流水线部署中,单元测试覆盖率是一项考量的基本指标.本文介绍,在springboot3项目中,如何集成jacoco插件,以便在流水线SonarQube 中展示单元测试覆盖率报告. 主要注意的问题: 1.在引用依赖的时候,jmokit的依…

Python基于 BaseHTTPRequestHandler 创建简单Web服务

启动一个最基础的 WEB 服务 创建文件 server.py # Python 3 server example from http.server import BaseHTTPRequestHandler, HTTPServerhostName "localhost" serverPort 8080class MyServer(BaseHTTPRequestHandler):def do_GET(self):self.send_response(20…

哈佛毕业生考公,大材小用?

阅读本文大概需要 1.25 分钟 前段时间一张杭州市余杭区公务员录用名单的截图在网络上疯传,进入公示名单的人中,不乏许多毕业于名校的学生,甚至有些是哈佛毕业的。。。许多人对此感到惊讶,认为连哈佛毕业生都参加公务员考试&#x…

Linux文件和文件夹操作

一、文件操作 功能项命令实例作用文件创建vi /opt/learn/hello.txt 在目录/opt/learn下创建文件hello.txt并进入vi编辑界面 touch /opt/learn/test在目录/opt/learn下创建空白文件testcat > /opt/catfile创建文件catfile并在屏幕上输入内容,最后按 Ctrl D 退出…

压力测试(QPS)及测试工具Locust

压力测试: 通常指的是确定接口或服务能够处理的最大请求量(吞吐量)和并发用户数,同时保持合理的响应时间和稳定性。 性能目标 最大吞吐量:系统每秒可以处理的请求数。最大并发用户数:系统可以同时支持的…

【学习心得】神经网络知识中的符号解释

这里我对我学到的神经网络知识中,常见的符号做一下记录和总结,方便自己在后面学习中复习。下图二分类识别图像识别猫为例。为了保存一张图片,需要三个矩阵,它们分别对应图片中的红、绿、蓝三种颜色通道,如果图片大小为…

【0278】checkpointer 共享内存(CheckpointerShmem)初始化(3)

0. 关于checkpointer 检查指针是Postgres 9.2的新特性。它处理所有检查点。自上次检查点以来,检查点在经过一定时间后自动分发,并且还可以发出信号来执行请求的检查点。(GUC参数要求每隔这么多WAL段就有一个检查点,这是通过后端在填充WAL段时发出信号来实现的; checkpointer…

ubuntu22.04安装k3s, kuboard

直接安装方式 更新系统包列表 sudo apt update安装所需的依赖 sudo apt install -y curl下载k3s安装脚本 curl -sfL https://get.k3s.io | sh -验证k3s安装 sudo systemctl status k3s获取k3s的token sudo cat /var/lib/rancher/k3s/server/node-token设置kubectl配置 mkdir -p…

Django路由

Router介绍 在实际开发过程中,一个Django项目会包含很多的app,这时候如果我们只在主路由里进行配置就会显得杂乱无章,所以通常会在每个app里,创建各自的urls.py路由模块,然后从根路由出发,将app所属的url请求&#xff…

类与对象上C++

文章目录 一、1.面向过程和面向对象初步认识二、类的定义1.类的两种定义方式 三、类的访问限定符及封装1.访问限定符2.面试题3.封装 四、类对象模型1. 类对象的存储方式猜测2. 结构体内存对齐规则 五、this指针1.this指针的引出2.this指针的特性 六、 C语言和C实现Stack的对比 …

【蓝桥杯3.23小白赛】(详解)

第一题签到题不多说 【二进制王国】 #include <iostream> #include <vector> #include <algorithm> using namespace std;//int Cmp(string s1, string s2)测试了一下时间差确实很明显&#xff0c;还是用下面的内个 int Cmp(const string &s1,const st…

如何快速进行城市内涝模拟?HTWATER软件

原文链接&#xff1a;如何快速进行城市内涝模拟&#xff1f;HTWATER软件https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247599079&idx2&sndc6f3da8b17c5587cf5b7766e7019729&chksmfa820200cdf58b16658983ecfbf2b369bff39813302942d6f7eb7b71428c68da71…

在 ubuntu server 22 上安装 Docker 引擎

在 ubuntu server 22 上安装 Docker 引擎 在开始之前&#xff0c;请确保你的系统满足以下条件&#xff1a; 64 位版本的 Ubuntu Mantic 23.10、Ubuntu Jammy 22.04 (LTS) 或 Ubuntu Focal 20.04 (LTS)使用 sudo 或 root 权限 安装步骤 1. 设置 Docker 的 apt 仓库 首先&am…

在Windows上交叉编译STM32(环境搭建)

在Windows上交叉编译STM32 Keil 虽然好用&#xff0c;但是是收费的&#xff0c;不想破解怎么办~ 使用交叉编译工具&#xff01; 交叉编译工具下载 官方交叉编译工具下载连接 下载解压好后将 bin 目录写入 PATH&#xff0c; 使用命令行检测是否安装成功。 Windows 安装 make …

未解决的问题:使用fgets循环读取字符串总是少一行

一、使用fgets循环读取字符串总是少一行 代码 #include<stdio.h> int main() {int n, i;scanf("%d", &n);char line[n][1000];for (i 0; i < n; i) {fgets(line[i], 1000, stdin);}for (i 0; i < n; i) {printf("%s", line[i]);}retur…

纳斯达克大屏媒体尺寸与投放费用:一次投放需要多少钱?

纳斯达克大屏媒体尺寸与投放费用&#xff1a;一次投放需要多少钱&#xff1f; 1. 纳斯达克图片要求 1.1 像素要求 高度&#xff1a;2336 像素宽度&#xff1a;1832 像素 1.2 分辨率要求 像素比率&#xff1a;1.0 px 72 dpi 1.3 文件格式要求 静态图片格式&#xff1a;.…

Django 仿博客园练习

数据库搭建 部分功能介绍 【一】注册 &#xff08;1&#xff09;效果显示、简单简介 主要亮点 结合了layui和forms组件默认头像可以随着性别的选择发生改变自定义头像可以实时更新显示forms组件报错信息可以局部刷新显示在对应框体下面 没有直接使用layui的前端验证后端验证…

unity中手势识别开源代码——HandPoseBarracuda

HandPoseBarracuda是一个使用单目彩色摄像头工作的神经网络手/手指追踪器的概念验证实现。 基本上,HandPoseBarracuda是MediaPipe Hands管道的一个部分端口。尽管它并不是原始包的直接端口,但它使用了相同的基本设计和相同的预训练模型。 请注意,这只是一个概念验证实现。…

SQLite数据库成为内存中数据库(三)

返回&#xff1a;SQLite—系列文章目录 上一篇&#xff1a;SQLite使用的临时文件&#xff08;二&#xff09; 下一篇&#xff1a;SQLite中的原子提交&#xff08;四) ​​ SQLite数据库通常存储在单个普通磁盘中文件。但是&#xff0c;在某些情况下&#xff0c;数据库可能…