linux无盘工作站架设
请教列位仁兄:
如何通过PXE架linux无盘工作站,小弟不胜感激!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
请教列位仁兄:
如何通过PXE架linux无盘工作站,小弟不胜感激!
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
呵呵,LINUX无盘还没做过.
顶一下.
做一下广告,呵呵,这是我一个朋友公司的产品,基于linux做的linux/windows无盘工作站产品,性能比传统的无盘工作站要高很多。
http://www.suntang.com/chp_page_3a.htm
如果用普通的无盘工作站的话,suse非常好做,他的mkinitrd 非常智能,使得我们不用裁减内核。
无盘工作站和autoyast比较相似,都是利用网卡的pxeboot功能 dhcp获得ip并从tftpd下载启动映像(vmlinuz/initrd)从而来启动系统或者安装系统。刚开始的步骤都是
1、配置dhcp服务器,在dhcp配置里指定相应的ip对应那个pxeboot的文件,这里pxeboot相当于普通服务器中的boot loader文件,可以安装syslinux后,在/usr/share/syslinux/pxlinux.0找到这个文件。
2、配置tftpd服务器,客户机使用dhcp服务器获得ip后,会从tftpd服务器中下载pexlinux.0(boot loader)和pxelinux.cfg(类似于lilo.conf),在根据pxelinux.cfg内容下载制定的启动映像(vmlinuz/initrd),这个启动映像vmlinuz可以用系统的/boot/vmlinuz,initrd需要自己做
3、如果是无盘工作站,需要把客户端使用的根分区使用nfs export出来,并修改/etc/fstab,使根分区指向相应的nfs路径
4、无盘工作站的要点是initrd的生成方法,因为无盘工作站需要客户端在加载initrd时能mount上nfs分区作为根分区,这点suse做的很智能化,你可以直接使用下列命令来生成:
mkinitrd -k /tftpboot/vmlinuz -i /tftpboot/initrd -d nfs_server:/nfs/path/to -D eth0
5、你可以根据网卡的mac地址来控制使用不同的pxelinux.cfg,从而可以让无盘工作站使用不同的根分区。如果你配置好了一个dhcp和tftpd服务器后,你就很容易看到客户端搜索pexlinux.cfg的过程了,根据这个,你可以方便的制定不同的pxelinux.cfg配置文件。
6、具体的配置大家可以参考下列文档(做无盘和做网络安装的dhcp/tftpd/pxelinux的设置完全一样,只是无盘用系统安装后的内核映像,而网络安装用的是系统安装使用的内核映像)
http://www.novell.com/coolsolutions/feature/15568.html
http://portal.suse.com/sdb/en/2004/02/yast_instsrc.html
http://yast.suse.com/autoinstall/9.1/html/index.html
DRBL 不错的,而且在台湾作了很多实际的工作,特别是在学校的推广,google上可以搜到DRBL最新的一个pdf资料,介绍得很清楚.
正如6楼朋友所说,linux下面作diskless 现在已经很容易了,麻烦的是要把server上面那些不同的应用都配置到最舒服的状态给client,需要耗费很多的功夫,DRBL走的也是pre-configure和pre-define 的路子,对于学校应该足够了.
楼上的楼上把无盘说的太复杂了,至少对于搭建无盘工作站而言,现在有好多现成的套件,安装一下,配置一下,就好了。比如台湾开发的DRBL,那里还会比较一下ltsp和ramdisk的区别。在google搜一下就知道了
楼上的真是牛人.
我不知ltsp是什么东西。但是无盘工作站本人建过,知道该怎么做,用的是网络启动的功能(不是指网络唤醒),但并不是一件很容易的事情。
Linux2.0以后就支持网络启动。
不知ltsp是否已经解决你的问题?
要自己做这件事,必须能熟练驾御Linux,就是能够:
1、熟练配置dhcp。因为PXE实际上是一个dhcp协议的一个延伸。无盘的机器要靠dhcp服务器得到kernel和系统。它只会发出请求;
2、知道如何重新编译内核。这样的kernek有一些特殊要求,缺省编译的内核是不满足的;
3、能够控制住linux进程。比如,对有盘的linux关机时可以先关掉网络功能;但是无盘工作站不行。你想,一旦关掉网络,那无盘工作站就什么都没有了,因为它的系统在服务器上!
如果这些你都行,那预启动批处理协议可以做这件事(bpbatch,可在网上搜寻下载,解开后一共才3个文件)。Linux无盘工作站的硬件的要求我想你应该知道,就是bios支持LAN boot,网卡带PXE的eprom,并设置成启用。然后,最简单的方法是先给它装上一个硬盘,安装Linux,重新编译内核,调整关毕进程的顺序,在调试成功它已经可以和服务器作为一个节点机使用了,再将系统文件,kernel复制到服务器的比如说/tftpboot目录下。配置服务器的dhcp使之会对无盘工作站的网卡的硬地址作出响应并提供给它上载的kernel和系统文件的目录。修改一下fstab就可以了。
这些当然都是假定你已经是一个Linux的熟练的管理员。如果你只是一个新手,要在这里要说清楚所有这些问题那不是很容易,你得去查有关的书。
Linux的应用难就难在这里。版主前几天说,中国这个Linux圈子很小,抬头不见低头见。所说的实际上只是一些使用Linux的人,而不是Linux的开发者。而开发者既要绝顶聪明,又得吃饱了没事干!遇到挑战就狂热、遇到难题就蠢蠢欲动、就自得其乐的家伙。吃饱了没事干就是拿着高薪、生活无忧无虑;不仅如此,还有个重要条件,就是没有工作压力,就是干不干活都可以,没人管!Linux的kernek和在GNU底下的应用有中国境内的人的贡献吗?就我所知,恐怕没有!中国有这样能力的人。但既不在乎钱,又没有工作压力的人有吗?问题是这些开发者是不会提供技术支持的。你要是个自建集群的人,过程中有关键问题在网上发问,你想,那些有商业利害关系的人会告诉你吗?不过实际上,很多应用的细节就是生产集群的厂商中也只有一小部分具体做过的人才知道。而Linux开发者又是另一回事,开发时的激情到开发完毕已经耗尽,写个HowTo就已经很难为他们了;更别说写出的东西还要让我们这些在他们眼里根本就是不懂Linux的人能够看懂。常常是这样,应用更新了,但HowTo并没有更新。所以,很多东西你要用,你得自己去发掘这些功能。dhcp就是一个很好的例子。新版本已经有很多新功能,option已经不一样,但没有任何说明,即没有新的HowTo!所以,很多Linux发布版本还保留dhcp-2这个程序,让你在不知如何使用新版本时还能使用老版本。几乎所有的书里,都抄来抄去,讲这些老版本的option。所以,你要看了这些dhcp的option,那只有用dhcp-2。由此可见,Linux的推广难度在哪里。
非常感谢斑竹,不过请问斑竹,ltsp4.2支持linux 2.4的内核吗?
www.ltsp.org