如何在Ubuntu上打开SDM.pkg和.sdx文件?


17

我想下载Windows 8磁盘映像,但是我要下载的文件是SDM.pkg100189659562.sdx。如何在运行Ubuntu的计算机上打开这些文件?




Google翻译:Tu pregunta noestálimpia,请帮个忙,实践一下du du de que lo que quieres hacer。
卡西姆

所有人注意:SDM.pkg和任何.sdx文件的配对建议使用Windows ISO和软件的MSDNAA,OnTheHub或DreamSpark下载的安全下载管理器,这些都是许可证必需的东西。这是该问题缺少的信息,我在这里和我的回答中都做了说明。
托马斯·沃德

1
现在有一个选择使用Linux-SDM-Downloader:github.com/RadekSimkanic/Linux-SDM-Downloader
PauloAndréHaacke

Answers:


9

我从Microsoft的Web开发人员(modern.ie)的VM资源中下载了免费的VirtualBox Windows XP VM ,并使用VM内部的SDM将映像下载到主机系统上的VirtualBox“共享文件夹”中。(Wine不适用于我(尝试使用Bernd的方法,Ubuntu 13.10)。)


Wine似乎因为现在运行msiexec而感到厌烦。已针对debian仓库发布了一个错误修复程序,对于ubuntu仓库发布了一个错误修复程序。感谢大众的提示,这似乎是最稳定的解决方案。
长颈鹿队长

7

我遇到了同样的问题,最后经过几周的反向工程后,编写了一个程序,该程序能够解压缩SDC文件。您可以直接找到我的网页上一步一步的指示在这里

大约一个月前,我迫切需要从Dreamspark下载Microsoft Windows的副本。不幸的是我当时还没有安装Windows,所以不得不使用Linux来完成。成功交易后,我得到了指向SDX文件和名为SDM的程序的链接。看起来很容易。但事实并非如此。我被鼓励下载的程序是带有.pkg扩展名的存档。几分钟后,我发现它是OS X应用程序包。因此,下一步是尝试下载Windows版本并尝试在Wine的帮助下执行它。失败了 然后,我尝试在网上找到一些技巧。我发现其他一些人也有同样的问题。其中一些可以使用Wine下载,而有些则不能。对我来说,只有一个解决方案:自己动手。正如您可能猜到的那样,这几乎是完全成功的。

如果您已经有SDC文件,请不要跳过,因为您可能仍然没有解压缩文件所需的密钥。第一步是在您喜欢的文本编辑器中打开SDX文件。您将看到一个链接。在网络浏览器中打开它。现在,您需要进入页面源。完成的方式取决于您的Web浏览器。现在我们需要在代码中找到一些奇怪的值。实现此目的的最简单方法是搜索关键字“ edv *”,其中*是要下载的文件数(从1开始计算)(它们在您打开的页面的“项目”列表中)。现在,您需要将以下变量的值复制到某处:'oiopu *','oiop *','fileID *'(-参见上文)。我们需要的最后一个是'dlSelect',但您需要搜索该内容,因为它位于另一个位置。现在,您可以构建URL,该URL将使您包含两个有趣值的文件:文件URL和解密字符串。该URL的格式为:

http://[SDXdomain]/WebStore/Account/SDMAuthorize.ashx?oiopu=[oiopu]&f=[fileID]&oiop=[oiop]&dl=[dlSelect]

现在,您应该看到类似于以下内容的XML文件:

<information>
 <oiopua>01234abcd-0123-4567-890a-0123456789ab</oiopua>
 <edv>0123456789^^0123456789QwErTyUiOpAsDfGhJkLzXc0123456789QwErTyUiOpAsDfGhJkLzXc12345678</edv>
 <linkAvailable>1</linkAvailable>
 <errorTextKey/>
 <invokeExternalDownload>0</invokeExternalDownload>
 <fileUrl><![CDATA[http://software.dreamspark.com/dreamspark/ENGLISH/SDCfileName.sdc]]></fileUrl>
</information>

这里的最后一步是从fileUrl下载文件并将edv值保存在file中。重要的是带有密钥的文件应与SDC文件完全相同,并加上“ .key”后缀。

更新:

我刚刚发现,当文件大小超过2.0 GB时,情况会有所不同。在这种情况下,Dreamspark会将文件拆分为两个或更多文件。这种情况很容易识别,因为sdc文件名的后缀是:“。01.sdc”。在这种情况下,您需要尝试下载URL仅相差一位数字的文件。'.01.sdc','。02.sdc','。03.sdc'。当您遇到最后一个文件时,该文件的大小应比其余文件小,并将该数字增加一个将给您BlobNotFound错误。

下载所有文件后,只需要将它们合并为一个文件。使用dd即可轻松实现。

 dd if=pl_windows_7_professional_with_sp1_x64_dvd_u_676944.02.sdc >> pl_windows_7_professional_with_sp1_x64_dvd_u_676944.01.sdc

然后可选

 dd if=pl_windows_7_professional_with_sp1_x64_dvd_u_676944.03.sdc >> pl_windows_7_professional_with_sp1_x64_dvd_u_676944.01.sdc

之后,您将准备好要解压缩的sdc文件。

开箱SDC

现在,有了SDC文件,您就可以开始解压缩文件了。至少对我来说,上一部分非常简单。当我尝试发现文件如何存储在该容器中时,问题就开始了。但请放心,我已经编写了简单的程序来为您做。截至目前(6月1日),它仍处于真正的Alpha早期阶段,并且有很多限制。它能够解压缩仅包含一个文件的容器,不创建任何目录,无法验证文件的校验和以及其他一些我不记得或不知道的问题。

如果您在Internet上进行一些搜索,您可能发现过去有人破解了该容器。不幸的是,微软此后更改了格式。响应本文,也有可能再次更改它。为了让他们更难阻止我的软件,我在github上发布了源代码,在完成反向工程之后,将撰写第二篇文章,介绍如何在后台进行工作并描述sdc文件格式。

但是,让我们回到拆箱中。现在,您需要从github下载xSDM。可以通过键入以下内容下载最新版本

git clone https://github.com/v3l0c1r4pt0r/xSDM.git

在终端中(当然,您需要安装git)。不过,我建议您下载最新的标记版本。您可以通过单击项目页面上的发行版,然后选择顶部的发行版(或第一个beta /稳定版,如果有的话)并单击“ tar.gz”来执行此操作。tar.gz可以通过键入以下命令解压缩

tar -zxvf xSDM-[tag-name].tar.gz

进入控制台。然后输入以下内容进入xSDM目录

cd xSDM

(或您的发布目录)并按标准编译程序

./configure
make
make install

安装是可选的。现在要解压文件,只需键入

 src/xsdm [path-to-your-sdc-file]

就是这样,您现在应该可以打开下载的文件。如上所述,该程序处于早期测试阶段,因此我不能保证它在任何情况下都可以运行。如果您遇到任何问题,请随时在github上的项目页面上打开问题。

可以从github下载SDC解压缩程序


1
这对我来说很棒!调用xSDM或xSDM失败时,我需要使用'-f'(强制)选项。谢谢v3l0c1r4pt0r!
hogliux 2014年

谢谢,对我有用。请注意,make install如果您不需要系统范围的安装,则无需使用。
Demurgos

此方法现在不起作用:(
andrzej1_1

4

“ .pkg”是通常用于安装软件程序的安装程序文件的扩展,它们主要用于在Mac OS X中安装应用程序。这些文件可以单独安装,也可以使用该软件的一部分的安装脚本。1个

您提到的.pkg文件是安全下载管理器(“ SDM”)的安装程序。该程序无法在Ubuntu下运行,并且需要使用Mac操作系统才能运行。它只能在Mac上打开,因为它无法正确解压缩或在Ubuntu下安装。2

因此,您首先需要MSI安装程序来获取所需的软件包。要在Ubuntu计算机上获得此权限,您可能需要将用户代理更改为Windows计算机的代理,以便为您提供下载MSI软件包的链接。这可以通过扩展程序在许多浏览器中完成,例如Firefox。然后,可以将其设置为浏览器的Windows等效版本,下载MSI和SDX文件,并根据需要禁用扩展名

现在,您可以使用WINE来运行此仅窗口文件。WINE是一个软件包,允许某些Windows应用程序在Linux上运行。要安装,只需按键盘上的Ctrl+ Alt+ T打开终端。打开时,运行以下命令:

sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get install wine
sudo apt-get install winetricks

确保将IE6用作WINE中的浏览器-SDM仅与此兼容,而不与IE9兼容。因此,这就是为什么您需要获得Winetricks套餐的原因

然后,准备葡萄酒。

export WINEARCH=win32
export WINEPREFIX=~/.wine32
winetricks ie6

现在,安装SDM。

cd directory-where-you-saved-SDM.msi
wine msiexec /i SDM.msi    

单击安装程序。将安装目录更改为C:\ SDM \或类似的目录

现在,您需要获取.sdx文件。保存。该文件的名称类似于100001234.sdx。

现在,将它们放在一起:

wine ~/.wine32/drive_c/SDM/e-academy\ Inc/SecureDownloadManager/SecureDownloadManager.exe 100001234.sdx

请记住,如有必要,请更改sdx文件的名称以及可执行文件的路径。

1资料来源: Techyv

2资料来源: Thomas W的答案

资料来源:科学线


在这种情况下,SDX文件实际上是“安全下载管理器”(SDM)使用的文件,而不是音频文件。但是,由于无法安装SDM,因此将无法使用SDX文件。
Moshe Katz 2013年

@MosheKatz OP没有提供很多信息,因此该问题已关闭。我认为这不值得被否决:)看看这个
米奇


1
我认为以上wine msiexec SDM.msi应该是wine msiexec /i SDM.msi
Sampo Smolander 2014年

1
注意:如果您既未安装IE6,也未使用WINEARCH = win32,则它可以正常安装,并且似乎可以正常运行,但是实际下载从未开始,它始终保持在0%。
艾伯特

1

我刚刚从GitHub 找到了Linux-SDM-Downloader

它可以很好地下载SDC文件。

但是,它无法再提取密钥文件。

我认为值得一试,但:-)

此程序将被遵循,谁知道,有一天密钥提取将起作用。


0

我目前使用最简单的解决方案,使用较新的SDM.msi和SDX文件:

使用最新的winetricks并安装.net 4.5.2

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
bash winetricks dotnet452 corefonts

安装下载管理器

wine msiexec /i SDM.msi

请享用

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.