wine是如何让linux wine官网系统兼容windows软件?

wine是如何让linux系统兼容windows软件?_百度知道
wine是如何让linux系统兼容windows软件?
我有更好的答案
不能啊,很多软件兼容很差的 ,比如qq就很不兼容
采纳率:30%
为您推荐:
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Wine是一个在、上容许在下运行程序的软件。另一方面,计算机程序设计师能经由Wine的将视窗的程序转移至类Unix操作系统中运行。也有不少软件经过Wine测试后发布,比如,,。
虽然Wine有另一个非官方名称,"Windows&Emulator",即模拟器,但Wine其实为"Wine&Is&Not anEmulator"的,即Wine不是模拟器。Wine的正确名称是"Wine",不是全大写或全小写。
Wine不是Windows模拟器,而是运用API转换技术实做出Linux对应到Windows相对应的函数来调用以运行Windows程序。Wine是,在(LGPL) 下发布。
我将在基本操作系统(&Elementary OS)Freya上演示这个过程,并安装最新版本的Wine。
如果你在运行Ubuntu衍生版,会在Software Center(软件中心)中找到Wine。不过,那个版本很可能过时了。正由于如此,我们应该避免提供的&默认&版本。为此,我们必须添加官方的Wine软件库。这可以通过两种方法来实现,通过命令行或通过GUI。由于我们的目的是运行Windows应用程序,不妨使用GUI方法。
具体方法如下:
1.&点击Applications(应用程序)菜单。
2.&输入software。
3.&点击Software & Updates(软件和更新)。
4.&点击Other Software(其他软件)选项卡。
5.&点击Add(添加)。
6.在APT行部分输入ppa:ubuntu-wine/ppa(见图2)。
7.&点击Add Source(添加来源)。
8.&输入你的sudo密码。
9.&点击Authenticate(验证)。
10.&点击Close(关闭)。
11.&出现提示后,点击Reload(重新装入)。
12.&打开Software Center(软件中心)。
13.&搜索Wine。
14.&点击Wine项,然后点击Install(安装)。
15.&让安装完成。
图2:添加必要的PPA(个人程序包存档),以便安装最新版本的Wine
就是这样。Wine现在已准备好帮助你安装和运行Windows应用程序了。不过切记:不是每个应用程序都能正常运行。大多数会,但是如果你期望将内部的专有解决方案安装并运行起来,可能会碰到几个障碍。
&三、安装和运行应用程序
不妨安装一个非常受编程人员欢迎的记事本:Notepad++。你需要从不包括第三方应用程序安装选项的位置下载文件(这可能会导致应用程序安装失败)。为了保险起见,从Filehippo(http://www.filehippo.com/zh/download_notepad)下载Notepad++安装程序。你会在Downloads目录下找到Notepad的.exe文件。右击该文件,选择Open in Wine Windows Program Loader(使用Wine Windows程序装载器打开,图3)。
图3:使用Wine运行Notepad++ .msi文件
首次运行后,~/.wine的Wine配置会被更新。这可能要花点时间,具体取决于系统的运行速度。让这个过程完成,然后再熟悉不过的Windows安装向导就会启动,逐步完成安装Notepad++的过程。
点击Next(下一步),逐步完成安装过程。第二个屏幕弹出来后(见图4),你会注意到很不像Linux的Folder路径。
图4:非常不像Linux的文件夹路径
Linux不像Windows那样含有C驱动器。这有什么不对吗?没什么不对。如果你看一下~/.wine文件夹,就会注意到一个名为drive_c的文件夹。该文件夹里面有三个熟悉的子文件夹:
&Program Files
正如你预料的那样,这就是你的C驱动器。也就是说,让Folder路径在安装过程中保持原状。
你最终会进入到安装过程的Choose Components(选择组件)部分(图5)。你在这里可以选择安装选项。如果你的那种桌面环境允许桌面图标(而这是你启用应用程序的首选方法),可能应该选择Create Shortcut on Desktop(在桌面上创建快捷方式,那样就更容易启动刚安装的应用程序――这方面稍后会有更多介绍)。
图5:为Notepad++安装选择安装组件
安装完成后会显示Finish(完成)屏幕。让Run Notepad(运行记事本)方框处于被勾选的状态,点击Finish(完成)。Notepad++就会运行(图1)。
如果你不添加应用程序图标到桌面,当你想再次运行该软件时,会出现什么情况?这是很容易让用户犯难的一个问题。还记得Program Files子目录吗?如果你大胆进入到该文件夹,就会看到Notepad++的文件夹,里面含有notepad++.exe文件。你猜会怎么样?右击该文件,选择Open in Wine Windows Program Loader(使用Wine Windows程序装载器打开),Notepad++就会运行。
Notepad++这个简单的例子表明了Wine的工作原理。如果你深入探究更复杂的应用程序,结果可能不一样。最明智的做法就是回到Wine应用程序数据库,找到你想要安装的那个应用程序,点击它,检查应用程序的当前状态。你会发现每个应用程序列出了测试的Wine版本、是否可以安装、是否可以运行,并给出了评级。评级包括如下:
白金级(Platinum):直接就可以无缝运行的应用程序。
黄金级(Gold):进行一些必要的改动后才能运行的应用程序。
白银级(Silver):运行时会出现小问题的应用程序,但并不影响使用。
你还会发现有些应用程序被列为垃圾(Garbage),这意味着它们没法安装及/或没法运行。
如果你有一个Windows应用程序根本就没有对应的Linux应用程序,别担心――Wine可以帮助你。尽管不是每个Windows应用程序都可以在Wine下运行,但是确实能运行的应用程序数量确实非常多。而考虑到我们如今所做的几乎一切任务都在Web浏览器里面处理,所以只要得到Wine的一点帮助,应该能够满足你在应用程序方面的各个要求。
阅读(...) 评论()Wine(Linux下运行Windows程序)下载 v3.3官方版_ - pc6下载站在 Linux 下面安装 Wine 会不会使 Linux 中 Windows 病毒? - 知乎262被浏览<strong class="NumberBoard-itemValue" title="4分享邀请回答15410 条评论分享收藏感谢收起zerowine.sourceforge.net/1. 如何定义"病毒"?病毒只是一段程序代码,(截至强人工智能问世之前),程序本身并无恶意或者善意,只是写程序和传播程序的人带有善意和恶意,所以有的程序就被称为病毒。Wine 模拟了 Windows 的 API,所以理论上 Windows 上的用户空间程序都可以在 Wine 上运行,用户空间的"病毒"也可以运行。如果实际中出现不能运行的情况,那么大概是 Wine 的 bug,而不是 Wine 的 feature。Wine 没有实现对 Windows 内核驱动的支持(实际上有极其简陋粗糙的模拟,但基本可以忽略),所以 Windows 的内核模块无法在 Wine 上运行。有一些"病毒"包含了内核空间的模块,或者本身就完全在内核空间运行,这种目前仍然不能在 Wine 下运行。从病毒研究的角度来说,其实可以hack一下 Wine loader (loader/main.c, dlls/kernel32/process.c),在加载一个可执行程序之前先转交给病毒检测工具扫描一下二进制,在基于 Wine
的商业应用中这也是安全增强的通行方案。2. 如何定义"Linux 中了 Windows 病毒"?这个不好严格定义。将就一下,分为两种情况,一种是 Windows 病毒在 Wine 环境下运行,但没有获取 Linux root 权限,一种是 (针对特定 Linux 提权漏洞为 Wine 精心设计过的)Windows 病毒通过 Wine 获得 Linux root 权限。传统上只为 Windows 设计的 Windows 病毒,在 Wine 环境下的破坏能力有受到一定的限制,这个限制就是 Linux 的权限管理体系。假设有一个无聊病毒,它的功能就是遍历文件系统的所有目录,删除所有它能删除的文件,那么如果你在 Wine 下用普通用户权限运行,它也能删除你当前用户拥有的所有文件,不过,如果你对 Wine 的 mount point 进行设置,删除 ~/.wine 之外的 其他挂载点,那么可以做到阻止无聊病毒删除 ~/.wine 之外的其他文件。当然,不管哪种情况,这个无聊病毒都无法删除该普通用户无权限删除的文件,例如 /usr/bin 目录。如果你用 root 权限运行了该病毒,那么这个病毒理论上可以删除 Linux 上的绝大多数文件。所以 Wine FAQ 强调了不要用 root 运行 Wine。病毒可以利用的权限有多种多样,文件系统的读写只是一个方面,网络的使用权限又是另一个方面。理论上,Windows 病毒可以在你的 Wine 容器中开个 webserver,虽然它也许访问不了你本地文件系统的大部分目录,但是,它至少可以当个中继,上传下载一些东西,也能玩得很开心。不过,只要你不使用 root 权限运行,那么 Wine 环境下的 Windows 程序就无法直接访问网卡,无法像 wiresharp / tcpdump 那样抓取你的本地 Linux 应用程序的网络流量,无法窃听你访问了什么网站输入了什么信息。当然,如果你用了 root 权限,这些都是可以做到的。严格地说,上面的例子,都不算 “ Linux 中了 Windows 病毒”, 只是 “Windows 病毒在 Wine 环境下运行”。但是,一个为 Wine 环境精心设计的病毒,是可以借助 Wine 为跳板,做更有破坏力事情的,前提是 Linux 宿主有漏洞,并且这个病毒精心利用了该漏洞。Wine 的特点是,不仅可以运行 Windows 程序,而且可以运行 Linux 程序。试试运行 `wine start z:/usr/bin/gedit` 就知道了。如果 Linux 宿主本身有提权漏洞,那么一个精心设计的病毒可以在 Wine 环境下调用一段使用提权漏洞的代码实现提权,然后再调用更有破坏力的代码。如果这种精心设计的病毒在 Wine 上运行并且成功获得了 Linux root 权限,才真正算是 “Linux 中了 Windows 病毒”。从投入回报比例来看,编写和传播这样的病毒可能成本高一些,回报不一定足够大,还没有听说哪个精心为 Wine 环境设计的病毒流行过,如果有同学知道欢迎分享。41添加评论分享收藏感谢收起后使用快捷导航没有帐号?
请完成以下验证码
查看: 1948|回复: 0
(转自深度技术)让Ubuntu也能运行Windows程序-Wine的安装与使用
在线时间33 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 10, 距离下一级还需 190 积分
一粒金砂(中级), 积分 10, 距离下一级还需 190 积分
花了这么多心血才搞好的,我觉得此贴已经具备了置顶的素质,望版主把此贴置顶,让更多的人能来学习Linux,用好Linux。转载请注明出处。 &&安好了ubuntu,摆弄了几天,基本上手了,已经爱上了Linux,但因为用Windows这么长时间了,有不少用习惯的软件只能在Windows下使用,最郁闷的是在ubuntu下没QQ用,用EVA上直接提示版本过旧不让上,万恶的腾讯把以前的QQ都封了,只有版本较新的QQ才让登陆,就为了一个QQ来回切换操作系统很是不方便,怎么办呢,只能在ubuntu下通过Wine(可以说就是Windows模拟器了)来上QQ了。 &&首先来介绍下Wine,Wine是\"Wine Is Not an Emulator\"的缩写,是一个另人神往且目标远大的开放源代码项目,目的是解决Linux运行Windows可执行文件的复杂问题。Wine是一个在XWindows和Unix上执行的Windows APIs(应用程序接口),也可以认为Wine是一个Windows兼容层。但现在仍不能完全运行所有的Windows程序,不过由于几乎每个月都有新版本,越来越多的Windows程序已经能在Wine的帮助下在Linux中运行。 &&Ubuntu安装Wine有两种方式:源码编译或从网络源安装。源码编译相对比较稳定,速度快,效率高,但是需要时间编译,相比一分钟的源安装,几十分钟的编译确实很长,网络源安装是别人已经帮你编译好的了,但是安装之后出现各种奇怪问题的几率很高,所以我还是推荐各位用源码编译的方式来安装wine。 &&接着就要安装一些前期需要的软件包了,打开终端输入: &&sudo apt-get install build-essential(期间可能会提示放入安装光盘) &&sudo apt-get install gcc libc6-dev fakeroot libglib1.2-dev libglib2.0-dev libltdl3-dev libmad0-dev libmng-dev libodbcinstq1c2 libogg-dev libpng12-dev libqt3-headers libqt3-mt-dev libvorbis-dev libxft-dev libxi-dev libxinerama-dev libxmu-dev libxmu-headers libxmuu-dev libxpm-dev libxtrap-dev libxtst-dev libxv-dev libxxf86dga-dev qt3-dev-tools render-dev unixodbc-dev x-dev x11proto-record-dev x11proto-trap-dev x11proto-video-dev x11proto-xf86dga-dev xlibs-dev fontforge flex bison libxext6 (比较多,注意每个包之间的空格,最简单就直接把这段复制过去) &&然后下载最新的Wine源码包(),页面最上方的两个地址里任选一个下载即可。把下载的文件放到任意位置,比如当前用户的主目录。完成这些准备工作后就开始编译安装了: cd ~ &&tar xjvf wine-0.9.55.tar.bz2 &&cd wine-0.9.55/ &&sudo ./configure &&这一步是让Wine检查编译环境,就是检查包依赖是否通过,如果这个不出差错,剩下的几步就只是时间问题。如果过程中提示还缺少了\"XXX package\",那么执行一下\"sudo apt-get install XXX\"就可以了 &&编译环境检测完毕后,会提示运行\"make depend && make\",执行sudo make depend && make &&编译的过程非常漫长(我看了时间,历时31分钟)编译完成后只要不出现错误,就会提示\"Wine build Complete\",这时输入\"sudo make install\"即可,Wine的安装就此完成,经过以上操作,已经将原来Wine的C++源代码变成了可执行程序。接下来就是配置了。 &&安装完毕后在终端输入:winecfg &&这个命令在使用Wine之前必须执行一次,它会建立Wine的运行文件夹\"/home/user/.wine\"。\"Wine\"是一个隐藏文件夹,里面有Wine的注册表文件和虚拟的C盘。接着系统会弹出一个面板,这就是Wine的设置面板。 &&打开Audio的标签,出现一个声音驱动程序的选择框,一般情况下选择\"OSS\"。如果是独立的声卡,选择\"ALSA\"更好。在\"Application Settings\"下的\"Windows版本\"中,把默认设置改成\"Win XP\"。虽然更多Wine的用户反映说Win98支持的软件更多,但现在是似乎是WinXP下能够更流畅的运行软件。如果出现软件不能运行的问题,可以把这个选项中的Win98和WinXP互换下试试,最后保存退出就可以了。 &&我们还需要为Wine设置一个光驱,在终端里输入\"ln -s/dev/scd0~/.wine/dosdevices/d\\:\" &&由于Wine毕竟不是真正的Windows,还是需要调用一些Windows的DLL文件。我们需要到Windows下的system32文件夹里复制mfc42.dll,msvcp60.dll,riched20.dll以及riched32.dll这几个文件到\"~/.wine/drive_c/windows/system32\"里,提示覆盖时确定即可。对于其它的DLL文件请不要覆盖,只有当用Wine执行Windows系统里复制,这样Wine的初期配置就算大功告成了。 &&然后下载了QQ,问题终于解决了,在ubuntu下也可以使用QQ了。
(94 KB, 下载次数: 17)
23:24 上传
下载次数: 17
(98 KB, 下载次数: 1)
23:24 上传
下载次数: 1
(152 KB, 下载次数: 3)
23:24 上传
下载次数: 3
EEWORLD 官方微信
Powered by}

我要回帖

更多关于 linux wine 安装 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信