Linux를 사용하여 msi 파일 추출


23

관련 : MSI 패키지에서 파일을 추출하는 방법?

Linux를 사용하여 MSI 설치 프로그램의 내용을 추출하려면 msiexecwine과 함께 사용하거나을 사용할 수 있습니다 7zip.

그러나 후자는 디렉토리와 파일 이름을 일부만 보존하지 않습니다. 사용할 필요없이 MSI 파일을 올바르게 추출하는 방법이 wine있습니까?


편집 : 마이크로 소프트의 Infer.NET의 문제를 설명하기는 여기 7zip과가 생산하고 파일의 목록이며 여기에 (후자는 내가 원하는 곳)에 msiexec가 생산하고 하나


이 기사는 우분투에 도움이되기를 바랍니다. 또한 Jsmsix.exe 시도 하십시오 .
— avirk

고마워, 나는 이미 기사를 읽고 7zip 문제를 해결하지 못합니다 (예 : cabextract와 함께). wine기본적으로 Windows 실행 파일을 실행할 수 없으므로 Jsmsix가 여전히 필요합니다 .
— Michael Schubert

어떤 문제에 직면했는지 7zip설명 할 수 있습니까?
— avirk

예를 추가했습니다
— Michael Schubert

2
내가하고 싶은 것은 Archlinux를위한 빌드 스크립트를 만드는 것입니다. 설정 된 와인은 모노에만 의존 해야하는 것을 설치할 수 있기 때문에 매우 큰 의존성입니다.
— Michael Schubert

답변:


9

도움이되지는 않지만 lessmsi 는 기본 Linux 버전에서 작동합니다. 원하는대로 디렉토리 구조를 유지하므로 이것이 장기적인 문제인지 확인하는 것이 좋습니다. 불행히도 Linux에서 .msi 지원은 매우 드문 것으로 보이므로 와인을 통해 덜 MSI 또는 msiexec를 사용하는 것이 유일한 옵션 일 수 있습니다.


실제로 와인을 사용하고 Linux의 경우 덜 MSI를 기다리는 최고의 솔루션 인 것 같습니다.
— Michael Schubert

4
참고 : lessmsi의 최신 릴리스에서는 택시 추출 코드를 Linux에서 실행 해야하는 휴대용 라이브러리 인 libmspack으로 옮겼습니다. 그래서 우리는 최근 리눅스 지원을 향한 구체적인 발걸음을 내딛었습니다. 곧 휴대용 msi lib를 사용하여 모든 것을 휴대용으로 만들려고합니다.
— Scott Willeke

-1. 리눅스 버전은 몇 년이 지난 후에도 여전히 존재하지 않으며, 와인을 사용하지 않고 MSI 파일을 올바르게 추출 할 수있는 방법이 있었기 때문에 문제가 아닙니다. user2834 sudo apt install msitools의 답변에서 권장하는대로 msitools 패키지 ( 우분투) 에서 msiextract를 대신 사용 했습니다.
— Lissanro Rayen

19

msiextract를 사용해보십시오 ( https://live.gnome.org/msitools)

그리고 오픈 버그!


14.04에 대한 패키지가 없으며 빌드하는 데 많은 도구 / 라이브러리와 기술이 필요합니다. 포기
— harry

1
데비안에 있으며, 우분투 윌리는 launchpad.net/ubuntu/+source/msitools 입니다. 그런 다음 간단히 "msiextract file.msi"를 호출하면됩니다. 더 이상 기술이 필요하지 않습니다.
— user2834

여기에서 작동하며 파일 이름과 경로를 유지합니다. 감사.
— Simon A. Eugster

1

cabextract 라는 소프트웨어를 사용해 볼 수 있습니다. 최소한 우분투에는 패키지가 있으며 다른 인기있는 배포판에서도 찾을 수 있습니다.


4
힌트를 주셔서 감사하지만 cabextract는 파일 이름과 디렉토리를 부분적으로 보존하지도 않으므로 7zip보다 성능이 떨어집니다.
— Michael Schubert

MSI 형식은 여러 계층입니다. 최상위 수준에서는 .msi 파일 내부에 데이터 블록이 흩어져있는 디스크 이미지입니다. 디스크 이미지를 디코딩하면 .cab 파일 및 데이터베이스 파일을 포함한 여러 파일이 포함됩니다. cabextract는 .msi 이미지 내에서 CAB 파일 헤더를 찾지 만 전체 .cab 파일이 연속적이지 않아 추출 할 수 없습니다. 7zip은 디스크 이미지를 추출한 다음 CAB 파일 을 추출 할 수 있지만 데이터베이스 파일을 읽는 방법을 모르므로 msi 파일과 같이 CAB 파일 항목을 실제 설치 경로에 매핑합니다.
— Stuart Caie
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.