Chciałbym pobrać obrazy dysków systemu Windows 8, ale pliki do pobrania to SDM.pkg
i 100189659562.sdx
. Jak mogę otworzyć te pliki na moim komputerze z systemem Ubuntu?
Chciałbym pobrać obrazy dysków systemu Windows 8, ale pliki do pobrania to SDM.pkg
i 100189659562.sdx
. Jak mogę otworzyć te pliki na moim komputerze z systemem Ubuntu?
Odpowiedzi:
Pobrałem darmową maszynę wirtualną VirtualBox Windows XP z zasobu maszyny wirtualnej Microsoft dla programistów internetowych (modern.ie) i użyłem SDM wewnątrz maszyny wirtualnej do pobrania obrazów do „folderu współdzielonego” VirtualBox w systemie hosta. (Wine nie działało dla mnie (wypróbowałem sposób Bernda, Ubuntu 13.10).)
Miałem ten sam problem i wreszcie po kilku tygodniach inżynierii odwrotnej napisałem program, który jest w stanie rozpakować plik SDC. Możesz znaleźć instrukcję krok po kroku na mojej stronie tutaj :
Mniej więcej miesiąc temu pilnie potrzebowałem pobrać kopię systemu Microsoft Windows z Dreamspark. Niestety nie zainstalowałem wtedy systemu Windows, więc musiałem to zrobić przy użyciu systemu Linux. Po udanej transakcji dostałem link do pliku SDX i programu o nazwie SDM. Wyglądało na to, że będzie łatwo. Ale tak nie było. Program, który zachęcono mnie do pobrania, to archiwum z rozszerzeniem .pkg. Jak odkryłem kilka minut później, był to pakiet aplikacji OS X. Kolejnym krokiem była próba pobrania wersji Windows i uruchomienie jej przy pomocy Wine. Nie powiodło się. Potem próbowałem znaleźć kilka wskazówek w sieci. Znalazłem kilka innych osób mających ten sam problem. Niektóre z nich można pobrać za pomocą Wine, a inne nie. Dla mnie było tylko jedno rozwiązanie: zrób to sam. Jak zapewne się domyślacie, był to (prawie) pełny sukces.
Rozwiązanie
Jeśli masz już plik SDC, nie pomijaj, ponieważ prawdopodobnie nadal nie potrzebujesz klucza do rozpakowania pliku. Pierwszym krokiem jest otwarcie pliku SDX w ulubionym edytorze tekstu. Zobaczysz link. Otwórz w przeglądarce internetowej. Teraz musisz przejść do źródła strony. Sposób, w jaki można to zrobić, zależy od przeglądarki internetowej. Teraz musimy znaleźć kilka dziwnych wartości w kodzie. Najłatwiejszym sposobem na osiągnięcie tego jest wyszukanie słowa kluczowego „edv *”, gdzie * to liczba plików, które chcesz pobrać, licząc od 1 (znajdują się na liście „Pozycje” na otwartej stronie). Teraz musisz skopiować gdzieś wartości następujących zmiennych: „oiopu *”, „oiop *”, „fileID *” ( patrz wyżej). Ostatnim, którego potrzebujemy, jest „dlSelect„ale w przypadku tego trzeba wyszukać, ponieważ znajduje się on w innym miejscu. Teraz możesz zbudować URL, który pozwoli Ci na plik zawierający dwie interesujące wartości: URL pliku i ciąg deszyfrujący. Format tego adresu URL to:
http://[SDXdomain]/WebStore/Account/SDMAuthorize.ashx?oiopu=[oiopu]&f=[fileID]&oiop=[oiop]&dl=[dlSelect]
Teraz powinieneś zobaczyć plik XML, który wygląda podobnie do tego:
<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>
Ostatnim krokiem będzie pobranie pliku z fileUrl i zapisanie wartości edv w pliku. Ważne jest, aby plik z kluczem miał taką samą nazwę jak plik SDC z dodatkiem sufiksu „.key”.
Aktualizacja:
Właśnie odkryłem, że sytuacja staje się nieco inna, gdy rozmiar pliku przekracza 2,0 GB. W takim przypadku Dreamspark dzieli plik na dwa lub więcej plików. Sytuację tę można łatwo rozpoznać, ponieważ sufiks nazwy pliku sdc to: „.01.sdc”. W takim przypadku musisz spróbować pobrać plik, którego adres URL różni się tylko o jedną cyfrę, tj. „.01.sdc”, „.02.sdc”, „.03.sdc”. Gdy napotkasz ostatni plik, powinien on mieć mniejszy rozmiar niż reszta, a zwiększenie tej liczby o jeden powinno dać ci błąd BlobNotFound.
Po pobraniu wszystkich plików wystarczy połączyć je w jeden. Można to łatwo osiągnąć za pomocą dd, tj.
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
a następnie opcjonalnie
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
Następnie otrzymasz plik SDC przygotowany do rozpakowania.
Rozpakowywanie SDC
Teraz, gdy masz plik SDC, możesz rozpocząć rozpakowywanie go. Poprzednia część była, przynajmniej dla mnie, bardzo łatwa. Problem zaczął się, gdy próbowałem dowiedzieć się, jak plik jest przechowywany w tym kontenerze. Ale nie martw się, napisałem prosty program, aby to dla ciebie zrobić. Na dzień dzisiejszy (1 czerwca) wciąż jest na bardzo wczesnym etapie alfa i ma wiele ograniczeń. Jest w stanie rozpakować kontenery, które zawierają tylko jeden spakowany plik, nie tworzy żadnych katalogów, nie może zweryfikować sumy kontrolnej pliku i prawdopodobnie kilka innych problemów, których nie pamiętam lub o których nie wiem.
Jeśli szukałeś trochę w Internecie, prawdopodobnie odkryłeś, że ktoś złamał ten pojemnik w przeszłości . Niestety Microsoft zmienił format od tego czasu. Możliwe jest również, że w odpowiedzi na ten artykuł zostanie ponownie zmieniony. Aby utrudnić im blokowanie mojego oprogramowania, publikuję kod źródłowy na githubie, a po zakończeniu procesu inżynierii wstecznej napiszę drugi artykuł opisujący, jak wszystko działa pod maską i opiszę format pliku sdc.
Wróćmy jednak do rozpakowywania. Teraz musisz pobrać xSDM z github . Najnowszą wersję można pobrać, pisząc
git clone https://github.com/v3l0c1r4pt0r/xSDM.git
w twoim terminalu (oczywiście musisz mieć zainstalowany git). Niemniej jednak radzę pobrać najnowszą oznaczoną wersję. Możesz to zrobić, klikając na wydania na stronie projektu, a następnie wybierając ten na górze (lub pierwszą wersję beta / stajnię, jeśli istnieje) i klikając „tar.gz”. tar.gz można rozpakować, pisząc
tar -zxvf xSDM-[tag-name].tar.gz
do konsoli. Następnie przejdź do katalogu xSDM, wpisując
cd xSDM
(lub katalog wydania) i skompiluj program zgodnie ze standardem
./configure make make install
gdzie instalacja jest opcjonalna. Teraz, aby rozpakować plik, wystarczy wpisać
src/xsdm [path-to-your-sdc-file]
I to wszystko, teraz powinieneś być w stanie otworzyć pobrany plik. Jak wspomniano powyżej, program jest w bardzo wczesnej fazie alfa, więc nie mogę zagwarantować, że i tak będzie działać. Jeśli napotkasz jakiekolwiek problemy, nie krępuj się otworzyć problem na stronie projektu w github.
SDC unpacker można pobrać z github .
make install
jeśli nie będziesz instalować całego systemu.
„.Pkg” jest rozszerzeniem dla plików instalatora, które są zwykle używane do instalowania oprogramowania, i są one najczęściej używane do instalowania aplikacji w Mac OS X. Pliki te można instalować osobno lub można do nich odwoływać się przy użyciu skrypt instalatora, który jest częścią oprogramowania. 1
Wspomniany plik .pkg jest instalatorem programu Secure Download Manager („SDM”). Ten program nie działa w systemie Ubuntu i wymaga do działania systemu operacyjnego Mac. Można go otworzyć tylko na komputerze Mac, ponieważ nie wypakowuje poprawnie lub nie instaluje się w systemie Ubuntu. 2)
Najpierw będziesz potrzebował instalatora MSI, aby uzyskać potrzebne pakiety. Aby uzyskać to na komputerze z systemem Ubuntu, prawdopodobnie będziesz musiał zmienić swojego agenta użytkownika na komputer z systemem Windows, aby uzyskać link do pobrania pakietu MSI. Można to zrobić w wielu przeglądarkach za pomocą rozszerzenia - np . W przeglądarce Firefox . Następnie możesz ustawić go jako odpowiednik przeglądarki Windows, pobrać pliki MSI i SDX oraz wyłączyć rozszerzenie, jeśli chcesz
Teraz możesz użyć WINE, aby umożliwić uruchomienie tego pliku tylko dla systemu Windows. WINE to pakiet oprogramowania, który umożliwia uruchamianie niektórych aplikacji Windows w systemie Linux. Aby zainstalować, wystarczy nacisnąć Ctrl+ Alt+ Tna klawiaturze, aby otworzyć Terminal. Kiedy się otworzy, uruchom poniższe polecenia:
sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get install wine
sudo apt-get install winetricks
Upewnij się, że używasz IE6 jako przeglądarki w WINE - SDM po prostu działa z tym, a nie z IE9. Dlatego właśnie potrzebujesz pakietu Winetricks
Następnie ustaw wino.
export WINEARCH=win32
export WINEPREFIX=~/.wine32
winetricks ie6
Teraz zainstaluj SDM.
cd directory-where-you-saved-SDM.msi
wine msiexec /i SDM.msi
Kliknij za pomocą instalatora. Zmień katalog instalacyjny na C: \ SDM \ lub coś podobnego
Teraz musisz pobrać plik .sdx. Zapisz to. Plik ma nazwę 100001234.sdx.
Podsumowując:
wine ~/.wine32/drive_c/SDM/e-academy\ Inc/SecureDownloadManager/SecureDownloadManager.exe 100001234.sdx
Pamiętaj, aby w razie potrzeby zmienić nazwę pliku sdx i ścieżkę do pliku wykonywalnego.
1 Źródło: Techyv
2 Źródło: odpowiedź Thomasa W.
Źródło: Threads of Science
wine msiexec SDM.msi
powinno byćwine msiexec /i SDM.msi
Właśnie znalazłem Linux-SDM-Downloader z GitHub
Pobiera pliki SDC w porządku.
Jednak nie można już wyodrębnić plików kluczy.
Myślę jednak, że warto spróbować :-)
Ten program ma być przestrzegany i kto wie, pewnego dnia wyodrębnienie klucza zadziała.
Moje obecnie najłatwiejsze rozwiązanie z nowszymi plikami SDM.msi i SDX:
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
bash winetricks dotnet452 corefonts
wine msiexec /i SDM.msi