
이 답변Windows에 애플리케이션을 설치하기 위한 설명 .msi
과 파일입니다.setup.exe
Debian이나 Ubuntu의 파일 .msi
과 동등한 것이 있습니까 ? 패키지 파일이 또는 다른 것에 해당합니까 setup.exe
?.deb
.msi
setup.exe
답변1
setup.exe
아마도 패키지 .deb
에는 파일 시스템에 복사할 파일 트리와 실행할 사전 및 사후 설치 후크 모음이 포함되어 있는 것 보다 MSI 설치 프로그램에 더 가깝습니다 . 후크는 Windows에서 본 적이 없는 작업, 즉 시스템 서비스에 사용자를 추가하는 작업을 포함하여 시스템에서 모든 작업을 효과적으로 수행할 수 있습니다. 그들이 할 수 없는 한 가지는 다른 .deb
패키지를 설치하는 것입니다. 설치 중에 데이터베이스가 잠겨 있으므로 이는 종속성을 통해서만 달성할 수 있습니다. 패키지를 설치하면 .deb
유지 관리가 용이하도록 설치된 패키지의 중앙 데이터베이스에 항목이 생성됩니다.
패키지 ttf-mscorefonts
자체에는 글꼴을 다운로드하고 설치하는 스크립트만 포함되어 있다는 점에서 흥미롭습니다. 이 스크립트는 이러한 후크 중 하나에서 실행됩니다.
더 가까운 방법은 setup.exe
프로젝트 홈페이지에서 프로그램의 소스 코드를 다운로드한 후 실행 ./configure && make && sudo make install
하거나 작성자가 사용하기로 결정한 다른 방법일 수 있습니다. 이 방법은 설치된 프로그램의 데이터베이스에 패키지를 추가하지 않으므로 나중에 패키지를 제거하는 것이 훨씬 더 어려울 수 있습니다.
또 다른 차이점은 가 .deb
종속성을 지정하므로 올바른 설치가 보장된다는 것입니다. 내가 아는 한, Windows 세계에서 MSI는 다른 MSI 설치를 유발할 수 없으므로 setup.exe
일반적으로 이러한 종류의 종속성 추적에 사용됩니다. 여러 의견에 따르면 MSI는 종속성의 이름을 지정할 수 있지만 패키지와 같은 MSI의 중앙 데이터베이스가 없기 때문에 .deb
종속성이 누락되면 설치가 실패하게 됩니다.
따라서 a는 .deb
MSI 설치 프로그램과 setup.exe
. 패키지는 설치 전후 후크 중에 원하는 모든 작업을 수행할 수 있고 일반적으로 자체 종속성을 명명하고 찾을 수 있으며 유지 관리가 용이하도록 중앙 위치에 설치 기록을 남깁니다.
답변2
Linux에서 본 단일 파일 바이너리 설치 프로그램은 .sh
다음과 같이 바이너리 blob과 연결된 셸 스크립트를 포함하는 파일이었습니다.
#!/bin/bash
tmpdir=$(mktemp -d /tmp/installer.XXX)
tail -n +6 "$0" | tar -xJf - -C "$tmpdir" || exit 1
sudo "$tmpdir/setup.sh"
rm -rf "$tmpdir"
exit
[binary content follows]
setup.exe
이는 임시 폴더로 자체 압축을 풀고 거기에서 실제 설치 프로그램을 실행하는 것과 기본적으로 동일합니다 .
답변3
출처:https://askubuntu.com/questions/13415/what-are-run-files/13416#13416
.run 파일은 일반적으로 프로그램을 설치하기 위해 실행해야 하는 맞춤형 프로그램입니다. 이는 파일이 어디로 이동하는지 추적하지 않고 일반적으로 제거 방법을 제공하지 않기 때문에 일반적으로 지원되지 않습니다. 스크립트가 시스템에 어떤 영향을 미칠지 확신할 수 있는 방법이 없으므로 시스템이 안전하지 않은 것으로 간주됩니다.
그들은 Windows exe 파일에 가깝기 때문에 동일한 문제가 발생합니다.