远程无人值守安装ubuntu16.04.4 desktop版本,server版本可以通过http及kicstart实现无人值守安装,桌面版无法实现,但可通过preseed实现自动安装。
建议引导采用legacy bios方式,不采用uefi引导。
1、 准备

  1. 安装好 Ubuntu 16.04系统的PC(虚拟机也可)
  2. 支持DHCP的路由器一个或网线直连也可
  3. 支持pxe启动的目标机器
  4. 安装Ubuntu的PC和目标机器在同一网络下
    2、 配置网卡
    Ubuntu必须设置为静态IP;本案例中采用:192.168.1.53
    3、 安装DHCP, TFTP,PXE, NFS 服务
sudo apt-get update
sudo apt-get install -y isc-dhcp-server tftpd-hpa  nfs-kernel-server
sudo apt-get install -y apache2

4、 配置DHCP

sudo vim /etc/default/isc-dhcp-server
INTERFACES="enp10s0"

注:enp10s0为使用的网卡,网卡设备可能不同,输入ifconfig查看网卡设备名称;

sudo vim /etc/dhcp/dhcpd.conf
ddns-update-style none;option domain-name "ubuntu";  # 必须修改默认值,否则syslog报异常,pxe client IP无法获取
option domain-name-servers 192.168.1.46;  # 修改为DNS服务器IPallow booting;
allow bootp;

#IP地址分配网段可根据自己需要设定

subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.10 192.168.1.30;  #dhcp获取ip的范围,可修改为自己的地址范围option subnet-mask 255.255.255.0;  #子网掩码option routers 192.168.1.1;        #网关IP地址option broadcast-address 192.168.1.255;  #广播IP地址next-server 192.168.1.53;        #修改为server的静态IPfilename "pxelinux.0";
}

tips: route -n 查看网关
重启DHCP服务

sudo /etc/init.d/isc-dhcp-server start

5、 配置TFTP服务

sudo vim /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="192.168.1.53:69"  #添加服务器IP地址
TFTP_OPTIONS="--secure"
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

启动 tftp服务

sudo service tftpd-hpa start

6、 配置pxe 启动文件
下载 netboot,网址为: http://cdimage.ubuntu.com/netboot/,选择合适的镜像,下载其中的netboot.tar.gz;


解压到~/netboot下;

mkdir netboot
sudo tar -xvf netboot.tar.gz -C netboot/
sudo mkdir /var/lib/tftpboot
sudo mkdir /var/lib/tftpboot/pxelinux.cfg
sudo mkdir -p /var/lib/tftpboot/Ubuntu/16.04/
sudo cp ~/netboot/ubuntu-installer/amd64/boot-screens/vesamenu.c32 ldlinux.c32 libcom32.c32 libutil.c32 /var/lib/tftpboot/

如果不行,分开复制

ubuntu@test:~$ sudo cp ~/netboot/ubuntu-installer/amd64/boot-screens/vesamenu.c32 /var/lib/tftpboot/
ubuntu@test:~$ sudo cp ~/netboot/ubuntu-installer/amd64/boot-screens/ldlinux.c32 /var/lib/tftpboot/
ubuntu@test:~$ sudo cp ~/netboot/ubuntu-installer/amd64/boot-screens/libcom32.c32 /var/lib/tftpboot/
ubuntu@test:~$ sudo cp ~/netboot/ubuntu-installer/amd64/boot-screens/libutil.c32 /var/lib/tftpboot/
sudo cp ~/netboot/ubuntu-installer/amd64/pxelinux.0 /var/lib/tftpboot/

注意:拷贝文件时验证文件是否拷贝完全

sudo vim /var/lib/tftpboot/pxelinux.cfg/default
DEFAULT vesamenu.c32
TIMEOUT 20
PROMPT 0
MENU INCLUDE pxelinux.cfg/pxe.conf
NOESCAPE 1LABEL Install Ubuntu 16.04 Desktop
MENU LABEL Install Ubuntu 16.04 Desktop
kernel Ubuntu/16.04/casper/vmlinuz.efi
append boot=casper automatic-ubiquity netboot=nfs nfsroot=192.168.1.53:/var/lib/tftpboot/Ubuntu/16.04 initrd=Ubuntu/16.04/casper/initrd.lz quiet splash
ENDTEXT

注意:nfs服务器IP(192.168.1.53)地址

sudo vim /var/lib/tftpboot/pxelinux.cfg/pxe.conf
MENU TITLE PXE Server
NOESCAPE 1
ALLOWOPTIONS 1
PROMPT 0
MENU WIDTH 80
MENU ROWS 14
MENU TABMSGROW 24
MENU MARGIN 10
MENU COLOR border 30;44 #ffffffff #00000000 std

7、 添加启动镜像

  1. 下载镜像
    在http://releases.ubuntu.com/选择合适镜像下载。
  2. 挂载
sudo mount /dev/cdrom /mnt  # sudo mount ubuntu-16.04-server-amd64.iso /mnt/

将光盘挂载到/mnt/ 下 或者 sudo mount /dev/sr0 /mnt/

sudo cp -r /mnt/* /var/lib/tftpboot/Ubuntu/16.04
sudo cp -r /mnt/.disk /var/lib/tftpboot/Ubuntu/16.04

注:此处下载路径及挂载路径可能不同,请自行处理
3) 配置nfs

sudo vim /etc/exports
/var/lib/tftpboot/Ubuntu/16.04 *(ro,async,no_root_squash,no_subtree_check)
  1. 重启nfs服务
sudo /etc/init.d/nfs-kernel-server start
  1. 验证nfs是否成功
showmount -e 192.168.1.53

8、 通过preseed实现自动安装

d-i debian-installer/locale string zh_CN
d-i console-setup/ask_detect boolean false
d-i keyboard-configuration/layoutcode string us
d-i netcfg/choose_interface select auto
d-i netcfg/get_nameservers string 192.168.0.187
d-i netcfg/get_hostname string tesra
d-i netcfg/get_domain string tesra
d-i netcfg/wireless_wep string
d-i mirror/http/mirror select cn.archive.ubuntu.com
d-i clock-setup/utc boolean true
d-i time/zone string Asia/Shanghai
d-i clock-setup/ntp boolean true
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-auto-lvm/guided_size string max
d-i partman-auto/choose_recipe select atomic
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-md/confirm boolean true
d-i live-installer/net-image string http://192.168.0.187/Ubuntu/16.04/casper/filesystem.squashfs
d-i base-installer/kernel/image string linux-generic
d-i passwd/user-fullname string ubuntu
d-i passwd/username string ubuntu
d-i passwd/user-password password 123456  #密码
d-i passwd/user-password-again password 123456  #密码
d-i passwd/user-uid string 1000
d-i user-setup/encrypt-home boolean false
d-i apt-setup/use_mirror boolean false
d-i apt-setup/services-select multiselect security
d-i apt-setup/security_host string 192.168.1.53 #PXE服务器地址
d-i apt-setup/security_path string /ubuntu
d-i debian-installer/allow_unauthenticated boolean true
tasksel tasksel/first multiselect standard
d-i pkgsel/include string openssh-server build-essential
d-i pkgsel/upgrade select none
d-i pkgsel/update-policy select none
d-i grub-installer/only_debian boolean true
d-i finish-install/reboot_in_progress note
xserver-xorg xserver-xorg/autodetect_monitor boolean true
d-i preseed/late_command string apt-install zsh; in-target chsh -s /bin/zsh
  1. 将initrd.lz拷贝到~/下;
cp /var/lib/tftpboot/Ubuntu/16.04/casper/initrd.lz ~/
  1. 解压initrd.lz;
mkdir temp  # 创建存储内容的临时文件
cp initrd.lz temp/initrd.lzma  # 改名initrd为lzma后缀
cd temp
ubuntu@test:~/temp$ su root
lzma -d initrd.lzma
cpio -id < initrd # 解压出文件
  1. 创建preseed.cfg文件;
    注:因preseed.cfg文件太长,以附件的方式呈现,可根据实际情况,自行修改;此文件存储位置须在解压后的temp路径中。
  2. 重新生成nitrd.lz文件;
cd temp#       su root
find . |cpio --quiet --dereference -o -H newc>../initrd
cd ..
lzma -7 initrd  (等待一会儿……)
mv initrd.lzma initrd.lz
  1. 拷贝回原目录覆盖;
cp ~/initrd.lz  /var/lib/tftpboot/Ubuntu/16.04/casper/

Ubuntu16.04桌面版pxe启动实现自动安装相关推荐

  1. windows远程连接Ubuntu16.04桌面版,有界面链接和无界面链接两种方式

    0.开放端口 Ubuntu自带一个ufw防火墙, 使用sudo ufw enable 启用防火墙, 然后开放5900和22端口 sudo ufw allow 22 sudo ufw allow 590 ...

  2. Ubuntu16.04下Neo4j图数据库官网安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu 16.04.1 LTS ...

  3. [亲测可行]Ubuntu16.04+opencv3.4+opencv_contrib+cuda9.0安装

    这篇博客主要总结下在Ubuntu下安装opencv以及扩展库所遇到的问题,以及解决的方案. Opencv版本:3.4.7+CUDA9.0+1060 一.下载Opencv+contrib 在Opencv ...

  4. (亲测可行)ubuntu16.04+Opencv3.4.3+opencv_contrib3.4.3安装编译全过程

    ubuntu16.04+Opencv3.4.3+Opencv_contrib3.4.3安装编译全过程 1.资源下载 opencv3.4.3+opencv_contrib3.4.3下载链接: https ...

  5. 阿里云服务器ECS Ubuntu16.04 初次使用配置教程(图形界面安装)

    阿里云服务器ECS Ubuntu16.04 初次使用配置教程(图形界面安装) 2019-01-23 22:55:50 laugh12321 阅读数 851更多 分类专栏: ECS Ubuntu 版权声 ...

  6. ubuntu16.04 在cuda9.0环境下编译安装opencv2.4.13.7

    ubuntu16.04 在cuda9.0环境下编译安装opencv2.4.13.7 安装步骤: 1.安装cuda9.0:https://blog.csdn.net/zhuangwu116/articl ...

  7. windows下PXE+TFTP+HTTP自动安装ubuntu server

    网络上的pxe安装linux多为centos,ubuntu server的pxe安装多有不正确,特写此教程 本教程经过本人多次验证无误 kickstart自动全新安装ubuntu server 软件版 ...

  8. Ubuntu16.04下Hadoop 2.7.3的安装与配置

    一.JAVA环境搭建 (1)下载JDK并解压(当前操作系统为Ubuntu16.04,jdk版本为jdk-8u111-linux-x64.tar.gz) 新建/usr/java目录,切换到jdk-8u1 ...

  9. 自建DHCP TFTP服务 用PXE启动实现无人值守安装Centos6

    下面是自己制作的PXE安装Centos6的环境已经配置脚本 #!/bin/bash ########################################################## ...

  10. Ubuntu16.04下caffe CPU版的详细安装步骤

    一.caffe简介 Caffe,是一个兼具表达性.速度和思维模块化的深度学习框架. 由伯克利人工智能研究小组和伯克利视觉和学习中心开发. 虽然其内核是用C++编写的,但Caffe有Python和Mat ...

最新文章

  1. java datasource mysql_Java MysqlDataSource類代碼示例
  2. 前端学习(2250)拉取代码文件
  3. xxl-job 执行结果是空_xxljob dotnet core executor执行器开源
  4. 我两年的坚持,值了!
  5. vue如果 显示 如果 隐藏_隐藏在iPhone拨号键盘的4个秘密,如果你只用来打电话就太浪费了...
  6. 单片机ADC采样算法----消抖滤波法
  7. 使用 PlantUML 绘制时序图
  8. jni数组使用(二)
  9. python爬楼梯算法_Python算法:如何解决楼梯台阶问题
  10. idea Ctrl+Alt+T 快捷键失效、无法弹出surround with、与qq热键冲突-解决办法
  11. 这样处理,Java中的注释代码也会执行
  12. Nagios-安装与配置
  13. 芯洲SCT2230TVBR为用户小型化设计提供了简洁的电源解决方案
  14. 项目开发中的一些注意事项以及技巧总结
  15. 关于医院检验科仪器对LIS条码识别率偏低的原因调查
  16. Origin如何导出eps格式文件
  17. 计算机专业的毕业设计论文如何写作 python毕业设计题目
  18. 2019年为什么都说现在的淘宝客越来越难做?很多人都说谁做淘客谁傻?
  19. kubeasz 安装K8S 错误解决
  20. 下面matlab程序所描述的数学,数值期末复习题

热门文章

  1. 计算机如何删除用不到的打印机驱动程序,win7卸载不了打印机驱动怎么办
  2. 计算机故障基本维修方法,11种打印机常见故障维修方法
  3. linux两个命令合并,linux合并命令
  4. visio 2003 问题
  5. AutoResetEvent和ManualResetEvent用法
  6. 屏蔽网站广告插件:广告终结者
  7. android屏幕适配无效_Android 屏幕适配终结者
  8. 什么是数字证书?数字证书在哪办理?
  9. 计算机毕业设计php的仓库管理系统(源码+系统+mysql数据库+Lw文档)
  10. 泛微服务器运维监控,泛微协同平台E-cology8后台维护手册-流程引擎(261页)-原创力文档...