【图说】VMware Ubuntu22.04 详细安装教程

前言

  1. 无论是从事 Linux 开发工作,还是希望电脑运行双系统,VMware 虚拟机都是我们日常工作不可或缺的工具。
  2. 本章将会重点介绍 VMware 安装流程,以及在 VMware 上如何运行、使用 Ubuntu22.04 系统。

一、VMware 下载安装

1.1  VMware 官网下载

以目前最新稳定版本 "VMware-workstation-full-17.5.1-23298084" 为例介绍安装流程。

官网下载地址:Download VMware Workstation Pro

1.2  VMware 安装步骤

VMware17 许可证密钥: 

  1. MC60H-DWHD5-H80U9-6V85M-8280D
  2. 4A4RR-813DK-M81A9-4U35H-06KND
  3. NZ4RR-FTK5H-H81C1-Q30QH-1V2LA
  4. JU090-6039P-08409-8J0QH-2YR7F
  5. 4Y09U-AJK97-089Z0-A3054-83KLA
  6. 4C21U-2KK9Q-M8130-4V2QH-CF810 
  • 点击 "Workstation 17 Pro for Windows" -- "DONWLOAD NOW" 下载 
  • 直接双击运行、安装

  

  • VMware 安装完毕,双击桌面图标
  • 最终界面如下 

二、Ubuntu 下载安装 

2.1 Ubuntu 官网下载

  • 目前虽然已有 "Ubuntu 23.10" 版本,但不是长期维护的,所以暂弃使用
  • 以目前最新长期稳定版本 "Ubuntu 22.04.4 LTS" 为例介绍安装流程

官网下载地址:Download Ubuntu Desktop

2.2 Ubuntu 安装步骤

  • 正式配置虚拟机,点击 "开启此虚拟机"

 

  • 选择中文简体,点击 "安装 Ubuntu" 
  • 一直保持默认配置即可

  • 地区选择 Shang-hai 

  • 输入用户名和密码 

  • 安装完成,立即重启虚拟机 

  • 重启后,输入密码登录虚拟机 

  • 跳过在线账号连接 

  • 不发送系统信息,一路点击 "前进",直到出现桌面 

 

  • 配置完毕,最终界面展示如下

三、Ubunt 常用安装命令

Ubuntu 安装软件常用命令为 apt 或 apt-get 工具。以下是一些基本安装命令示例: 

3.1 更新软件包列表 

sudo apt update

3.2 升级所有已安装的包到最新版本 

sudo apt upgrade

3.3 安装一个新的软件包

sudo apt install package-name

*注:将 package-name 替换为你想要安装的软件包名称。

3.4 移除(卸载)一个软件包 

sudo apt remove package-name

3.5 清理不再需要的依赖包和文件 

sudo apt autoremove
sudo apt autoclean

3.6 安装示例 

例如,如果你想要安装 vim 编辑器,可以使用以下命令: 

sudo apt install vim

四、Ubuntu 常规配置 

4.1 配置静态 IP 地址 

  • 点击 “有线(已连接)” -- "有线设置" 

 

  • 填写 IP 地址、子掩码、网关、DNS【根据实际情况填写】 
  • 重启虚拟机

  • ping www.baidu.com 验证网络是否可用

4.2 防火墙设置

  1.  快捷键打开终端:

    Ctrl + Alt + T 
  2. 查看防火墙状态:

    sudo ufw status
  3. 停止防火墙服务(这将禁用防火墙并停止其运行):

    sudo ufw disable
  4. 重启防火墙:

    sudo ufw reload
  5. 启用防火墙:

    sudo ufw enable
  6. Windows 防火墙设置:

4.3 NFS 服务器安装与配置

  1. 更新软件包列表

    sudo apt update
    
  2. 安装 NFS 服务器

    sudo apt install nfs-kernel-server
    
  3. 创建 NFS 服务器共享目录:创建一个目录,用于将文件共享给客户端(例如,使用 /home/nfs 作为共享目录):

    sudo mkdir /home/nfs
    
  4. 修改 NFS 服务器配置文件:打开 NFS 服务器配置文件 /etc/exports,并指定共享目录及其属性:

    sudo vi /etc/exports
    /home/nfs *(rw,sync,no_root_squash)
    

    解析:

    • /home/nfs:指定 /home/nfs 为 NFS 服务器的共享目录。
    • *:允许所有网段访问,您也可以使用具体的 IP 地址。
    • rw:挂载此目录的客户端对该共享目录具有读写权限。
    • sync:资料同步写入内存和硬盘。
    • no_root_squash:root 用户具有对根目录的完全管理访问权限。
  5. 重启 NFS 服务器

    sudo service nfs-kernel-server restart
    

    或者

    sudo /etc/init.d/nfs-kernel-server restart
    
  6. 客户端访问 NFS 服务器共享目录

    • 在客户端挂载服务器共享目录:在嵌入式开发板或 Ubuntu 的 NFS 客户端中挂载服务器共享目录(将 192.168.0.130 替换为你的 NFS 服务器 IP):
      sudo mount -t nfs -o nolock 192.168.0.130:/home/nfs /nfsroot
      
      • -t:挂载的文件系统类型。
      • -o nolock:不使用文件锁。
      • 192.168.0.130:/home/nfs:NFS 服务器 IP 和共享目录。
      • /nfsroot:客户端已存在的目录。
    • 在客户端卸载服务器共享目录
      sudo umount /nfsroot
      

4.4 SSH 服务器安装与配置 

  1. 更新系统软件包

    sudo apt update && sudo apt upgrade -y
    
  2. 安装 SSH(OpenSSH) 服务

    sudo apt install openssh-server
    
  3. 启用 SSH 服务(立即启动)

    sudo systemctl enable ssh
    sudo systemctl start ssh
    
  4. 验证 SSH 服务状态(是否正常运行

    sudo systemctl status ssh
    

    注:如果状态显示为 active (running),则表示服务正常。

  5. SSH 服务器拒绝了密码(解决方法)

    •  核对 ssh 连接时的用户名,是否与你的系统用户名一致。

      查看系统用户(例如,我的系统用户名是 kh):

      kh@kh-vm:~$ cd ~
      kh@kh-vm:~$ pwd
      /home/kh

      错误示范(错误使用了计算机名称 kh-vm 作为了用户)

      ssh kh-vm@192.168.0.130

      注:如果不小心用了 kh-vm 作为用户去连接 SSH 服务器时,就会出现拒绝了密码的提示。

      ssh kh-vm@192.168.0.130

      正确示范(正确使用了系统用户 kh

      ssh kh@192.168.0.130

      注:SSH 服务器能正常连接成功。

    • 如果你希望以 root 身份连接 SSH 服务器(可选):

      编辑 SSH 配置文件:

      sudo vi /etc/ssh/sshd_config
      

      找到 PermitRootLogin prohibit-password,将其修改为 PermitRootLogin yes

      重启 SSH 服务:

      sudo systemctl restart ssh

4.5 Samba 服务器安装与配置 

  1. 安装 Samba

    • 更新软件包:
      sudo apt update
      
    • 然后安装 Samba 包:
      sudo apt install samba
      
  2. 备份 Samba 配置文件

    • 保留默认配置文件作为备份:
      sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
      
  3. 打开终端查看系统用户:

    cd ~
    pwd

    注:一般来说,如果用户存在 /home/XX (XX 就是你的系统用户名称)。

  4. 创建 Samba 用户(如果用户已存在则跳过此步骤

    • Samba 有自己的用户管理系统。但是,任何存在于 Samba 用户列表中的用户也必须存在于 /etc/passwd 文件中。
    • 如果你的系统用户尚不存在,首先使用 useradd 命令创建一个新用户,然后再创建一个新的 Samba 用户:
      sudo useradd <username>       # <username> 替换为你的用户名
      sudo smbpasswd -a <username>  # <username> 替换为你的用户名
      
  5. 创建共享目录

    • 创建一个共享目录,并赋予权限,例如 /home/<username>/sambashare:
      sudo mkdir -p /home/<username>/sambashare
      sudo chmod -R 0777 /home/<username>/sambashare
      
  6. 编辑 Samba 配置文件

    • 打开 /etc/samba/smb.conf 文件:
      sudo vi /etc/samba/smb.conf
      添加以下内容:
      [shared]path = /home/<username>/sambashareread only = noguest ok = yes
      
    • 保存并关闭文件。
  7. 重启 Samba 服务

    sudo systemctl restart smbd
    
  8. 从 Windows 访问 Samba 服务器

    • 在 Ubuntu 上,使用 ifconfig 查看服务器 <Ubuntu_IP> 地址:
      ifconfig
    • 在 Windows 上,(win + r) 输入 Samba 的访问地址路径:
      \\<Ubuntu_IP>\sambashare
      
    • 输入 Samba 用户的凭据(用户名和密码)。

 4.6 解决删除键(Backspace)无法使用的问题

  1. 重装 ncurses-base 库并重启 Ubuntu

    • 打开终端并运行以下命令:
      sudo apt-get install ncurses-base
      
    • 重启你的 Ubuntu 系统。
  2. 安装 vim 的完整版本

    • 默认情况下,Ubuntu 预装的是 vim-tiny,而我们需要使用 vim-full。
    • 执行以下命令安装 vim 的完整版本:
      sudo apt-get install vim

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

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

相关文章

【Hello算法】 > 第 3 关 >栈与队列

数据结构 之 数组与链表 1 栈 / 栈的常见操作、实现、应用2 队列 /队列的常见操作、实现、应用3 双向队列4 Tips ———————————————————————————————————————————————————————————- ————————————————…

鼠标坐标传感器FCT3065

参考链接 如何优雅的DIY鼠标&#xff1f; | 技术文章 | 汇顶科技开发者社区 (goodix.com)https://developers.goodix.com/zh/bbs/blog_detail/bebdd04ccdfc4f7682ab27a8e77a14ad GitHub - VineetSukhthanker/FCT3065-XY_MouseSensor: Interface FCT3065-XY optical mouse sen…

面试算法准备:动态规划

这里写自定义目录标题 1 理论2 例题2.1 斐波那契数列&#xff08;什么是重叠子问题&#xff09;2.1.1 带备忘录的递归解法 2.2 零钱兑换&#xff08;讲解最优子结构&#xff09;2.3 最长递增子序列&#xff08;讲解如何求解状态转移方程&#xff09;2.4 俄罗斯套娃信封问题&…

Vue3、 Vue2 Diff算法比较

Vue2 Diff算法 源码位置:src/core/vdom/patch.ts 源码所在函数:updateChildren() 源码讲解: 有新旧两个节点数组:oldCh和newCh; 有下面几个变量: oldStartIdx 初始值=0 oldStartVnode 初始值=oldCh[0] oldEndIdx 初始值=oldCh.length - 1 oldEndVnode 初始值=oldCh[ol…

鸿蒙 harmonyos 线程 并发 总结 async promise Taskpool woker(三)多线程并发 Worker

Worker Worker是与主线程并行的独立线程。创建Worker的线程称之为宿主线程&#xff0c;Worker自身的线程称之为Worker线程。创建Worker传入的url文件在Worker线程中执行&#xff0c;可以处理耗时操作但不可以直接操作UI。 Worker主要作用是为应用程序提供一个多线程的运行环境…

CTFshow-PWN-栈溢出(pwn36)

存在后门函数&#xff0c;如何利用&#xff1f; 好好好&#xff0c;终于到了这种有后门函数的了 checksec 检查一下&#xff1a; 32 位程序&#xff0c;RELRO 保护部分开启 RWX: Has RWX segments 存在可读可写可执行的段 使用 ida32 看 main 函数 跟进 ctfshow 函数…

Scala 04 —— Scala Puzzle 拓展

Scala 04 —— Scala Puzzle 拓展 文章目录 Scala 04 —— Scala Puzzle 拓展一、占位符二、模式匹配的变量和常量模式三、继承 成员声明的位置结果初始化顺序分析BMember 类BConstructor 类 四、缺省初始值与重载五、Scala的集合操作和集合类型保持一致性第一部分代码解释第二…

L3-1 夺宝大赛-2024天梯赛(内存超限解决方法)

题目 夺宝大赛的地图是一个由 nm 个方格子组成的长方形&#xff0c;主办方在地图上标明了所有障碍、以及大本营宝藏的位置。参赛的队伍一开始被随机投放在地图的各个方格里&#xff0c;同时开始向大本营进发。所有参赛队从一个方格移动到另一个无障碍的相邻方格&#xff08;“…

聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用

前言 Arthas 是一款线上监控诊断产品&#xff0c;通过全局视角实时查看应用 load、内存、gc、线程的状态信息&#xff0c;并能在不修改应用代码的情况下&#xff0c;对业务问题进行诊断&#xff0c;包括查看方法调用的出入参、异常&#xff0c;监测方法执行耗时&#xff0c;类…

Redis入门到通关之Redis实现Session共享

文章目录 ☃️前期概要☃️基于Session实现登录方案☃️现有方案存在的问题☃️Redis代替Session的业务流程❄️❄️设计key的结构❄️❄️设计key的具体细节❄️❄️整体访问流程 欢迎来到 请回答1024 的博客 &#x1f353;&#x1f353;&#x1f353;欢迎来到 请回答1024的博…

redis原理篇(黑马程序员虎哥 )回忆笔记

原理&#xff0c;老师讲的真好。相见恨晚。 以下内容是按视频课程的章节安排&#xff0c;在我自己听完课之后&#xff0c;凭借记忆总结的。&#xff08;可能存在疏漏不足&#xff0c;后期补全和修正&#xff0c;同时也在这个过程巩固我自己的对于这个组件相关原理的学习&#x…

中国DIVI版,wordpress DIVI网站主题在国内的替代方案。

最受欢迎的WordPress主题之一是Divi。我们创建了这个全面的Divi主题评论&#xff0c;以帮助您更好地了解其优点和潜在缺点。 Divi主题是什么&#xff1f; Divi是一个流行的WordPress主题&#xff0c;提供了一个网站建设平台。它有一个可视化编辑器选项&#xff0c;为新手和专业…

手撕红黑树(map和set底层结构)(2)

[TOC]红黑树 一 红黑树概念 红黑树&#xff0c;是一种二叉搜索树&#xff0c;但在每个结点上增加一个存储位表示结点的颜色&#xff0c;可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制&#xff0c;红黑树确保没有一条路径会比其他路径长出俩倍&…

选择ERP系统需要考虑哪些因素 企业ERP系统选型指南

ERP系统是一个复杂的软件系统&#xff0c;中小企业要建成ERP系统首先是要选择一个适合自己的ERP软件。目前市场上的ERP软件品种繁多&#xff0c;功能各异&#xff0c;那么中小企业应如何结合自己的实际情况“量体裁衣”找到最适合自己的ERP软件呢?这是目前中小企业进行ERP选型…

介绍-响应式编程-001

&#x1f917; ApiHug {Postman|Swagger|Api...} 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱&#xff0c;有温度&#xff0c;有质量&#xff0c;有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace 开篇&am…

Ultralytics YOLOv8 英伟达™ Jetson®处理器部署

系列文章目录 前言 本综合指南提供了在英伟达 Jetson设备上部署Ultralytics YOLOv8 的详细攻略。此外&#xff0c;它还展示了性能基准&#xff0c;以证明YOLOv8 在这些小巧而功能强大的设备上的性能。 备注 本指南使用Seeed Studio reComputer J4012进行测试&#xff0c;它基于…

2024年三支一扶报名照上传要求很严格

2024年三支一扶报名照上传要求很严格

Unity 使用GPU计算物体距离

在游戏开发中&#xff0c;计算物体之间的距离是一个常见的需求&#xff0c;例如用于碰撞检测、视觉效果等。传统的计算方法可能会在大量物体时带来性能问题&#xff0c;而在 Unity 中&#xff0c;借助 GPU 进行计算可以有效提高性能。本文将介绍一种使用 Compute Shader 在 Uni…

windows安装nc命令的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

C++ | Leetcode C++题解之第40题组合总和II

题目&#xff1a; 题解&#xff1a; class Solution { private:vector<pair<int, int>> freq;vector<vector<int>> ans;vector<int> sequence;public:void dfs(int pos, int rest) {if (rest 0) {ans.push_back(sequence);return;}if (pos fr…