可以在Linux上运行Windows软件吗(linux能运行win软件吗?)

liftword5个月前 (01-21)技术文章44

Linux与Windows是什么

首先需要回答Linux与Windows是什么?它们都属于操作系统的范畴,是一种软件,一种特殊的软件,而不是硬件(看的见摸的着),而且从某种意义上来说操作系统是计算机或者手机等最重要的软件,它是这些硬件(计算机、手机等等)的大管家,具体来说管理计算机的内存和进程,以及所有的软件和硬件,可以说没有操作系统,计算机就毫无用处。

那么当下主要有哪些操作系统呢?

  • Mac os(苹果公司出品)
  • Windows(微软公司出品,也许是最为熟悉的操作系统)
  • Linux(有很多不同的发行版本,一般使用者为专业的从业人员)
  • Dos(很多情况下可以忽略)
  • 手机操作系统(安卓、iOS、鸿蒙等)

为什么在Linux需要运行Windows软件

多年前Linux主要用于各类服务器,但是现在越来越多的计算机也采用Linux作为桌面操作系统,有些Linux发行版(发行版可以理解为不同的公司或者团队基于相同的核心开发了含有不同功能的Linux)已经从使用角度已经非常接近Windows,甚至也可以玩游戏,而且我们知道很多应用都转向互联网,因此桌面系统本身已经变的没那么重要,但是仍然有些场景需要运行Windows软件,尤其对于安全从业人员来说。

总的来说实现这种需求有多种方法,苏日安有些方法看来已经过时了,不同方法有不同的应用场景:

第一种:双系统:在计算机上安装双系统(双引导),很多年前,这是一种比较常见的方法,可以同时拥有两种环境:Windows与Linux,在启动的时候选择想要的系统。

第二种:虚拟机软件:如VMWARE,VirtualBox等。虚拟机是 Linux PC 上运行 Windows 软件的一种非常方便的方式, 可以在虚拟机软件中安装 Windows 系统。 在虚拟机环境中的Windows 会“认为”它在真实的硬件上运行,但它实际上是虚拟环境中。

第三种:Wine工具:Wine 是一种在 Linux 上直接运行 Windows 软件的方式,但这种方法不需要安装沉重的Windows系统。Wine 是一个开源的“Windows 兼容层”,它作为Windows程序与Linux操作系统之间的桥梁,使 Windows 程序可以在 Linux 上运行。在 Wine 中运行的程序就像本地程序一样,而且没有模拟器的性能/内存损失。

本文主要说明最后一种方法,即Wine工具的安装使用以及在Wine环境安装Python运行环境。

Wine的安装使用

1. 安装wine

# apt-get install wine

#winecfg

此时会弹框,点击确定即可。

下载python3, 可能最新的版本在wine环境无法安装成功,我选择了3.7.6版本

#wget https://www.python.org/ftp/python/3.7.6/python-3.7.6.exe

2. 安装python3

在python3所下载的目录里,利用wine命令安装python3

#wine python-3.7.6.exe

此时会出现python3安装图形界面,直接下一步即可完成安装(不过此时要记得Python所安装的目录,或者你可以自定义相应的目录进行安装)。

3. 安装python第三方模块

为了在wine环境安装python第三方模块,需要安装pip

先下载pip安装文件,

#wget https://bootstrap.pypa.io/get-pip.py

然后用python.exe(需要找到python.exe的安装位置,否则无法运行)

#wine /root/.wine/drive_c/users/root/Local\ Settings/Application\ Data/Programs/Python/Python37-32/python.exe get-pip.py

然后就可以利用pip工具安装第三方工具了,比如pyinstaller

#wine /root/.wine/drive_c/users/root/Local\ Settings/Application\ Data/Programs/Python/Python37-32/python.exe -m pip install pyinstaller

相关文章

全世界都公认的运行Python最简单方法

Python是一种跨平台的编程语言,这意味着它可以在Windows,macOS,Linux等多种平台上运行,甚至可以移植到Java和.NET虚拟机。它是免费和开源的。即使当今的大多数Linux和Mac...

运维必备!用Python管理多个Linux服务器的连接与命令执行

引言:代码实现多个Linux服务器的SSH连接,支持添加、删除连接,执行命令,并返回标准输出。可以在需要时批量处理多个服务器,避免了手动逐个登录和执行命令的繁琐过程。代码封装如下:# -*- codi...

【Python程序开发系列】如何让python脚本一直在后台保持运行

这是我的第385篇原创文章。一、引言让 Python 脚本在后台持续运行,有几种常见的方式,具体方式可以根据你的系统环境和需求选择。二、Linux 或 macOS 系统2.1 使用 nohup命令no...

Linux系统如何安装Python?新手教程

新手入门Python的第一步就是要在你的计算机上安装好Python。有些人可能要问了,Linux系统如何安装Python?本文为你准备了一份新手安装Python的教程,几乎是手把手教你如何操作,你只要...

如何在Linux系统中搭建Python编程环境

在大多数的Linux系统中,基本上都默认安装了Python,也就是说,在Linux的系统中基本上是不需要安装什么软件,就可以使用Python。下面以ubuntu操作系统为例,看看如何在Linux操作系...

加速 Python 程序的 10 个技巧(python加快运算速度)

有很多方法可以提高 Python 应用程序的性能。以下是加快 Python 速度的 10 个硬核编码技巧。总的来说,人们使用 Python 是因为它方便且对程序员友好,而不是因为它快速。大量的第三方库...