apttitude 또는 apt-get에 dpkg 구성 매개 변수를 어떻게 제공합니까?


8

gitolite를 설치할 때 다음을 발견했습니다.

# aptitude install gitolite
The following NEW packages will be installed:
  gitolite 
0 packages upgraded, 1 newly installed, 0 to remove and 29 not upgraded.
Need to get 114 kB of archives. After unpacking 348 kB will be used.
Get:1 http://security.debian.org/ squeeze/updates/main gitolite all 1.5.4-2+squeeze1 [114 kB]
Fetched 114 kB in 0s (202 kB/s)
Preconfiguring packages ...
Selecting previously deselected package gitolite.
(Reading database ... 30593 files and directories currently installed.)
Unpacking gitolite (from .../gitolite_1.5.4-2+squeeze1_all.deb) ...
Setting up gitolite (1.5.4-2+squeeze1) ...
No adminkey given - not initializing gitolite in /var/lib/gitolite.

마지막 줄은 저에게 관심이 있습니다. 실행 dpkg-reconfigure -plow gitolite하면 대화 상자가 표시되고 수정할 수 있습니다.

  • gitolite의 시스템 사용자 이름
  • gitolite 리포지토리의 위치
  • 관리자 pubkey를 제공하십시오.

git시스템 사용자 를 사용하고 설치시 관리자 pubkey를 제공 하고 싶습니다 .

# aptitude install gitolite --user git --admin-pubkey 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDAc7kCAi2WkvqpAL1fK1sIw6xjpatJ+Ms2nrwLJPhdovEY3MPZF7mtH+rv1CHFDn66fLGiWevOFp...'

물론 그것은 작동하지 않습니다. 비슷한 일을 할 수 있습니까? 미리 구성 매개 변수를 어떻게 결정합니까? 예를 들어 꼭두각시 또는 요리사를 통해 자동으로 gitolite를 설치할 때 매우 유용합니다.

답변:


14

나는 이것을 테스트하지는 않았지만 dpkg-reconfigure예제 머신에서 실행 한 후에 debconf-get-selections | egrep "^gitolite\s"는 설정된 것을 얻기 위해 실행할 수 있다고 생각합니다 . ( debconf-utils없는 경우 패키지에 있음).

그런 다음 debconf-set-selections $FILENAMEapt를 실행하기 전에 CLI에서 .

그런 다음 꼭두각시와 같이 다음과 같습니다.

file {
  "/var/cache/debconf/gitolite.preseed":
     source => '...'; # someplace with that output
}
package {
  "gitolite":
    require      => File["/var/cache/debconf/gitolite.preseed"],
    responsefile => "/var/cache/debconf/gitolite.preseed";
}

꼭두각시 사이트에 대한 추가 정보 :

Chef가 응답 파일이나 미리 설정 파일 등을 지정하는 비슷한 메커니즘을 가지고 있다고 생각하지만 Chef 사용자는 아닙니다.


5

이 문제를 해결하려면 사전 설정 을 제공해야합니다 . 이 모듈 에서 Java가 어떻게 수행되는지 확인하십시오 . 미리 설정 파일을 얻는 가장 쉬운 방법은 먼저 수동 설치 및 구성을 수행 한 다음 그로부터 시드를 얻는 것입니다. 이 블로그 에는 이에 대한 좋은 예가 있습니다.

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