2012-11-09 4 views
0

/lib/modules에 설치할 foo.tar.gz 소스가 있습니다. 하지만 루트 권한이 아니기에 권한이 충분하지 않습니다. 패키지를 자동으로 빌드하는 스크립트를 작성하려고합니다.taker 패키지에 fakeroot/fakechroot를 사용하십시오.

#!/bin/bash 
tar xf foo.tar.gz 
cd foo 
make 
fakeroot make install 

그것은 어쩌면 내가 $ HOME/rootfs에 넣어 수, 난 정말/lib 디렉토리에 넣고 싶지 않아

mkdir: cannot create directory `/lib/modules/foo.so 

보여줍니다.

fakeroot를 사용하는 올바른 방법은 무엇입니까? 또는 간단한 스크립트를 사용하여 fakeroot를 사용하는 방법을 추적 할 수 있습니까?

답변

0

fakeroot의 역할에 대해 혼란스러워합니다. 패키지를 설치하기 위해 루트 권한으로 승격하는 데 사용됩니다. 패키지가 인 경우을 생성 할 때 사용됩니다. 패키지를 작성하지 않으므로 fakeroot은 사용자를 대신 할 수 없습니다. 이 내용은 description of fakeroot을 참조하십시오.

일시적으로 권한을 높이려면 sudo을 사용해야합니다.

+0

정말/lib/modules에 설치하고 싶지 않습니다. 나는 다른 디렉토리에 넣을 수 있으면 좋겠다. –

+0

아, 간단합니다 :'make install PREFIX =/your/home/directory'은 GNU autoconf가 생성 한 makefile과 많은 다른 것들을 사용하는 "표준"패키지에서 작동해야합니다. 작동하지 않는다면, makefile의'install :'타겟을보고 원하는 곳에서 설치하도록 편집해야합니다. – Jens

+0

커널 소스에서도 작동합니까? (modules_install을 만든다) –

관련 문제