데비안 또는 우분투의 '.msi'및 'setup.exe'파일에 해당합니까?


15

이 답변 은 Windows에 응용 프로그램을 설치하기위한 파일 .msi및 설명 setup.exe입니다.

데비안 또는 우분투 .msisetup.exe파일 과 동등한 파일이 있습니까? 음주 .deb패키지 파일에 해당 .msi하거나 setup.exe다른 사람 또는 뭔가?


8
왜 이런 질문을하는지 모르겠 기 때문에이 질문을 겪는 사람을위한 일반적인 의견으로 말하겠습니다. 소프트웨어를 "수동으로"설치하는 방법이 있지만 대부분의 Linux 배포에서 선호하는 방법은 패키지 관리자를 통해 소프트웨어를 설치하는 것입니다. 이렇게하면 자동으로 보안 업데이트를받을 수 있으며 배포와의 호환성을 보장하기 위해 일정 수준의 테스트가 수행됩니다. 메인 리포지토리에서 사용할 수없는 최신 버전의 소프트웨어가 필요한 경우 커뮤니티 리포지토리 (예 : 우분투의 PPA)를 사용하지만 항상 패키지 관리자를 사용하십시오.
Muzer

.setupWindows 에는 파일 이 없습니다 setup.exe. 설치 프로그램의 일반적인 이름을 의미 합니까?
gronostaj

참조 man 페이지 와 거기에서 링크 된 문서를. 본질적으로 할 수있는 다른 작업은 물론 Windows에도 동등한 기능이 없습니다 . apt-getapt-get install
jthill

5
@jthill, 그건 사실이 아닙니다. apt-getPowershell은 완전히 다듬어지지 않았거나 인기가 없지만 최신 (Win7 이상) 버전의 Powershell을 OneGet통해 설치할 수 있습니다 Chocolatey( HomebrewMac 과 동일 ). 그것들은 'nix 등가물보다 인기가 적지 만 Windows에는 동등한 것이 없다는 것은 명백히 부정확합니다.
flith

1
@Tim :이 질문은 "동등한"이라는 의미를 정확하게 지정하지 않으면 현명하게 대답 할 수 없습니다 . 관심있는 파일 및 설치 프로그램 의 특정 특성은 무엇입니까 .msi? 어떤 것이 "동등한"것인지 아닌지를 결정 하는 정확한 기준 은 무엇입니까 ? 예를 들어 : 설치 프로그램은 다른 프로그램과 같은 프로그램입니다. 라는 프로그램에는 특별한 것이 없습니다 setup.exe. 때문에 setup.exe다른 프로그램과 같은 단순한 프로그램이며, 데비안은 가장 확실하게 수행 하면 이와 동등한 고려 않는다 "프로그램"의 개념이? 그렇지 않다면 왜 안됩니까?
Jörg W Mittag

답변:


28

아마 가까이보다 MSI 설치로 setup.exe하는 .deb패키지는 파일 시스템에 복사뿐만 아니라 (다른 것들 사이)를 실행하는 사전 및 사후 설치 후크의 컬렉션에 파일의 트리가 포함되어 있습니다. 훅은 시스템에서 사용자를 추가하는 것, 내가 Windows에서 보지 못했던 것을 포함하여 시스템에서 효과적으로 무엇이든 할 수 있습니다. 그들이 할 수없는 한 가지는 다른 .deb패키지를 설치 하는 것입니다. 데이터베이스는 설치 중에 잠겨 있으므로 종속성을 통해서만 달성 할 수 있습니다. .deb그런 다음 패키지를 설치하면 유지 관리가 용이하도록 설치된 패키지의 중앙 데이터베이스에 항목이 생성됩니다.

ttf-mscorefonts패키지 자체가 다운로드 만 스크립트를 포함하고 글꼴을 설치한다는 점에서 패키지는 흥미 롭다. 이 스크립트는 이러한 후크 중 하나에서 실행됩니다.

가까이는 다음의 제품에 setup.exe실행 한 후, 프로젝트의 홈페이지에서 progam의 소스 코드를 다운로드 할 수 있습니다 ./configure && make && sudo make install, 또는 다른 어떤 저자가 사용하기로 결정 방법. 이 방법은 설치된 프로그램의 데이터베이스에 패키지를 추가하지 않으므로 나중에 제거하는 것이 훨씬 어려울 수 있습니다.

또 다른 차이점은 a .deb가 종속성을 지정하므로 올바른 설치가 보장 될 수 있다는 것입니다. 내가 아는 한, Windows 세계에서 MSI는 다른 MSI를 설치할 수 없으므로 setup.exe일반적으로 이러한 종류의 종속성 추적에 사용됩니다. 여러 의견에 따르면 MSI는 종속성의 이름을 지정할 수 있지만 .deb패키지 와 같은 MSI의 중앙 데이터베이스가 없기 때문에 종속성이 없으면 설치에 실패 할 수 있습니다.

따라서 a .deb는 MSI 설치 관리자와 a 사이에 setup.exe있습니다. 이 패키지는 설치 전 및 설치 후 후크 중에 원하는 모든 작업을 수행 할 수 있으며, 고유 한 종속성을 명명하고 일반적으로 찾을 수 있으며, 유지 관리가 용이하도록 중앙에 설치 기록을 남깁니다.


2
Windows에서 setup.exe스타일 설치 관리자는 추적 된 설치 관리자 시스템 (제거 프로그램 등) 과도 통합됩니다. MSI와 .exe설치 프로그램을 모두 사용하면 설치 프로그램에 종속성 ( 예 : VC 재배포 가능 설치 프로그램 또는 DirectX 설치 프로그램)을 포함시키고 실행 파일과 함께 (또는 시스템 어셈블리로) 종속성 DLL을 설치하여 종속성을 처리합니다. 또한와 setup.exe비슷합니다 .deb. 소스에서 빌드하는 것과 동등한 것은 Windows의 소스에서도 빌드하는 것입니다. ;-).
Stephen Kitt

내가 MSI는이 (제외 데비안 패키지가 다른 패키지를 설치할 수없는 것처럼, 또 다른 MSI를 설치할 수 없습니다 설치 실행 파일보다 더 가까운 데비안 패키지에있는 MSI를 만드는 한 가지 를 통해 자사의 종속성을).
Stephen Kitt

@StephenKitt : setup.exe-style 설치 프로그램은 아래에서 MSI를 실행하지 않는 한 OS에서 "추적"되지 않습니다 (그런 다음 MSI가 추적됩니다). 제거 레지스트리 키가 있다는 사실은 이것과 관련이 없습니다. 파일 시스템에 나열되어 있기 때문에 모든 파일을 추적한다고 말하는 것과 같습니다.
user541686

2
.MSI의 중앙 리포지토리가 없기 때문에 MSI는 종종 (더 큰 제품에서) 종속성을 가질 수 있습니다. 일반적으로 종속성을 놓칠 때 발생하는 일은 설치를 거부하는 것입니다.
Matteo Italia

1
"제가 Windows에서 본 적이없는 것 : 시스템 서비스에 사용자 추가하기" SQL Server, IIS 및 Visual Studio 설치 관리자 가이 작업을 수행한다고 확신합니다. 그러나 Windows 사용자 모델이 기본 Unix / Linux 모델 (루트이거나 아님)보다 약간 더 정교 해져 있기 때문에 덜 명확 할 수 있습니다.
MSalters

15

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으로 temp 폴더로 자동 압축 풀기하여 실제 설치 프로그램을 실행하는 것과 동일합니다 .


6

/ubuntu/13415/what-are-run-files/13416#13416 에서 가져온

.run 파일은 일반적으로 프로그램을 설치하기 위해 실행해야하는 사용자 정의 프로그램입니다. 파일의 위치를 ​​추적하지 않으며 일반적으로 제거 방법을 제공하지 않으므로 일반적으로 지원되지 않습니다. 스크립트가 시스템에서 무엇을하는지 확신 할 수 없으므로 안전하지 않은 것으로 간주됩니다.

그들은 Windows exe 파일에 가깝고 동일한 문제가 발생합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.