sudo 권한 없이 로컬로 프로그램을 설치하는 방법은 무엇입니까?

sudo 권한 없이 로컬로 프로그램을 설치하는 방법은 무엇입니까?

사용자로서 일부 Ubuntu 서버에 대한 SSH 액세스 권한이 있고 편의를 위해 일부 비시스템 도구(mc, rtorrent, mcedit)를 설치해야 한다고 가정합니다. 나는 이 작은 프로그램으로 관리자를 귀찮게 하고 싶지 않습니다.

그런 것을 사용하지 않고 설치(실행)하는 방법이 있습니까 sudo apt-get install?

답변1

소스에서 이를 컴파일해야 합니다. 이건 그냥 질문으로 해야지

apt-get source PACKAGE
./configure --prefix=$HOME/myapps
make
make install

그러면 바이너리는 에 위치하게 됩니다 ~/myapps/bin. 따라서 파일에 추가하고 . 물론 export PATH="$HOME/myapps/bin:$PATH"이는 시스템에 gcc가 설치되어 있다고 가정합니다..bashrc.bashrcsource ~/.bashrc

답변2

  1. 컴파일하고 설치합니다 ~/bin(그리고 이를 포함하도록 .bashrc설정을 편집합니다). PATH라이브러리도 유사하게 컴파일 및 설치될 수 있으며 ~/lib( LD_LIBRARY_PATH이를 가리키도록 설정) 개발 헤더는 ~/includes예를 들어 다음 과 같이 설치될 수 있습니다.

  2. 설치하려는 프로그램의 특정 세부 사항과 해당 프로그램이 의존하는 라이브러리에 따라 .deb 파일을 다운로드하고 " dpkg-deb -x"를 사용하여 홈 디렉터리에 추출할 수 있습니다. 그러면 설정 하는 등 많은 "재미"를 갖게 될 것입니다 PATH. 더 복잡한 프로그램이나 애플리케이션을 설치할수록 더 많은 즐거움을 누릴 수 있습니다 :)LD_LIBRARY_PATHvariables

    물론 이 방법으로 바이너리를 설치할 수는 없습니다 setuid. 바이너리는 설치되지만 (루트 권한을 부여하거나 설정할 수 있는 권한이 없기 때문에 setuid) 바이너리는 단지 일반 바이너리일 뿐입니다.

    마찬가지로 특정 방식으로 실행 UID되거나 uid를 변경할 수 있거나 파일이 /etc해당 위치에 있을 것으로 예상되는 ~/etc데몬 및 시스템 서비스는 제대로 작동하지 않을 가능성이 높습니다(전혀).

  3. mc대부분의 시스템 관리자는 이를 mcedit"대부분 무해한" 무해한 프로그램으로 간주합니다 .

    그러나 토렌트 클라이언트 설치가 무해하다고 생각하는 사람은 거의 없습니다. 특히 대역폭 비용을 지불해야 하거나 법적 책임을 져야 하는 경우에는 더욱 그렇습니다. 대부분의 시스템 관리자는 최종 사용자가 허가 없이 그러한 소프트웨어를 설치하는 것을 별로 좋아하지 않을 것입니다. 그들은 "물론이죠, 가서 쓰러지세요"라고 말할 수도 있고 그렇지 않을 수도 있습니다. 그러나 기계 소유자/관리자에게 문제를 일으킬 수 있는 질문은 무엇이든 물어봐야 합니다.

답변3

당신은 그것을 사용할 수 있습니다둥지 모으기, 사용자 디렉터리에 모든 패키지를 설치할 수 있는 작은 Linux 컨테이너가 생성됩니다.

답변4

사실 제가 오늘 만든 도구가 있어요
https://github.com/z3r0n3t/pkget 필요한 것은 특별한 루트 없이 bash에 액세스하는 것뿐입니다. whet을 사용하여 zip 파일로 다운로드하거나 git clone을 사용할 수 있습니다.

관련 정보