ubuntu 설치 자동화 하기

다즐링의 이미지

2008.09.02

written by Kwon-Han Bae , 배권한 a.k.a 다즐링

역시 특정 프로젝트의 일환으로 -_-;;;

우분투는 8.04에서 두가지 방법을 통해 네트워크 설치를 지원합니다.

https://help.ubuntu.com/7.10/installation-guide/ia64/automatic-install.html

하나는 kickstart 와 동일하려고 노력하는 keekseed 라는 것이고

https://help.ubuntu.com/community/KickstartCompatibility

하나는 데비안에서 제공하는듯한 preseed 인가 하는 방법입니다.

사실 두개의 방법 모두 pxelinux.cfg/default 에서 커널 파라미터만 조정해주면 끝납니다.

예를 들면 keekseed 는 ks=http://192.168.1.1/cfg/ks.cfg 이런식이고

preseed는 preseed/url=http://host/path/to/preseed.cfg 이런 식입니다.

https://help.ubuntu.com/7.10/installation-guide/ia64/preseed-using.html#preseed-loading

일단 저는 익숙한 kickstart 로 작업을 하였습니다.

작업중에 문제가 되었던 사항은 우분투는 설치시에 security.ubuntu.com 을 통해 업데이트를 시도합니다.

당연히 -_-; 느려집니다. 그러므로 강제로 그부분을 빼줍니다.

pxelinux.cfg/default 에서 커널 파라미터에 다음과 같이 넣어줍니다.

apt-setup/security_host= "http://192.168.1.1/"

그리고 로컬에 우분투를 미러링 해줍시다. http://kldp.org/node/97603

ks.cfg 는 다음과 같습니다.

#Generated by Kickstart Configurator
#platform=AMD64 or Intel EM64T
 
#System language
lang ko_KR
#lang en_US
#Language modules to install
langsupport en_US --default=ko_KR
#System keyboard
keyboard kr_kr104
#System mouse
mouse
#System timezone
timezone Asia/Seoul
#Root password
rootpw --password linux
#user lnx --fullname "linux default user" --password lnx1
#Initial user
user --disabled
#Reboot after installation
reboot
#Use text mode install
text
#Install OS instead of upgrade
install
#Use Web installation
url --url 'http://192.168.1.1/ubuntu/archives'
#System bootloader configuration
bootloader --location=mbr
#Clear the Master Boot Record
zerombr yes
#Partition clearing information
clearpart --all --initlabel
#Disk partitioning information
part / --fstype ext3 --size 10240 --asprimary
part swap --size 4096 --asprimary
part /home --fstype ext3 --size 1 --grow --asprimary
#System authorization infomation
auth  --useshadow  --enablemd5
#Network information
network --bootproto=dhcp --device=eth0
#Firewall configuration
firewall --disabled
#X Window System configuration information
xconfig --depth=8 --resolution=1024x768 --defaultdesktop=GNOME --startxonboot
#Run the Setup Agent on first boot
firstboot --enable
%packages --resolvedeps
@ ubuntu-desktop
# 우분투 데스크탑을 설치합니다.
 
%post
echo "%admin ALL=(ALL) ALL" >> /etc/sudoers
/usr/sbin/ntpdate -s time.kriss.re.kr
mv /etc/apt/sources.list /etc/apt/sources.list.bak
wget 'http://192.168.1.1/cfg/source.list' --output-document=/etc/apt/sources.list
apt-get clean
apt-get update
apt-get install wine -y --force-yes
apt-get install ia32-libs -y --force-yes
apt-get install smbfs subversion -y --force-yes
apt-get install nvidia-glx-new -y --force-yes # hardware 드라이버 강제 설치
# for update glx
/usr/bin/nvidia-xconfig # hardware 드라이버 강제 설정

기본적으로 나머지는 pxeboot 로 설치하는것과 동일합니다.

댓글

feanor의 이미지

저는 preseed로 작업한 일이 있는데 kickstart와 호환되는 방법이 있군요. 소개 감사합니다.

다즐링의 이미지

호환이라기보단..

keekseed가 kickstart 용 설정파일( 사실은 그냥 비슷한 문법일 뿐인.. ) 을 preseed 로 변경해주는 역활? 을 하는듯 합니다.

패키지를 받아서 뜯어보니 모두 쉘 스크립트더군요-_-;;

뭐 같은 일을 하지만 레뎃 유저들에게는 kickstart 가 익숙하니까요

------------------------------------------------------------------------------------------------
Life is in 다즐링

------------------------------------------------------------------------------------------------
Life is in 다즐링

환골탈태의 이미지

드디어 우분투를 서버로 사용하시는 건가요?
저도 새로운 프로젝트에는 우분투로 갈까 생각하고 있었는데...
잘하면 삽질없이..무임승차 하겠습니다. ㅎㅎㅎ
__________________________________________________
모두 다 Hardy로 업그레이드 하고 있습니다.

__________________________________________________
모두 다 Hardy로 업그레이드 하고 있습니다.

다즐링의 이미지

위의 예제는 데스크탑으로 하는겁니다

물론 개인적으론 써버로도 씁니다 ^-^

------------------------------------------------------------------------------------------------
Life is in 다즐링

------------------------------------------------------------------------------------------------
Life is in 다즐링

woonuk의 이미지

얼마전에 FAI를 이용하여 많은 삽질을 했는데 이방법은 간단명료해서 좋네요^^
netinstall 이미지와 PXE 부팅을 접목하면 설치시디 없이
PXE부팅으로 가능하지 않을까해서 테스트해보았는데 잘 동작하네요.

참고 : http://ubuntu-tutorials.com/2007/10/11/how-to-configure-pxe-network-booting-on-ubuntu-for-network-based-installations/

PS) 8.04 hardy 버전은 원격 설치가 잘 진행 되었습니다.
7.04 feisty, 7.10 gutsy 버전은 원격 설치도중 e2fsprogs-udeb 다운로드 시도하면서 멈춥니다. 아파치 서버쪽 로그를 보니, 요청하는
버전이 잘못되어 있네요. 해결책을 찾고 있는 중입니다 ㅠㅠ (해결^^)

수정:
pxelinux.cfg/default 파일에서 append 항목에 apt-setup/security_host= mirror/http/proxy= 커널인자를 추가하면 security update 관련 작업시에도
로컬 아파치 서버에 마운트해둔 CD이미지를 사용하기 때문에 위의 문제를 피할수 있습니다.

cacus의 이미지

저는 데비안으로 pxe 자동 설치 해보려고 합니다.

도움 좀 주세요~

설치 Q&A 에 질문 올렸어요 ^^;

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.