I get the same issue on Arch Linux, partclone-utils fails silently unless I pass -D in which case it fails with an error message. I found that errors like /dev/ndb0: cannot connect: No such file or directory show up in journalctl. I think there are two problems: error messages are not shown to the user and don't set the return code to a nonzero value (they're only logged), and either imagemount is broken or I'm calling it incorrectly. Is there a diagnosis or fix planned?
I get the same issue on Arch Linux, partclone-utils fails silently unless I pass -D in which case it fails with an error message. I found that errors like /dev/ndb0: cannot connect: No such file or directory show up in journalctl. I think there are two problems: error messages are not shown to the user and don't set the return code to a nonzero value (they're only logged), and either imagemount is broken or I'm calling it incorrectly.
Support large blocks in imagemount
Thanks for your interest in this program. I'm merging your changes as nothing looks to crazy. Feel free to continue to create Merge Requests and perhaps becoming the defacto maintainer of this program. I never got around to switching Rescuezilla from partclone-nbd to an update partclone-utils as I originally intended.
I've had success with this tool I wrote called lzopfs, similar to archivemount. You get best results with parallel xz compression (pixz).
Support large blocks in imagemount
Hi Amiga Lemming, As a temporary workaround, try following the guide I've written here which documents how to use the partclone-nbd tool (rather than this partclone-utils tool) in your standalone Linux environment. You'll of course first need to download and build the partclone-nbd source code (from here), but since you've already appear to have done this for partclone-utils it shouldn't be much of a problem. Hopefully that helps. The Rescuezilla graphical frontend will always provide the easiest...
👍
I try to run imagemount, but it does not seem to have an effect. I have not used NBD (Network Block Device) before. I run the example from the manpage: $ imagemount -d /dev/nbd0 -f mypartition.partclone -r Launched in daemon mode: All logging output being written to the system log. It does not emit an error. Is /dev/nbd0 a device that must exist before running imagemount or is it something that imagemount creates? If the first case applies, how would I create /dev/nbd0? If the second case applies,...
Thanks again for the guidance on this EDIT by Rescuezilla: Remove quoting of entire previous reply.
Thanks again for the guidance on this On Wed, Aug 18, 2021, at 8:03 PM, Rescuezilla wrote: OK that sounds good. Just to re-iterate, your best bet is definitely to create a Rescuezilla USB stick https://rescuezilla.com/download and use Rescuezilla to create uncompressed images. Uncompressed images will mount quickly and easily using its "Image Explorer" feature in Rescuezilla. Do not use Image Explorer with the default compressed images (because compressed images will cause instability). I will close...
0.4.3 autoconf fails
OK that sounds good. Just to re-iterate, your best bet is definitely to create a Rescuezilla USB stick and use Rescuezilla to create uncompressed images. Uncompressed images will mount quickly and easily using its "Image Explorer" feature in Rescuezilla. Do not use Image Explorer with the default compressed images (because compressed images will cause instability). I will close this ticket now.
This was for linux. After much searching I found out how to install without needing to build (I think). I was tring to find a use for my mac mini but my machine configuration was so unstable that it would spontaneously restart or freeze. I just sold it and am in the process of building a new linux box. Thanks for your assistance, Dan EDIT by Rescuezilla: Remove quoting of entire previous reply.
This was for linux. After much searching I found out how to install without needing to build (I think). I was tring to find a use for my mac mini but my machine configuration was so unstable that it would spontaneously restart or freeze. I just sold it and am in the process of building a new linux box. Thanks for your assistance, Dan On Wed, Aug 18, 2021, at 3:56 PM, Rescuezilla wrote: I have edited your post to fix the formatting. What platform are you trying to compile partclone-utils for? I see...
I have edited your post to fix the formatting. What platform are you trying to compile partclone-utils for? I see from some of your previous comments you mention macOS. I haven't yet tried partclone-utils on that platform, and won't be for some time. It may work, though I don't know macOS's level of support for the required Network Block Device dependency. You may prefer to create a Rescuezilla USB stick for an easy environment that can run on Intel-based Mac machines, and then you can open a Terminal...
Thanks. I could not figure out how to edit it. Any tips? EDIT by Rescuezilla: Remove quoting of entire previous reply.
Thanks. I could not figure out how to edit it. Any tips? On 8/18/2021 12:36 AM, Rescuezilla wrote: Hi Dan, You can place output between two triple backtick (```) strings to display the text correctly as an unformatted block. I have edited your post to fix the formatting. What operating system are you trying to compile on? And which version of the operating system? The following works for me on Debian 10 (Buster), but I don't recall the build dependencies: gitclonessh://rescuezilla@git.code.sf.net/p/partclone-utils/git...
Hi Dan, You can place output between two triple backtick (```) strings to display the text correctly as an unformatted block. I have edited your post to fix the formatting. What operating system are you trying to compile on? And which version of the operating system? The following works for me on Debian 10 (Buster), but I don't recall the build dependencies: git clone https://git.code.sf.net/p/partclone-utils/git partclone-utils-git cd partclone-utils-git/ # Checkout most recent tag git checkout...
Hi Dan, You can place output between two triple backtick (```) strings to display the text correctly as an unformatted block. I have edited your post to fix the formatting. What operating system are you trying to compile on? And which version of the operating system? The following works for me on Debian 10 (Buster), but I don't recall the build dependencies: git clone ssh://rescuezilla@git.code.sf.net/p/partclone-utils/git cd partclone-utils-git/ # Checkout most recent tag git checkout 0.4.3 autoreconf...
0.4.3 autoconf fails
0.4.3 autoconf fails
partclone_imageinfo detects anomalies with image format 0002
Yes. Exactly.
partclone_imageinfo detects anomalies with image format 0002
@prouleau My understanding is this ticket has been resolved by Merge Request #10. If so, this ticket can be closed?
Patrick, I have accepted your merge request. I did a quick code review and it looks good to me, and if there's a better way to do the Automake compilation/linking it can be easily fixed as a patch on top. Also the unit tests are no worse than they were previously. And as it's already been 8 days and you know our agreed policy is to merge any reasonable looking code after 1 week to help prevent reasonable improvements from waiting for months/years to be one day merged: I think I will send Merge Requests...
Support image format 0002 in partclone_imageinfo
Your merge request LGTM! I'm also unfamiliar with Automake. I'm sure there's a better solution, but it's no big deal as is. You mentioned via email you had an issue with the test.sh script, so I sent you my output. But that output was for the current master branch. For this merge request, I have done a git checkout, recompiled the code and ran the test script again. The output appears identical: $ sudo ./test.sh [OK ] ver=v1 prog=partclone-utils-imagemount fs=fat num_blocks=1000 The checksum of /dev/nbd1...
Your merge request LGTM! I'm also unfamiliar with Automake. I'm sure there's a better solution, but it's no big deal as is. You mentioned via email you had an issue with the test.sh script, so I sent you my output. But that output was for the current master branch. For this merge request, I have done a git checkout, recompiled the code and ran the test script again. The output appears identical: $ sudo ./test.sh [OK ] ver=v1 prog=partclone-utils-imagemount fs=fat num_blocks=1000 The checksum of /dev/nbd1...
Yes, that filename should definitely be relative to the current directory by default, unless an absolute path is provided. I don't think the risk of breaking scripts is that important here. Because as far as actual functionality goes, imagemount hasn't never been particularly stable.
I was forgetting to point out one point: I am not sure if the modification to src/Makefile.am. I didn't play with makefile for a long time and I am still unfamiliar with Makefile.am features. I tried to define a line like libchecksum_a_SOURCES = libchecksum.c and adding libchecksum.a to a few places but the linker was giving errors. So I ended up adding libchecksum.c to libpartclone_a_SOURCES. I wonder if there is a better solution.
Support image format 0002 in partclone_imageinfo
imagemount v0.4.2 does not work for all NTFS, many ext4 filesystems
imagemount puts the cache file at the root (/) when the path is not absolute
verify the integrity of the image
Request: partclone_imageinfo should checks if the last sector is missing
partclone_imageinfo detects anomalies with image format 0002
Sounds great! I've been considering opening a few tickets too. Eg, imagemount does not appear to have the ability to detach and reuse NBD devices, where as partclone-nbd is able to do this fine. It's been a bit hectic the last few days. I hope to more actively analyze partclone-utils soon.
Sounds great! I've been considering opening a few tickets too. Eg, imagemount does not appear to have the ability to detach and reuse NBD devices, where as partclone-nbd is able to do this fine. It's been a bit hectic the last few days. I hope to more actively analyze partclone-utils soon.
I should create a few tickets too. I found a few issues with partclone_imageinfo and I found a few fixes. One of them may affect imagemount and I need to do more tests. I'm playing the the code to better understand it. I have a wip/ branch where I experiment many things. I will split it into many goal focused branches later.
Improve formatting by using clang-format
Great work! Yeah I was thinking there was "Refresh" button, but couldn't remember. I've used it before. The user-experience on Sourceforge is definitely not as polished/refined as GitHub. Right now that's not a strong enough reason to switch to GitHub. If we find that third-party tools (eg, the build bots Circle-CI and AppVeyor) work better on GitHub, that would be a reason to switch. Your commit looks great. No problems about the initial hesitancy / miscommunication. I will merge it immediately,...
OK. All the tabs should be gone now. I finally saw the buttons on the MR above. The "Refresh" button updates the commits to the most recent ones. SourceForge does not seem to do it automatically. And sorry again for my hesitation to go straight to spaces.
Yes, I prefer to avoid mixing tabs and spaces. Even if partclone also does it, partclone seems to prefer spaces. Let's stick purely to spaces and ensure all files are consistent. Your .editorconfig file looks good to me. Yes, I was looking at your most recent commits so I did see your note about v11 being required. If I recall correctly the workflow between Sourceforge and GitHub are very similar, so please continue to update your SourceForge branch the same way as on GitHub. If the workflow turns...
Sorry, in [1], I proposed to use only spaces for indentation and you agreed and suggested to use a formatting that was close to what is used in partclone itself. Turns out partclone use the mixed indentation too (but not consistent). Unless I did not give priority to the right files? The main reason for me to propose to use only spaces is because I could not configure my editors to follow the mixed rule. However, now that I have found clang, it is possible to configure VS Code with an extension to...
Thanks for the Merge Request! Your commit has not yet fixed the mixing of tabs and spaces for many files. For example here is the first function of src/cfdump.c with whitespace as ASCII characters using some arcane vim configuration: void$ dump_header(char *n, cf_header_t *h) {$ printf("%s: version %d, flags 0x%04x: blocks %" PRIu64 " used/%" PRIu64$ >------- "total\n",$ >------- n, h->cf_version, h->cf_flags, h->cf_used_blocks,$ >------- h->cf_total_blocks);$ }$ When you have resolved this issue,...
Your commit has not yet fixed the mixing of tabs and spaces for many files. For example here is the first function of src/cfdump.c with whitespace as ASCII characters using some arcane vim configuration: void$ dump_header(char *n, cf_header_t *h) {$ printf("%s: version %d, flags 0x%04x: blocks %" PRIu64 " used/%" PRIu64$ >------- "total\n",$ >------- n, h->cf_version, h->cf_flags, h->cf_used_blocks,$ >------- h->cf_total_blocks);$ }$ When you have resolved this issue, if possible please rebase and...
Improve formatting by using clang-format
I think it is best to work with the latest tag instead of the tip of 'master'. The git tags are immutable. We could create a branch based on the tag, but I don't see much point in this. Working on master makes more sense. to not share the free credits between the 2 projects Of course. The way it usually works is you can create new organization or project and contributors. I'll evaluate the options and integrate something. Leave it with me. EDIT: Fixed typo could vs should
I think it is best to work with the latest tag instead of the tip of 'master'. The tags are immutable. We should create a branch based on the tag, but I don't see much point in this. to not share the free credits between the 2 projects Of course. The way it usually works is you can create new organization or project and contributors. I'll evaluate the options and integrate something. Leave it with me.
At the risk of "bikeshedding" I just want to note that days ago partclone project updated its README to no longer considers its master branch as unstable , after an issue you opened. Indeed, but he did not delete the release branch itself. So when we look at the existing branches, we see 'master' and 'release' are at different commits, and when we dig deeper, we see that 'release' is related to v0.2.x instead of v0.3.x. So I will do a follow up on that. I think it is best to work with the latest...
At the risk of "bikeshedding" I just want to note that days ago partclone project updated its README to no longer considers its master branch as unstable , after an issue you opened. Indeed, but he did not delete the release branch itself. So when we look at the existing branches, we see 'master' and 'release' are at different commits, and when we dig deeper, we see that 'release' is related to v0.2.x instead of v0.3.x. So I will do a follow up on that. I think it is best to work we the latest tag...
If MR are received before the reformatting is done, that will cause a lot of conflicts. So I want to complet that first. Sounds good! And as with partclone, let's consider master branch unstable until it is tagged with a version number. Let me know if you agree to this suggestion. It's capturing this fact in the README. I totally agree. At the risk of "bikeshedding" I just want to note that days ago partclone project updated its README to no longer considers its master branch as unstable , after...
(Looks like my reply from gmail did not get here, so here it is) In this case, there is the ambition to merge partclone-utils into the partclone itself, so I suggest we imitate partclone's coding style as closely as possible. Partclone uses 4 spaces for indentation (but it not consistent with its use of newline before curly brackets in function implementations). I think it is a good idea to match partclone's coding style. From what I found, .editorconfig's support in Atom and VS Code is pretty limited...
(Looks like my reply from gmail did get here, so here it is) In this case, there is the ambition to merge partclone-utils into the partclone itself, so I suggest we imitate partclone's coding style as closely as possible. Partclone uses 4 spaces for indentation (but it not consistent with its use of newline before curly brackets in function implementations). I think it is a good idea to match partclone's coding style. From what I found, .editorconfig's support in Atom and VS Code is pretty limited...
On Fri, Feb 19, 2021 at 9:33 PM Rescuezilla rescuezilla@users.sourceforge.net wrote: P.Rouleau wrote https://sourceforge.net/p/partclone-utils/git/merge-requests/8/#f6d4 a comment relevant to this issue on Merge Request #8: One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. My response: I don't believe the missing...
That's what I want to implement, with some logic that checks the version used to make the image. If it is a version known to not include the latest sector, show a warning; otherwise, show an error. I will implement that in partclone_imageinfo first and have to think of a way to implement some tests about that. OK cool, modifying partclone-util's partclone_imageinfo.c to print an error message when a bad file is detected seems like a reasonable immediate path forward. (By the way, your email reply...
On Fri, Feb 19, 2021 at 9:33 PM Rescuezilla rescuezilla@users.sourceforge.net wrote: P.Rouleau wrote https://sourceforge.net/p/partclone-utils/git/merge-requests/8/#f6d4 a comment relevant to this issue on Merge Request #8: One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. My response: I don't believe the missing...
One question: how do you feel about the code formatting in partclone-utils? The partclone-utils repository currently mixes tabs and spaces. This has been the case since the very first commits by the original author. Let's choose a style, and consistently stick to it. I have been converted to view that tab characters are the superior form of indentation, but often there is an overriding coding style for C projects (or GNU projects) that makes spaces more suitable. In this case, there is the ambition...
One question: how do you feel about the code formatting in partclone-utils? The partclone-utils repository currently mixes tabs and spaces. This has been the case since the very first commits by the original author. Let's choose a style, and consistently stick to it. I have been converted to view that tab characters are the superior form of indentation, but often there is an overriding coding style for C projects (or GNU projects) that makes spaces more suitable. In this case, there is the ambition...
Patrick, as you know, after my first batch of Merge Requests a few months ago (and a few direct messages), the original author of this repository (xppppp) gave me full administrator privileges on this project with the following message: I've made you an admin for partclone-utils so you are free to do as you wish with the project. Also, I'm glad that someone has found the code useful, and as such, I'm would be honored if you found it useful enough to merge it in to your future endeavors. I'll just...
P.Rouleau wrote a comment relevant to this issue on Merge Request #8: One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. My response: I don't believe the missing final sector is a blocker that requires changes to partclone. My assertion can be verified by using partclone to restoring the NTFS image to a block...
P.Rouleau wrote a comment relevant to this issue on Merge Request #8: One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. My response: I don't believe the missing final sector is a blocker that requires changes to partclone. My assertion can be verified by using partclone to restoring the NTFS image to a block...
P.Rouleau wrote a comment relevant to this issue on Merge Request #8: One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. My response: I don't believe the missing final sector is a blocker that requires changes to partclone. My assertion can be verified by using partclone to restoring the NTFS image to a block...
P.Rouleau wrote a comment relevant to this issue on Merge Request #8: One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. My response: I don't believe the missing last sector is a blocker that requires changes to partclone. My assertion can be verified by using partclone to restoring the NTFS image to a block...
One question: how do you feel about the code formatting in partclone-utils? The partclone-utils repository currently mixes tabs and spaces. This has been the case since the very first commits by the original author. Let's choose a style, and consistently stick to it. I have been converted to view that tab characters are the superior form of indentation, but often there is an overriding coding style for C projects (or GNU projects) that makes spaces more suitable. In this case, there is the ambition...
You took me by surprise. I will try to do my part, but I did not expect that honor. 😅 One thing I want to try to handle in partclone-utils is to implement a workaround for the missing last sector in NTFS image made by partclone. I still have to play more with the tool to clarify if it is a blocker or just an annoying warning. One question: how do you feel about the code formatting in partclone-utils? I tried to configure Atom and VS Code to handle the "indent by 4 chars, but tabs are 8 chars", but...
Patrick, as you know, after my first batch of Merge Requests a few months ago (and a few direct messages), the original author of this repository (xppppp) gave me full administrator privileges on this project with the following message: I've made you an admin for partclone-utils so you are free to do as you wish with the project. Also, I'm glad that someone has found the code useful, and as such, I'm would be honored if you found it useful enough to merge it in to your future endeavors. I'll just...
Fix a division by zero with partclone v2 image
Patrick, as you know, in response to my first batch of Merge Requests the original author of this repository (xppppp) gave me full administrator privileges on this project with the following message: I've made you an admin for partclone-utils so you are free to do as you wish with the project. Also, I'm glad that someone has found the code useful, and as such, I'm would be honored if you found it useful enough to merge it in to your future endeavors. I'll just ask that if you do so to let me know...
Fix a division by zero with partclone v2 image
Hummm, I made this pull request a while ago, 🙄 https://github.com/Thomas-Tsai/partclone/pull/54 I have messaged the Thomas to try to get it merged in the current partclone code.
Switch all POSIX u_int#_t to the C99 uint#_t
Add helper script to create release tarball
Rename posix_close() for improved musl compilation
Fixes for compiling on musl
Hi Paul, Sean, As part of my work on consolidating partclone-utils imagemount for Rescuezilla Image Explorer, I have split Sean's commit up in Merge Request #6 and improved the commit messages: Switch all POSIX u_int#_t to the C99 uint#_t Rename posix_close() for improved musl compilation I don't think the changes need to be conditional. The commit messages provide a more detailed explanation of the what/why. Just to clarify musl is not cross-compiling. It's just compiling against another C standard...
Unifying the partclone-utils improvements from across GitHub
OK, I am merging the cherry-picked changes without having adapted the "Convert the blocks's usage map to a true bitmap format to use less RAM" and "Remove the sysdep interface since it is fixed at compilation time" commits. I might take another look at those commits at a future time.
Create checksummed test file in test script
Create test file and checksum
Merge /u/rescuezilla/partclone-utils/ branch improve.test.script into master
test.sh: Add mount check, ext4 filesystem check, debug mode, fix partclone git clone
Excellent thanks for that. I have submitted the merge request for the package update to Alpine Linux. Thanks!
Cool, that looks like a great command (and the version tag is programmatically extractable with git describe --tags). I will continue using the subfolder approach going forward and will encapsulate the command in a simple script tracked within the git repository. Just to re-iterate I have already re-uploaded v0.4.3 and v0.4.2 tarballs with the subfolders present.
Cool, that looks like a great command (and the version tag is programmatically extractable with git describe --tags). I will continue using the subfolder approach going forward encapsulate the command in a simple script tracked within the git repository. Just to re-iterate I have already re-uploaded v0.4.3 and v0.4.2 tarballs with the subfolders present.
Hello, It is not a show stopper to have no subfolder. It just makes packaging a bit easier, at least for Alpine and perhaps others. I figured tar can do this and apparently it can using --transform ver=0.4.3 tar cvf /tmp/partclone-utils-${ver}.tar --transform "s,^,partclone-utils-${ver}/," . This will prepend a sub folder inside of the created tarball. It could be integrated into any scipts relating to tagging a release. I am suprised SF does not automate this. I took a quick check of their Wiki...
OK, as you have requested I have deleted the v0.4.2/v0.4.3 releases from yesterday and re-uploaded the archives with a subfolder, to be more consistent with past releases. I was aware of the difference, but hoped to remove the pattern of using a subfolder because in my opinion it duplicates information that's already found in the tarball's filename, and its way more inconvenient (and therefore potentially more error prone) to create such a tarball using eg, tar --exclude-vcs -cvzf ../partclone-utils-0.4.3.tar.gz...
OK, as you have suggested I have deleted the v0.4.2/v0.4.3 releases from yesterday and re-uploaded the archives with a subfolder, to be more consistent with past releases. I was aware of the difference, but hoped to remove the pattern of using a subfolder because in my opinion it duplicates information that's already found in the tarball's filename, and its way more inconvenient (and therefore potentially more error prone) to create such a tarball using eg, tar --exclude-vcs -cvzf ../partclone-utils-0.4.3.tar.gz...
Hello, Thanks for the quick reply. Glad to see the project will be maintained. Being able to mount the disk images is such a handy feature. Certainly tagging previous releases in git would be great for grabbing from source directly. I noticed the new tarballs differ from 0.4.1 releases where the sources are in a directory 'partclone-utils-0.4.1' and in the 0.4.2/0.4.3 they are not in a sub drectory. Would it be possible to have this consistent across the releases? Again, thanks for the response and...
Hi Sean, You are correct: the current latest partclone-utils tarball on Sourceforge was v0.4.1 from way back in 2016, and there wasn't a tarball release for the v0.4.2 source code despite this thread from 2019 having accepted George Prekas' changes adding partclone v0002 image format support (where he bumped the version to v0.4.2). Two months ago, in response to my merge requests, the original author of this software (the user above named 'P') graciously offered me administrator privileges on this...
Hi Sean, You are correct: the current latest partclone-utils tarball on Sourceforge was v0.4.1 from way back in 2016, and there wasn't a tarball release for the v0.4.2 source code despite this thread from 2019 having accepted George Prekas' changes adding partclone v0002 image format support (where he bumped the version to v0.4.2). Two months ago, in response to my merge requests, the original author of this software (the user above named 'P') graciously offered me administrator privileges on this...
Hi Sean, You are correct: the current latest partclone-utils tarball on Sourceforge was v0.4.1 from way back in 2016, and there wasn't a tarball release for the v0.4.2 source code despite this thread from 2019 having accepted George Prekas' changes adding partclone v0002 image format support (where he bumped the version to v0.4.2). Two months ago, in response to my merge requests, the original author of this software (the user above named 'P') graciously offered me administrator privileges on this...
Adds Jason Spangler's NBD timeout, increments version, updates ChangeLog
Adds Jason Spangler's NBD timeout, increments version, updates ChangeLog