The gdisk command shows my GPT has three partitions. I wish to delete the last partiton shown and add the partiton back in with different values. However, the d command will not allow this. See the output below. sudo gdisk /dev/disk0 GPT fdisk (gdisk) version 1.0.8 Warning: Devices opened with shared lock will not have their partition table automatically reloaded! Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Command...
I encounter a problem where if I ran the command sudo ./refind-install --usedefault /dev/disk0s4 again after removing install from showtools. Here a message is displayed stating refind.conf will not be changed, but is in fact changed. In othe words, install is again added to refind.conf. The part of the script where the problem exist is given below. if [[ -f "$InstallDir/$TargetDir/refind.conf" ]] ; then echo "Existing refind.conf file found; copying sample file as refind.conf-sample" echo "to avoid...
Joevt: I looked an your script to mount a partition. I would not make the mount point in the /Volumes folder. Instead, I would keep using the /tmp/refind_install mount point, when a volumn needs to be mounted. I am not sure why you felt the need to loop until a directory does not exist. Perhaps this is because your script uses the /Volumes folder? When using the --usedefault option, I found refind-install allows installations to mounted volumes after making the following changes. First, I replaced...
Your script has many flaws. Below I outline one main flaw. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other processes will not also be accessing the /Volumes directory. In other words,...
After some thought, I now realize the mount command in the refind-install script prevents the two different users from executing this script simultaneously. We both have been discussing how to install to a volume that is already mounted. Doing so would be a bad idea. So, having to unmount before running the refind-install script is the correct proceedure.
After some thought, I now realize the mount command in the refind-install script prevents the two different users from installing rEFInd simultaneously. We both have been discussing how to install to a volume that is already mounted. Doing so would be a bad idea. So, having to unmount before running the refind-install script is the correct proceedure.
After some thought, I now realize the mount command in the refind-install script prevents the two different users from installing rEFInd simultaneously. We both have been pursuing how to install to a volume that is already mounted. Doing so would be a bad idea. So, having to unmount before running the refind-install script is the correct proceedure.
joevt: Your script has many flaws. Below I outline one main flaw with the mountpartition funciton. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing...
joevt: Your script has many flaws. Below I outline one main flaw with the mountpartition funciton. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing...
joevt: Your script has many flaws. Below I outline one main flaw with the mountpartition funciton. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing...
Your script has many flaws. Below I outline one main flaw with the mountpartition funciton. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing the /Volumes...
Your script has many flaws. Below I outline one main flaw with the mountpartition funciton. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing the /Volumes...
Your script has many flaws. Below I outline one main flaw. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing the /Volumes directory. In other words,...
Your script has many flaws. Below I outline one main flaw. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other process will not also be accessing the /Volumes directory. In other words,...
Your script has many flaws. Below I outline one main flaw. The following line determines if the mount point exists as a directory. while [ -d "$mountpoint" ]; do Later, the following line creates the directory. sudo mkdir "$mountpoint" 2> /dev/null Finally, the next line mounts the volume. sudo mount$mounttype "/dev/$slice" "$mountpoint" The problem is the script uses the /Volumes directory. There is no guarantee some other processes will not also be accessing the /Volumes directory. In other words,...
Joevt: I looked an your script to mount a partition. I would not make the mount point in the /Volumes folder. Instead, I would keep using the /tmp/refind_install mount point, when a volumn needs to be mounted. I am not sure why you felt the need to loop until a directory does not exist. Perhaps this is because your script uses the /Volumes folder? When using the --usedefault option, I found refind-install allows installations to mounted volumes after making the following changes. First, I made the...
Joevt: I looked an your script to mount a partition. I would not make the mount point in the /Volumes folder. Instead, I would keep using the /tmp/refind_install mount point, when a volumn needs to be mounted. I am not sure why you felt the need to loop until a directory does not exist. Perhaps this is because your script uses the /Volumes folder? When using the --usedefault option, I found refind-install allows installations to mounted volumes after making the following changes. First, I made the...
Joevt: I looked an your script to mount a partition. I would not make the mount point in the /Volumes folder. Instead, I would keep using the /tmp/refind_install mount point, when a volumn needs to be mounted. I am not sure why you felt the need to loop until a directory does not exist. Perhaps this is because your script uses the /Volumes folder? When using the --usedefault option, I found refind-install allows installations to mounted volumes after making the following changes. First, I replaced...
I encountered a problem where if I ran the command sudo ./refind-install --usedefault /dev/disk0s4 again after removing install from showtools. Here a message is displayed stating refind.conf will not be changed, but is in fact changed. In othe words, install is again added to refind.conf. The part of the script where the problem exists is given below. if [[ -f "$InstallDir/$TargetDir/refind.conf" ]] ; then echo "Existing refind.conf file found; copying sample file as refind.conf-sample" echo "to...
I encountered a problem where if I ran the command sudo ./refind-install --usedefault /dev/disk0s4 again after removing install from showtools. Here a message is displayed stating refind.conf will not be changed, but is in fact changed. In othe words, install is again added to refind.conf. The part of the script where the problem exists is given below. if [[ -f "$InstallDir/$TargetDir/refind.conf" ]] ; then echo "Existing refind.conf file found; copying sample file as refind.conf-sample" echo "to...
I encountered a problem where if I ran the command sudo ./refind-install --usedefault /dev/disk0s4 again after removing install from showtools. Here a message is displayed stating refind.conf will not be changed, but is in fact changed. In othe words, install is again added to refind.conf. The part of the script where the problem exist is given below. if [[ -f "$InstallDir/$TargetDir/refind.conf" ]] ; then echo "Existing refind.conf file found; copying sample file as refind.conf-sample" echo "to...
I encounter a problem where if I ran the command sudo ./refind-install --usedefault /dev/disk0s4 again after removing install from showtools. Here a message is displayed stating refind.conf will not be changed, but is in fact changed. In othe words, install is again added to refind.conf. The part of the script where the problem exist is given below. if [[ -f "$InstallDir/$TargetDir/refind.conf" ]] ; then echo "Existing refind.conf file found; copying sample file as refind.conf-sample" echo "to avoid...
I am trying to install rEFInd to a FAT formatted partition on a 2018 mac mini. The version of rEFInd is 0.12.0. The output from the command diskutil list disk0 is given below. /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *251.0 GB disk0 1: EFI EFI 314.6 MB disk0s1 2: Apple_APFS Container disk1 200.0 GB disk0s2 3: Microsoft Basic Data BOOTCAMP 40.6 GB disk0s3 4: Microsoft Basic Data REFIND 103.8 MB disk0s4 The command I entered was sudo ./refind-install --usedefault...
I am trying to install rEFInd to a FAT formatted partition on a 2018 mac mini. The output from the command diskutil list disk0 is given below. /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *251.0 GB disk0 1: EFI EFI 314.6 MB disk0s1 2: Apple_APFS Container disk1 200.0 GB disk0s2 3: Microsoft Basic Data BOOTCAMP 40.6 GB disk0s3 4: Microsoft Basic Data REFIND 103.8 MB disk0s4 The command I entered was sudo ./refind-install --usedefault /dev/disk0s4. The error...
The command sudo ./driveinfo -zcp works, if you first download from the SourceForge driveinfo files page. You incorrectly used the files from the driveinfo source git repository . As explain on the web page The macOS driveinfo Command: Both the math and help files are merged into the driveinfo file to create the released single driveinfo file. When developing driveinfo, I decided to break the source into 3 files. Merging to create a release driveinfo file is jut one extra step in long chain of steps...
The command sudo ./driveinfo -zcp works, if you first download from the SourceForge driveinfo files page. You incorrectly used the files from the driveinfo source git repository . As explain on the web page The macOS driveinfo Command: Both the math and help files are merged into the driveinfo file to create the released single driveinfo file. When developing driveinfo, I decided to break the source into 3 files. Merging to create a release driveinfo file is jut one extra step in long chain of steps...
The identifiers disk4 and disk5 are not assigned drives with a GUID Partition Table (GPT). As you already posted, these are APFS containers and therefore do not have any partitions. I do agree the error message is wrong and version 1.0.4 has corrected this. The command driveinfo will now produce a header, but no partition table which is correct becase none exists.
The command "sudo ./driveinfo -zcp" works, if you first download from the SourceForge driveinfo files page. You incorrectly used the files from the driveinfo source git repository . As explain on the web page The macOS driveinfo Command: Both the math and help files are merged into the driveinfo file to create the released single driveinfo file. When developing driveinfo, I decided to break the source into 3 files. Merging to create a release driveinfo file is jut one extra step in long chain of...
Threre a website https://driveinfo.sourceforge.io which contains instructions. If this is not sufficient, then please post what you feel should be added.
The driveinfo script parses plists returned by the diskutil command. When an error in parsing occurs, the message "This script is incompatible with the current version of macOS." is sent to stderr and the script terminates. Unfortunately, I can not correct the error because I would need the plist that could not be parsed. You would have to include the plist for the drive and each slice. For example, if this error occurred for disk0 and there were two slices (disk0s1 and disk0s2), then you would have...
The driveinfo script parses plists returned by the diskutil command. When an error in parsing occurs, the message "This script is incompatible with the current version of macOS." is sent to stderr and the script terminates. Unfortunately, I can not correct the error because I would need the plist that could not be parsed. You would have to include the plist for the drive and each slice. For example, if this error occurred for disk0 and there were two slices (disk0s1 and disk0s2), then you would have...
Fixed description in the man page for the x option.
Added web documents and added to whatis database.
Added option to install.
Updated man page.
Changed exit status for failure to 2. Updated man page.
Added files so web site could be created.
Corrected grammar and changed version to 1.0.1 beta.
Fixed help text. Added news.txt file.
Adding files driveinfo, help and math.
I was wondering when gdisk would be updated to handle Apple's new APFS partition type. I would suggest adding a af04 to represent this type.
I was wonder when gdisk would be update to handle Apple's new APFS partition type. I would suggest adding a af04 to represent this type.
Added emplace function.
Rewrote validation.
Another update to validateRecords. Suggest values for type 5 count.
Updated validateRecords and added Item to bsBase.
Another update to validateRecords.
Added option to generate a random mbr id.
Added MBR/EBR validation to readgpt and writegpt.
Added CRC checking to binary and hex input/output.
Changed default CHS computation.
Redirected error output through the console.
Update GPT verification.
Added class costream.
Entered way to compute CHS for small drives.
Moved program name function to common namespace.
Updated reading of MBR/EBR text data.
Added class unsigned_set.
Remove parameter specifying a GPT from writembr.
Addd code to convert to/from LBA and CHS.
Cleaned up and removed uneeded code.
Change format for reading GPT from a text file.
Changes do to port to VS.
Made cyl, head, sector info optional for text input.
Added option to readgpt.
Removed classes gptSpace, gptTable, gptTables and gptBaseItem
Update text writing of tables.
Moved storeDigit to common.
Fixed error when constructing Pri/Sec GPT from Sec/Pri.
Updated Type() function.
Edited linux debug and release project files. Only tested on Ubuntu.
Added Linux projects.
Upgraded to VS2017.
Changes needed do to port to Ubuntu.
Updated readStream.
Removed Allocator class.
Replace New5 with New
Converted MBR to use new (5) dynamic allocation.
Removed Wrapper class.
Changed so gpt header is not longer inherited.
Changed how dynamic objects are created.
Rearranged class in mbr.h
Made MBRs/EBRs separate objects.
Removed class MBR. Renamed MBR_ to MBR.
Added template<bool B> class mbrXItem.
Fixed problems porting to Xcode.
Put conditionals on debug write statements.
Added code to empty GPT stored as binary. Added...
Added set and reset to environment variable.
Added reading of environment variable to contro...
Added function to determine if the MBR should b...
Fixed linker errors wrt rpcrt4.lib.
Removed commented out code that has depreciated.
Added code to allow writembr to read GPT data.
Allowed writegpt to read the MBR/EBRs as text.
Updated conditional output of info and headers.
Corrected errors in messages.
Updated VS release compile options for readhex ...
Added reading of GPT to writembr.