• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. JJ Fullmer
    3. Posts
    • Profile
    • Following 5
    • Followers 4
    • Topics 55
    • Posts 955
    • Groups 3

    Posts

    Recent Best Controversial
    • Automating Git Updates for FOG

      In the past I made a script for automating svn updates. Since sourceforge has been making a habit of crashing lately, I decided to start using the git repo instead and adjusted my script to work with git.
      I figured others might benefit from it so why not share…

      #!/bin/bash
      clear
      # -------------------------------------------
      # Fog Git Updater
      # -------------------------------------------
      # -------------------------------------------
      # Script Purpose
      # -------------------------------------------
      # This script is designed to run an automated update of the latest FOG Git dev build and it's cron friendly
      # -------------------------------------------
      # -------------------------------------------
      # Some prereqs for this script
      # -------------------------------------------
      # 1. Already have an existing working install/configuration of FOG 1.0 or later
      #
      # 2. Have git installed and setup. You can do that by doing....
      # 	sudo apt-get install git
      #  	mkdir /home/fog/fogInstalls/git
      #	git clone https://github.com/FOGProject/fogproject.git /home/fog/fogInstalls/git
      #
      # 3. A script to echo the encrypted version of your sudo password, create one with this function
      #	just put in your password into the following in place of your_super_secret_password (leave the quotes)
      #	and then uncomment and copy paste the function into a terminal and then run it with just the name of the function pw
      	# pw(){
      	# 	touch /home/fog/fogInstalls/.~
      	# 	ossl=`echo "your_super_secret_password" | openssl enc -des -a -e -pass pass:PASSWORD`
      	# 	echo 'echo "$(echo '$ossl' | openssl enc -des -a -d -pass pass:PASSWORD)"' >> /home/fog/fogInstalls/.~
      	# 	sudo chown fog.root /home/fog/fogInstalls/.~
      	# 	sudo chmod 700 /home/fog/fogInstalls/.~ 
      	# }
      # -------------------------------------------
      # -------------------------------------------
      # Variables
      # -------------------------------------------
      # -------------------------------------------
      echo "Creating Script variables..."
      fogInstalls='/home/fog/fogInstalls'
      gitPath="$fogInstalls/git"
      backup="$fogInstalls/backups"
      pw=`sh $fogInstalls/.~` 
      # -------------------------------------------
      # -------------------------------------------
      # Functions
      # -------------------------------------------
      # -------------------------------------------
      perms(){
      	sudo chmod -R 775 $1
      	sudo chown -R fog.fog $1
      }
      
      srvUpdate(){
      	# Enter sudo mode aand do some quick server maintenance update fun times
      	# First, enter sudo mode by echoing the output of decrypting your encrypted password and pipe that into an apt-get update
      	#	Don't worry, it doesn't output the password into the terminal
      	#	Now that the password is in once the terminal will keep it stored for the next bunch of sudo commands
      	echo "Running Sever updates!..."
      	echo $pw | sudo -S apt-get update -y
      	sudo apt-get upgrade -y # install any upgrades you just downloaded
      }
      
      backupConfig(){
      	# Backup custom config and other files
      	# Copy the latest versions of any files you've changed that will be overwritten by the update and backup the database just in case.
      	# For example you may want to back up...
      	# Config.php
      	# 	To be on the safe side your config file in the /opt folder that has may have a corrected webroot for ubuntu 14.04 and may have stored encrypted credentials (i.e mysql)
      	# 		I think that the installer uses this file and keeps it anyway, but I like to be careful
      	# Exports file
      	#	Because this runs the installer with a yes pipe, it ends up telling it that the image path is "y",
      	# 		simply backing up and restoring your current one avoids the issue of fog not finding your precious images. 
      	# Custom pxe boot background
      	# 	If you have a custom background for the pxe menu, the bg.png file
      	# Mysql database dump
      	#	It would be rather troublesome if something went horribly wrong in the update and your database goes kaboom, it's unlikely but backups are a good thing 
      	# Just a note, It's a good policy to also have backups of these outside of your server, which you could add to this script with an scp command or something like that
      	# -------------------------------------------
      	echo "make sure backup dir exists..."
      	if [ ! -d $backup ]; then
      		mkdir $backup
      	fi
      	echo "Dumping the database..."
      	mysqldump -u root --all-databases --events > $backup/DatabaseBeforeLastUpdate.sql #backup database
      	echo "Backing up config and custom files..."
      	echo "config.php..."
      	sudo cp /opt/fog/service/etc/config.php $backup/config.php
      	echo "fog settings..."
      	sudo cp /opt/fog/.fogsettings $backup/.fogsettings
      	echo "nfs exports..."
      	sudo cp /etc/exports $backup/exports
      	echo "custom pxe background..."
      	sudo cp /var/www/html/fog/service/ipxe/bg.png $backup/bg.png 
      }
      
      gitP(){
              perms $gitPath
      	echo "git pull...."
      	cd $gitPath
      	git pull
      }
      
      updateFOG(){
      	echo "running FOG installer..."
      	cd $gitPath/bin
      	sudo bash installfog.sh -Y
      }
      
      restoreConfig(){
      	# Restore backed up files
      	# Restore the backed up files to their proper places and make sure they're formatted correct too.
      	echo "restoring custom pxe background..."
      	sudo cp $backup/bg.png /var/www/html/fog/service/ipxe # Restore Custom Background 
      	# I found that I needed to do this in some configurations, but it may no longer be neccesarry...
      	echo "Creating undionly for iPxe boot in ipxe folder, just in case..." 
      	sudo cp /tftpboot/undionly.kpxe /tftpboot/undionly.0 # backup original then rename undionly 
      	sudo cp /tftpboot/undionly.0 /var/www/html/fog/service/ipxe/undionly.0
      	sudo cp /var/www/html/fog/service/ipxe/undionly.0 /var/www/html/fog/service/ipxe/undionly.kpxe
      }
      
      fixPerms(){
      	echo "Changing Permissions of webroot..."
      	perms '/var/www/html/fog'
      	echo "Changing permissions of images...."
      	perms '/images'
      	echo "Changing permissions of tftpboot...."
      	perms '/tftpboot'
      }
      
      # -------------------------------------------
      # -------------------------------------------
      # Run the script
      # -------------------------------------------
      # -------------------------------------------
      srvUpdate
      backupConfig
      gitP
      updateFOG
      restoreConfig
      fixPerms
      echo "Done!"
      
      posted in General
      JJ FullmerJ
      JJ Fullmer
    • RE: Client boot to HD goes to memtest.

      @AlexMaxwell You are a beautiful and wonderful person.

      posted in FOG Problems
      JJ FullmerJ
      JJ Fullmer
    • RE: Version stable

      @Andrew-Single This post I made many moons ago at my old job might be helpful to you. It may require some adaptation, but I still use it on a daily basis to update my fog to the latest version…

      https://forums.fogproject.org/topic/4578/automated-latest-fog-svn-update-script-1-0-and-later-and-other-helpful-productivity-things

      Also this is the wiki on how to install the svn version manually
      https://wiki.fogproject.org/wiki/index.php/SVN

      hope that helps 😃

      posted in General
      JJ FullmerJ
      JJ Fullmer
    • RE: Client boot to HD goes to memtest.

      @AlexMaxwell I don’t suppose you’d be willing to share how you got winPE to work through pxe using an iso? I tried to do that many moons ago to no avail.
      Please and thank you =D

      posted in FOG Problems
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      @Sebastian-Roth Here ya go
      0_1449611475479_IMG_20151208_144840.jpg

      I think that one possibility of the problem lies in the variable dump from fog.
      It lists the partition as /dev/nvme0n11 but fdisk -l or gdisk -l lists it as /dev/nvme0n1p1

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      @Sebastian-Roth on it

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: Client boot to HD goes to memtest.

      I had this problem too, upgrading to the latest trunk/svn solved it for me. This happened to me last week, so whatever svn version was valid at the start of last Tuesday was having that problem for me, but it went away after an update and restart of the server.

      posted in FOG Problems
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      @george1421 That’s what I figured, it seems an odd problem so I’m going to give all the info I can to help find the problem. And plus, these nvme drives think that they are going to become the norm and phase out sata, sas, and scsi, so I’ll do whatever I can to help get FOG working with them.

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      Did a debug deploy
      I found that fog saw the partition name as /dev/nvme0n11 instead of what was listed in gdisk -l /dev/nvme0n1p1
      tried to change the name to no avail.

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      I looked through the other post and gave debug mode a try,
      I ran lsblk and got the same disk info except it didn’t have any mount information.
      But is said nvme0n1 and partition nvme0n1p1

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      Wasn’t able to boot to a live cd just yet but I tried some other stuff.

      I tried changing the primary hard disk to /dev/nvme0
      because I figure that may be the new /dev/sda
      When I tried to image the computer I got a new error

      “Erasing Current MBR/GPT Tables… The specified path is a character device!
      Warning! GPT Main header not overwritten! Error is 22
      Warning! MBR not overwritten! Error is 29
      Corrupted partition table was erased. Everything should be fine now”

      It does still get through the hardware inventory, but in either case it doesn’t pull and hard disk information.
      I’m going to try /dev/nvme next to see if that works.

      I also tried changing the bios sata disk mode from RAID to AHCI, but I don’t know if that effects anything on an nvme drive since it’s plugged into pci-express.

      Thanks for all the help thus far.

      -JJ

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      I am also trying the linux live cd idea to see if it gets anything different and maybe if there’s a way to change it to something more standard

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      @george1421
      Yes that’s how I got the hardware inventory to run without error.
      But that doesn’t work for imaging. It acts likes it’s going to work, filling partitions and what not, then it just says database updated and reboots like it was finished instead of launching into partclone.

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • RE: HP Z640 - NVME PCI-E Drive

      It was getting a different device name /dev/nvme0n1 to be exact
      I was able to get it to run hardware inventory,
      just had to manually add it to the hosts in the fog web console and set the primary hard disk to that.
      I found that information with the fog compatibility menu option under partition information.
      It worked for running the hardware inventory but it is not working for imaging the computer unfortunately.

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • HP Z640 - NVME PCI-E Drive

      Hi Friends,

      We just got these new Z640 workstations and they come with these NVME 256GB SSDs plugged into a pci-e slot.
      They show up in the bios, and when I boot to fog and check compatibility and partition information it says it’s compatible and all the partition info pops up no problem. One possible issue is that it assigns it to something like /dev/nvme instead of the standard /dev/sda

      But then when I try to image or even just do a hardware inventory, FOG gives me a “HDD not found on system” error and then reboots after 1 minute.

      Is this something that just isn’t supported? Do I need to enable something in a custom kernel? What am I missing here?

      Thanks,
      -JJ

      P.S.
      Fog info
      Version svn 5676
      bzImage Version: 4.3.0
      bzImage32 Version: 4.3.0

      posted in Hardware Compatibility
      JJ FullmerJ
      JJ Fullmer
    • 1 / 1