ubuntu 12.04无盘工作站
注释:该篇博文是借鉴下列文章加上自己实践总结得来;
a. http://forum.ubuntu.org.cn/viewtopic.php?f=77&t=117754
b. http://blog.chinaunix.net/uid-20164485-id-3324492.html
说明:无盘工作站建立的前提如下:
a. 两台以上计算机
b. 计算机网卡(指有线网卡)具备PXE功能。
c. 若需要建立2台及其以上客户端机的无盘工作站需要交换机。
d. 主机(上面说的计算机)具备较强的运算能力,较大的存储空间,网卡传输能力为100M或者1000M以上
e. 主机的配置需要连接网络(主机最好有无线网卡)
正文:服务器与客户机的相关配置
1. 服务器(有线)配置成DHCP服务器
a. sudo apt-get install dhcpd3-server
b. 配置isc-dhcp-server(/etc/default/isc-dhcp-server)==>INTERFACES="eth0"
c. 配置/etc/dhcp/dhcpd.conf==>
authoritative;
max-lease-time 604800;
default-lease-time 3100;
ddns-update-style none;
ddns-ttl 7200;
allow booting;
allow bootp;
one-lease-per-client true;
subnet 192.168.23.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.23.1 192.168.23.200;
option routers 192.168.23.1; //与本机静态IP一致
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.23.255;
ignore client-updates;
}
host ub04{
hardware ethernet xx:xx:xx:xx:xx:xx; //为该MAC固定分配IP ...23.2
next-server 192.168.23.1; //与本机静态IP一致,本机的静态IP在/etc/network/interfaces里面配置参考后面
fixed-address 192.168.23.23;
filename "pxelinux.0"; //tftp时传输的文件,此处为客户机开机获取的引导文件
}
d.配置服务器静态IP及相关网络参数/etcc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network
192.168.1.0
broadcast
192.168.1.255
e. 重启相关服务
/etc/init.d/networking restart
/etc/init.d/isc-dhcp-server restart
2. 安装tftp
a. sudo apt-get install tftp,tftpd,tftp-hpa,tftpd-hpa,xinetd,openbsd-inetd
b.配置tftpd-hpa(/etc/default/tftp)
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"
c.配置/etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server =
/usr/sbin/in.tftpd
server_args =
-s /tftpboot
disable = no
per_source =
11
cps = 100 2
flags = IPv4
}
d. sudo vi /etc/inetd.conf
#:BOOT: TFTP service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
#tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp (/srv/tftp 为默认tftp目录)
#修改如下文件
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftproot
e.sudo mkdir /tftproot
f.sudo chmod 777 /tftproot
g.sudo /etc/init.d/openbsd-inetd restart
3.安装nfs
a.安装nfs ==> apt-get install nfs-kernel-server
b.配置exports
/home/client/ub04 192.168.23.23(rw,no_root_squash,sync)
4.安装samba
a.sudo apt-get install samba
b.配置smb.conf
[share]
comment = Shared Folder
path = /opt/samba
public = yes
writable = yes
available = yes
browseable = yes
c. smbpasswd –a shizhai添加用户及密码
d. 重启samba
5. 安装syslinux
在上面DHCP配置文件中涉及到的的pxelinux.0便是这个来自于这个软件包。
sudo apt-get install syslinux
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/ #把这个文件拷贝到我们的tftp目录下,客户机开机使用tftp从tftpboot目录获取
接下来在主机tftpboot目录下为客户机建立启动引导配置目录(自己猜测)
mkdir /tftpboot/pxelinux.cfg
在该目录建立一个默认的客户机引导default ==> vi /tftpboot/pxelinux.cfg/default
LABEL ubuntu #
KERNEL linux
append initrd=initrd.nfs boot=nfs root=/dev/nfs nfsroot=192.168.23.1:/home/client/ub04 ip=dhcp rw
PROMPT 1 #自动选择,不等待客户机干预
TIMEOUT 10 #超时时间
7. 为客户机生成linux内核与文件系统
1.客户机的文件系统生成有多种方式,现在介绍其中两种:
a. 使用debootstrap工具在/home/client/ub04(ub04下面命题客户机的文件系统)下生成一个最简的文件系统,再把生成的文件系统的boot/vmlinux...拷贝 到/tftpboot/下改名为linux作为客户机的公共内核, 然后再sudo chmod 777 linux
b. 使用已安装linux系统(暂称主机1)的文件系统(服务器与该主机1处于同一网段),使用rsync -avzupoglH 主机1user@主机1IP:/* /home/client/ub04/ 在/home/client/ub04下生成了一个文件系统(查询rsync命令)
2. 配置生成的客户机文件系统
修改的文件主要有:fstab、mtab、hosts、hostname、interfaces、udev内容及目录如下:
a. /home/client/ub04/etc/fstab

b. /home/client/ub04/etc/mtab

c. /home/client/ub04/etc/hots及hostname


d. /home/client/ub04/etc/network/interfaces

e. udev下面文件rules.d/70-persistent-net.rules需要清空。
3. 到ub04下进行相关系统配置
cd /home/client/ub04/
sudo chroot .
useradd ub04
password ub04
8. 让客户机从网络启动
ubuntu 12.04无盘工作站的更多相关文章
- ubuntu 12.04 install docker-engine1.12.3
root@node3:/data/src# cat /etc/issueUbuntu 12.04.4 LTS \n \l root@node3:/data/src# cat /etc/apt/so ...
- Ubuntu 12.04 安装 Apache2+PHP5+MySQL
LAMP是Linux web服务器组合套装的缩写,分别是Apache+MySQL+PHP.此教程教大家如何在Ubuntu 12.04 LTS server 上安装Apache2服务器,包括PHP5(m ...
- Ubuntu 12.04安装Adobe Reader
原本从Adobe 官方网站下载了 Adobe Reader, 是个rpm包,先用agt-get 装了rpm(sudo apt-get install rpm), 一安装(rpm -ivh AdobeR ...
- 在Ubuntu 12.04下采用apt-get的方法安装Qt4
在Ubuntu 12.04下采用apt-get的方法安装Qt4 注:之前发表的一篇博客是采用编译源码的方式安装Qt4,这是很有用的方式,因为源码安装对于所有系统都是通用的,其次,在使用交叉编译器的时候 ...
- VMWare虚拟机下为Ubuntu 12.04.1配置静态IP(NAT连接方式)
背景 在虚拟机下运行操作系统,尤其是Linux系统已经是非常常见的做法.有时你想在虚拟机下搭建一个(模拟)服务器来供主机访问,比如搭建一个telnet/ssh.此时你会发现,每次启动虚拟机,VMWar ...
- ubuntu的一些常用命令,测试版本:Ubuntu 12.04.5 LTS
最近配置了一台Linux服务器,选用的是Ubuntu 12.04.5 LTS版本. 把之前放在Windows Server 2003上的网站移到了现在的服务器上,给我的感受用一个字形容:真JB快! 网 ...
- Lamp(Ubuntu 12.04 LTS) 之 htaccess的使用
环境说明:Ubuntu 12.04 LTS Lamp (以apt方式分别安装) 一.明确目标:要确保.htaccess文件起作用,只需要三个重要点: 1.开启apache rewrite模块: (1) ...
- Ubuntu 12.04 安装MySQL
本文地址:http://www.cnblogs.com/yhLinux/p/4012689.html 本文适合新手入门. 本文是对 Ubuntu 12.04 环境下安装 MySQL 的记录,通过这两天 ...
- Ubuntu 12.04下GAMIT10.40安装说明
转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0225/164.html?1456481297 Ubuntu 12.04下GAMIT10.40安装步 ...
随机推荐
- pikachu靶场-暴力破解(验证码、token)
甲.基于表单的破解 较为简单,直接BurpSuite爆破. 乙.验证码绕过(on server) 打开题目,比第一题多了一个验证码验证,很多初学者遇到验证码就会感觉不知所措.其实这题也较为简单,首先正 ...
- 使用onload和setTimeout、setInterval来实现当前的时间
1.在body里面使用onload和在函数中使用setTimeout来实现当前的日期时间不断变化 2.在script中直接是用setInterval实现当前实现的日期时间不断变化 <!DOCTY ...
- 微信开发_Exception_02_"errcode":40164,"errmsg":"invalid ip 61.172.68.219, not in whitelist hint
ip查询网址: http://www.ip.cn/ 一.异常现象 今天开始做微信开发,在办公室时能正常获取access_token,晚上回家之后获取access_token时却报出下列错误信息: {& ...
- Java 从入门到进阶之路(二十六)
在之前的文章我们介绍了一下 Java 中的 集合框架中的Collection 的子接口 List,本章我们来看一下 Java 集合框架中的Collection 的子接口 Queue. 在之前我们讲 ...
- Milk Pumping G&Milk Routing S 题解
Milk Pumping G&Milk Routing S 双倍经验时间 洛谷P5837 [USACO19DEC]Milk Pumping G 洛谷P3063 [USACO12DEC]Milk ...
- 《算法笔记》6.6小节 问题 A: 任务调度
这道题我一开始看到的时候,想到的是拓补排序,可是这么菜又这么懒的我怎么可能用呢,既然出现在优先队列里面,那么久一定和他有关了 可是并没有使用优先队列 思路: 对于这道题,我们肯定是对他们定义优先级,然 ...
- 二.3.token认证,jwt认证,前端框架
一.token: 铺垫: 之前用的是通过最基本的用户名密码登录我的运维平台http://127.0.0.1:8000/---这种用的是form表单,但是这种对于前后端分离的不适合.前后端分离,应该通过 ...
- 简单案例:form表单应用向后端发数据
效果如下图: 先新建一Django项目. 最后在terminal执行python manage.py runserver 8090 运行djago程序 浏览器输入http://127.0.0.1:80 ...
- day06获取用户名
可以通过微信内置的接口,调用微信名和微信图片 1.xxx.wxml ===================================== <button open-type="g ...
- Django---进阶15
目录 文章详情页 文章点赞点踩 文章评论 文章详情页 # url设计 /username/article/1 # 先验证url是否会被其他url顶替 # 文章详情页和个人站点基本一致 所以用模版继承 ...