stevepedwards.com/DebianAdmin linux mint IT admin tips info

Mint as a PXE Server for PartedMagic and Multi OSs

Getting a PXE server going in Linux has never been that easy, as there were/are so many options for doing it for the uninitiated. It still took me a big recap and head scratching after a few years since doing it, and now things aren't much easier, even if there are some recent, better How To's around but even these are cobbled together from other efforts with nobody seeming to find or define PXE implmentation structures - an RFC for pxe, if you like - that tells you what exactly is required and why.

Hence, PXE often means confusion: maybe using NFS server lines when not needed depending on what you have or want etc. in trial and error jigsaw puzzle - like below!

Just getting your head around the correct "tftproot" filesystem structure and relating it to the pxelinux.cfg/default file allowed menu structure; allowed headings, keywords, commas, spaces or getting forward slashes in the right places, all with the correct LABEL, KERNEL, INITRD, and APPEND options is taxing.

Here's some other Ubuntu site links and clues on all these various options and a historical process overview for different flavours and older Win technology to understand what happens:

https://help.ubuntu.com/community/Installation/LocalNet#Pile_of_PXE_related_links

http://marc.herbert.free.fr/linux/win2linstall.html

Fortunately for this Post, Mint and Parted Magic contain "most" of the required lines and server functionality between them, to make it a bit easier to see what happens, if DNSMASQ is used also, following the tutorial at:

http://www.tecmint.com/configure-pxe-server-to-install-windows-on-centos/   (Just bloody found this!! Part1 Menu format for WinPE)

http://www.tecmint.com/install-pxe-network-boot-server-in-centos-7/

and amending the install commands for Mint.

First, the DHCP and TFTP server is configured using the techmint.com link above.

This basically involves:

apt-get install dnsmasq

apt-get install syslinux

then copying the syslinux content to your tftptroot, and configuring dnsmasq as per tecmint above.

For me, as my router hands out 192.168.1.2-10 range addresses, I want to know what IPs come from the router or dnsmasq, and whether I have left dnsmasq turned on by mistake when using the network normally. So, just for a PXE boot session, I use different IP number ranges for ID.

I found it easier to connect between Mint, router and PXE host by setting a static IP of 192.168.1.10 for the Mint dnsmasq server and conf file, and ensure the router binds it permanently in future using the VIGOR Bind to MAC function:

I also connect the pxe host and Mint dnsmasq server via a separate switch just for this PXE load operation, when dnsmasq is handing out its own DHCP IPs so the host knows where its DHCP IP came from and not have two DHCP servers fighting each other.

Set the key options for your network as per the link above in

vi /etc/dnsmasq.conf

For me, reading much of this large file's comments, I used:

# Uncomment this to enable the integrated DHCP server, you need

# to supply the range of addresses available for lease and optionally

# a lease time. If you have more than one network, you will need to

# repeat this for each network on which you want to supply DHCP

# service.

dhcp-range=192.168.1.50,192.168.1.55,12h

# Magic number - needed before anything else is recognised

dhcp-option-force=208,f1:00:74:7e

dhcp-boot=pxelinux.0

# Loads <tftp-root>/pxelinux.0 from dnsmasq TFTP server.

pxe-service=x86PC, "Gets pxelinux.0 at tftp server", pxelinux

# Enable dnsmasq's built-in TFTP server

enable-tftp

# Set the root directory for files available via FTP.

tftp-root=tftpboot/

The tftp-root=tftpboot/ format works for me, so no slash before it for the Mint root directory "/" where the tftpboot folder resides, may be key, depending how you set your PXE server IP address elsewhere in the conf file, e.g. 192.168.1.10/ etc. Similar directory references appear in the PXE default file structures, seen later, where a leading slash is left out as the /tftproot/ folder is not written explicitly, just the sub-folders of it in the Default file.

If dnsmasq fails with something like:

dnsmasq: failed to create listening socket for port 53: Address already in use failed!

then add the current IP address of your eth0, say 192.168.1.13, but not in the "ethx" form (didn't work for me), to the dnsmasq conf file e.g.:

listen-address=192.168.1.13

and in

vi /etc/NetworkManager/NetworkManager.conf

uncomment:

[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq

Once the dsnmasq.conf file is set and service restarted, check the dnsmasq server is working on the correct ports using nmap.

TFTP and DHCP use UDP not TCP packets, so you need the right nmap switches to see the services - T for TCP and U for UDP:

DellMint stevee # nmap -sU 127.0.0.1

Starting Nmap 6.40 ( http://nmap.org ) at 2015-07-24 16:19 BST

Nmap scan report for localhost (127.0.0.1)

Host is up (0.000012s latency).

Not shown: 992 closed ports

PORT STATE SERVICE

53/udp open domain

67/udp open|filtered dhcps

68/udp open|filtered dhcpc

69/udp open|filtered tftp

137/udp open netbios-ns

138/udp open|filtered netbios-dgm

631/udp open|filtered ipp

5353/udp open|filtered zeroconf

Unlike Samba, you may need to restart dnsmasq after any conf file and tftproot directory changes with:

service dnsmasq restart

DHCPS, DHCPC and TFTP are running, so now you need to build the tftproot folder structure for the OSs you want to deliver.

I bought PartedMagic as a really good recovery tool package (despite the REALLY shitty attitude of the sales person (owner? Some arrogant prick anyway...) - to match my own shitty email fair enough - whom I complained to, regarding the fact the ISO does not work: seems not to expand the squashfs at boot when burned to CD:

So, they must not have tested it properly before release. I tried 5 x different 500 MB downloads for corruption, different mirror, different CDs, Apps and PCs to burn so check it was not me being stupid, before my email. (I HATE that!! Test your bloody product first, or give clear instructions if more action is required - anybody/everybody!)

That's "programmer arrogance" for you in my view/experience - releasing untested code into the wild - consequently I got no tech support or further reply, but worked it out for myself later. Did me loads of favours in the long run.

But, I'm not telling you what the issue is or how to get round it, so YOU can write to them yourself, as they won't talk to me. They probably fixed it now that I sent them screenshots with my mega whinge.

To be fair - it is a great "package" and I would have been be happy to endorse it, but it seems someone messed up with the structure of the current ISO release for a CD burn, and the particular sales staff member is just a dick for the "terrorist" comment.

If he's the boss too, then that's worse...

Anyway, I had also downloaded the PXE boot package - which does work - despite errors in the pxe Default file terms. This was discovered when compared to the techmint example below:

default menu.c32

prompt 0

timeout 300

ONTIMEOUT local

menu title ########## PXE Boot Menu ##########

label 1

menu label ^1) Install CentOS 7 x64 with Local Repo

kernel centos7/vmlinuz

append initrd=centos7/initrd.img method=ftp://192.168.1.20/pub devfs=nomount

label 2

menu label ^2) Install CentOS 7 x64 with http://mirror.centos.org Repo

kernel centos7/vmlinuz

append initrd=centos7/initrd.img method=http://mirror.centos.org/centos/7/os/x86_64/ devfs=nomount ip=dhcp

label 3

menu label ^3) Install CentOS 7 x64 with Local Repo using VNC

kernel centos7/vmlinuz

append initrd=centos7/initrd.img method=ftp://192.168.1.20/pub devfs=nomount inst.vnc inst.vncpassword=password

label 4

menu label ^4) Boot from local drive

The Default stanza file from pmagic read:

vi pmagic/stanza.txt

DEFAULT pmagic32

LABEL pmagic32

LINUX pmagic/bzImage

INITRD pmagic/initrd.img,pmagic/fu.img,pmagic/m32.img,pmagic/files.cgz

APPEND edd=on vga=normal

LABEL pmagic64

LINUX pmagic/bzImage64

INITRD pmagic/initrd.img,pmagic/fu.img,pmagic/m64.img,pmagic/files.cgz

APPEND edd=on vga=normal

Comparing the two, I realised why I could not PXE boot pmagic just from its own files, as I got returns from the host PC about "unrecognised item" or some such.

The reasons were that the PXE implementation only allows certain terms such as "KERNEL" - not "LINUX" - in a Default file, which are shown correctly in the techmint example. Fortunately, the file structure lines for the required files and a previously unknown option - edd - are correct in the pmagic example. "LINUX" IS a valid term for that menu option to specify a linux image - which this is - it just did not work here, and KERNEL does. Lack of testing again?

https://en.wikipedia.org/wiki/Preboot_Execution_Environment

https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface

Some menu format examples here:

http://wiki.centos.org/HowTos/PXE/PXE_Setup/Menus

Note there are no NFS or server IP addresses required, as you see in some forum examples for NFS etc.

If the host gets a DHCP address from the server, it knows where to get the files from due to dnsmaq.conf.

So, making a correct Default file from the two examples above, for my tftpboot folder, that holds the pmagic content, I have so far a half built working menu for when I hope to add the other Mint 32/64 Distros also (yeah, right!), but for now I only want labels 1 and 2 working to boot pmagic 32 or 64 bit versions, to show this file and my tftpboot structure for pmagic works:

default menu.c32

prompt 0

timeout 300

ONTIMEOUT local

menu title ########## PXE Boot Menu ##########

label 1

MENU label ^1) Install pmagic32

KERNEL pmagic/bzImage

#kernel centos7/vmlinuz

INITRD pmagic/initrd.img,pmagic/fu.img,pmagic/m32.img,pmagic/files.cgz

APPEND edd=on vga=normal

#append initrd=centos7/initrd.img method=ftp://192.168.1.20/pub devfs=nomount

label 2

menu label ^2) Install pmagic64

kernel pmagic/bzImage64

INITRD pmagic/initrd.img,pmagic/fu.img,pmagic/m64.img,pmagic/files.cgz

label 3

menu label ^3) Install mint32

kernel mint/casper/vmlinuz

append initrd=centos7/initrd.img method=ftp://192.168.1.20/pub devfs=nomount inst.vnc inst.vncpassword=password

label 4

menu label ^3) Install mint64

kernel mint64/casper/vmlinuz

append initrd=/initrd.img method=ftp://192.168.1.20/pub devfs=nomount inst.vnc inst.vncpassword=password

label 5

menu label ^5) Boot from local drive

localboot 0

As you see, this works:

All files from the pmagic folder are seen and accessible due to all permissions in /tftpboot being made 755, changed from their unpacked tar defaults, which may cause "file not found" type errors at pxeboot, that I got for files.cgz - needs to be executable to unpack it, for "others" also it seems, from just rw, which makes sense as no user is defined at boot for a PXE host, I guess?:

stevee@MintPC100 ~ $ ls -als Downloads/pmagic/

total 469536

4 drwxr-xr-x 2 root root 4096 Jul 24 17:37 .

4 drwxr-xr-x 4 stevee stevee 4096 Jul 24 16:47 ..

3268 -r--r--r-- 1 root root 3342656 Jun 30 14:45 bzImage

3496 -r--r--r-- 1 root root 3578848 Jun 30 15:52 bzImage64

373668 -rw-r--r-- 1 root root 382633814 Jul 7 15:02 files.cgz

39380 -r--r--r-- 1 root root 40323053 Jul 7 14:45 fu.img

3144 -r--r--r-- 1 root root 3218067 Jul 7 14:45 initrd.img

22696 -r--r--r-- 1 root root 23238584 Jul 7 14:45 m32.img

23872 -r--r--r-- 1 root root 24444563 Jul 7 14:45 m64.img

4 -rw-r--r-- 1 root root 286 Jul 7 15:02 stanza.txt

MintPC100 Downloads # ls -als /tftpboot/pmagic/

total 1446036

4 drwxr-xr-x 3 root root 4096 Jul 24 15:55 .

4 drwxr-xr-x 10 root root 4096 Jul 24 13:09 ..

3268 -rwxr-xr-x 1 root root 3342656 Jul 24 15:55 bzImage

3496 -rwxr-xr-x 1 root root 3578848 Jul 24 15:55 bzImage64

373668 -rwxr-xr-x 1 root root 382633814 Jul 24 13:09 files.cgz

39380 -rwxr-xr-x 1 root root 40323053 Jul 24 15:55 fu.img

3144 -rwxr-xr-x 1 root root 3218067 Jul 24 15:55 initrd.img

22696 -rwxr-xr-x 1 root root 23238584 Jul 24 15:55 m32.img

23872 -rwxr-xr-x 1 root root 24444563 Jul 24 15:55 m64.img

506884 -rwxr-xr-x 1 root root 519045120 Jul 24 13:09 pmagic_2015_07_07.iso

469612 -rwxr-xr-x 1 root root 480878134 Jul 24 15:56 pmagic_pxe_2015_07_07.tar.gz

4 drwxr-xr-x 3 root root 4096 Jul 24 13:09 pmodules

4 -rwxr-xr-x 1 root root 286 Jul 24 13:09 stanza.txt

The folder structure for the tftproot/ after adding all the files from syslinux as per the tecmint link (not really sure all of it is required actually, unless to make the menu format for vga work properly?) is:

stevee@DellMint ~ $ ls /tftpboot/

altmbr.bin elf.c32 isohdpfx.bin mbr_f.bin reboot.c32

altmbr_c.bin ethersel.c32 isohdpfx_c.bin memdisk rosh.c32

altmbr_f.bin gfxboot.c32 isohdpfx_f.bin memdump.com sanboot.c32

boot.txt gptmbr.bin isohdppx.bin meminfo.c32 sdi.c32

cat.c32 gptmbr_c.bin isohdppx_c.bin menu.c32 sysdump.c32

chain.c32 gptmbr_f.bin isohdppx_f.bin mint
ubuntu

cmd.c32 gpxecmd.c32 isolinux.bin mint64 ver.com

com32 gpxelinux.0 isolinux-debug.bin pcitest.c32 vesainfo.c32

config.c32 gpxelinuxk.0 kbdmap.c32 pmagic vesamenu.c32

cpuid.c32 hdt.c32 linux.c32 pmload.c32 vpdtest.c32

cpuidtest.c32 host.c32 ls.c32 poweroff.com whichsys.c32

diag ifcpu64.c32 lua.c32 pwd.c32 xp

disk.c32 ifcpu.c32 mboot.c32 pxechain.com zzjson.c32

dmitest.c32 ifplop.c32 mbr.bin pxelinux.0

dosutil int18.com mbr_c.bin pxelinux.cfg

So, in summary, it's just a case of unpacking all the files from the pmagic PXE.tar.gzip from their sales site ($9 bargain), copying the pmagic folder to your tftproot folder you chose and set in dnsmasq.conf, getting your dnsmasq server working for DHCP and TFTP, copying all the syslinux content to your tftproot, creating a pxelinux.cfg/default text file with the correct menu terms, and checking they relate to where the files actually reside in your tftproot file structure.

All being well it should take about 4 mins from boot menu to loaded desktop across a 100MB network.

Now you can try adding the contents of other Distro .ISO files to your tftproot folders (ubuntu worked well years back, but some others like Asterix PBX did not, as I did not know enough - and still don't! - or the ISO file systems are too complex/obscure to work out what is required where), and amending the menu options in the pxelinux.cfg/default text file.

25/7/15

Here is a menu section that "seemed to work " for a full hard drive install for Ubuntu 64 netboot installer gzip from here:

http://archive.ubuntu.com/ubuntu/dists/vivid/main/installer-amd64/current/images/netboot/

DSC_0026.jpg

DSC_0025.jpg

but then the completed installation does not boot properly and hangs at a black screen? That is not a PXE issue though, I don't think (corruption?), as I got the i386 netboot gzip after, and wrote another menu, and this time the install worked.

The menu sections for these Ubuntu and pmagic loads, are developed from my (tecmint) example above, which I got working by trial and error, again combining clues from formats of the other examples, and can be numbered how you like, but the format terms, in bold - including the commas - are:

default menu.c32
prompt 0
timeout 300
ONTIMEOUT local

menu title ########## PXE Boot Menu ##########

label 1
menu label ^1) Install pmagic32
kernel pmagic/bzImage
INITRD pmagic/initrd.img,pmagic/fu.img,pmagic/m32.img,pmagic/files.cgz
APPEND edd=on vga=normal

label 2
menu label ^2) Install pmagic64
kernel pmagic/bzImage64
INITRD pmagic/initrd.img,pmagic/fu.img,pmagic/m64.img,pmagic/files.cgz
APPEND edd=on vga=normal

label 5
menu label ^5) Install ubuntu64
kernel ubuntu-installer64/amd64/linux
append initrd=ubuntu-installer64/amd64/initrd.gz
include ubuntu-installer64/amd64/boot-screens/menu.cfg,ubuntu-installer64/amd64/boot-screens/vesamenu.c32

label 6
menu label ^6) Install ubuntu i386
kernel ubuntu-installer/i386/linux
append initrd=ubuntu-installer/i386/initrd.gz
include ubuntu-installer/i386/boot-screens/menu.cfg,ubuntu-installer/i386/boot-screens/vesamenu.c32

label local
menu label ^local) Boot from local drive
localboot 0

Remember to

chmod 755 -R </tftproot/>

directory, or PXE won't have permissions to load the files!

Mint is not working yet.

To see how the menus relate to the tftpboot structure:

DellMint stevee # tree /tftpboot/pmagic/
/tftpboot/pmagic/
├── bzImage
├── bzImage64
├── files.cgz
├── fu.img
├── initrd.img
├── m32.img
├── m64.img
├── pmagic_2015_07_07.iso
├── pmodules
│   ├── PMAGIC_2015_07_07.SQFS
│   └── scripts
└── stanza.txt

DellMint stevee # tree /tftpboot/ubuntu-installer
/tftpboot/ubuntu-installer
└── i386
├── boot-screens
│   ├── adtxt.cfg
│   ├── exithelp.cfg
│   ├── f10.txt
│   ├── f1.txt
│   ├── f2.txt
│   ├── f3.txt
│   ├── f4.txt
│   ├── f5.txt
│   ├── f6.txt
│   ├── f7.txt
│   ├── f8.txt
│   ├── f9.txt
│   ├── menu.cfg
│   ├── prompt.cfg
│   ├── rqtxt.cfg
│   ├── splash.png
│   ├── stdmenu.cfg
│   ├── syslinux.cfg
│   ├── txt.cfg
│   └── vesamenu.c32
├── initrd.gz
├── linux
├── pxelinux.0
└── pxelinux.cfg
└── default -> ../boot-screens/syslinux.cfg

DellMint stevee # tree -d /tftpboot/mint/
/tftpboot/mint/
├── boot
│   └── grub
│   └── x86_64-efi
├── casper
├── dists
│   └── trusty
│   ├── contrib
│   │   ├── binary-amd64
│   │   └── binary-i386
│   ├── main
│   │   ├── binary-amd64
│   │   └── binary-i386
│   └── non-free
│   ├── binary-amd64
│   └── binary-i386
├── EFI
│   └── BOOT
├── isolinux
├── pool
│   ├── contrib
│   │   └── b
│   │   └── b43-fwcutter
│   ├── main
│   │   ├── b
│   │   │   ├── bcmwl
│   │   │   └── bogl
│   │   ├── e
│   │   │   ├── efibootmgr
│   │   │   └── eglibc
│   │   ├── g
│   │   │   ├── grub2
│   │   │   └── grub2-signed
│   │   ├── l
│   │   │   └── linux-wlan-ng
│   │   ├── m
│   │   │   └── mouseemu
│   │   ├── n
│   │   │   └── ncurses
│   │   ├── s
│   │   │   ├── setserial
│   │   │   ├── shim
│   │   │   └── shim-signed
│   │   ├── t
│   │   │   └── tasksel
│   │   ├── u
│   │   │   └── ubiquity
│   │   └── w
│   │   ├── wvdial
│   │   └── wvstreams
│   └── non-free
│   └── s
│   └── sl-modem
└── preseed

DellMint stevee # tree /tftpboot/mint/casper/
/tftpboot/mint/casper/
├── filesystem.manifest
├── filesystem.manifest-remove
├── filesystem.size
├── filesystem.squashfs
├── initrd.lz
├── memtest
└── vmlinuz

31/7/15

It may be a problem to run dnsmasq at boot up on a network due to conflicts with the "real" DCHP server, which then means any hosts not getting the "real" server options may not get DNS and a gateway etc. so be unable to access the web etc. If this happens to a Windows host, you have to shut off dnsmasq, then disable and re-enable the Win hosts network connection so it gets another DHCP address from the "real" server. So how do you stop dnsmasq - or any other linux service like samba or apache2 - from running at boot?

Renaming the script links in /etc/rcX/ no longer works as there is a controlling service which ignores this file. so try:

update-rc.d -f apache2 remove && update-rc.d -f dnsmasq remove

MintPC100 stevee # update-rc.d -f apache2 remove && update-rc.d -f dnsmasq remove
 Removing any system startup links for /etc/init.d/apache2 ...
 /etc/rc0.d/K09apache2
 /etc/rc1.d/K09apache2
 /etc/rc2.d/S91apache2
 /etc/rc3.d/S91apache2
 /etc/rc4.d/S91apache2
 /etc/rc5.d/S91apache2
 /etc/rc6.d/K09apache2
 Removing any system startup links for /etc/init.d/dnsmasq ...
 /etc/rc0.d/K85dnsmasq
 /etc/rc1.d/K85dnsmasq
 /etc/rc2.d/S15dnsmasq
 /etc/rc3.d/S15dnsmasq
 /etc/rc4.d/S15dnsmasq
 /etc/rc5.d/S15dnsmasq
 /etc/rc6.d/K85dnsmasq

Check if it is stopped using nmap before and after to see if the ports used by that service are open e.g. TCP 80  for apache2, or UDP 67 for dnsmasq:

stevee@MintPC100 ~ $ nmap -sT 127.0.0.1

Starting Nmap 6.40 ( http://nmap.org ) at 2015-07-31 12:55 BST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00089s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
53/tcp open domain
80/tcp open http
139/tcp open netbios-ssn
445/tcp open microsoft-ds
631/tcp open ipp

MintPC100 stevee # nmap -sU 127.0.0.1

Starting Nmap 6.40 ( http://nmap.org ) at 2015-07-31 12:58 BST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0038s latency).
Not shown: 992 closed ports
PORT STATE SERVICE
53/udp open domain
67/udp open|filtered dhcps
68/udp open|filtered dhcpc
69/udp open|filtered tftp
137/udp open netbios-ns
138/udp open|filtered netbios-dgm
631/udp open|filtered ipp
5353/udp open|filtered zeroconf

Or you can check for running process:

MintPC100 stevee # ps ax | grep apache2
2301 ? Ss 0:00 /usr/sbin/apache2 -k start
2302 ? Sl 0:00 /usr/sbin/apache2 -k start
2303 ? Sl 0:00 /usr/sbin/apache2 -k start
2840 pts/4 S+ 0:00 grep --colour=auto apache2
MintPC100 stevee # ps ax | grep dnsmasq
1416 ? S 0:00 /usr/sbin/dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u
dnsmasq -r /var/run/dnsmasq/resolv.conf -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.
dpkg-new
2842 pts/4 S+ 0:00 grep --colour=auto dnsmasq

reboot

Check after reboot with nmap or ps again. Now, only the grep command is showing, not the services.

MintPC100 stevee # ps ax | grep dnsmasq
2433 pts/2 S+ 0:00 grep --colour=auto dnsmasq
MintPC100 stevee # ps ax | grep apache2
2435 pts/2 S+ 0:00 grep --colour=auto apache2

Only the DHCP client is showing, not the dnsmasq service:

MintPC100 stevee # nmap -sU 127.0.0.1

Starting Nmap 6.40 ( http://nmap.org ) at 2015-07-31 13:10 BST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000016s latency).
Not shown: 995 closed ports
PORT STATE SERVICE
68/udp open|filtered dhcpc
137/udp open netbios-ns
138/udp open|filtered netbios-dgm
631/udp open|filtered ipp
5353/udp open|filtered zeroconf

No HTTP 80 either:

MintPC100 stevee # nmap -sT 127.0.0.1
Starting Nmap 6.40 ( http://nmap.org ) at 2015-07-31 13:12 BST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00077s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
139/tcp open netbios-ssn
445/tcp open microsoft-ds
631/tcp open ipp

Start the services manually when you want:

MintPC100 stevee # service apache2 start
* Starting web server apache2 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

Again, remove that apache2 ServerName warning by setting a webserver host name:

MintPC100 stevee # vi /etc/apache2/apache2.conf

# Global configuration
#
ServerName MintPC100
MintPC100 stevee # service apache2 restart
* Restarting web server apache2

ServerName.jpg

 

 

 

Comments are closed.

Post Navigation