Windows 8.1 "Dirty Bit" in UEFI
-
@Wayne-Workman said:
This is with Fast Startup and Hibernation turned on.
I’ll try that :
ntfs-3g -o remove_hiberfile /dev/sdaX /tmp/mount_point
to remove the hibernate file. -
mkdir /mnt/tmp ntfs-3g -o remove_hiberfile /dev/sda4 /mnt/tmp umount /mnt/tmp ntfsfix /dev/sda4
That says it succeeded, but then NFS failed to mount during the
fog
command… gah… trying again. -
@Wayne-Workman said:
mkdir /mnt/tmp ntfs-3g -o remove_hiberfile /dev/sda4 /mnt/tmp umount /mnt/tmp ntfsfix /dev/sda4
That says it succeeded, but then NFS failed to mount during the
fog
command… gah… trying again.I think this has to be done for all the partitions for it to work right… Because now I’m getting errors about mounting
/dev/sda1
during the FOG command. I’m testing now. -
@Wayne-Workman Hi, There is a function in func.sh (in the init) to remove pagefile and hiberfile :
# $1 is the device name of the windows system partition removePageFile() { local part="$1"; local fstype=""; if [ "$part" != "" ]; then fstype=`fsTypeSetting $part` fi if [ "$fstype" != "ntfs" ]; then echo " * No ntfs file system on ($part) to remove page file" debugPause; elif [[ "$osid" == +([1-2]|[5-7]|9|50) ]]; then if [ "$ignorepg" == "1" ]; then dots "Mounting partition ($part)"; mkdir /ntfs &>/dev/null; ntfs-3g -o force,rw $part /ntfs; if [ "$?" == "0" ]; then echo "Done"; debugPause; dots "Removing page file"; if [ -f "/ntfs/pagefile.sys" ]; then rm -f "/ntfs/pagefile.sys" >/dev/null 2>&1; echo "Done"; else echo "No pagefile found"; fi debugPause; dots "Removing hibernate file"; if [ -f "/ntfs/hiberfil.sys" ]; then rm -f "/ntfs/hiberfil.sys" >/dev/null 2>&1; echo "Done"; else echo "No hibernate found"; fi resetFlag "$part"; umount /ntfs; else echo "Failed"; fi debugPause; fi fi }
And ntfsfix too :
# $1 is the part resetFlag() { if [ -n "$1" ]; then fstype=`blkid -po udev $1 | awk -F= /FS_TYPE=/'{print $2}'`; if [ "$fstype" == "ntfs" ]; then dots "Clearing ntfs flag"; ntfsfix -b -d $1 &>/dev/null; echo "Done"; debugPause; fi fi }
Not sure if the two functions are used during upload process, @Developers ?
-
As far as I can see in the fog.upload script those two functions are only used with image type set to resizable.
-
@Uncle-Frank said:
As far as I can see in the fog.upload script those two functions are only used with image type set to resizable.
I think we have to enable it on each upload resizable or not.
-
@ch3i How would I use those functions from CLI?
I suppose I can make a bash script during debug and call those functions to run, then run ntfsfix on all the partitions in the same script.
-
@Wayne-Workman said:
@ch3i How would I use those functions from CLI?
I suppose I can make a bash script during debug and call those functions to run, then run ntfsfix on all the partitions in the same script.
You can modify the fog.upload to call these scripts before uploading.
-
@ch3i said:
@Wayne-Workman Hi, There is a function in func.sh (in the init) to remove pagefile and hiberfile :
# $1 is the device name of the windows system partition removePageFile() { local part="$1"; local fstype=""; if [ "$part" != "" ]; then fstype=`fsTypeSetting $part` fi if [ "$fstype" != "ntfs" ]; then echo " * No ntfs file system on ($part) to remove page file" debugPause; elif [[ "$osid" == +([1-2]|[5-7]|9|50) ]]; then if [ "$ignorepg" == "1" ]; then dots "Mounting partition ($part)"; mkdir /ntfs &>/dev/null; ntfs-3g -o force,rw $part /ntfs; if [ "$?" == "0" ]; then echo "Done"; debugPause; dots "Removing page file"; if [ -f "/ntfs/pagefile.sys" ]; then rm -f "/ntfs/pagefile.sys" >/dev/null 2>&1; echo "Done"; else echo "No pagefile found"; fi debugPause; dots "Removing hibernate file"; if [ -f "/ntfs/hiberfil.sys" ]; then rm -f "/ntfs/hiberfil.sys" >/dev/null 2>&1; echo "Done"; else echo "No hibernate found"; fi resetFlag "$part"; umount /ntfs; else echo "Failed"; fi debugPause; fi fi }
And ntfsfix too :
# $1 is the part resetFlag() { if [ -n "$1" ]; then fstype=`blkid -po udev $1 | awk -F= /FS_TYPE=/'{print $2}'`; if [ "$fstype" == "ntfs" ]; then dots "Clearing ntfs flag"; ntfsfix -b -d $1 &>/dev/null; echo "Done"; debugPause; fi fi }
Not sure if the two functions are used during upload process, @Developers ?
@Uncle-Frank stated that these two functions are called for resizable image types. Resizeable is the image type I’m using for this…
So that means these two functions are either running and failing on
/dev/sda4
, or not running at all, or not running at the correct time. -
We are talking about upload, right? See here yourself: https://github.com/FOGProject/fogproject/blob/c796b1ab68e2215ea60e6ef33c732bd5a475501e/src/buildroot/package/fog/scripts/bin/fog.upload#L120 (removePageFile which is called before schrinking)
and
https://github.com/FOGProject/fogproject/blob/c796b1ab68e2215ea60e6ef33c732bd5a475501e/src/buildroot/package/fog/scripts/bin/fog.upload#L174 (resetFlag which is called aftershrinking) -
Old thread - new news.
Had this error show up when uploading from an EliteBook 8730w with Win10 on it.
While I was digging up the commands in the wiki to fix it, when the laptop rebooted on it’s own (due to error), it began uploading!
How strange?