Jump to content
30960 posts in this topic

Recommended Posts

After a couple of tries it still creates .metadata_never_index at the root of my HD.

2017-03-04-20:21:29  Found ESP on disk0s1 with /Volumes/EFI/EFI/CLOVER
2017-03-04-20:21:29  Found ESP on disk1s1**** disk1s1 Get mount point failed
2017-03-04-20:21:30  Found ESP on disk2s1**** disk2s1 Get mount point failed
2017-03-04-20:21:30  Found ESP on disk4s1**** disk4s1 Get mount point failed
2017-03-04-20:21:30  Found ESP on disk5s1**** disk5s1 Get mount point failed
2017-03-04-20:21:30  Disabling indexing on /Volumes/EFI
2017-03-04-20:21:30  Values changed, updated /Volumes/EFI/nvram.plist

I re did everything from scratch and figured out that the ESP needed to be mounted Before running the script.Without it being mounted i got this

2017-03-04-20:10:11  Found ESP on disk0s1**** disk0s1 Get mount point failed
2017-03-04-20:10:12  Found ESP on disk1s1**** disk1s1 Get mount point failed
2017-03-04-20:10:12  Found ESP on disk3s1**** disk3s1 Get mount point failed
2017-03-04-20:10:12  Found ESP on disk4s1**** disk4s1 Get mount point failed
2017-03-04-20:10:12  Found ESP on disk5s1**** disk5s1 Get mount point failed
2017-03-04-20:10:13  Disabling indexing on 
2017-03-04-20:10:13  Values changed, updated /nvram.plist

@Dajjal

 

- odd the script fails to mount your ESPs

- perhaps you can attach the output of this (script.txt.zip) so we see maybe why not?

sudo bash -x /etc/rc.shutdown.d/80.save_nvram_plist.local 2>&1|gzip --stdout > script.txt.zip

I should note that this is on my X58 system in which i remove the BOOT Folder that clover creates on the ESP in order for my older HD's which uses chameleon to show up at the boot screen.Just incase that could be a problem....Bless

 

PS:thanks for your help and sorry for polluting the thread a bit.....

script.txt.zip

@Dajjal - 

well it looks like you had most of your ESP mounted? and it seems like many of your ESPs are HFS vs FAT (msdos) . odd. but ok?

 

how are you mounting them? can you share the syntax?

 

$ grep printf script.txt
++ printf '<?xml version="1.0" encoding="UTF-8"?>
+ printf 'v1.15.2 © 2017 syscl/lighting/Yating Zhou/tluck/Sherlocks\n'
+ printf '2017-03-05-04:12:19  Found ESP on disk0s1'
++ printf '/Volumes/ESP-01\n'
+ printf ' with /Volumes/ESP-01/EFI/CLOVER\n'
+ printf '2017-03-05-04:12:19  Found ESP on disk2s1'
++ printf '/Volumes/ESP-21\n'
+ printf ' without a Clover directory -- skipping\n'
+ printf '2017-03-05-04:12:19  Found ESP on disk3s1'
++ printf '/Volumes/ESP-31\n'
+ printf ' without a Clover directory -- skipping\n'
+ printf '2017-03-05-04:12:19  Found ESP on disk4s1'
++ printf 'Get mount point failed\n'
+ printf '**** disk4s1 Get mount point failed\n'

+ printf '2017-03-05-04:12:19  Found ESP on disk5s1'
++ printf '/Volumes/ESP-51\n'
+ printf ' without a Clover directory -- skipping\n'
+ printf '2017-03-05-04:12:19  No change in /Volumes/ESP-01/nvram.plist\n'

 

here is newer version where i fixed some corner cases. so thanks for that!

 

please run again without pre-mounting ESPs. i am trying to understand why it finds an ESP but fails to mount it.

 

reinstall and run with newest script attach zip please

sudo bash -x /etc/rc.shutdown.d/80.save_nvram_plist.local 2>&1|gzip --stdout > script.txt.zip

The thing is i was not Mounting them sometimes the script did it as my sidebar had a few EFI directories.My sig has all that my HD's has so that may explain HFS, FAT etc.As noted i had to do things a little different to get clover to work with my X58.

2017-03-05-17:54:38  Found ESP on disk0s1 with /Volumes/ESP-01/EFI/CLOVER
2017-03-05-17:54:38  Found ESP on disk1s1 without a Clover directory -- skipping
2017-03-05-17:54:38  Found ESP on disk2s1 without a Clover directory -- skipping
2017-03-05-17:54:38  Found ESP on disk4s1 without a Clover directory -- skipping
2017-03-05-17:54:38  Found ESP on disk5s1**** disk5s1 Get mount point failed
2017-03-05-17:54:39  No change in /Volumes/ESP-01/nvram.plist

script.txt.zip

@Dajjal -

 

well it seemed like the latest script worked (mostly).  

 

it checked and mounted all 7 disks with 1 exception - disk5 did not mount? i wonder why not? can you manually mount it?

 

disk0 - msdos - has Clover - found an existing nvram.plist in ESP

disk1 - msdos - no Clover - skipped

disk2 - msdos - no Clover - skipped

disk3 - no ESP found

disk4 - msdos - no Clover - skipped

disk5 - hfs - unable to mount ???

disk6 - no ESP found

#:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *250.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS El Capitan HD           249.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *640.1 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS Snow Leopard HD         639.8 GB   disk1s2
/dev/disk2 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *320.1 GB   disk2
   1:                       0x27                         12.6 GB    disk2s1
   2:               Windows_NTFS SYSTEM                  157.3 MB   disk2s2
   3:               Windows_NTFS Windows 7               307.3 GB   disk2s3
/dev/disk3 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk3
   1:                        EFI EFI                     209.7 MB   disk3s1
   2:                  Apple_HFS Mavericks HD            499.8 GB   disk3s2
/dev/disk4 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk4
   1:                        EFI EFI                     209.7 MB   disk4s1
   2:                  Apple_HFS Macintosh Test HD       499.2 GB   disk4s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk4s3
/dev/disk5 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk5
   1:                        EFI                         209.7 MB   disk5s1
   2:                  Apple_HFS WD 1TB                  999.9 GB   disk5s2
/dev/disk6 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *2.0 TB     disk6
   1:                  Apple_HFS Storage G2TB

I can Manually mount disk5 so not sure whats up with that.That drive is connected to the native sata ports on the board while disk6 is connected via estata on the back of the board.In any case thanks for the help.Apart from that after redoing the whole process i had to force restart cause it was taking forever but it's good for now and the .metadata_never_index has not returned on the root HD.Bless

NVRAM save script zip v1.16.1 - final update for testing.

 

- changed the logging to be more clean and list status of all disks scanned

- better error checking for / , remove /nvram.plist when ESP found, no .metadata_never_index in / 

- fixes on syntax for mount points with spaces

 

----

Install by using double clicking on the .command script or in the terminal"

cd nvram-logouthook_v1.16.1
sudo ./patch_nvram_save_scripts.command

then a test run of the script would be

sudo /etc/rc.shutdown.d/80.save_nvram_plist.local

nvram-logouthook_v1.16.1.zip

  • Like 2


2017-03-06-09:01:55 disk0: ESP -- Target -- /Volumes/ESP-01/EFI/CLOVER
2017-03-06-09:01:55 disk1: ESP -- Ignored -- No CLOVER directory located
2017-03-06-09:01:55 disk2: ESP -- Ignored -- No CLOVER directory located
2017-03-06-09:01:55 disk3: ------ Ignored -- No ESP on disk
2017-03-06-09:01:55 disk4: ESP --**** disk4s1 Get mount point failed
2017-03-06-09:01:57 disk5: ESP -- Ignored -- No CLOVER directory located
2017-03-06-09:01:58 disk6: ------ Ignored -- No ESP on disk
2017-03-06-09:01:58 NVRAM: No change since last update in /Volumes/ESP-01/nvram.plist

script.txt.zip

@Dajjal

 

well good thanks for testing. The output/results looks good - similar as before. The important part - it is checking/writing nvram.plist to disk0 ESP. (without extra /nvram.plist or /.metadata_never_index)

 

anyway, on disk4 (failed to mount) - can you show how you manually mount the ESP for that disk (disk4s1) ? 

r4036 gives following error:

...src/edk2/Clover/rEFIt_UEFI/refit.inf(19): error 3000: Global macro ARCH is not permitted.
	BASE_NAME                     = CLOVER$(ARCH)
 

- Failed -
Build end time: 20:55:07, Mar.06 2017
Build total time: 00:00:15

Edit: It updated fine, I had to source my own wrapper script again after updating the edk2 version.

r4036 compiles fine with edk2@r24045

 

NVRAM save script zip v1.16.1 - final update for testing.

 

- changed the logging to be more clean and list status of all disks scanned

- better error checking for / , remove /nvram.plist when ESP found, no .metadata_never_index in / 

- fixes on syntax for mount points with spaces

 

----

Install by using double clicking on the .command script or in the terminal"

cd nvram-logouthook_v1.16.1
sudo ./patch_nvram_save_scripts.command

then a test run of the script would be

sudo /etc/rc.shutdown.d/80.save_nvram_plist.local

 

i tested 1.16.1. no problem. I hope the rc script will be updated in the clover.

  • Like 2

I have installed brand new 10.7.5 in SSD but when first boot 10.7.5 does not have ethernet access Although /usb/efi/EFI/CLOVER/kexts/10.7/RealtekR1000SL.kext exist,boot clover 3333 again 10.7.5 have ethernet access,is this normal,or I have missed something?Thank you for your help.

@Slice

 

http://www.insanelymac.com/forum/index.php?/topic/284656-Clover-General-discussion&do=findComment&comment=2379057

 

This rc script is no problem about known failure case and other issue(entire code is same before, tluck have optimized in latest code).

 

I tested to find failure case and not work properly many times since find failure case.

 

No more see failure case now.

 

Hope update rc script in clover.

 

Thanks @tluck @syscl @testers

 

Thanks in advance.

 

 

나의 LG-F410S 의 Tapatalk에서 보냄

  • Like 2

F2 preboot log is written to "misc" folder in your Clover folder. 

 

bdmesg  :will show you clover boot log

 

sudo dmesg  :will show your kernel boot log

Is there anyway to get the log from the part of Clover that does the kext patching? This is the stuff that occurs after the clover boot log and before the kernel boot log.

 

Or is there a way to redirect the console output to the serial port instead of the screen? If the console output could be redirected, then couldn't it be redirected to a memory buffer, maybe the same buffer that holds the boot log or a new buffer for this log? It may be necessary to allocate extra space for this log before writing log information there if it is not possible to make a growing buffer.

Hi, somehow clover has a problem with HFS+ volume modify dates. See:

 

 

18:288 0:063 - [02]: 'OSX'
18:321 0:033 AddLoaderEntry for Volume Name=OSX
18:335 0:013 Not match custom entry 0: Type: not match
18:387 0:052 Check if volume Is Hibernated:
18:404 0:016 Check sleep image 'by signature':
18:427 0:023 read prefs \Library\Preferences\com.apple.PowerManagement.plist status=Success
18:443 0:015 using default sleep image name = \private\var\vm\sleepimage
18:463 0:020 Reading first 512 bytes of sleepimage ...
18:477 0:013 OurBlockIoRead: Lba=5DAC68, Offset=5DAC68000 (BlockSize=4096)
18:491 0:013 sig lion: 73696D65
18:504 0:012 sig snow: 0
18:516 0:011 got sleep image offset
18:529 0:012 Reading completed -> Success
18:543 0:013 sleepimage offset acquired successfully: 5DAC68000
18:557 0:014 gSleepTime: 1488973117
18:572 0:014 HFS+ volume modifyDate: -2082844801
18:585 0:012 image older then volume: 723149378 sec
18:597 0:011 image too old
18:610 0:012 hibernated: no - time

makes freshly created sleep images unloadable. Used Clover version: 4003. Clover files are available on: http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/

Edited by Micky1979
Please read the Rules

@joevt, idk if Clover supports that OOTB, but EDK2 supports serial output (DebugLib). Just change The DBG macros in the code if there isnt a serial one already.

I also have no clue why patching doesnt happen before, while the BS are still up.

 

@joe75 Clover does stuff during boot.efi execution

@Slice

 

http://www.insanelymac.com/forum/index.php?/topic/284656-Clover-General-discussion&do=findComment&comment=2379057

 

This rc script is no problem about known failure case and other issue(entire code is same before, tluck have optimized in latest code).

 

I tested to find failure case and not work properly many times since find failure case.

 

No more see failure case now.

 

Hope update rc script in clover.

 

Thanks @tluck @syscl @testers

 

Thanks in advance.

 

 

나의 LG-F410S 의 Tapatalk에서 보냄

 

Note:

the "LogoutHook method" needs more than just the rc.shutdown/80.save_nvram_plist.local updated in the Clover repo. 

CloverDaemon was split into 2 scripts and then the "Shutdown" part is the LogoutHook script.

I suspect this could be easily implemented in the Clover installer with Emuvariable or  new Rc script option

  • Like 1

Hi Guys!

 

First, the usual, thanks for all the great work. This project is pure goodness.

 

On to it: Wondering why we still proceed with a shutdown hook to capture and save nvram key-values to a file... especially since when we run an installer image, those hooks aren't present and thus the nvram modifications are lost.

 

My goal was to create a boot usb key which would not contain any OSes but simply contain clover and all that is needed to run a vanilla mac os install on a legacy BIOS board. Saving the nvram variables is pretty much what's left standing in the way of having this key complete.

 

I have changed the save_nvram_plist script to find the actual ESP where clover booted from (through ioreg analysis). It is attached to this post. It is a fork of the script from v2.3k_r3974. See attached.

 

Now it works well in that it doesn't care about the current OS disk running, but rather assumes that the clover EFI partition is the best spot. It allows me to have one single clover boot partition, from which I can boot any of my installs, test installs, clone backups, etc.

 

BUT, it nvram changes made into installer boots are still lost.

 

SO, is it not possible to have a fake UEFI handler/driver (I'm new at this) which would actually catch the expected firmware or SMC "functions" and save the nvram data to a file, or a fixed sector of a block device (USB or whatever). I know the legacy BIOS RTC memory won't fit the nvram data, but we should be able to spare a few sectors and do very raw, BIOS like, write operations no?

 

I am a professional linux embedded developer but have never actually developed on my macs. I started casually browsing clover source code but would need pointers to get started, if it's at all possible.

 

Really looking forward to contributing!

80.save_nvram_plist.local.zip

×
×
  • Create New...