這是之前做過的task,client透過pxe開機後,會自動安裝ubuntu 14.04
在安裝完成後,會發出郵件通知管理者已經安裝完成
可是某次ansible 更新之後,反而沒辦法安裝完成
這次順手修改一下,同時更新了ansible 的template
###os-ubuntu-1404-desktop-preseed.cfg
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 ### Localization # Keyboard selection. d-i keyboard-configuration/xkb-keymap select us d-i console-setup/ask_detect boolean false d-i console-setup/layoutcode string us d-i keyboard-configuration/ask_detect boolean false d-i keyboard-configuration/layoutcode string us # The values can also be preseeded individually for greater flexibility. d-i localechooser/preferred-locale string en_US.UTF-8 d-i localechooser/supported-locales en_US.UTF-8 d-i debian-installer/language string en d-i debian-installer/country string US d-i debian-installer/locale string en_US.UTF-8 d-i localechooser/continentlist string Asia ### Network d-i netcfg/choose_interface select auto ### Mirror settings # If you select ftp, the mirror/country string does not need to be set . d-i mirror/country string manual d-i mirror/http/proxy string {{ proxy_env }} d-i mirror/http/hostname string free.nchc.org.tw d-i mirror/http/directory string /ubuntu d-i mirror/http/mirror select free.nchc.org.tw ### Hostname d-i netcfg/get_hostname string ubuntu d-i netcfg/get_domain string abc.com ### account d-i passwd/user -fullname string Adminstrator d-i passwd/username string administrator d-i passwd/user -password -crypted password $6 $random_salt$12332112332123123123 d-i user -setup/allow-password -weak boolean true d-i user -setup/encrypt-home boolean false d-i passwd/user -default-groups string audio cdrom video sudo adm ### Clock & Timezone d-i clock-setup/utc boolean true d-i time/zone string Asia/Taipei d-i clock-setup/ntp boolean true #d-i tzconfig/gmt boolean true d-i tzconfig/choose_country_zone/Asia select Taipei d-i tzconfig/choose_country_zone_single boolean true # Disable that annoying WEP key dialog. d-i netcfg/wireless_wep string ubuntu ### Partitioning d-i partman-auto/method string regular d-i partman-lvm/device_remove_lvm boolean true d-i partman-md/device_remove_md boolean true d-i partman-lvm/confirm boolean true d-i partman-lvm/confirm_nooverwrite boolean true d-i partman-auto/choose_recipe select default-disk-layout ### 200 % memory as swap , other space mount at / # Or provide a recipe of your own... # 2 x physical RAM as swap , remain goes to root in ext4 , no LVM d-i partman-auto/expert_recipe string \ default-disk-layout :: \ 10240 20480 -1 ext4 \ $primary { } $bootable{ } \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext4 } \ label{ root } \ mountpoint{ / } \ . \ 1024 2048 200 % linux-swap \ method{ swap } format{ } \ . \ d-i partman/default_filesystem string ext4 d-i partman-partitioning/confirm_write_new_label boolean true d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true d-i partman/mount_style select uuid ### Base system installation d-i base-installer/kernel/image string linux-generic ### Apt setup d-i apt-setup/restricted boolean true d-i apt-setup/universe boolean true d-i apt-setup/backports boolean true d-i apt-setup/services-select multiselect security d-i apt-setup/security_host string security.ubuntu.com d-i apt-setup/security_path string /ubuntu # Package selection (tasksel --list-tasks) # ssh-server for 14.04 /16.04 , openssh-server for 18.04 tasksel tasksel/first multiselect ubuntu-desktop,ssh-server # Individual packages (python-minimal for Ansible) #d-i pkgsel/include string python-minimal d-i pkgsel/include string net-tools ssh python2.7 axel curl vim unzip zip apt-file lynx elinks sysstat ntp htop screen apt-tra nsport-https wget curl git rsync postfix mailutils # Update policy #d-i pkgsel/update -policy select none d-i pkgsel/upgrade select safe-upgrade d-i pkgsel/update -policy select unattended-upgrades popularity-contest popularity-contest/participate boolean false d-i pkgsel/updatedb boolean true ## postfix preseeding # General type of configuration? Default:Internet Site # Choices: No configuration, Internet Site, Internet with smarthost, # Satellite system , Local only postfix postfix/main_mailer_type select Internet Site postfix postfix/mailname string pxe.abc.com postfix postfix/protocols select ipv4 # Reporting popularity-contest popularity-contest/participate boolean false # Bootloader d-i grub-installer/only_debian boolean true d-i grub-installer/with_other_os boolean true d-i finish-install/keep-consoles boolean true d-i finish-install/reboot_in_progress note d-i cdrom-detect/eject boolean true #### Advanced options d-i preseed/late_command string \ in -target apt-file update ; \#in-target DEBIAN_FRONTEND=noninteractive apt-get install mailutils -y;\ in-target rm -rf /etc/apt/sources.list.d/ubuntu-esm-infra-trusty.list ; \ in-target cp /etc/rc.local /etc/rc.local.bak ;\ in-target /bin/sh -c 'echo "hostname|mail -s pxe_install_complete changch@abc.com" > /etc/rc.local' ;\ in-target /bin/sh -c 'echo "cp /etc/rc.local.bak /etc/rc.local" >> /etc/rc.local' ;\ in-target passwd --expire root