Strange thing on my end is the storage node is coming up with a totally different hash value:
Posts made by Greg Plamondon
-
RE: Snapin Hash does not exist
-
RE: Snapin Hash does not exist
I am having the same issue after upgrading.
I am on 1.3.0-RC-10 5955 -
RE: Snapins dont deploy from Storage Nodes. Hash Mismatch
@Wayne-Workman said in Snapins dont deploy from Storage Nodes. Hash Mismatch:
a fiber line tha
Thanks Wayne, If your available and willing some time this weekend. let me know.
-
RE: Snapins dont deploy from Storage Nodes. Hash Mismatch
I am not sure what kind of network issue would cause a
Hash mismatch with the exact same hash values every time? If you guys know what kind of network issues I should be looking at I will investigate further. I don’t have any firewalls in between nodes and Master server, The iptables is shutdown and disabled on nodes and master. This issue happens to me on all 5 remote nodes that are in different locations connected via MPLS.Thanks.,
-
RE: Snapins dont deploy from Storage Nodes. Hash Mismatch
@Wayne-Workman
I fould that if you change the location to the main location after Imaging the snapins will deploy from the main site. So basically you do an Image without snapins. once its imaged, change the location to the main location. then advanced task “All-Snapins” Its a workaround we are using currently. -
RE: Snapins dont deploy from Storage Nodes. Hash Mismatch
Hey guys any progress on this problem? Am I the only one that uses the nodes to install snapins?
-
RE: Fog not auto joining to the domain requires additional restart to join-Windows 10
@x23piracy said in Fog not auto joining to the domain requires additional restart to join-Windows 10:
@Joe-Schmitt said in Fog not auto joining to the domain requires additional restart to join-Windows 10:
@x23piracy while you can do that, it is risky and unadvised. You’re basically creating a race condition and just hoping it works out. I recommend following the written wiki article for how to configure the client and sysprep. We recommend setupcomplete.cmd as that is the proper and safest way to do so.
Hi,
well i know this but my SetupComplete.cmd never worked, i placed it in C:\Windows\Setup\scripts\ and i have the following in it:
del C:\Windows\System32\Sysprep\unattend.xml sc config FOGService start= auto net start FOGService
I am using Windows 10 Pro, Source iso is from “Media Creation Tool”.
If someone could tell why this is not working i could walk away from the knife edge i am using.For my luck the normal workstations work with my method but when i try to redeploy to the vm i am using to prepare the image again and again i get the error message joe was talking about.
Is SetupComplete.cmd only working for Enterprise Win 10? I cannot imagine why else it’s not working for me. hmm…
Regards X23
Does your setup complete contain a reboot command?
shutdown /r /f /t 0
-
RE: Image Prep Script
what is this used for?
set secretKeyPath=\\path\to\secure\keys
what keys are you referring to?
-
Snapins dont deploy from Storage Nodes. Hash Mismatch
I am trying to deploy snapins from our Storage nodes and I am getting an error in the fog.log.
------------------------------------------------------------------------------ ---------------------------------SnapinClient--------------------------------- ------------------------------------------------------------------------------ 7/21/2016 1:40 PM Client-Info Client Version: 0.11.4 7/21/2016 1:40 PM Client-Info Client OS: Windows 7/21/2016 1:40 PM Client-Info Server Version: 1.3.0-RC-1 7/21/2016 1:40 PM Middleware::Response Success 7/21/2016 1:40 PM SnapinClient Snapin Found: 7/21/2016 1:40 PM SnapinClient ID: 378 7/21/2016 1:40 PM SnapinClient Name: 01 - TeamViewer 7/21/2016 1:40 PM SnapinClient Created: 2016-07-21 13:39:35 7/21/2016 1:40 PM SnapinClient Action: 7/21/2016 1:40 PM SnapinClient Pack: False 7/21/2016 1:40 PM SnapinClient Hide: False 7/21/2016 1:40 PM SnapinClient Server: http://192.168.18.39/fog 7/21/2016 1:40 PM SnapinClient TimeOut: 0 7/21/2016 1:40 PM SnapinClient RunWith: cmd.exe 7/21/2016 1:40 PM SnapinClient RunWithArgs: /c 7/21/2016 1:40 PM SnapinClient Args: 7/21/2016 1:40 PM SnapinClient File: TeamViewer-AllSites.sfx.exe 7/21/2016 1:40 PM Middleware::Communication Download: http://192.168.18.39/fog/service/snapins.file.php?mac=C0:3F:D5:9C:6C:36||00:00:00:00:00:00:00:E0&taskid=378 7/21/2016 1:40 PM SnapinClient C:\Program Files (x86)\FOG\tmp\TeamViewer-AllSites.sfx.exe 7/21/2016 1:40 PM SnapinClient ERROR: Hash does not match 7/21/2016 1:40 PM SnapinClient ERROR: --> Ideal: 9B87981143F24BF592603402DE7D6F5E8B6BDCC97F37328C8474DB95635C07CAF792B8ECCE422A6235AE3F130E717417B902059580C62314E4026BBEC9889E4B 7/21/2016 1:40 PM SnapinClient ERROR: --> Actual: 7FF6B7E4378EC39EFFC8A042F445AA6618E765B6F39C8BC53FA5F1E3A5924129F239A6CA0FD7C0350D63C808EFB2FD3E18D48EE6A151C75CCA4C3D1E0B6A2A23 7/21/2016 1:40 PM Middleware::Communication URL: http://10fogserver/fog/service/snapins.checkin.php?taskid=378&exitcode=-1&mac=C0:3F:D5:9C:6C:36||00:00:00:00:00:00:00:E0&newService&json ------------------------------------------------------------------------------
Although: http://18fogserver/fog/status/getsnapinhash.php?filepath=/opt/fog/snapins/TeamViewer-AllSites.sfx.exe Returns
9b87981143f24bf592603402de7d6f5e8b6bdcc97f37328c8474db95635c07caf792b8ecce422a6235ae3f130e717417b902059580c62314e4026bbec9889e4b|10239200
Remote Node
[root@18fogserver snapins]# sha512sum TeamViewer-AllSites.sfx.exe 9b87981143f24bf592603402de7d6f5e8b6bdcc97f37328c8474db95635c07caf792b8ecce422a6235ae3f130e717417b902059580c62314e4026bbec9889e4b TeamViewer-AllSites.sfx.exe
Our Main Fogserver
root@10fogserver:/opt/fog/snapins $ sha512sum TeamViewer-AllSites.sfx.exe 9b87981143f24bf592603402de7d6f5e8b6bdcc97f37328c8474db95635c07caf792b8ecce422a6235ae3f130e717417b902059580c62314e4026bbec9889e4b TeamViewer-AllSites.sfx.exe
Thanks Tom for helping me troubleshoot this.
-
RE: FOG Change Domain OU
@Wayne-Workman said in FOG Change Domain OU:
@Greg-Plamondon said in FOG Change Domain OU:
We have admins here that do not have the permissions to AD to remove or move a pc to another OU.
Fog would need credentials that have permission to do it - either way.
Doesn’t fog have the credentials already?
-
FOG Change Domain OU
I think it would be great if FOG would change OU if it detects that the host assigned OU has changed, and it is not within the specified OU. Right now, if the PC already exists in AD it will not perform any more actions. It would be extremely beneficial as we have limited some of our admins and they are unable to move hosts to a different OU.
The user assigned in FOG that enables domain domain joining does have permission to perform the OU moves. This is simply a request to enable more automated tracking and changing as possible.
-
RE: Trunk 5749 Snapin deployment issue
@Wayne-Workman
I said the method was sloppy not the code, (but that’s a matter of opinion)But your right it was urgent at the time and I already have a samba share at each node for drivers for imaging. I see now what your guide was accomplishing and it would have worked fine if I would have paid more attention to detail when reading your post. Thanks again. -
RE: Utilizing Postscripts (Rename, JoinDomain, Drivers, Snapins)
@george1421 said in Utilizing Postscripts (Rename, JoinDomain, Drivers, Snapins):
@Greg-Plamondon it should be in one or the other place. Panther is checked first. When you sysprep’d where did you tell sysprep to look for the file?
i didnt i just ran sysprep.exe /oobe /generalize /reboot
-
RE: Utilizing Postscripts (Rename, JoinDomain, Drivers, Snapins)
@Lee-Rowlett Thanks for the base scripts and ideas behind them.
@Tom-Elliott Thanks for helping me adjusting them for my needs.
@Junkhacker Thanks for the fog log script, you dont know how many time I have forgotten to delete the damn fog.log
Here are the scripts that @Tom-Elliott helped me with.fog.postdownload:
#!/bin/bash . /usr/share/fog/lib/funcs.sh [[ -z $postdownpath ]] && postdownpath="/images/postdownloadscripts/" case $osid in 5|6|7|9) clear [[ ! -d /ntfs ]] && mkdir -p /ntfs getHardDisk if [[ -z $hd ]]; then handleError "Could not find hdd to use" fi getPartitions $hd for part in $parts; do true done dots "Mounting partition $part" ntfs-3g -o force,rw $part /ntfs >/dev/null 2>&1 if [[ ! $? -eq 0 ]]; then echo "Failed" debugPause handleError "Failed to mount $part ($0)\n Args: $*" fi echo "Done" debugPause . ${postdownpath}fog.log . ${postdownpath}fog.drivers . ${postdownpath}fog.ad umount /ntfs ;; *) echo "Invalid OS" debugPause return ;; esac
fog.ad :
#!/bin/bash hostadpwd="ADPASSWDHERRE"; #only downside to this method- this is the plain ad password unattend="/ntfs/Windows/Panther/unattend.xml"; [[ ! -f $unattend ]] && return dots "Preparing Sysprep File" rm -f /ntfs/Windows/System32/sysprep/unattend.xml >/dev/null 2>&1 if [[ ! $? -eq 0 ]]; then echo "Failed" debugPause handleError "Failed to remove original unattend file" fi echo "Done" debugPause dots "Writing Computer Name" sed -i "/ComputerName/s/*/$hostname/g" $unattend >/dev/null 2>&1 if [[ ! $? -eq 0 ]]; then echo "Failed" debugPause handleError "Failed to update originating unattend file" fi echo "Done" echo "ComputerName set to $hostname" debugPause [[ -z $addomain ]] && return dots "Set PC to join the domain" sed -i "/<JoinWorkgroup>/d" $unattend >/dev/null 2>&1 if [[ ! $? -eq 0 ]]; then echo "Failed" debugPause handleError "Failed to remove the Workgroup setter" fi sed -i \ -e "s|<Password></Password>|<Password>${hostadpwd}</Password>|g" \ -e "s|<Username></Username>|<Username>${addomain}\\\\${aduser}</Username>|g" \ -e "s|<MachineObjectOU></MachineObjectOU>|<MachineObjectOU>${adou}</MachineObjectOU>|g" \ -e "s|<JoinDomain></JoinDomain>|<JoinDomain>${addomain}</JoinDomain>|g" $unattend >/dev/null 2>&1 if [[ ! $? -eq 0 ]]; then echo "Failed" debugPause handleError "Failed to update user, pass, ou, and domain setter" fi echo "Done" debugPause
fog.drivers:
For some reason Lenovo doesn’t play like most PC manufactures. I had to use the dmidecode variable of system-version to populate what the actual model of the PC was, with system-product-name it was returning the numerical machine type or serial number?#!/bin/bash ceol=`tput el`; manu=`dmidecode -s system-manufacturer`; case $manu in [Ll][Ee][Nn][Oo][Vv][Oo]) machine=$(dmidecode -s system-version) ;; *[Dd][Ee][Ll][Ll]*) machine=$(dmidecode -s system-product-name) #pruduct is typo, just realized sorry :( ;; *) machine=$(dmidecode -s system-product-name) # Technically, we can remove the dell one as it's the "default" ;; esac [[ -z $machine ]] && return #assuming you want it to break if it is not lenovo or dell? machine="${machine%"${machine##*[![:space:]]}"}" #Removes Trailing Spaces system64="/ntfs/Windows/SysWOW64/regedit.exe" # sloppy detect if 64bit or not [[ ! -f $system64 ]] && setarch="x86" || setarch="x64" ############################################# #this is not section necessary needed, it's just to make the path "human readable" #rather than using osid for filepath case $osid in 5) osn="Win7" ;; 6) osn="Win8" ;; 7) osn="Win8.1" ;; 9) osn="Win10" ;; esac ############################################# dots "Preparing Drivers" # below creates local folder on imaged pc # this can be anywhere you want just remember # to make sure it matches throughout! clientdriverpath="/ntfs/Windows/DRV" remotedriverpath="/images/drivers/$osn/$machine" [[ ! -d $clientdriverpath ]] && mkdir -p "$clientdriverpath" >/dev/null 2>&1 echo -n "In Progress" #there's 3 ways you could handle this, #driver cab file, extracted driver files or both #so on the server put extracted driver files to match below folder tree #i.e. Model Latitude E5410, Windows 7 x86 image would be: #/fog/Drivers/Win7/Latitude E5410/x86 rsync -aqz "$remotedriverpath" "$clientdriverpath" >/dev/null 2>&1 [[ ! $? -eq 0 ]] && handleError "Failed to download driver information" #if you wanted to use driver.cab use this line below. #i.e. /fog/Drivers/Win7/Latitude E5410/E5410-Win7-A07-KTT4G.CAB #cabextract -d "$clientdriverpath" "$remotedriverpath/*.CAB" >/dev/null 2>&1 #if you wanted to mix both cab and extracted use these: #rsync -aqz --exclude='*.CAB' "$remotedriverpath" "$clientdriverpath" >/dev/null 2>&1 #[[ ! $? -eq 0 ]] && handleError "Failed to sync cab and non-cab drivers" #cabextract -d "$clientdriverpath" "$remotedriverpath/*.CAB" >/dev/null 2>&1 #[[ ! $? -eq 0 ]] && handleError "Failed to extract cab files" #this next bit adds driver location on pc to devicepath in registry (so sysprep uses it to reference) # remember to make devicepath= match the path you've used locally #also do not remove %SystemRoot%\inf #and to add more locations just use ; in between each location regfile="/ntfs/Windows/System32/config/SOFTWARE" key="\Microsoft\Windows\CurrentVersion\DevicePath" devpath="%SystemRoot%\inf;%SystemRoot%\DRV"; reged -e "$regfile" &>/dev/null <<EOFREG ed $key $devpath q y EOFREG echo -e "\b\b\b\b\b\b\b\b\b\b\b${ceol}Done"; # this just removes "In Progress and replaces it with done :-)"
fog.log:
#!/bin/bash #deletes fog.log for Windows 7, 8, or 8.1 or 10 #Greg Grammon (Junkhacker) # #funcs.sh allows us to use the functions that are used in the rest of #fog i.e. "dots" and use the vars already in place i.e. "$part" and "$osid" . /usr/share/fog/lib/funcs.sh; case $osid in [5-7]|9) [[ -f /ntfs/fog.log ]] && rm /ntfs/fog.log >/dev/null 2>&1 || true if [[ ! $? -eq 0 ]]; then echo "Failed" debugPause handleError "Failed to remove original fog.log file" fi ;; *) return ;; esac
Thanks For all the Help Tom and Lee
-
RE: Utilizing Postscripts (Rename, JoinDomain, Drivers, Snapins)
@Lee-Rowlett The unattend.xml is in the C:\Windows\Panther directory. I removed the option from my setupcomplete.cmd that deletes the unattend.xml, so after it boots I can take a look at it and the edits were made to it. Should I be editing the C:\Windows\Sytstems32\Sysprep\unattend.xml instead of the Windows\Panther ?
-
RE: Trunk 5749 Snapin deployment issue
@Wayne-Workman
I don’t want to come across as rude but your method seems a little sloppy. I would rather use fog as it was/is being designed to work. creating groups and scripts for every snapin would be tedious.
We have 27 Locations with different application sets at each. I appreciate your effort, And believe me I have “tried” I never asked for a handout or " free work" I just wanted a fix for my problem.Thanks.
-
RE: Trunk 5749 Snapin deployment issue
@Wayne-Workman said in Trunk 5749 Snapin deployment issue:
@Greg-Plamondon I’ve been thinking about this. Perhaps we can work around the issue for now?
What does the snapin do? Can we get a screen shot of the snapin settings? It might be trivial to turn the snapin into a simple script that WOULD pull the larger files from the correct places and execute them.
sure!!
Most of my snapins are self extracting sfx archives or msi packages.
-
RE: Utilizing Postscripts (Rename, JoinDomain, Drivers, Snapins)
I gotten this to make the edits to the unattend.xml but it still doesnt join the domain. Do you have a Windows10 Unattend.xml that i can compare where I went wrong?
-
RE: Trunk 5749 Snapin deployment issue
@Quazz said in Trunk 5749 Snapin deployment issue:
What happens when you create a snapin task?
when I create the snapin task everything runs as normal except that the files get downloaded from the management fogserver and not the storage node.
-
RE: Trunk 5749 Snapin deployment issue
@Wayne-Workman said in Trunk 5749 Snapin deployment issue:
@Greg-Plamondon Can you delete the files on the non-master nodes and let replication put them back?
I have, and I can see them replicate in /var/log/fog/fogsnapinrep.log and I verified they are on the remote node