
다음을 수행할 수 있는 OpenBSD용 솔루션이 있습니까?
사용자 정의 설치 프로그램 CD를 넣고 Enter 키를 누르면(예: "확실합니까?" - 메시지) 설치 프로그램이 자동으로 디스크를 분할하고 OpenBSD를 설치한 다음 일부 사용자 정의를 수행합니다(예: 포트 앱에서 일부 설치).
이는 RHEL의 Kickstarter를 사용하여 수행할 수 있습니다.하지만 OpenBSD가 이것을 할 수 있습니까?나는 그것을 검색했지만 아직 좋은 답변을 찾지 못했습니다 (단지 더 나은 프로그래밍 기술이 필요합니다 ...).
답변1
현재 OpenBSD 설치는 대부분의 작업을 수행하지만 "Enter" 키를 많이 누르면 됩니다. pkg_installs 및 기타 사용자 정의를 수행하는 경우 이를 수행하는 메커니즘이 있습니다(오랫동안 사용해 왔습니다). 그러나 원하는 것이 무엇인지 모르는 경우 문서를 찾기가 어렵습니다. 설치 프로그램은 sitexx.tgz 또는 sitexx-hostname.tgz 설치 세트(설치 프로그램 소스에 있는 경우)를 추출합니다.
FAQ에는 다음과 같은 많은 세부정보가 있습니다. http://www.openbsd.org/faq/faq4.html#site
제가 여러분에게 드리고 싶은 또 다른 중요한 팁은 rc.firsttime(8) 스크립팅 메커니즘입니다. /etc/rc.firsttime에서 파일을 삭제하면 다음 부팅 시 이 명령이 실행되어 파일이 삭제됩니다. 설치 프로그램에서 이렇게 하면추가의설치 프로그램이 이 파일을 사용하기 때문입니다.
개발자들이 설치 프로그램을 위해 보다 자동화된 메커니즘을 개발하고 있다는 메시지를 메일링 리스트에서 보았습니다...
업데이트 2014-05-01 -autoinstall(8)
자동 설치 기능은 5.5에 포함되어 있습니다:http://www.openbsd.org/55.html
답변2
autoinstall(8)
OpenBSD 5.5부터 이것이 이 작업을 위한 도구입니다. http 서버를 사용하면 dhcp+pxe
자동화된 설치 인프라를 배포하기에 충분합니다. 이 주제에는 좋은 설명이 있습니다이 bsdnow.tv하지만 이 방법에 대해 몇 가지 설명을 하겠습니다.
dhcp pxe 항목을 만듭니다. 다음 예에서는 auto_install
대신 파일을 검색합니다.pxeboot
option domain-name-servers 192.168.1.1;
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
filename "auto_install";
next-server 192.168.1.1;
range 192.168.1.8 192.168.1.254;
[..other stuff..]
}
tftp
pxe를 사용하여 필요한 파일을 실행하려면 서버 호스팅을 사용하세요 . 또한 클라이언트 사이트의 BIOS에서 pxe-boot를 활성화해야 합니다.
# ls -l /tftp
total 12896
lrwxr-xr-x 1 root wheel 7 Feb 22 21:37 auto_install -> pxeboot
-rw-r--r-- 1 root wheel 6501415 Feb 22 12:49 bsd
-rw-r--r-- 1 root wheel 80524 Feb 22 12:50 pxeboot
모든 설치 패키지를 htdocs
루트 디렉터리에 호스팅하고httpd.conf
그러므로:
# ls /var/www/htdocs/pub/OpenBSD/5.5/i386/
SHA256 bsd comp55.tgz index.txt xetc55.tgz xshare55.tgz
SHA256.sig bsd.mp etc55.tgz man55.tgz xfont55.tgz
base55.tgz bsd.rd game55.tgz xbase55.tgz xserv55.tgz
httpd
루트 디렉터리 에 install.conf
설치 프로그램이 묻는 질문에 대한 모든 답변이 포함된 파일을 만듭니다.
# cat /var/www/htdocs/install.conf
System hostname = bsdnow.tv
Password for root = ThePlaceToBe...SD
Network interfaces = em0
IPv4 address for em0 = dhcp
Setup a user = puffy
Password for user = whywasibornasafish
What timezone are you in = US/Eastern
Location of sets = http
Server = 192.168.1.1
nginx
여기서도 사용할 수 있으니 참고하세요 . 여기서 중요한 것은 이름과 함께 서버 루트에 배치되어야 한다는 것입니다 install.conf
. 또한 사용할 수 있는 전체 매개변수 목록이 없으므로 autoinstall
검색하여 좋은 예를 찾으세요.여기. 매뉴얼 autoinstall
페이지를 인용하면 다음과 같습니다.
응답 파일은 줄 기반 ASCII 텍스트 파일입니다. 각 줄의 형식은 다음과 같습니다.
question = answer
질문은 설치 프로그램 질문(물음표 제외)이거나 공백으로 구분된 단어로 구성된 명시적인 부분입니다. 대답은 질문에 대한 대답입니다. 비밀번호는 일반 텍스트이거나 encrypt(1)를 사용하여 암호화하거나 "****************"(13 "*")로 설정하여 비밀번호 로그인을 비활성화하고 대체 비밀번호만 허용할 수 있습니다. 액세스 방법(예: ssh(1) 키).
MAC_address-install.conf
또는 hostname-install.conf
(호스트 이름이 에 정의된 경우 ) 을 사용하여 dhcpd.conf
하나의 호스트만 대상으로 하는 설치 루틴을 생성할 수도 있습니다.
머신을 시작하고 설치 작업이 완료될 때까지 기다리세요.
게다가 여기에서는 하늘이 한계입니다. 확인 해봐복잡한 예~에서협업 버그그러면 가상 머신이 동적으로 생성되고 이를 구성하기 위한 데이터베이스와 httpd 파일이 제공되며 설치가 시작됩니다. 단 하나의 명령으로 모든 작업을 수행할 수 있습니다. ;)