| Index | Recent Threads | Unanswered Threads | Who's Active | Guidelines | Search |
| World Community Grid Forums
|
| No member browsing this thread |
|
Thread Status: Active Total posts in this thread: 18
|
|
| Author |
|
|
BobbyB
Veteran Cruncher Canada Joined: Apr 25, 2020 Post Count: 638 Status: Offline Project Badges:
|
Ubuntu 22.04
----------------------------------------I was able to save the Boinc folder on a USB stick. All those WCG WUs waiting for the site to come back are still there. Any way to save that work or is it all lost? I was on another project while waiting so I don't care about it. MORE INFO: Here is what I tried. I rebuilt the system with the same OS version and updated. I installed the client as per the instructions on this site. I dumped the Boinc directory over the one just created but forgot about /etc/boinc-client. Rebooted and the selected projects are all there but none connected. It was only running Milkyway at the time. I deleted and reinstall that project and it works so I know the machine is good but I do not want to do the same for WCG and lose all that work. LATER client_state.xml is corrupt [Edit 4 times, last edit by BobbyB at Sep 19, 2025 4:45:35 AM] |
||
|
|
adriverhoef
Master Cruncher The Netherlands Joined: Apr 3, 2009 Post Count: 2346 Status: Recently Active Project Badges:
|
Bobby,
All your WCG work isn't lost (until you really destroy your backup). Do as follows: - stop BOINC (in case it is running): # sudo systemctl stop boinc-client.service Then: (You do know the ~boinc notation, don't you? It stands for the homedirectory of user 'boinc'.) (Assuming ~boinc contains the "slots" and "projects" directories, etc.) - first remove the (non-functional) ~boinc directory, then restore the backed up ~boinc directory So, first do this: # sudo rm -rf ~boinc/* Then restore the ~boinc directory: [- I am not able to put the word 'copy' or 'Copy' at the start of a line - I'm getting: "Forbidden You don't have permission to access this resource." So I have put a dash in front of 'Copy'. -] - Copy the files from the backed up ~boinc directory onto the new system. Finally, restart the boinc-client: # sudo systemctl start boinc-client.service Adri |
||
|
|
BobbyB
Veteran Cruncher Canada Joined: Apr 25, 2020 Post Count: 638 Status: Offline Project Badges:
|
I pretty well did what you said but before the forums came back up. I may not have stopped boinc service.
----------------------------------------The client_state.xml is corrupt so I think I'm dead. When I look inside it I see hex data and parts of syslog, and parts of the real file.The userid, hostid and all the relevant stuff is missing. The slots and project directories are all there. All the files in the project directory are still there. I was able the get the userid, hostid, etc from a copy I made in April so I can make it look like the old machine. For now I can still read from the old disk using USB The client_state.xml would have to be rebuilt. This sounds impossible. [Edit 3 times, last edit by BobbyB at Sep 22, 2025 1:46:22 PM] |
||
|
|
adriverhoef
Master Cruncher The Netherlands Joined: Apr 3, 2009 Post Count: 2346 Status: Recently Active Project Badges:
|
BobbyB, do you have a valid, recent backup copy of the file client_state_prev.xml in your USB backup copy?
----------------------------------------If yes, - IMPORTANT! (as before) Stop boinc. - Copy it to client_state.xml in your present ~boinc directory. - (as before) Restart boinc. The differences between client_state_prev.xml and client_state.xml at the time should have been minimal and therefore workable. Adri [Edit 8 times, last edit by adriverhoef at Sep 22, 2025 2:01:05 PM] |
||
|
|
BobbyB
Veteran Cruncher Canada Joined: Apr 25, 2020 Post Count: 638 Status: Offline Project Badges:
|
The client_state_prev.xml is also corrupt.
---------------------------------------- I found this on Berkeley: https://boinc.berkeley.edu/wiki/Client_state Maybe i can reconstruct and yes kill boinc before touching anything I looked at what reset does. It flushes everything ![]() Is there some utility to recover files which have been deleted but still not overwritten on the disk like Recuva on Windows [Edit 3 times, last edit by BobbyB at Sep 22, 2025 2:48:29 PM] |
||
|
|
adriverhoef
Master Cruncher The Netherlands Joined: Apr 3, 2009 Post Count: 2346 Status: Recently Active Project Badges:
|
(Responding to BobbyB's question "Is there a utility?")
----------------------------------------There are some, yes. I've never tried any of these recently (in the past twenty years). Note: You must have an unmounted partition before trying anything. E.g., there is extundelete. How it works: "extundelete is able to recover the contents of an inode by searching the file system's journal for an old copy of that inode. It then uses that information to determine the file's location within the file system. Then, extundelete reads the corresponding data and copies it to a file in the recovery directory." So, if you are sure that you had a valid version of client_state.xml - or even client_state_prev.xml - on an ext3/4 filesystem, with a journal, not too long ago, then I would try extundelete. Adri PS Note that I've watched the creation of client_state.xml and client_state_prev.xml for a short while. Its procedure looks like this: a file called client_state_next.xml is created each second or so with the current state of boinc (using a new inode), then client_state_prev.xml is removed, then client_state.xml is renamed to client_state_prev.xml, and finally client_state_next.xml is being moved to client_state.xml. So boinc uses one new inode per second and deletes the old one that was in use by client_state_prev.xml: Three seconds ago: 94960342 -rw-r--r--. 1 boinc boinc 3842587 Sep 22 18:18 /var/lib/boinc/client_state_prev.xml Two seconds ago: 94960345 -rw-r--r--. 1 boinc boinc 3842258 Sep 22 18:18 /var/lib/boinc/client_state_next.xml One second ago: 94960344 -rw-r--r--. 1 boinc boinc 3842587 Sep 22 18:18 /var/lib/boinc/client_state_prev.xml The number to the left is that of the inode. Also note that client_state.xml is several megabytes in size. [Edit 2 times, last edit by adriverhoef at Sep 22, 2025 5:11:17 PM] |
||
|
|
BobbyB
Veteran Cruncher Canada Joined: Apr 25, 2020 Post Count: 638 Status: Offline Project Badges:
|
Gave it a try with no success. I even tried --restore all as the last attempt.
There is testdisk which I am trying. Will see. Windows Recuva says it can do it but the drive does not show when connected to Windows. The drive must be damaged near the beginning. It also does not boot to Linux |
||
|
|
adriverhoef
Master Cruncher The Netherlands Joined: Apr 3, 2009 Post Count: 2346 Status: Recently Active Project Badges:
|
Bobby, It is not clear to me what you mean by "For now I can still read from the old disk using USB". Do you have a new disk and an old disk?
The important question is: Do you have a valid backup copy of ~boinc on a USB stick? If that copy is (partly) corrupt, then chances are that much more files are damaged and it will become even more difficult to determine which files are valid or not. If not corrupt at all and you have a new drive that can boot Ubuntu, then (again): stop boinc, uninstall boinc, reinstall boinc, copy the backup copy from your USB source to the new drive, restart boinc and you should be good to go. The default for an Ubuntu filesystem is ext4 nowadays. I asked in Firefox: Can Windows Recuva read an ext4 filesystem? The answer: "No, Windows Recuva cannot read an ext4 filesystem because it lacks native support for the ext4 filesystem, which is primarily used by Linux. While Recuva added some support for ext4 in version 1.52, this support requires the ext4 drive to be properly mounted and assigned a drive letter within Windows, which typically needs third-party software or the use of Windows Subsystem for Linux (WSL). For data recovery from ext4, specialized Linux recovery tools like TestDisk or other specialized software such as Wondershare Recoverit, MyRecover, or DiskInternals Linux Reader are recommended." Adri |
||
|
|
BobbyB
Veteran Cruncher Canada Joined: Apr 25, 2020 Post Count: 638 Status: Offline Project Badges:
|
"For now I can still read from the old disk using USB"
----------------------------------------Guess this should read "For now I can still read from the old disk using an external USB caddy." I have the old disk which has corrupt files in the boinc Directory. I rebuilt Ubuntu with a new drive. I copied the whole boinc directory of the old drive onto the drive of an older laptop with the same OS version, then into a USB stick. Now I have 3 copies but all copies have a corrupt version of client_state.xml and client_state_prev.xml So the direct answer is no I do not have a valid copy of client_state.xml or client_state_prev.xml Using TestDisk I have recovered 130,000 files which qualify as tx? in TestDisk terminology; files like xml rtf, etc, etc. I stopped it half way. The older laptop is tooo sloow. Of those, 160 contain the string <client_state>. I will be processing them in a while. There is a field <last_update> in <time_stats> which I assume is the Epoch Unix Timestamp. I just need one good client_state.xml after 2025/09/03 and before 2025/09/17. The last processed MCM was on 2025/09/02. The crash was on 2025/09/18. For the WCG stuff, nothing should not have changed. I will pick the closest date to 2025/09/17. This is my strategy. I must have an older version of Recuva. To me it makes no difference whether I accomplish this in Windows or Linux. Edited later: Seems I found one dated 2025/09/12 which seems correct. When I open up the file it looks like all the data to do with each project follows the <project> tag and ends at the next <project> tag. Should make it easy to "fix" WCG. ![]() [Edit 2 times, last edit by BobbyB at Sep 23, 2025 5:50:22 AM] |
||
|
|
adriverhoef
Master Cruncher The Netherlands Joined: Apr 3, 2009 Post Count: 2346 Status: Recently Active Project Badges:
|
Bobby, sorry that I falied to understand the situation when I asked my question.
Indeed, the file client_state.xml contains the string <client_state>. Good strategy. On my system, I have a file 'time_stats_log', it isn't XML, just space separated values, on the left the time since the UNIX epoch. Let's hope that you have enough valid files to complete the upload (which will of course be 'soon', can't make it any prettier). Adri |
||
|
|
|