SCCM PXE boot - "File not found"
This just stopped working today (has been working great for the past week) .. nothing in logs to indicate why.
I have a single site topology, SCCM with WDS/PSP. DHCP server on same subnet. Installed WDS (configured nothing) then PSP. Updated PSP DP with x86 and x64 boot images.
To test, I added a bare metal client to the database, placed the resultant client record within a collection, and advertised a simple image deployment task sequence. When booting the pc, i get an immediate "PXE-T01: File not found". Now, since we no longer configure DHCP options to point to the PXE server, nor to tell the PXE client which boot filename to acquire, exactly what file does the TFTP daemon use when responding to a PXE request? The smspxe.log reflects the fact that the PXE client is in fact communicating with the service and requesting a boot file. Is there a TFTP daemon log somewhere that might tell me what file it is not finding?
10.10.1.29 is the SCCM server
10.10.1.35 is the DHCP server
10.10.1.146 is the PXE client
[010.010.001.029:67] Recv From:[000.000.000.000:68] Len:548 77a154 smspxe 11/29/2007 4:22:42 PM 3664 (0x0E50)
[010.010.001.029:67] Recv From:[000.000.000.000:68] Len:548 77b1a4 smspxe 11/29/2007 4:22:44 PM 5244 (0x147C)
Ignoring req from [000.000.000.000:68] Dest Server:[010.010.001.035] smspxe 11/29/2007 4:22:44 PM 5244 (0x147C)
[010.010.001.029:4011] Recv From:[010.010.001.146:68] Len:548 23b5d8c smspxe 11/29/2007 4:22:44 PM 5244 (0x147C)So far, I have completely removed the PSP/WDS services, restarted the server, reinstalled WDS/PSP, and again restarted the server. Same results. Any help here is appreciated.
Answers
For anyone with a similar situation. The solution in my case was to uninstall the PSP role by directly running ...\bin\pxe.msi. This method detected that the installation was incomplete and installed the necessary files. I will assume SCCM performs some quality controls (that in this case failed me), while the installer just did what it needed to do.
- 1: Stop the WDS service.
2: Delete C:\WINDOWS\TEMP\PXEBootFiles\Windows
3: Start the WDS service.
4: Check smspxe.log again and see if <![LOG[Unable to delete directory... exists.
This solved my issues, and my folders in ...\SMSBoot\x86 ...\SMSBoot\x64 and ...\SMSBoot\ia64 were populated with the needed files.
All Replies
Check your REMINST directory on your WDS server.
You should have at a minimum 2 directories.
\REMINST\SMSBoot - this contains the files pxe needs which might be missing from your config
\REMINST\SMSImages - this contains the boot images (wim)
regards
Simon
Correct. The RemoteInstall directory contains the necessary \SMSboot and \SMSImages folders. My issue appears to be the fact that the \SMSboot\x86 and \SMSboot\x64 subfolders are completely empty. I have determined this from comparing some of my other SCCM installations.
I now have to question this install. I was told that the local admin installed Forefront yesterday afternoon (which would be after the last time I saw PXE actually work on this site server). As well, why did the uninstall/reinstall not put the files back? Too bad there isnt an option to 'repair' the SCCM installation.
My understanding is the x86 and x64 folders are populated when you distributed the boot images for that architecture.
- That isn't the case here. I have removed and readded the boot images to the DP's numerous times. Nothing.
For anyone with a similar situation. The solution in my case was to uninstall the PSP role by directly running ...\bin\pxe.msi. This method detected that the installation was incomplete and installed the necessary files. I will assume SCCM performs some quality controls (that in this case failed me), while the installer just did what it needed to do.
I'm seeing to be what looks same issue, I ran the pxi.msi and it say it updated things. I looked in C:\RemoteInstall\SMSIMAGES\SMSPKG\PDS00001 and 002 and see WIM images. When the pc boots, it says
CLIENT MAC ADDR:.....
PXE-E53: No boot filename received
PXE-M0F: Exiting Intel Boot Agent
- I had the same observation. Stopping and restarting the WDSSERVER service clears the provider cache and might resolve your issue. Also make certain your boot images are distributed to PXE DP's.
I had the same problem
TFTP
PXE-T01: File not found
PXE:E3B: TFTP Error- File not foundbut diferente error in the smspxe.log and doing all step for fixing this problem and no work.
This steps:
1. Remove the SMS PXE role. Look at the PXESetup.log file to verify that the uninstall is complete and successful.
2. Uninstall the WDS server.
3. Reboot the machine.
4. Re-install the WDS server, but "do not configure it". Do nothing at all other than installing WDS.
5. Add the SMS PXE role. Look at the PXESetup.log file to verify that the installation is complete and successful.
6. Add the boot images to the SMS PXE DP share. Look at the distmgr.log file to verify that the replication of the boot image to the DP is complete and successful.
7. Try booting a PXE client.
Log file smspexe.log.
<![LOG[SMSPXE Provider starting
]LOG]!><time="17:42:19.188+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="main.cpp:226">
<![LOG[================= PXE Provider loaded. =====================]LOG]!><time="17:42:19.188+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="smspxe.cpp:142">
<![LOG[Init Policy Provider settings]LOG]!><time="17:42:19.188+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:225">
<![LOG[Machine is running Windows 2003 SP2 or older. (NTVersion=0X502, ServicePack=2)]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="provsettings.cpp:1532">
<![LOG[Loaded PXE settings from reg key HKLM\Software\Microsoft\SMS\Identification:
SMS Site Settings:
Server: SCCM2007-03
SiteCode: BET
Parent SiteCode: <empty>
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:348">
<![LOG[Loaded PXE settings from reg key HKLM\Software\Microsoft\SMS\PXE:
PXE Settings:
IsActive: Yes
ResponseDelay: 0
CacheExpire: 3600
HTTP Port: 80
HTTPS Port: 443
IISSSLState: 0x0
BindPolicy: Exclude <empty>
TRK: <non empty>
SiteSignCert: <empty>
Root CA Certs: <empty>
PXE GUID: 0ac94b16-c47a-42f5-af54-2c1833699ffb
PXEPassword: <non empty>
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:506">
<![LOG[Loaded TFTP settings from reg key HKLM\SYSTEM\CurrentControlSet\Services\TFTPD\Parameters:
TFTP Settings:
Directory: C:\RemoteInstall
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:667">
<![LOG[Loaded Database settings from reg key HKLM\Software\Microsoft\SMS\PXE:
Database Settings:
Server: SCCM2007-03
Database: SCCM200703\SMS_BET
User: <empty>
Password: <empty>
Use Integrated Security: No
Impersonation Required: No
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:834">
<![LOG[PXE Provider Settings Changed]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:291">
<![LOG[Loaded PXE settings from reg key HKLM\Software\Microsoft\SMS\Identification:
SMS Site Settings:
Server: SCCM2007-03
SiteCode: BET
Parent SiteCode: <empty>
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:348">
<![LOG[Loaded PXE settings from reg key HKLM\Software\Microsoft\SMS\PXE:
PXE Settings:
IsActive: Yes
ResponseDelay: 0
CacheExpire: 3600
HTTP Port: 80
HTTPS Port: 443
IISSSLState: 0x0
BindPolicy: Exclude <empty>
TRK: <non empty>
SiteSignCert: <empty>
Root CA Certs: <empty>
PXE GUID: 0ac94b16-c47a-42f5-af54-2c1833699ffb
PXEPassword: <non empty>
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:506">
<![LOG[Loaded TFTP settings from reg key HKLM\SYSTEM\CurrentControlSet\Services\TFTPD\Parameters:
TFTP Settings:
Directory: C:\RemoteInstall
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:667">
<![LOG[Loaded Database settings from reg key HKLM\Software\Microsoft\SMS\PXE:
Database Settings:
Server: SCCM2007-03
Database: SCCM200703\SMS_BET
User: <empty>
Password: <empty>
Use Integrated Security: No
Impersonation Required: No
]LOG]!><time="17:42:19.198+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:834">
<![LOG[Parsing Database name 'SCCM200703\SMS_BET' for SQL named instance.]LOG]!><time="17:42:19.208+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="mpdbconnection.cpp:958">
<![LOG[Executing PxeGetCert(0ac94b16-c47a-42f5-af54-2c1833699ffb)]LOG]!><time="17:42:19.308+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="database.cpp:743">
<![LOG[CDatabaseProxy :: GetPxeCert succeeded: 0ac94b16-c47a-42f5-af54-2c1833699ffb \\SCCM2007-03 <non empty>]LOG]!><time="17:42:19.308+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="database.cpp:815">
<![LOG[Loaded PXE settings from DB:
PXE Cert: <non empty>
]LOG]!><time="17:42:19.308+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="provsettings.cpp:561">
<![LOG[Initializing PXEPerfObject.]LOG]!><time="17:42:19.368+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="smspxe.cpp:404">
<![LOG[Parsing Database name 'SCCM200703\SMS_BET' for SQL named instance.]LOG]!><time="17:42:19.368+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="mpdbconnection.cpp:958">
<![LOG[Executing LookupDevice(, 00:00:00:00:00:00)]LOG]!><time="17:42:19.368+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="database.cpp:395">
<![LOG[CDatabaseProxy :: LookupDevice succeeded: 0 0 0 0]LOG]!><time="17:42:19.368+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="database.cpp:445">
<![LOG[Found new image SMSPKG\BET00001]LOG]!><time="17:42:19.398+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="bootimagemgr.cpp:915">
<![LOG[Opening image file C:\RemoteInstall\SMSImages\SMSPKG\BET00001\boot.BET00001.wim]LOG]!><time="17:42:19.408+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="wimfile.cpp:255">
<![LOG[Found Image file: C:\RemoteInstall\SMSImages\SMSPKG\BET00001\boot.BET00001.wim
PackageID: SMSPKG\BET00001
ProductName: Microsoft® Windows® Operating System
Architecture: 0
Description: Microsoft Windows Vista PE (X86)
Version:
Creator:
SystemDir: WINDOWS
]LOG]!><time="17:42:19.418+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="bootimagemgr.cpp:715">
<![LOG[Closing image file C:\RemoteInstall\SMSImages\SMSPKG\BET00001\boot.BET00001.wim]LOG]!><time="17:42:19.418+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="wimfile.cpp:291">
<![LOG[Mutex was not owned. Now have ownership.]LOG]!><time="17:42:19.428+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="TSBoot.h:671">
<![LOG[Unable to delete directory C:\WINDOWS\TEMP\PXEBootFiles\Windows\Boot\PXE (0x80070005). Continuing.]LOG]!><time="17:42:22.433+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="ccmfile.cpp:992">
<![LOG[Unable to delete directory C:\WINDOWS\TEMP\PXEBootFiles\Windows\Boot (0x80070005). Continuing.]LOG]!><time="17:42:22.433+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="ccmfile.cpp:992">
<![LOG[Unable to delete directory C:\WINDOWS\TEMP\PXEBootFiles\Windows (0x80070091). Continuing.]LOG]!><time="17:42:22.433+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="ccmfile.cpp:992">
<![LOG[Warning: Failed to copy the needed boot binaries from the boot image C:\RemoteInstall\SMSImages\SMSPKG\BET00001\boot.BET00001.wim.
Cannot create a file when that file already exists. (Error: 800700B7; Source: Windows)]LOG]!><time="17:42:22.433+000" date="02-20-2008" component="smspxe" context="" type="3" thread="5860" file="bootimagemgr.cpp:1060">
<![LOG[Found new image SMSPKG\BET00002]LOG]!><time="17:42:22.433+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="bootimagemgr.cpp:915">
<![LOG[Opening image file C:\RemoteInstall\SMSImages\SMSPKG\BET00002\boot.BET00002.wim]LOG]!><time="17:42:22.433+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="wimfile.cpp:255">
<![LOG[Found Image file: C:\RemoteInstall\SMSImages\SMSPKG\BET00002\boot.BET00002.wim
PackageID: SMSPKG\BET00002
ProductName: Microsoft® Windows® Operating System
Architecture: 9
Description: Microsoft Windows Vista PE (AMD64)
Version:
Creator:
SystemDir: WINDOWS
]LOG]!><time="17:42:22.443+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="bootimagemgr.cpp:715">
<![LOG[Closing image file C:\RemoteInstall\SMSImages\SMSPKG\BET00002\boot.BET00002.wim]LOG]!><time="17:42:22.443+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="wimfile.cpp:291">
<![LOG[Mutex was not owned. Now have ownership.]LOG]!><time="17:42:22.443+000" date="02-20-2008" component="smspxe" context="" type="0" thread="5860" file="TSBoot.h:671">
<![LOG[Unable to delete directory C:\WINDOWS\TEMP\PXEBootFiles\Windows\Boot\PXE (0x80070005). Continuing.]LOG]!><time="17:42:24.446+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="ccmfile.cpp:992">
<![LOG[Unable to delete directory C:\WINDOWS\TEMP\PXEBootFiles\Windows\Boot (0x80070005). Continuing.]LOG]!><time="17:42:24.446+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="ccmfile.cpp:992">
<![LOG[Unable to delete directory C:\WINDOWS\TEMP\PXEBootFiles\Windows (0x80070091). Continuing.]LOG]!><time="17:42:24.446+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="ccmfile.cpp:992">
<![LOG[Warning: Failed to copy the needed boot binaries from the boot image C:\RemoteInstall\SMSImages\SMSPKG\BET00002\boot.BET00002.wim.
Cannot create a file when that file already exists. (Error: 800700B7; Source: Windows)]LOG]!><time="17:42:24.446+000" date="02-20-2008" component="smspxe" context="" type="3" thread="5860" file="bootimagemgr.cpp:1060">
<![LOG[PXE Provider finished loading.]LOG]!><time="17:42:24.486+000" date="02-20-2008" component="smspxe" context="" type="1" thread="5860" file="smspxe.cpp:188">
<![LOG[[010.000.000.122:67] Recv From:[000.000.000.000:68] Len:548 6f7b04]LOG]!><time="17:42:46.537+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6012" file="smspxe.cpp:663">
<![LOG[Parsing Database name 'SCCM200703\SMS_BET' for SQL named instance.]LOG]!><time="17:42:46.537+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6112" file="mpdbconnection.cpp:958">
<![LOG[Executing LookupDevice(45C39F23-D8BB-4F5C-8E93-A8041D8AED65, 00:03:FF:60:3E:6E)]LOG]!><time="17:42:46.537+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6112" file="database.cpp:395">
<![LOG[CDatabaseProxy :: LookupDevice succeeded: 0 0 37 1]LOG]!><time="17:42:46.537+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6112" file="database.cpp:445">
<![LOG[MAC=00:03:FF:60:3E:6E SMBIOS GUID=45C39F23-D8BB-4F5C-8E93-A8041D8AED65 > Device found in the database. MacCount=1 GuidCount=0]LOG]!><time="17:42:46.537+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6112" file="pxehandler.cpp:327">
<![LOG[[010.000.000.122:67] Recv From:[000.000.000.000:68] Len:548 6f8b54]LOG]!><time="17:42:49.231+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6012" file="smspxe.cpp:663">
<![LOG[Ignoring req from [000.000.000.000:68] Dest Server:[010.000.000.101]]LOG]!><time="17:42:49.241+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6012" file="pxeutil.cpp:114">
<![LOG[[010.000.000.122:4011] Recv From:[010.000.000.246:68] Len:548 21b41b4]LOG]!><time="17:42:49.251+000" date="02-20-2008" component="smspxe" context="" type="0" thread="6008" file="smspxe.cpp:663">- 1: Stop the WDS service.
2: Delete C:\WINDOWS\TEMP\PXEBootFiles\Windows
3: Start the WDS service.
4: Check smspxe.log again and see if <![LOG[Unable to delete directory... exists.
This solved my issues, and my folders in ...\SMSBoot\x86 ...\SMSBoot\x64 and ...\SMSBoot\ia64 were populated with the needed files. - Great information! Thanks Thomas.
I am having the same problem, and I have treid all fixes listed here and nothing is working, I have removed all boot images and recreated them. re-installed PXE via the msi and the normal way. Anyone else have ideas?Allow me to join the "Dead PXE Society" ... same issues as described above. Tried every solution except for reinstalling the server as such
Same result: Empty SMSBoot Folders!
Cheers,
Serge
Got the same problem.
My solution was to remove all boot images from dp.
Rename c:\windows\temp to c:\windows\temp.old
created new c:\windows\temp
After that. Distribute bootimage to dp. And then the SMSboot\X folders was populated!
/Tony
Same problem here and I can now almost re-install WDS and a PXE service point my eyes close for having done it so many times.
On my system, TMP and TEMP system environment variables are set to "C:\Temp" and this folder's ACL is "Full Control" to EVERYONE (test environment).
I've deleted the folder C:\Temp\BootImages multiple times and the "Boot image (x86)" from the DP and PXE Service Point as well .... redistributed "Boot image (x86)" everywhere.
... I never get to see any file in D:\RemoteInstall\SMSBoot\x86 .... ever.
What gives?
- It took mounting the boot.wim (both x86 and x64!) with imagex and copying the Windows\Boot\PXE data to \RemoteInstall\SMSBOOT\x86.
See here: http://andrius.kozeniauskas.com/blog/2008/02/26/sccm-pxe-t01-file-not-found-and-pxee3b-tftp-error-file-not-found-errors/ 1. Remove the SMS PXE role. Look at the PXESetup.log file to verify that the uninstall is complete and successful.
2. Uninstall the WDS server.
3. Reboot the machine.
4. Re-install the WDS server, but "do not configure it". Do nothing at all other than installing WDS.
5. Add the SMS PXE role. Look at the PXESetup.log file to verify that the installation is complete and successful.
6. Add the boot images to the SMS PXE DP share. Look at the distmgr.log file to verify that the replication of the boot image to the DP is complete and successful.
7. Try booting a PXE client.
This solution works for me, Between step 3 and step 4, I deleted the RemoteInstall folder. It was later automaticly created. Things works following the above steps!
greetings
- Proposed As Answer byPaul Eddington Friday, September 11, 2009 5:55 AM
- Recreating the Temp folder worked for me.
remove all boot images from dp.
Rename c:\windows\temp to c:\windows\temp.old
created new c:\windows\temp
After that Distribute bootimage to dp
Worked for me too, i had same problem after installing R2 and rebooting some times for windows updates.. very strange but now working fine with the solution.
thanks
Hi Thegor,
This did work for me however the minute I reboot the server, the problem reoccurs.
One thing I have noticed is this issue has significant number of people affected, over 6500 views however it doesn't appear as if any of the Microsoft guy's can help?
I believe someone said somewhere they reported this as bug in SP1 RC, if so, can anyone acknowledge the problem is known and either an official workaround or even a "a hotfix is coming" or even "wait for SP2" ...
...
In my case this problem occurred before I installed SP1, so my issue was definately not caused by SP1.
Although, you do have one symptom I didn't have, "Reboot clears the folders again", so you might have a different problem.
- For me the issue was that when I was distributing to the DP I was only adding the servername as the intended DP. What I didn't realise is that I had to deploy the package to SERVERNAME and SERVERNAME\SMSPXEIMAGES$. One was at the top of the list, and the other was right down the bottom well out of my sight.
The solution below worked for me, except that even with taking owenership I couldn't delete the PXEBootfiles folder but I could rename it. So I stopped WDS service, Renamed the folder c:\windows\temp\PXEBootFiles (its a hidden system file so turn the option on so you can see it), restarted the WDS services and instantly the files required in the Boot folders were there. I also created a backup incase those files go missing again :) Have a read below.
This is from http://scug.be/blogs/sccm/archive/2008/07/04/psp-role-in-sccm-amp-wds-issues.aspx
Make sure that you do not have an OS Image or OS Package being distributed to your \\YOURSERVER\SMSPXEIMAGES$ ! After this step you need to locate the folder (it is hidden), take ownership of it, and delete it. The folder will be at %temp%/PXEBootfiles.Restart the WDS services and the SMSBoot folder would populate automaticaly.- There is no need to remove roles or folders. Please have a look at:
http://www.maijen.nl/index.php?option=com_content&view=article&id=73:sccm-2007-r2-smsboot-files-disappear-after-reboot&catid=31:microsoft-sccm&Itemid=64
Robert - Make sure you do NOT have any other packages on the SMSPXEIMAGES$ distribution point besides the boot packages. If you do have other packages, remove them and then take ownership of C:\Windows\temp\Pxebootfiles, after that remove the folder. This way the problem will be solved.
Regards,
Eddo - I had this done before, i reinstalled it, but it had a 'Repair' button locked, I am wondering why it is locked.......
All i know that it had a message when i clicked it a MILLION TIMES...... It said 'Boot system Medium disabled, Repair halted' I wonder what that means for a repair on a SCCM installation.... - Make sure that you do not have an OS Image or OS Boot Image Package being distributed to your \\YOURSERVER\SMSPXEIMAGES$ ! After this step you need to locate the folder (it is hidden), take ownership of it, and delete it. The folder will be at %temp%/PXEBootfiles.Restart the WDS services and the SMSBoot folder would populate automaticaly.
- Also worth a try is to make sure your PXE server is a member of the local Administrators group, otherwise the PXE server will not have access to the boot files in the REMOTEINSTALL folder.
regards