"키보드 구성"패키지 설정을 자동화하는 방법은 무엇입니까?


15

debootstrap을 사용하여 Ubuntu 16.04 서버를 chroot jail에 설치하는 스크립트를 작성 중입니다 (Ubuntu 16.04 서버 컴퓨터에서).

keyboard-configuration패키지를 설정하는 동안 키보드 유형을 묻습니다.

Setting up keyboard-configuration (1.108ubuntu15) ...
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
Configuring keyboard-configuration
----------------------------------

The layout of keyboards varies per country, with some countries having multiple
common layouts. Please select the country of origin for the keyboard of this
computer.

  1. Afghani                                     48. Irish
  2. Albanian                                    49. Italian
...    
  28. English (UK)                               75. Slovak
  29. English (US)                               76. Slovenian
...
  45. Icelandic                                  92. Vietnamese
  46. Indian                                     93. Wolof
  47. Iraqi
Country of origin for the keyboard: 

묻지 않고 설치를 계속하기 위해 이것을 자동화하고 싶습니다.

어떻게해야합니까?


답변:


15

에서 유사한 StackOverflow의 질문 :

ENV 변수 DEBIAN_FRONTEND=noninteractive를 실행하는 동안 설정 apt-get install keyboard-configuration하면 상호 작용을 요구하지 않습니다. 따라서 간단하게 실행할 수 있습니다.

DEBIAN_FRONTEND=noninteractive apt-get install keyboard-configuration

2

사용할 수 있습니다 xdotool. 스크립트를 시작할 때 put & sleep <however long it takes to get to that point> && xdotool type <number you want to put> && xdotool key Return.

나는 이것을 테스트하지 않았지만 작동해야합니다.

답변 2 :

출력을 파일 ( > testfile)로 경로 재지 정하여 명령을 실행하십시오 .

다른 터미널을 열고 실행

while true
do 
    if [ "$(tac testfile | grep -m 1 .)" = "Country of origin for the keyboard" ]
    then 
    xdotool type <number you want to put> && xdotool key Return && break
    fi
done  

그런 다음 첫 번째 터미널을 다시 클릭하십시오.

답변 3 :

원하는 번호를 파일에 testfile넣고 명령을 < testfile추가 하여 실행하면 됩니다.


고마워, 흥미로운 생각이지만 사용 시간의 길이에 따라 설치 시간이 예상보다 오래 걸리거나 시간이 많이 걸리는 경우가 종종 있습니다.
fadedbee

xdotool의 맨 페이지를 읽는 것은 X windows 일 것 같습니다. 우분투 서버 환경에서 이것을 시도하고 있습니다. 질문을 업데이트하겠습니다.
fadedbee

2

이것은 자동화하기 간단하므로이 패키지에 적절한 debconf 구성을 설정하면됩니다.

첫 설치 debconf-utils:

sudo apt install debconf-utils

이미 패키지를 구성했다면 다음을 사용하여 debconf 구성을 읽을 수 있습니다.

debconf-get-selections | grep keyboard-configuration

패키지를 구성하지 않았거나 선택을 변경하려면 다음을 수행하십시오.

dpkg-reconfigure keyboard-configuration

선택 내용을 파일로 내보내기

debconf-get-selections | grep keyboard-configuration > selections.conf

selections.conf대상 머신에 복사 하고 선택 사항을 설정하십시오.

debconf-set-selections < selections.conf

패키지를 설치하거나 재구성하면 선택 사항이 자동으로 선택됩니다.

dpkg-reconfigure keyboard-configuration -f noninteractive

1

--from "debootstrap을 정말 그냥 쉘 스크립트입니다" https://wiki.debian.org/Debootstrap

이는 스크립트를 읽고 환경 변수를 통해 정보를 전달하는 방법이 있는지 확인하거나, deboostrap을 호출 할 때 인수를 제공하거나, 특정 응용 프로그램에 맞게 수정 된 버전을 작성할 수 있음을 의미합니다.


이 패키지는 apt-get install ....초기 debootstrap 이후 실행의 일부로 설치됩니다 .
fadedbee

apt-get install deboostrap설치 패러다임이 환경 변수를 변경하거나 사용자 정의 스크립트를 실행할 수 없다는 것을 말하고 있습니까? 괜찮아.
BenjaminBrink

아마도 도움이 될 것입니다. 이 링크는 쇼 설정에 "preeseed"파일이 우분투 설치에 프롬프트 응답의 미리하는 방법의 예 : askubuntu.com/questions/122505/...
BenjaminBrink
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.