Linux 용 휴대용 앱?


12

묻는 이 질문은 휴대용 애플 리케이션을 리눅스에서 사용할 수있다 - 생각 날 잡았어? 많은 간단한 도구를 독립 실행 형으로 실행할 수 있다는 것을 알고 있지만 일반적인 Linux 배포판에서 보안 제한이 발생합니까?

어쨌든 대부분의 기본 Linux 시스템에서 도구 등의 가용성을 고려할 필요가 있습니까?

편집 : 분명히하기 위해 기존 Linux 시스템에서 실행할 수있는 응용 프로그램을 찾고 있습니다. 필요하지 않은 경우 전체 OS를 옮기고 싶지 않습니다.

답변:


7

GNU 툴체인을 사용하는 대부분의 응용 프로그램은 다음과 같은 소스에서 빌드 할 수 있습니다.

./configure --prefix=[directory which will contain your 'portable' application]
make
make install

호환되는 라이브러리가있는 다른 컴퓨터로 옮겼습니다.

리눅스에는 많은 어플리케이션들이 실제로 '설치'될 필요가없는 레지스트리가 없습니다. 대신 소스에서 빌드 할 수 있기 때문에 "Linux 용 My Specialy Portable © applications"를 만드는 것은 무의미하므로 아무도 이것에 관심이 없다고 생각합니다.

이 질문 에 대한 최상위 답변을 살펴보면 라이센스 관리 기능이있는 레지스트리 및 독점 응용 프로그램의 세계에서 응용 프로그램을 '휴대용' '유용한'으로 만드는 어리석은 개념을 이해할 수 있습니다.


감사! 나는 그것이 어리석은
일인지

5

./configure트릭은 일부 응용 프로그램에서 작동합니다. 그러나 많은 응용 프로그램은 접두사를 자체로 인코딩 한 다음 런타임에 접두사를 사용하여 지원 파일을 찾습니다. 또한 LD_LIBRARY_PATH환경 변수를 설정하여 공유 라이브러리 파일을로드 할 수 있어야합니다. 그러나 그 결과 휴대용 응용 프로그램은 이식성이 떨어질 가능성이 높으며 지정된 접두사에 따라 달라집니다. 이것은 아마도 많은 장소에서 작동 할 것입니다 (대부분의 최신 배포판 마운트 미디어 /media/DISKNAME)는 응용 프로그램이 실제로 휴대 가능하고 위치 독립적이지 않습니다.

따라서 정답은 이식 가능한 Linux 응용 프로그램을 만드는 것이 불가능하지는 않지만 미묘한 영향을 미친다는 것입니다. 이것이 Windows에서와 같이 거의 수행되지 않는 이유에 대한 주요 요인이라고 생각합니다. 또한 공공 컴퓨팅 시설 (휴대용 응용 프로그램 혜택이 많이 발생하는 곳)은 일반적으로 Linux를 실행하지 않습니다. 주목할만한 예외는 대학 실험실이지만 일반적으로 홈 디렉토리에 일부 추가 소프트웨어를 설치할 수 있습니다.


1

Linux for Travelers 는이 주제를 추적하고 Linux를 대상으로하는 휴대용 앱이 아직 설치되지 않았다는 사실을 해결할 수있는 몇 가지 트릭을 가지고 있습니다. 휴대용을 사용할 필요가 없습니다.

  • WINE을 설치하고 PortableApps.com 또는 다른 곳 에서 앱을 실행하십시오 . 이것은 과도한 것으로 보이지만 이미 가지고있는 휴대용 앱 설치를 사용할 수 있습니다.
  • 기존 Linux 설치 내에서 Damn Small Linux를 실행하십시오 (예 : Ubuntu ). 당신이하지 않으면이 사람은 유용 이미 한 주어진 리눅스 시스템에 대한 권한을 설치합니다.


1

Portable Linux Apps를 확인할 수 있습니다 . 휴대용 바이너리를 다운로드하여 실행 가능하게 만드십시오. 필요한 모든 종속성이 이진에 포함됩니다.


1

응용 프로그램을 이식 가능하게 만들려면 로그인 할 때 홈 폴더에 넣은 심볼릭 링크를 만들 수 있습니다. 응용 프로그램은 심볼릭 링크를 통해 환경 설정으로 연결되어 플래시 드라이브를 말합니다. 휴대용 Minecraft 절약을 위해 이것을 사용했습니다.


1

기존 Linux 시스템에서 앱을 실행할 때 발생하는 문제는 종종 앱이 공유 라이브러리를 사용하도록 컴파일된다는 것입니다. 많은 Linux 배포판과 여러 버전의 기본 라이브러리가 있습니다. 운이 좋으면 기존 Linux 시스템의 버전이 동일하며 앱이 올바른 버전의 라이브러리와 연결됩니다. 그렇지 않으면 작동하지 않습니다. 해결 방법은 정적으로 링크 된 라이브러리로 필요한 앱을 컴파일하는 것이지만 프로그램 크기가 훨씬 커집니다.


1

또 다른 질문은 오늘날 클라이언트 측 코드를 한 번 작성한 다음 프레임 워크를 활용하여 iOS, Android 및 웹용 합성 클라이언트를 과도하게 사용하는 신생 기업의 개념입니다. 여기서 비즈니스 로직은 이식 가능하지만 해당 툴링에 의해 자동으로 이식됩니다. 많은 프레임 워크가 있으며, Meteor는 하나입니다.

이런 식으로, 앱 스토어에서 발견되는 모든 앱의 상당 부분이이 휴대용 유산을 가지고 있습니다.

이 아이디어를 더 흐리게하기 위해 이제 웹 어셈블리를 사용하여 클라이언트를 대상으로 자바 스크립트를 합성하도록 구문 분석되는 점점 정적으로 컴파일 된 전통적으로 서버 측 언어로 브라우저 코드 (정의는 javascript)를 작성할 수 있습니다.

그러나 Nodejs를 감싸는 GUI 또는 명령 줄인 Electron과 같은 툴링을 사용하여 Linux 응용 프로그램을 요구하고 있습니다. 휴대용 Linux 응용 프로그램에 대한 아이디어는 선택의 폭이 넓습니다.


0

필드에 새로운 플레이어 인 AppImage가 있습니다. 응용 프로그램은 모든 종속성이 포함 된 단일 파일로 패키지되므로 기본 배포에 관계없이 실행될 수 있습니다.

AppImageHub 에 앱 이미지 저장소가 있습니다 .

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