큰 컴퓨터 시스템에서 관리자가 아닌 사용자입니다. 시스템에 설치되지 않은 최신 패키지가 필요합니다. yum을 사용하여 설치하고 싶습니다. sudo, admin 또는 root 액세스 권한이없는 사용자로서 패키지 관리를 사용하여 홈 디렉토리에 패키지를 설치할 수 있습니까? 항상 소스에서 make를 사용할 수 있지만 yum을 사용할 수 있으면 인생이 더 쉬워집니다.
큰 컴퓨터 시스템에서 관리자가 아닌 사용자입니다. 시스템에 설치되지 않은 최신 패키지가 필요합니다. yum을 사용하여 설치하고 싶습니다. sudo, admin 또는 root 액세스 권한이없는 사용자로서 패키지 관리를 사용하여 홈 디렉토리에 패키지를 설치할 수 있습니까? 항상 소스에서 make를 사용할 수 있지만 yum을 사용할 수 있으면 인생이 더 쉬워집니다.
답변:
대부분의 바이너리는 아래의 특정 위치에 설치되도록 컴파일됩니다 /
.
젠투 접두사 및 루트 리스 GoboLinux 와 같은 루트가 아닌 패키지 관리자와 0install이 있습니다.
당신이 말한 것처럼 자신을 컴파일하면 그 문제를 완화하거나 chroot를 사용할 수 있습니다. 그러나 chroot를 사용하는 가장 큰 장애물은 전제 조건이며 커널 공유 객체에 대한 링크입니다.
를 사용하지 말고 yum
원하는 rpm을 찾아서 다운로드하십시오. 루트가 아닌 경우 직접 설치할 수는 없지만 RPM 패키지는 실제로 멋진 .cpio 파일이므로 내용을 압축 해제 할 수 있습니다. 가장 쉬운 방법은 아마도 mc
( "midnight commander") 파일 브라우저 (가장 큰 소프트웨어 중 하나)를 사용 .rpm
하는 것입니다. 그러면 파일 내용을 탐색하고 파일을 바로 복사 할 수 있습니다.
Sans는 rpm2cpio
.cpio로 변환 한 다음 cpio
파일을 추출하여 올바른 위치에 넣을 수 있습니다. 이 두 가지 모두 이미 redhat 또는 fedora 시스템에 설치 될 것입니다. 다음은 "xsnow"를 설치하는 예입니다 (빈 디렉토리에서이 작업을 수행하려고 함).
»rpm2cpio xsnow-1.42-17.fc17.x86_64.rpm > xsnow.cpio
내 시스템에 적합한 .rpm 인 fc17 x86_64를 찾았습니다. 이것은 다른 구성 요소와 연결된 사전 컴파일 된 바이너리이기 때문에 중요합니다. 이제 .cpio를 추출하십시오.
»cpio -idv < xsnow.cpio
./usr/bin/xsnow
./usr/share/doc/xsnow-1.42
./usr/share/doc/xsnow-1.42/README
./usr/share/man/man6/xsnow.6.gz
212 blocks
Press any key to continue...
이 디렉토리 트리를 탐색하면 종속성을 해결하는 데 도움이되는 메타 정보를 제외하고 필요한 모든 것이 있습니다. 이것은 다음을 사용하여 찾을 수 있습니다 rpm -q -p [package] --[query]
.
»rpm -q -p xsnow-1.42-17.fc17.x86_64.rpm --requires
warning: xsnow-1.42-17.fc17.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID d2382b83: NOKEY
libX11.so.6()(64bit)
libXext.so.6()(64bit)
libXpm.so.4()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1
나는 이미이 모든 것을 가지고 있다고 확신한다. 이제 xsnow 실행 파일을 $ PATH에 저장하면 홈 디렉토리에 이미 bin이 포함됩니다.
»cp ./usr/bin/xsnow ~/bin
비올라! xsnow
xsnow가 KDE와 잘 작동하지 않기 때문에 이제는 입력 하고 아무것도 볼 수 없습니다.
라이브러리를 설치해야 할 경우, 홈 디렉토리도 작성하고 다음을 추가해야합니다 ~/.bashrc
.
export LD_LIBRARY_PATH=/home/you/lib