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"에 추가 .bashrc하고 . 물론 이는 시스템에 gcc가 설치되어 있다고 가정합니다..bashrcsource ~/.bashrc

답변2

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

  2. 설치하려는 프로그램의 특정 세부 사항과 해당 프로그램이 의존하는 라이브러리에 따라 .deb 파일을 다운로드하고 ' dpkg-deb -x'를 사용하여 홈 디렉터리 아래에 압축을 풀 수 있습니다. 그러면 PATH, LD_LIBRARY_PATH및 기타 설정을 "재미있게" 즐길 수 있습니다 variables. 설치하는 프로그램이나 앱이 복잡할수록 더 재미있을 것입니다 :)

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

    마찬가지로, 특정 항목으로 실행되거나 UIDuid를 변경할 수 있는 기능이 있거나 파일이 있을 것으로 예상하는 데몬 및 시스템 서비스는 /etc전혀 ~/etc제대로 작동하지 않을 가능성이 높습니다.

  3. 대부분의 시스템 관리자는 "대부분 무해한" 무해한 프로그램을 mc고려 하고 있습니다.mcedit

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

답변3

당신이 사용할 수있는준네스트, 사용자 디렉터리에 작은 Linux 컨테이너를 생성하여 모든 패키지를 설치할 수 있습니다.

답변4

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

관련 정보