我正在尝试在提供 PLoP Linux 图像的 Debian 6.0.3 Squeeze 机器上设置 pxe 引导服务器。我正在关注本教程。
当我尝试启动 dhcpd(从包 dhcp3-server)时,我得到以下信息:
No subnet declaration for eth0 (10.0.0.0).
**Ignoring requests on eth0. If this is not what
you want, please write a subnet delclaration
in your dhcpd.conf file for the network segment
to which interface eth0 is attached. **
Not configured to listen on any interfaces!
Run Code Online (Sandbox Code Playgroud)
/etc/dhcpd.conf
除了一些更改外,我的与教程中的相同:
host testpc {
hardware ethernet 00:0C:6E:A6:1A:E6;
fixed-address 10.0.0.250;
}
Run Code Online (Sandbox Code Playgroud)
而是
host tablet {
hardware ethernet 00:02:3F:FB:E2:6F;
fixed-address 10.0.0.249;
} …
Run Code Online (Sandbox Code Playgroud) 这是我可用的GRUB 菜单引导选项的示例:
1 menu label ^ 1) Xubuntu 14.04.02 LTS
2 menu label ^ 2) Windows 7, x86 & AMD64
3 menu label ^ 3) Windows 8, AMD64
4 menu label ^ 4) Hirens Boot CD 8.8, x86
5 menu label ^ 5) Kali 1.0.7 Live, amd64
Run Code Online (Sandbox Code Playgroud)
为了修复/重新配置/救援没有键盘和屏幕的服务器或机器,能够将远程机器引导到 PXE 网络而无需亲自靠近计算机以在 BIOS 中选择 PXE 选项将非常有用。
将PXE 网络引导选项添加到 GRUB会很棒。就像是:
1 menu label ^ 1) Xubuntu 14.04.02 LTS - Sopalajo Mod, amd64
2 menu label …
Run Code Online (Sandbox Code Playgroud) 我想第一次尝试进行 PXE 安装。
我读过的每个教程似乎都表明它需要将 DHCP 服务器配置为使用启动映像指向 TFTP 服务器。我不明白为什么需要 DHCP,不是可以手动配置计算机的 IP 和网络设置,并手动指定 TFTP 服务器所在的 IP 吗?
如果没有,是否有任何特殊原因不允许您执行此操作,或者在 pxe 菜单中给出一个简单的提示,要求手动指定网络路径?
由于各种原因,我需要设置一台服务器和两台无盘工作站。
工作站将成为“胖客户端”,这意味着我希望它们能够使用自己的 CPU、内存等来处理所有事情。理想情况下,工作站用户根本不必注意到他们在无盘运行(显然,PXE 引导除外……)。
工作站应该运行 OpenSuse(一些版本介于 11.2 和 11.4 之间,包括 11.2 和 11.4),因为这是我们使用的。他们不一定要运行普通的 openSuse 安装,但要尽可能接近。
一般的想法是 PXE 引导工作站,然后让它们通过 NFS 在服务器上挂载他们的(根)文件系统。
我尝试简单地将现有的 OpenSuse 11.4 安装复制到一个目录,然后我通过 NFS 导出该目录。然后通过 PXE/TFTP 暴露内核和 initrd。问题是安装中的 initrd 是针对安装它的机器量身定制的,因此按原样使用它是行不通的。
我曾尝试使用 LTSP(用于 OpenSuse 的 KIWI-LTSP),但成功非常有限。
所以,现在我的实际问题:
1) 除了手动修改 initrd 以与无盘工作站一起工作之外,还有什么可以帮助我的吗?
2)我的一个想法是对两个工作站使用相同的根(“/”),然后将 /var 和 /tmp 之类的内容安装为 tmpfs。这里有什么陷阱要避免吗?
3)有关如何完成此设置的任何其他想法?非常欢迎所有的想法!
如何使用 PXE 引导通过网络安装 Fedora?
动机:目标系统的 BIOS 根本无法从 USB 大容量存储设备启动。另一种动机是通过网络启动更方便。
挑战:LAN 已经有一个无法更改的 DHCP 服务器,即不支持配置 PXE 相关选项的服务器(它是 Fritz Box 路由器的一部分)。
我有一个托管 FreeBSD、CentOS 和 Scientific Linux 镜像的服务器。它包括 .iso 文件。
是否可以使用 pxelinux 通过网络启动此 ISO?我必须改用 gPXE 或 iPXE 吗?
我已经看到一些迹象表明这是可能的,但我不确定我是否信任该论坛帖子,因为我还没有让它起作用。
我有以下配置:
LABEL freebsd-install-net
MENU LABEL Netboot FreeBSD-8.2-RELEASE-amd64-disc1.iso
KERNEL memdisk
APPEND iso raw initrd=http://192.168.1.100/freebsd82-disc1.iso
Run Code Online (Sandbox Code Playgroud)
但是 pxelinux 告诉我以下内容:
Loading memdisk....
Could not find ramdisk image: http://192.168.1.100/freebsd82-disc1.iso
Run Code Online (Sandbox Code Playgroud) 我正在尝试按照以下步骤使用Netboot Live System安装 Arch :
在最后一步中,我使用了以下内容:
LABEL archnetboot
MENU LABEL Arch Linux Netboot Environment
KERNEL /ipxe.lkrn
Run Code Online (Sandbox Code Playgroud)
但是当笔记本启动时,它说:
SYSLINUX 6.02 EDD Copyright (C) 1994-2013 H. Peter Anvin et al
Loading /ipxe.lkrn... ok
Booting kernel failed: Invalid argument
boot:
Run Code Online (Sandbox Code Playgroud)
所以看起来我需要传递一些网络内核参数或类似的东西,因为我用 Qemu 尝试了图像并且它工作正常。
笔记本电脑通过其以太网端口连接到网络,我在 BIOS 中启用了网络启动,尽管据我所知,当您尝试从 iPXE 启动时它无关紧要。
有任何想法吗?
我有一个预置文件,它可以完美地工作,因为安装从开始到完成完全自动化,没有提示。
但是,我想强制提示输入主机名和域。
我尝试添加:
d-i netcfg/get_hostname seen false
d-i netcfg/get_domain seen false
Run Code Online (Sandbox Code Playgroud)
然而,安装程序只是忽略了这一点,我最终得到了一个具有默认debian
主机名等的系统。
netcfg/get_hostname
,d-i netcfg/dhcp_hostname
并且netcfg/get_domain
未在我的预置文件中定义。
如果有什么区别的话,这个问题与 Debian 10 相关。
我曾经通过 PXE 部署 Debian 10,而且很有效。
现在 Debian 11 已经发布了,我决定对其做同样的事情,但是当它尝试配置网络时安装失败了:
网络自动配置失败
您的网络可能未使用 DHCP 协议。或者,DHCP 服务器可能速度较慢或某些网络硬件无法正常工作。
有几个奇怪的事情:
机器在刚加载时就可以访问 DHCP。我可以在 DHCP 服务器的日志中看到 DHCPDISCOVER、DHCPOFFER、DHCPREQUEST 和 DHCPACK 消息。此外,机器使用正确的IP地址与TFTP服务器通信(以检索pxelinux.0等)。所以,毕竟,机器确实访问了 DHCP,并访问了本地网络,但随后神奇地忘记了它。
该机器有两个适配器:enp1s0
和enp111s0
。如果在安装过程中,我带了控制台和 I ip link set enp111s0 down; ip addr add 192.168.1.50/24 dev enp1s0
,那么我可以访问本地网络(但不能访问互联网)。
另外,如果我通过运行指定网关ip route add default via 192.168.1.1 dev enp1s0
,我不仅可以访问本地网络,还可以访问互联网。
Debian 11 中发生了什么可以解释这一点?
如何解决连接问题?
我有一台通过 PXE 启动的 linux 机器。我可以确定用于启动的网络接口吗?