Page 1 of 2

Porteus Linux as "Cloud computing OS"

Posted: 20 Sep 2011, 20:59
by fanthom
Hi people,

I'm thinking about implementing new feature in Porteus: possibility of saving changes in a remote location (local server, Porteus dedicated server). aufs rw branch set on the server accessible from whole world could turn Porteus into a real "cloud OS" :wink:

Pros of this feature:
- your changes could be accessible from everywhere in the world
- personal settings, passwords, etc.. would be stored in a safe place (well secured server) and not one the easily accessible for everyone pendrive, memory card etc
- in case of loosing/breaking your flash drive the setting would still survive in remote location. user would need to just reinstall plain Porteus on a new media
- Porteus would be a fully "read-only" OS as all write operations would be made on the server side. this could be useful especially for SSD drives (many notebooks/laptops have them) which are still suffering for limited write operations.

Cons of this feature:
- fast and stable internet connection would be required for this service to work effectively.
- valid login/password will be required for getting an access into the share. this may slow down the booting a bit but there is no other way around. in case of 3 faulty attempts "Always Fresh" mode would be used.

technical difficulties:
- need to find out what happens if internet connection is lost. i hope that that reboot wont be required.
- would be great to have transparent compression (zlib/lzo) built into aufs to reduce bandwidth (in cost of slightly higher CPU usage). i may ask Junjiro about this feature. if that wont be possible than maybe we could use compression build into ssh.
- i'm fairly sure that ponce can give me few extra GB for testing but in case of growing popularity of this solution a renting of extra server may be required (this cost money so probably donations or paid service for interested people would be an option here)

how does it work?
Porteus would be booted from CD/pendrive as normal. if "changes=IP_address" cheatcode is provided then linuxrc mounts remote location through sshfs-fuse utility (or curl, nfs) in specified place, for example /mnt/sshfs (same mechanism as with /mnt/httpfs for pxe-boot) and aufs writable branch is set over there. all changes from whole system would be saved on the server side and not locally in save.dat/partition/folder as it was so far.

question:
is it a feature which would interest porteus users?
let me know what you think about it.

Cheers

Re: Porteus Linux as "Cloud computing OS"

Posted: 21 Sep 2011, 11:03
by Falcony
is it a feature which would interest porteus users?
Very intersting for me. I really need this for FIDOSlax. In conjunction with PXE - it would be real cloud L)

Please kindly proceed.
Porteus would be booted from CD/pendrive as normal. if "changes=IP_address" cheatcode is provided then linuxrc mounts remote location through sshfs-fuse utility (or curl, nfs)
We are working in Windows World

Could it be possible to put smb client to initrd or have custom generated initrd for such purpose?

I already made automatic script which add network drivers to initrd to provide booting via PXE and may share it to Porteus team

Code: Select all


#!/bin/sh
# Use /mnt/sdXn/boot/patches/addriver script for automatic Ethernet module detect or add any kernel driver 
# To crate custom initrd change directory to /mnt/sdXn/boot/patchces and run ./adddriver.sh kernelmodule for specific module  add to initrd 
CWD=`pwd`
date=`date +%Y%m%d%m%s`
shortdate=`echo ${date} | sed s/^...//`
shortname=initrd.xz-${shortdate}.INIT
set -e

if [ ! -z "$2" ]; then
echo "Use ./addriver for automatic Ethernet module detect or add any kernel driver ./adddriver kernelmodule for specific module  add to initrd" ; exit
fi


rm -f /tmp/initrd.xz
rm -rf /tmp/initrd.lzma2
rm -rf /tmp/initrd

cp ../initrd.xz /tmp/

cd /tmp

xz -d --lzma2 initrd.xz

mkdir /tmp/initrd.lzma2

mount -o loop initrd /tmp/initrd.lzma2

cd /tmp

SLOT=`lspci -k | grep Ethernet | head -n1 | sed 's| .*||g' `
MODULE=`lspci -s "$SLOT" -k | grep "Kernel driver" | sed 's|.*: ||g' `
echo $SLOT
if [ ! -z "$1" ]; then
MODULE=$1
echo " Adding to initrd.xz specific module "$MODULE".ko"
fi
echo $MODULE
MODULEPATH=`find /lib/modules  -name ""$MODULE"*" | head -n1 | sed "s|"$MODULE".ko*.||g"`
cp --parents -v "$MODULEPATH"/"$MODULE".ko /tmp/initrd.lzma2
#cd /tmp/initrd.lzma2/"$MODULEPATH"
#gzip -d "$MODULE".ko*
cd /tmp
depmod -b /tmp/initrd.lzma2
umount /tmp/initrd.lzma2
xz --check=crc32 --x86 --lzma2 initrd
cd "$CWD"
cp ../initrd.xz ../$shortname
rm ../initrd.xz
cp -v /tmp/initrd.xz ..

echo "Added to ../initrd.xz module $MODULE"


Is it possible to add additional network program like smbclient or other network access provider the same way as above?

It will allow to have small and custom initrd for user
in specified place, for example /mnt/sshfs (same mechanism as with /mnt/httpfs for pxe-boot) and aufs writable branch is set over there. all changes from whole system would be saved on the server side and not locally in save.dat/partition/folder as it was so far.
I prefer get it on partition whithout save.dat(better for accessing backup)

And even on Windows share for simplifing for users L)

NFS also Ok, may be to FTP, other methods also good

But how it and what of it will be implemented by you - it is fully up on u L)

Re: Porteus Linux as "Cloud computing OS"

Posted: 21 Sep 2011, 11:54
by Hamza
Hi,

I am using Porteus as base operating system, and I save the changes on another machine..in case of crash or changements directory broken.

I am using Vbox, so, to save my changes and my works, I made an ftp server (secured by using some ways..), and it works fine.
There is some errors, when you want to save the current works, the Dolphin's network Plugin is asking the ftp server to "cd /path/to/file" and it is not possible.
I get this error in 1 attempt of 25 attempts.

For my own using, Porteus 32bit is most stable than Porteus 64bit. I tested this method only on VirtualBox Machine.
I never tested this using SSH Connection, but already tested using Samba Connection.

This idea can works with "Porteus Network Installation Edition" already.

I like this idea!

Ciao!

Re: Porteus Linux as "Cloud computing OS"

Posted: 26 Sep 2011, 18:46
by BlackRider
I myself dislike the idea of cloud computing, so I would not say I am interested. The idea behind Live Distributions is that you carry everything you need with you, and you do not depend on third parties to use your system. However, I have no problem with Porteus Cloud if it does not undermine its way of working as an usual Live System.

If you decide to implement it, you should provide an easy way to locate the "cloud" in a server chosen by the user, not only in the one that Porteus provides. What I mean is that the "cloud" software should be fully provided (not like Ubuntu cloud, as they keep the server software closed source), so each user can build easily their own cloud.

Re: Porteus Linux as "Cloud computing OS"

Posted: 01 Oct 2011, 12:13
by wread
If it is not a too complex project, why not give it a try? Maybe we hit the bell all over the world! :Bravo:

Re: Porteus Linux as "Cloud computing OS"

Posted: 01 Oct 2011, 18:20
by Tonio
if "Porteus" is needed as a "Cloud OS" to pay the Bill$, then I am all for it :), even though I like BlackRider I prefer it as is, but if there is a need for $, then you are encouraged to go ahead and implement it as a Cloud OS. I don't like to depend on third parties for files or things that I should have, but if people like it and want it, why not?

Re: Porteus Linux as "Cloud computing OS"

Posted: 04 Oct 2011, 18:01
by ponce
BlackRider wrote:If you decide to implement it, you should provide an easy way to locate the "cloud" in a server chosen by the user, not only in the one that Porteus provides. What I mean is that the "cloud" software should be fully provided (not like Ubuntu cloud, as they keep the server software closed source), so each user can build easily their own cloud.
using ssh that shouldn't really be a problem: any ssh server (on any linux distribution out there) with disk space should do. ;)
fanthom wrote:I'm thinking about implementing new feature in Porteus: possibility of saving changes in a remote location (local server, Porteus dedicated server). aufs rw branch set on the server accessible from whole world could turn Porteus into a real "cloud OS" :wink:
nice idea :)
- i'm fairly sure that ponce can give me few extra GB for testing but in case of growing popularity of this solution a renting of extra server may be required (this cost money so probably donations or paid service for interested people would be an option here)
no prob at all, more than space I hope the bandwidth will be enough :)
if the thing grows, these are really cheap ;)

Re: Porteus Linux as "Cloud computing OS"

Posted: 06 Oct 2011, 12:39
by brokenman
I think this would be HUGELY popular ... but alas it is not for me. I think cloud computing is a massive proprietary trap. By using the cloud we are putting our data in the hands of a company and we are at their mercy. At the moment major companies are reeling us in with 'free cloud' but mark my words, the day will come when you must pay. I think it's hilarious how the 'cloud computing' buzz word is used these days. It has become such a 'tag line' that it somehow came to include services that we already had for years ... now anything stored on the world wide network is 'on the cloud'. Me ... i will always want my data with me, under my own control and used with freedom oriented software.

Anyways ... with that rant over, i am happy to help out with development wherever possible.

Re: Porteus Linux as "Cloud computing OS"

Posted: 06 Oct 2011, 14:41
by BlackRider
I think this would be HUGELY popular ... but alas it is not for me
Glad to know I am not alone in this field.

My main concern about cloud computing is that most cloud vendors are trying to convince us to put at their disposal things that have worked very well in traditional workstations. I don't know why the average user should host his apps in an external computer when the same app has worked installed locally for 20 years, works better installed locally and does not depend on Internet connectivity. Plus, clouds hosted in foreign servers can bring legal issues (i.e: a French guy puts in his cloud data which is legal to have in France, and two months later the FBI knocks down his door because he has a cloud account in a USA server that contains illegal data... from the USA perspective).

The cloud thing is a technology that has its advantages, but the market is trying to sell it as a "everyday tool" when, I think, it makes no so much sense to use it unless in certain cases. Having your mail in a cloud makes sense from the regular user point of view. Having your photos and music, no.

By the way, if I had the money (and I did not hate Spanish ISP so much) I would set a mail server in my home and screw my regular mail accounts.

Re: Porteus Linux as "Cloud computing OS"

Posted: 07 Oct 2011, 16:25
by Hamza
I agree with brokenman. I don't want to have my personal data on a compagny's servers.
Today, a free cloud server without any trap behind it doesn't exist.

Re: Porteus Linux as "Cloud computing OS"

Posted: 10 Oct 2011, 05:32
by Falcony
But wouldn't you mind to have your data on another PC of you own? L)

Think this as other option - saving of you data on your network/other PC

IMHO, I do not see Porteus for corporate usage.

Due rare system update style, lack of security and low resources of Porteus community team - it is only for home usage

Re: Porteus Linux as "Cloud computing OS"

Posted: 10 Oct 2011, 13:22
by brokenman
Of course this must be a matter of opinion as Porteus is already being used in many university situations and other 'non-home' projects. The next version will give users control of firewall ... not sure where the lack of security comes in.

In any case ... having changes stored over your own network would not be considered cloud. If it is, then we have had cloud computing since computers began. I look forward to seeing this feature implemented though, i think it will be hugely popular.

Re: Porteus Linux as "Cloud computing OS"

Posted: 10 Oct 2011, 17:30
by BlackRider
The next version will give users control of firewall ... not sure where the lack of security comes in.
I have nothing against Iptables. In fact, users have control of the firewall in Porteus if they know how to alter Netfilter variables by hand. I guess you meant "The next version will give user-friendly control of firewall" :D

In my opinion, having your Cloud in your own home server is far better than having it in someone else's. The problem is that you have to set a server up by your own, and that requires hardware and a good internet connection (I have only the former). I don't really think that a cloud for a home network makes sense, other than feeling great because you have been able to make it. The thing might be different for big corporative networks with dozens of computers.

However, if encryption is dropped for the persisent image (because the loop device does not cut it), then having your data in a securely handled cloud can have its advantages. It wouldn't beat having a good local encryption system, anyway.

Re: Porteus Linux as "Cloud computing OS"

Posted: 11 Oct 2011, 13:22
by Hamza
Off-topic : The next version of Porteus will have a dedicated application for firewall's settings.

Re: Porteus Linux as "Cloud computing OS"

Posted: 18 Oct 2011, 02:19
by fanthom
thanks for the feedback guys.
i see that people have mixed feelings about "cloud computing" idea. it's probably too early for adoption of this feature in Porteus.
Maybe in Porteus-2.0 or 3.0 ? will see :)
i'm putting away this project for a while.

@Falcony

Code: Select all

Could it be possible to put smb client to initrd or have custom generated initrd for such purpose?
i guess that yes but i'm not sure which libs/utils would be required to have inside initrd. moreover - initrd in Porteus-1.1 (and probably all further versions) is build against uClibc for smallest footprint/size/speed so every extra utility inside it will have to be compiled with uClibc support and not glibc. This make the task little complicated, if possible at all.

Cheers