Parallels 虚拟机 CentOS 及Parallels tools 修改源

2024-03-19 05:32

本文主要是介绍Parallels 虚拟机 CentOS 及Parallels tools 修改源,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

 

看到一篇虚拟机文章特别有用,收藏一下. 方便查找.

 

转载: https://idevz.org/2019/10/%E5%9F%BA%E4%BA%8E-parallels-%E5%B0%9D%E9%B2%9C-centos-8/

 

 Table of Contents

之前为了应对在跨语言开发过程中,需要折腾各种开发环境,我做了一个工具包 runX 来自动化环境部署的过程, 当全新的 CentOS-8 可用后,我就一直想折腾一把,毕竟 7 的内核版本实在太低了。因为最近又对环境部署和自动化工具有些新的想法, 干脆一气呵成,直接在工具集中把这些想法实现出来,但是考虑到变化比较大,而且 runX 本身其实已经是稳定状态, 所以索性搞一个 runX 的全新升级版 Lego。

Lego,旨在想搭积木一样来组合各种部署功能,因为在 runX 这几年的使用过程中,发现经常还是会有些复用的功能, 在 k8s-start 项目中我试验了这种积木的思想,发现很受用。重新整理 runX 到 Lego,主要包含以下几个方面:

  1. 最核心的当然是积木的思想,所有的方法和模块都是可组合的。
  2. 新装虚拟机当前可能无法做到完全自动化,但是可以通过组合的方式实现半自动化。

下面是装机初始的一些步骤,相关的代码会逐步整理到 Lego 这个项目中。

Base 装机步骤

  1. 修改运行级别,CentOS 7 通过修改 /etc/inittab 已经过时,CentOS 8 使用 Target,见下
  2. 通网,往后的各种操作都需要联网进行(设置免密登陆,后续操作都可以通过 ssh 完成)
  3. 更换阿里云的 yum 源,阿里云已经建了 CentOS 8 的 yum 源,因为安装 Parallels Tools 依赖的包需要
  4. 安装 Parallels Tools(否则无法共享目录,以及使用命令行 prlctl 命令控制 pvm)
  5. 关机,设置共享文件夹等通用设置(关机后,在 Parallels 图形界面进行设置较为方便,目前尚未研究通过 prlctl 命令来设置)
  6. 安装 Parallels Tools 后,就可以将 Mac 宿主机中的 runX 项目挂载到 pvm 中,运行相关自动化脚本,比如一些基础设置(/etc/profile,/etc/sudoers 等)

修改运行级别,关闭图形界面

systemctl set-default multi-user.target # run level 3
systemctl set-default graphical.target # run level 5Removed /etc/systemd/system/default.target
Created symlink /etc/systemd/system/default.target -> /usr/lib/systemd/system/multi-user.target

通网

目前 CentOS 8 默认的网络设备为 enp0s5,而不是 eth0,管理工作也由 nmcli 来完成 修改 /etc/sysconfig/network-scripts/ifcfg-enp0s5 文件的内容,然后运行 nmcli c reload 重启 这里主要将 IP 的获取方式由 dhcp 方式修改为静态 IP,相关设置列举如下:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s5
UUID=xxx-334e-4f70-a808-66b097fd4ba1
DEVICE=enp0s5
ONBOOT=yes
IPADDR="10.xxx.xxx.xxx"
NETMASK="255.255.255.0"
GATEWAY="10.xxx.xxxx.1"

更换 yum 源

这里选择阿里云的 yum 源(阿里云率先支持了 CentOS 8 的 yum 源) 首先备份原始源:sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 修改 /etc/yum.repos.d/CentOS-Base.repo 的 baseurl 为 baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/ 修改 /etc/yum.repos.d/CentOS-AppStream.repo 的 baseurl 为 baseurl=https://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/

最后更新缓存使 yum 源的变更生效:

sed -i 's/#baseurl=.*/baseurl=https:\/\/mirrors.aliyun.com\/centos\/$releasever\/BaseOS\/$basearch\/os\//g'  /etc/yum.repos.d/CentOS-Base.repo
sed -i 's/#baseurl=.*/baseurl=https:\/\/mirrors.aliyun.com\/centos\/$releasever\/AppStream\/$basearch\/os\//g'  /etc/yum.repos.d/CentOS-AppStream.reposudo yum clean all
sudo yum makecache

安装 Parallels Tools

Parallels Tools 的安装依赖 epel 和 dkms,而当前 dkms 仅提供了 src.rpm 包,需要下载后自行编译。下面是安装步骤:

  1. 安装 epel 和 rpm-build(后面编译安装 src.rpm 包需要)
  2. rpm-build 编译安装 dkms src.rpm 包
  3. Parallels 图形界面挂载 Parallels Tools 安装包,进行安装

    sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm \
    rpm-build
    curl -fSL https://linux.itecs.ncsu.edu/redhat/ncsu/rhel8-beta-needed/8/SRPMS/dkms-2.6.1-1.el8.src.rpm -o dkms-2.6.1-1.el8.src.rpm
    rpmbuild --rebuild --clean dkms-2.6.1-1.el8.src.rpm # 从编译结果中找到生成的 RPM 包,/home/z/rpmbuild/RPMS
    sudo yum install -y /home/z/rpmbuild/RPMS/noarch/dkms-2.6.1-1.el8.noarch.rpm[ ! -d /media/cdrom ] && sudo mkdir /media/cdrom
    sudo mount | grep iso9660
    sudo umount /dev/cdrom \mount -o exec /dev/cdrom /media/cdrom \cd /media/cdrom/ \./install

免密登陆 mac -> pvm

免密登陆的 2 个关键:

  1. 在于目标机器的 ~/.ssh/authorized_keys 文件中是否包含当前机器用户的 ~/.ssh/id_rsa.pub 文件中的内容。
  2. 限制 ~/.ssh 目录的权限为 700,~/.ssh/authorized_keys 文件的权限为 600。

如下:

mkdir -m 700 -p ~/.ssh
sudo su - && mkdir -m 700 -p ~/.ssh
# 将 id_rsa.pub 的内容 添加到要登陆机器的 authorized_keys 中
STATIC_IP="目的 IP 地址"
scp ~/.ssh/id_rsa.pub z@${STATIC_IP}:~/.ssh/authorized_keys
scp ~/.ssh/id_rsa.pub root@${STATIC_IP}:~/.ssh/authorized_keys

反向免密登陆 pvm -> mac

设置方式与正向免密是一个道理,但其实并不需要设置,直接退出就回来了。

# ssh-keygen -t rsa 生成 id_rsa id_rsa.pub
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

过程中遇到如下问题

  • Parallels 15 才能正常安装(怀疑是 Parallels 14 与 MacOSX Catania 的兼容问题)
  • 手动安装 Parallels Tools(1. 需要先通网;2. 手动编译安装 dkms)
  • 通网,默认网络设备不再是 eth0
  • prlctl 执行 pvm 命令报错:How to fix ‘sudo: no tty present and no askpass program specified’ error? 这个错误是因为 /etc/sudoers 文件中尚未设置当前用户拥有 root 权限

这篇关于Parallels 虚拟机 CentOS 及Parallels tools 修改源的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/824950

相关文章

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

【Tools】大模型中的自注意力机制

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样                      🎵 方芳《摇太阳》 自注意力机制(Self-Attention)是一种在Transformer等大模型中经常使用的注意力机制。该机制通过对输入序列中的每个元素计算与其他元素之间的相似性,

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

如何在运行时修改serialVersionUID

优质博文:IT-BLOG-CN 问题 我正在使用第三方库连接到外部系统,一切运行正常,但突然出现序列化错误 java.io.InvalidClassException: com.essbase.api.base.EssException; local class incompatible: stream classdesc serialVersionUID = 90314637791991

【Tools】AutoML简介

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样                      🎵 方芳《摇太阳》 AutoML(自动机器学习)是一种使用机器学习技术来自动化机器学习任务的方法。在大模型中的AutoML是指在大型数据集上使用自动化机器学习技术进行模型训练和优化。

【Tools】大模型中的注意力机制

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样                      🎵 方芳《摇太阳》 在大模型中,注意力机制是一种重要的技术,它被广泛应用于自然语言处理领域,特别是在机器翻译和语言模型中。 注意力机制的基本思想是通过计算输入序列中各个位置的权重,以确

centos 6安装 vim

centos 安装vim 1.首先查询当前当前vim所依赖的包存在不存在.检查缺少哪个几个依赖包 [root@bogon firstCopy]# rpm -qa|grep vivimvim-common-7.4.160-5.el7.x86_64vim-enhanced-7.4.160-5.el7.x86_64vim-filesystem-7.4.160-5.el7.x86_64vim-

HotSpot虚拟机的经典垃圾收集器

读《深入理解Java虚拟机》第三版笔记。 关系 Serial、ParNew、Parallel Scavenge、Parallel Old、Serial Old(MSC)、Concurrent Mark Sweep (CMS)、Garbage First(G1)收集器。 如图: 1、Serial 和 Serial Old 收集器 2、ParNew 收集器 3、Parallel Sc

理解java虚拟机内存收集

学习《深入理解Java虚拟机》时个人的理解笔记 1、为什么要去了解垃圾收集和内存回收技术? 当需要排查各种内存溢出、内存泄漏问题时,当垃圾收集成为系统达到更高并发量的瓶颈时,我们就必须对这些“自动化”的技术实施必要的监控和调节。 2、“哲学三问”内存收集 what?when?how? 那些内存需要回收?什么时候回收?如何回收? 这是一个整体的问题,确定了什么状态的内存可以

NGINX轻松管理10万长连接 --- 基于2GB内存的CentOS 6.5 x86-64

转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=190176&id=4234854 一 前言 当管理大量连接时,特别是只有少量活跃连接,NGINX有比较好的CPU和RAM利用率,如今是多终端保持在线的时代,更能让NGINX发挥这个优点。本文做一个简单测试,NGINX在一个普通PC虚拟机上维护100k的HTTP