climateprediction.net (CPDN) home page
Thread 'Communicating with BOINC client. Please wait'

Thread 'Communicating with BOINC client. Please wait'

Questions and Answers : Unix/Linux : Communicating with BOINC client. Please wait
Message board moderation

To post messages, you must log in.

1 · 2 · Next

AuthorMessage
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69359 - Posted: 18 Jul 2023, 19:27:32 UTC

I am a Linux newbie.

I went to upgrade my BOINC version in Virtual Box from the Android version (BOINC v7.18.1 ) to the proper Ubuntu version. One system upgraded perfectly. The other did not.
When I run BOINC from the UI, The dialog box shows:
BOINC Manager (Pre-release) - Communication
Communicating with BOINC client. Please wait

The dialog box.has two buttons: Exit BOINC Manager and Cancel. It will wait seemingly forever.

When I try to start the client from the terminal, I get "command not found".

It looks to me like the install went correctly. In the /usr/bin directory I find both the boinc and boincmgr files. In the /var/lib directory there is a boinc subdirectory with several files in it..

Any suggestions will be appreciated.
ID: 69359 · Report as offensive     Reply Quote
ProfileDave Jackson
Volunteer moderator

Send message
Joined: 15 May 09
Posts: 4540
Credit: 19,039,635
RAC: 18,944
Message 69360 - Posted: 19 Jul 2023, 10:05:26 UTC - in response to Message 69359.  

What is the command you use to try and start the client?

sudo systemctrl start boinc-client
is the way to do it on recent distributions.
ID: 69360 · Report as offensive     Reply Quote
Jean-David Beyer

Send message
Joined: 5 Aug 04
Posts: 1120
Credit: 17,202,915
RAC: 2,154
Message 69361 - Posted: 19 Jul 2023, 12:50:23 UTC - in response to Message 69360.  

What is the command you use to try and start the client?

sudo systemctrl start boinc-client

is the way to do it on recent distributions.


For Red Hat Enterprise Linux release 8.8 (Ootpa) it is in /usr/bin/boinc_client; note the _ is not the same as -.
So for RHEL 8 versions, the start command would be sudo systemctrl start boinc_client
(You probably do not want to run just plain /usr/bin/boinc_client (where it is on my machine) because I suppose it will exit as soon as you exit the shell you started it from.)
ID: 69361 · Report as offensive     Reply Quote
Glenn Carver

Send message
Joined: 29 Oct 17
Posts: 1049
Credit: 16,575,067
RAC: 15,735
Message 69362 - Posted: 19 Jul 2023, 13:11:42 UTC - in response to Message 69359.  
Last modified: 19 Jul 2023, 13:14:35 UTC

When I run BOINC from the UI, The dialog box shows:
BOINC Manager (Pre-release) - Communication
Communicating with BOINC client. Please wait

When I try to start the client from the terminal, I get "command not found".

As you are on Ubuntu in virtualbox you may not have the systemctl running, but you can start the boinc client manually just to test it.

On Ubuntu, the client executable is:
$ ls -l /usr/bin/boinc
-rwxr-xr-x 1 root root 989552 Jan 30  2022 /usr/bin/boinc
Is your 'boinc' executable in /usr/bin? If not, the install put it somewhere else. Try looking in the installer log to see what directory it put it into.

If boinc is there, what do you get if you type:
 /usr/bin/boinc --version
(if your boinc is somewhere else, change the directory name appropriately.

I get:
7.18.1 x86_64-pc-linux-gnu

If you get similar or same, then try starting the client with:
/usr/bin/boinc --dir /var/lib/boinc

and report back what output you get.

Also, have a look in the /var/lib/boinc directory and see if you have a file called 'stdoutdae.txt'. This is the logfile for the client.

If that exists, then the client started up. Run the command:
tail -20 /var/lib/boinc/stdoutdae.txt
and send us the output and we can help.
ID: 69362 · Report as offensive     Reply Quote
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69363 - Posted: 19 Jul 2023, 15:44:54 UTC - in response to Message 69360.  

When I try:
sudo systemctrl start boinc-client
I get:
sudo: systemctrl: command not found.
ID: 69363 · Report as offensive     Reply Quote
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69364 - Posted: 19 Jul 2023, 16:04:47 UTC - in response to Message 69362.  

When I run BOINC from the UI, The dialog box shows:
BOINC Manager (Pre-release) - Communication
Communicating with BOINC client. Please wait

When I try to start the client from the terminal, I get "command not found".

As you are on Ubuntu in virtualbox you may not have the systemctl running, but you can start the boinc client manually just to test it.

On Ubuntu, the client executable is:
$ ls -l /usr/bin/boinc
-rwxr-xr-x 1 root root 989552 Jan 30  2022 /usr/bin/boinc
Is your 'boinc' executable in /usr/bin? If not, the install put it somewhere else. Try looking in the installer log to see what directory it put it into.

If boinc is there, what do you get if you type:
 /usr/bin/boinc --version
(if your boinc is somewhere else, change the directory name appropriately.

I get:
7.18.1 x86_64-pc-linux-gnu



I get
 7.20.5 x86_64-pc-linux-gnu



If you get similar or same, then try starting the client with:
/usr/bin/boinc --dir /var/lib/boinc

and report back what output you get.


I get
 19-Jul-2023 11:40:51 Another instance of BOINC is running



Also, have a look in the /var/lib/boinc directory and see if you have a file called 'stdoutdae.txt'. This is the logfile for the client.


There is no 'stdoutdae.txt' file in the /var/lib/boinc directory


If that exists, then the client started up. Run the command:
tail -20 /var/lib/boinc/stdoutdae.txt
and send us the output and we can help.

ID: 69364 · Report as offensive     Reply Quote
ProfileDave Jackson
Volunteer moderator

Send message
Joined: 15 May 09
Posts: 4540
Credit: 19,039,635
RAC: 18,944
Message 69365 - Posted: 19 Jul 2023, 17:29:54 UTC

 sudo apt-get install systemd
Should let you run systemctl commands.
ID: 69365 · Report as offensive     Reply Quote
Glenn Carver

Send message
Joined: 29 Oct 17
Posts: 1049
Credit: 16,575,067
RAC: 15,735
Message 69366 - Posted: 19 Jul 2023, 18:29:14 UTC - in response to Message 69364.  
Last modified: 19 Jul 2023, 18:31:53 UTC

I get
 19-Jul-2023 11:40:51 Another instance of BOINC is running

Ok, the client is already running. Might have started automatically when the Virtual machine was booted, or when you tried previously.

So, go into the boinc data directory and try starting the boinc manager there without any arguments:
cd /var/lib/boinc
boincmgr &

and see if you can 'Add Project -> climateprediction.net'.

If you get 'command not found', use:
/usr/bin/boincmgr &
ID: 69366 · Report as offensive     Reply Quote
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69367 - Posted: 19 Jul 2023, 19:06:34 UTC - in response to Message 69366.  

I get
 19-Jul-2023 11:40:51 Another instance of BOINC is running

Ok, the client is already running. Might have started automatically when the Virtual machine was booted, or when you tried previously.

So, go into the boinc data directory and try starting the boinc manager there without any arguments:
cd /var/lib/boinc
boincmgr &

and see if you can 'Add Project -> climateprediction.net'.


Starting from a restarted Ubuntu in the VM I went through getting the
 19-Jul-2023 11:40:51 Another instance of BOINC is running

steps. Then I tried starting the boinc manager as you suggested. The boinc manager came up in the GUI and gave me the 'Communicating with BOINC client. Please wait' dialog box as if the client were not running.


If you get 'command not found', use:
/usr/bin/boincmgr &

ID: 69367 · Report as offensive     Reply Quote
Glenn Carver

Send message
Joined: 29 Oct 17
Posts: 1049
Credit: 16,575,067
RAC: 15,735
Message 69372 - Posted: 20 Jul 2023, 11:24:10 UTC - in response to Message 69367.  
Last modified: 20 Jul 2023, 11:25:34 UTC

Ok, I think most likely the client is not running but we can check. This is one of those support question that would take 5 mins to sort out if I could see the machine.

Let's see if the cilent is running and what the command line arguments are. Run this on your Ubuntu VM in a terminal (could reboot the VM first to make a clean start):

 ps -ef | fgrep 'bin/boinc'

If the boinc client is running, you'll get a line similar to this:

boinc       1404       1  0 09:56 ?        00:00:09 /usr/bin/boinc --allow_remote_gui_rpc --dir /work/boinc-client

If it's not running, you'll get nothing. It's possible you might get multiple lines if, for some reason, the client has been started up multiple times (which it shouldn't). Report back what output you get. I'd like to see what command line arguments it's using. We're going to kill this later and try restarting manually, see below.

Let's also check ownership is correct. This can be another reason the client isn't starting.

Run the following command to check there is a 'boinc' user for the client:

 grep boinc /etc/passwd

should give output like this:
boinc:x:122:130:BOINC core client,,,:/var/lib/boinc-client:/usr/sbin/nologin


Let's check the user 'boinc' owns the files in the client directory. Run this command:
 ls -l /var/lib/boinc-client
(note that /var/lib/boinc is just a symbolic link to /var/lib/boinc-client where the real files are)
You should see plenty of files, with lines like:
-rw-r--r-- 1 boinc boinc    1691 Feb  4 00:21 global_prefs.xml

The key thing is here that 'boinc boinc' part. That means the boinc user & group owns these files.

There should also be a couple of files owned by 'root' user which are links to the /etc/boinc-client directory.

If that looks ok, then first kill off any existing boinc client that's running. Referring back to the output from ps above:
boinc       1404       1  0 09:56 ?        00:00:09 /usr/bin/boinc --allow_remote_gui_rpc --dir /work/boinc-client

the number in the second column is the 'process id'. That's what you need (yours will be different). Kill the process with:
sudo -u boinc kill 1404
!! Do not use 1404 here, use the process id you got !!

Confirm the client is no longer running by using the ps command above. If for some reason you have multiple clients running, kill all of them.

Now let's try starting the client at the terminal:
sudo -u boinc /usr/bin/boinc --dir /var/lib/boinc-client
(you might be prompted for your sudo password here)

This should produce output to the terminal. Then run the 'ps' command above to make sure it's working. If there are any obvious errors in the output of the command post it here.

If the client starts up ok, try the boincmgr as before:
cd /var/lib/boinc
boincmgr &

and hopefully that will connect!
ID: 69372 · Report as offensive     Reply Quote
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69376 - Posted: 20 Jul 2023, 16:08:46 UTC - in response to Message 69372.  

Ok, I think most likely the client is not running but we can check. This is one of those support question that would take 5 mins to sort out if I could see the machine.

Let's see if the cilent is running and what the command line arguments are. Run this on your Ubuntu VM in a terminal (could reboot the VM first to make a clean start):

 ps -ef | fgrep 'bin/boinc'

If the boinc client is running, you'll get a line similar to this:

boinc       1404       1  0 09:56 ?        00:00:09 /usr/bin/boinc --allow_remote_gui_rpc --dir /work/boinc-client


I get
boinc      862          1  0   11:27  ?         00:00:00  /usr/bin/boinc
dave     3570    1991  0   11:28  pts/0   00:00:00  grep -F  --color=auto  bin/boinc 



If it's not running, you'll get nothing. It's possible you might get multiple lines if, for some reason, the client has been started up multiple times (which it shouldn't). Report back what output you get. I'd like to see what command line arguments it's using. We're going to kill this later and try restarting manually, see below.

Let's also check ownership is correct. This can be another reason the client isn't starting.

Run the following command to check there is a 'boinc' user for the client:

 grep boinc /etc/passwd

should give output like this:
boinc:x:122:130:BOINC core client,,,:/var/lib/boinc-client:/usr/sbin/nologin



This gave me
 boinc:x:126:133:BOINC core client,,,:/var/lib/boinc-client:/usr/sbin/nologin



Let's check the user 'boinc' owns the files in the client directory. Run this command:
 ls -l /var/lib/boinc-client
(note that /var/lib/boinc is just a symbolic link to /var/lib/boinc-client where the real files are)
You should see plenty of files, with lines like:
-rw-r--r-- 1 boinc boinc    1691 Feb  4 00:21 global_prefs.xml

The key thing is here that 'boinc boinc' part. That means the boinc user & group owns these files.

There should also be a couple of files owned by 'root' user which are links to the /etc/boinc-client directory.


There were many lines of output some owned by root


If that looks ok, then first kill off any existing boinc client that's running. Referring back to the output from ps above:
boinc       1404       1  0 09:56 ?        00:00:09 /usr/bin/boinc --allow_remote_gui_rpc --dir /work/boinc-client

the number in the second column is the 'process id'. That's what you need (yours will be different). Kill the process with:
sudo -u boinc kill 1404
!! Do not use 1404 here, use the process id you got !!

Confirm the client is no longer running by using the ps command above. If for some reason you have multiple clients running, kill all of them.


I was unable to kill process 862. I had to provide my password and got zero output.
When I re-checked the running processes as above, I got the exact two lines shown above.
boinc      862          1  0   11:27  ?         00:00:00  /usr/bin/boinc
dave     3570    1991  0   11:28  pts/0   00:00:00  grep -F  --color=auto  bin/boinc 



Now let's try starting the client at the terminal:
sudo -u boinc /usr/bin/boinc --dir /var/lib/boinc-client
(you might be prompted for your sudo password here)

This should produce output to the terminal. Then run the 'ps' command above to make sure it's working. If there are any obvious errors in the output of the command post it here.

If the client starts up ok, try the boincmgr as before:
cd /var/lib/boinc
boincmgr &

and hopefully that will connect!

ID: 69376 · Report as offensive     Reply Quote
Glenn Carver

Send message
Joined: 29 Oct 17
Posts: 1049
Credit: 16,575,067
RAC: 15,735
Message 69377 - Posted: 20 Jul 2023, 17:50:19 UTC - in response to Message 69376.  

boinc      862          1  0   11:27  ?         00:00:00  /usr/bin/boinc

Ok, so the boinc client is running using defaults. That'll mean it should be using the files in /var/lib/boinc-client and communicating on port 31416. I'm puzzled why running boincmgr in /var/lib/boinc-client didn't work in that case.

Let's see if the command line tool rather than boincmgr can talk to the client. Try this and let us know what output you get:
boinccmd --get_state
If it can see the client you'll get alot of output. If it can't, you'll get "can't connect to local host"

Try that first.

For killing the client, you can use root privilege rather than as the user boinc:
sudo kill 862
but don't do that just yet.
ID: 69377 · Report as offensive     Reply Quote
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69378 - Posted: 20 Jul 2023, 22:04:33 UTC - in response to Message 69377.  

boinc      862          1  0   11:27  ?         00:00:00  /usr/bin/boinc

Ok, so the boinc client is running using defaults. That'll mean it should be using the files in /var/lib/boinc-client and communicating on port 31416. I'm puzzled why running boincmgr in /var/lib/boinc-client didn't work in that case.

Let's see if the command line tool rather than boincmgr can talk to the client. Try this and let us know what output you get:
boinccmd --get_state
If it can see the client you'll get alot of output. If it can't, you'll get "can't connect to local host"

I got something quite different:
Can't get RPC password: /var/lib/boinc-client/gui_rpc_auth.cfg exists but can't be read. See https://boinc.berkeley.edu/gui_rpc.php
Only operations not requiring authorization will be allowed.
Operation failed: read() failed



Try that first.

For killing the client, you can use root privilege rather than as the user boinc:
sudo kill 862
but don't do that just yet.

ID: 69378 · Report as offensive     Reply Quote
Richard Haselgrove

Send message
Joined: 1 Jan 07
Posts: 1061
Credit: 36,740,604
RAC: 6,366
Message 69379 - Posted: 20 Jul 2023, 22:24:38 UTC - in response to Message 69378.  

I got something quite different:
Can't get RPC password: /var/lib/boinc-client/gui_rpc_auth.cfg exists but can't be read. See https://boinc.berkeley.edu/gui_rpc.php
Only operations not requiring authorization will be allowed.
Operation failed: read() failed
You need to add your user name to the boinc user group, and ensure that is active.

I can't remember the exact wording at this time of night, but it's been given before. It you try the boinc controls in the same terminal window afterwords, they should work: but to be safe, the easiest way is to reboot the machine - after that, the group membership will be permanent.
ID: 69379 · Report as offensive     Reply Quote
Glenn Carver

Send message
Joined: 29 Oct 17
Posts: 1049
Credit: 16,575,067
RAC: 15,735
Message 69380 - Posted: 20 Jul 2023, 23:05:09 UTC - in response to Message 69379.  

I got something quite different:
Can't get RPC password: /var/lib/boinc-client/gui_rpc_auth.cfg exists but can't be read. See https://boinc.berkeley.edu/gui_rpc.php
Only operations not requiring authorization will be allowed.
Operation failed: read() failed
You need to add your user name to the boinc user group, and ensure that is active.

I can't remember the exact wording at this time of night, but it's been given before. It you try the boinc controls in the same terminal window afterwords, they should work: but to be safe, the easiest way is to reboot the machine - after that, the group membership will be permanent.

That should solve your problem (I forgot this step).

Check what's currently set for the boinc group with this:
grep boinc /etc/group

Mine is:
boinc:x:130:glenn

If your username is missing on the end, add it with:
sudo adduser dave boinc

and then run the 'grep' command again to check. This command will prompt you for your password.

Then try boincmgr/boinccmd again. You should not need to reboot the VM but I might be wrong.

If that doesn't fix it, report back. It should do.
ID: 69380 · Report as offensive     Reply Quote
Jean-David Beyer

Send message
Joined: 5 Aug 04
Posts: 1120
Credit: 17,202,915
RAC: 2,154
Message 69381 - Posted: 21 Jul 2023, 0:28:52 UTC - in response to Message 69361.  

I got that half right.
On RHEL8 distribution, the boinc commands are in /usr/bin like this.

[/usr/bin]# ls -l boinc*
-rwxr-xr-x. 2 root root 1112184 Jul 29  2022 boinc
-rwxr-xr-x. 2 root root 1112184 Jul 29  2022 boinc_client
-rwxr-xr-x. 1 root root  358784 Jul 29  2022 boinccmd
-rwxr-xr-x. 1 root root 4081696 Jul 29  2022 boincmgr
-rwxr-xr-x. 1 root root  350704 Jul 29  2022 boincscr


Everything else is in /var/lib/boinc.
Note that there are two names for the boinc client. Those two files are different (one is not a link to the other) but they are otherwise identical. I do not know why both exist.

That part is right.

OTOH, the correct command to start running the client is systemctl start boinc-client. not what I said before.
Perhaps systemctl start boinc would also work, but I never tried it. I normally never need to start it anyway because systemd starts it whenever I boot my system up.
ID: 69381 · Report as offensive     Reply Quote
Tut

Send message
Joined: 14 Dec 05
Posts: 27
Credit: 11,235,785
RAC: 4,049
Message 69382 - Posted: 21 Jul 2023, 16:13:37 UTC - in response to Message 69380.  

I got something quite different:
Can't get RPC password: /var/lib/boinc-client/gui_rpc_auth.cfg exists but can't be read. See https://boinc.berkeley.edu/gui_rpc.php
Only operations not requiring authorization will be allowed.
Operation failed: read() failed
You need to add your user name to the boinc user group, and ensure that is active.

I can't remember the exact wording at this time of night, but it's been given before. It you try the boinc controls in the same terminal window afterwords, they should work: but to be safe, the easiest way is to reboot the machine - after that, the group membership will be permanent.

That should solve your problem (I forgot this step).

Check what's currently set for the boinc group with this:
grep boinc /etc/group

Mine is:
boinc:x:130:glenn

If your username is missing on the end, add it with:
sudo adduser dave boinc

and then run the 'grep' command again to check. This command will prompt you for your password.

My user name was missing from the boinc group, so i added it. Immediately afterwards I got the same message as previously:
Can't get RPC password: /var/lib/boinc-client/gui_rpc_auth.cfg exists but can't be read. See https://boinc.berkeley.edu/gui_rpc.php
Only operations not requiring authorization will be allowed.
Operation failed: read() failed

After restarting the VM I got a subset of the same message:
Operation failed: read() failed



Then try boincmgr/boinccmd again. You should not need to reboot the VM but I might be wrong.

If that doesn't fix it, report back. It should do.


I went to
https://boinc.berkeley.edu/gui_rpc.php 
and read about the key file in
 gui_rpc_auth.cfg 

but when I tried looking in that file it seems to be empty.
ID: 69382 · Report as offensive     Reply Quote
ProfileDave Jackson
Volunteer moderator

Send message
Joined: 15 May 09
Posts: 4540
Credit: 19,039,635
RAC: 18,944
Message 69383 - Posted: 21 Jul 2023, 17:59:57 UTC
Last modified: 21 Jul 2023, 18:01:27 UTC

su chmod 664 /etc/boinc-client/gui_<span class="mark">RPC</span>_auth.cfg
was used by a cruncher over on the BOINC forums. Thread here

Worth reading the whole thread.

Edit: It is often worth going to the BOINC forums for problems that are to do with BOINC rather than specific to CPDN. There is a lot of information to be gleaned there.
ID: 69383 · Report as offensive     Reply Quote
Glenn Carver

Send message
Joined: 29 Oct 17
Posts: 1049
Credit: 16,575,067
RAC: 15,735
Message 69384 - Posted: 21 Jul 2023, 20:07:28 UTC - in response to Message 69382.  
Last modified: 21 Jul 2023, 20:10:59 UTC

After restarting the VM I got a subset of the same message:
Operation failed: read() failed
I think the problem is related to permissions as Dave says. Although your userid is now part of the boinc group, the gui_rpc_auth.cfg may not have 'group' read permission.

To fix, first note that the gui_rpc_auth.cfg in /var/lib/boinc is actually a link into the /etc/boinc-client directory:
lrwxrwxrwx 1 root root 34 Apr 20  2022 gui_rpc_auth.cfg -> /etc/boinc-client/gui_rpc_auth.cfg

and if we look at the permissions of the linked file in my files:
ls -l /etc/boinc-client/gui_rpc_auth.cfg
-rw-r----- 1 root boinc 1 Oct  1  2019 /etc/boinc-client/gui_rpc_auth.cfg
It says 'root' owns the file but the group owner is 'boinc' and we have group 'read' permission (the second 'r' in the first column). You probably don't have this set, perhaps yours is '-rw------' instead. If that's the case, then change it with:
sudo chmod g+r /etc/boinc-client/gui_rpc_auth.cfg

Hopefully that will fix it!

A blank gui_rpc_auth.cfg file will work - I tend to keep mine empty. There's also no special reason why /var/lib/boinc/gui_rpc_auth.cfg is a link to the default in /etc/boinc-client. You can delete the link and create a real file of the same name in /var/lib/boinc-client.

p.s. the install, I think, should really have done all this for you. Not sure why it fails on this machine and not the other you mentioned which worked.
ID: 69384 · Report as offensive     Reply Quote
computezrmle

Send message
Joined: 9 Mar 22
Posts: 30
Credit: 1,065,239
RAC: 556
Message 69385 - Posted: 21 Jul 2023, 21:04:39 UTC - in response to Message 69382.  

My user name was missing from the boinc group, so i added it. Immediately afterwards ...

Did you logoff/logon or reboot after the change?
ID: 69385 · Report as offensive     Reply Quote
1 · 2 · Next

Questions and Answers : Unix/Linux : Communicating with BOINC client. Please wait

©2024 cpdn.org