Installing Rapyuta

350 views
Skip to first unread message

Devasena Prasad

unread,
Jul 25, 2013, 10:09:04 AM7/25/13
to rap...@googlegroups.com
Hi,

After installing rapyuta and performing post installation steps, when I use " sudo rce-make " to enter linux container file system, I get below error:

bash: /opt/ros/fuerte/setup.sh: No such file or directory

Then, I could find it entered into root user where I couldn't find "ros" directory. Also, the current user is "turtlebot" where I have ros installed successfully with all necessary packages and stuff.

Could you please let me know what could be the reason, (as I checked on another system where I installed ros fuerte, it's root user has similar directory structure for ros as other user where ROS is installed and hence didn't throw above error) ?

Also, after installation I have got /opt/rce/container directory with rootfs created successfully.

Thanks and Regards,
Devasena

Mayank Singh

unread,
Jul 25, 2013, 2:24:51 PM7/25/13
to rap...@googlegroups.com
Hi devasena, 

Could you answer the following questions:
1. What ubuntu version is your host ? 
2. What ROS version is installed on your system ?
3. What ubuntu verison did you install in the container file system while running the provision script?
4. What ROS version did you install in the container file system while running the provision script ?


Regards,
Mayank

Devasena Prasad

unread,
Jul 25, 2013, 6:17:27 PM7/25/13
to rap...@googlegroups.com
Hi Mayank,

Please find details below:

1. 12.04 LTS
2. Fuerte
3. 12.04 LTS
4. Fuerte

And it worked fine now as when I checked for /opt/ros directory, fuerte was missing i.e. container files system was not set up properly. I installed ros in container file system and tries rosmake again. It worked fine now.

Thank you for the help.

Regards,
Devasena
Message has been deleted

Roberto Antonini

unread,
Aug 1, 2013, 11:49:10 AM8/1/13
to rap...@googlegroups.com
Hi Mayank and Devasena,
just a question about your issue:
As far as I understood, ROS should be installed in container during provision phase, shoudn't I?
Perhaps something is mssing.
Apolgize for my intromission.
Roberto.

Devasena Prasad

unread,
Aug 1, 2013, 7:33:59 PM8/1/13
to rap...@googlegroups.com
Hi Roberto,

Yes, while running provision script. You can make out from the message prompt it displays ( bash: /opt/ros/fuerte/setup.sh: No such file or directory) once rootfs is created and you do " sudo rce-make " where you enter into container file system. This is when you can install ros into your container file system.

Thanks and Regards,
Devasena

Dominique Hunziker

unread,
Aug 2, 2013, 11:51:54 AM8/2/13
to Devasena Prasad, antonini...@gmail.com, rap...@googlegroups.com
Hi Roberto, Hi Devasena,

To set the record straight: The provision script should have installed ROS when running provision {all|container} or the provision script should have mentioned that there was a problem. That ROS was not installed (properly) in Devasena's case should not have happened unnoticed.
However, there seems to be an issue when using zsh as shell instead of the default shell in ubuntu, because the setup.sh file is not sourced correctly (in this case setup.zsh should have been sourced) and therefore the ROS environment is not working. A second possible explanation is that it would not be the first that the error during the provision script was missed. The error reporting is pretty weak at the moment.
And lastly, there is always the possibility of yet another unknown bug.

Dominique


2013/8/2 Devasena Prasad <devasen...@gmail.com>

Roberto Antonini

unread,
Aug 5, 2013, 6:21:48 AM8/5/13
to Dominique Hunziker, Devasena Prasad, rap...@googlegroups.com
Dear Mr Hunziker,
thanks so much for having completed the answer; actually, while provision script was running I noticed errors which regard something like script misinterpretation or the like (zsh instead of bash ) and this explains how came ROS wasn't installed in LXC, as you correctly remarked. So, following Devasena suggestion, I installed ROS in LXC on my own, and everything seems partially working, that is I launch rce-client with debug.cfg and, after interfaces are built, I run service client to echo strings but this service hangs; if rce-client is terminated with ctrl-C, it seems that previously created containers are not correctly terminated, indeed subsequent rce-client launch yields a python error referred to (ROS) packages path already existing in container, namely:
OSError: [Errno 17] File exists: '/opt/rce/container/rootfs/opt/rce/packages/test' Could not setup the rce environment

Thanks,
Roberto,


Dhananjay Sathe

unread,
Aug 6, 2013, 5:33:25 AM8/6/13
to Roberto Antonini, Dominique Hunziker, Devasena Prasad, rapyuta
Hey Guys ,

I was away for the weekend , looking into this at the moment, to crystallize it 

1) Host shell could be bash/zsh o something , appropriate handling needs to be added (not just sourcing but also changes to bashrc would need to be not to zshrc and so on)
2) The container file system will always contain just bash is dont see how this would go to zsh or anything else.
3) If you have the entire install log please send it over, the problem with the provision is that these errors are hard to reproduce and it was created with vanilla installs of ubuntu installed as is customary on most cases where you deploy it in a cloud environment , anyway possible todo could be adding basic logging to it in order to make collection of such issues easier for us so we could potentially support more combinations. 

@Roberto 
Yes that is a bug i noticed in the latest install with the way the chroot mount is handled , I shall try fixing this ,the OS mount command is not doing what it is supposed to hence leading to cruft being left behing which even a force can't seem to unmount 

Also a general note regarding the flow , if errors occur please feel free to open a bug report directly on github with the appropriate log/error details and mark me , mayank or dominique it makes it easier to track the bugs.

Cheers !

 -D

Devasena Prasad

unread,
Aug 6, 2013, 5:49:35 AM8/6/13
to Dhananjay Sathe, Roberto Antonini, Dominique Hunziker, rapyuta
Hi Dhananjay,

Thank you.

By the bug here you mean, this one " OSError: [Errno 17] File exists: '/opt/rce/container/rootfs/opt/rce/packages/test' Could not setup the rce environment " on relaunching " rce-ros " as I too had to remove "test", "barcode" packages from this path before I could set-up container system again for testing ?

Also, How about this one " The container C1** configuration directory already exists " when we try to start all the processes again ? Is this related to above bug ?
 

Regards,
Devasena

Dhananjay Sathe

unread,
Aug 6, 2013, 5:54:27 AM8/6/13
to Devasena Prasad, Roberto Antonini, Dominique Hunziker, rapyuta
Heya

So this is a decision that we need to make , This occurs when the engine exited due to a fault and wasn't cleanly shutdown . Ideally when a new start occurs  it should create those directories and resources , all of them are different locations that are put into those locations by a mount bind , and they should cleanup on shutdown of a container. If this does not occur they must be deleted manually. Now one way out is to delete/unmount those paths and create them by default on each launch , but this could mean that it could override a location that was still in valid use , we need to come to a consensus on how to handle this , the code to track this would be trivial . Dominique we need to take call.

Regards.

Final Yr Undergraduate , BITS Pilani, Goa.
Research Assistant , RoboEarth Project
Institute for Dynamic Systems and Control,
ETH Zürich, Switzerland.

Hasitha B. Rathnayake

unread,
Oct 10, 2013, 7:33:59 AM10/10/13
to rap...@googlegroups.com

HI all, I have a problem related to this. 

I installed using /setup/provision all.
But the next step makes confusion for me.

I don't understand how to do it..
I'm using Ubuntu 12.04 LTS and Fuerte

I don't understand how to select that DEPLOYMENT PLATFORM from aws,rackspace or other & next steps. Can anyone help me?

Dominique Hunziker

unread,
Oct 10, 2013, 11:14:23 AM10/10/13
to rap...@googlegroups.com
Hi,

I don't get where exactly your confusion lies. The selection of the deployment platform (necessary for interface selection/configuration) happens while running the provision script (script is interactive...). So, if you run the provision script successfully, you should have already selected the deployment platform...

If this didn't solve your problem, could you give some more information?

Dominique

Dhananjay Sathe

unread,
Oct 10, 2013, 11:23:34 AM10/10/13
to Hasitha B. Rathnayake, rapyuta
Hey Hasita,
I recommend you have a look at the wiki.

This link on that page gives a detailed description of what you may need : https://github.com/IDSCETHZurich/rce/blob/master/INSTALL

Dhananjay Deepak Sathe
Core Developer & Research Associate , RoboEarth Project
dhananj...@gmail.com |  +91 981-983-5165
Reply all
Reply to author
Forward
0 new messages