iFolder on OpenSuSE 11.3 full install walkthrough

Posted in computer, ifolder, internet, opensuse, performance, server by daniel on August 10, 2010 38 Comments

Current as of 22Jun2011

NOTE: On openSuSE 11.4 as of 22Jun2011. The iFolder server and plugins are marked as succeeded in the build process. we are testing them now. Stick with the 11.3 packages for now. Read the below notes.

NOTE: On openSuSE 11.4 as of 22Mar2011 the iFolder client has been reported to work after installing mono-wcf. I have not tested this and cannot recommended it at this time. If you want an iFolder server right now use the openSuSE 11.3 here http://software.opensuse.org/113/en and upgrade the distribution when all of the iFolder components are working in openSuSE11.4

NOTE: openSuSE 11.4 as of 10Mar2011 is out NOW and I DO NOT recommend using it for an iFolder server at this time, mono and libflaim need more development. openSuSE 11.4 ships with mono 2.8.2 and iFolder server WILL NOT BUILD! Please save yourself a headache and wait a bit.

Current status: https://build.opensuse.org/project/monitor

NOTE: iFolder 3.8.4 is rolling out NOW and I have setup a server using the methods outlined below. Works great.

However, there are no 3.8.4 clients for windows or mac yet but the 3.8.0.3 clients seem to be working. I am currently running a 3.8.4 server and connecting with 3.8.0.3 clients using a modification suggested by ‘Bud’

Edit the appropriate config file changing the version from 3.8.4.0 to 3.8.0.3

Mac: /usr/lib(64)/simias/web/update/mac/mac-version.config

Windows: /usr/lib(64)/simias/web/update/windows/version.config

*nix: /usr/lib(64)/simias/web/update/unix/unix-version.config

You may have to delete your client simias folder and reconnect. The client may ask if you want to upgrade to 3.8.4, choose yes and start syncing.

 

Coming soon:

  • Full install walk through with screenshots (all terminal install and all desktop environment install)
  • iFolder 3.8.4 server walk through
  • openSuSE 11.4 iFolder walk through
  • Move iFolder from one machine to another (email me if you have any info please)
  • iFolder and openSuSE tips and tricks
  • mythTV on openSuSE

Lets begin!!!

Logic


After running an iFolder server on ubuntu for a year, the machine died :-( . A new version of iFolder was available and I have been liking openSuSE so much better than ubuntu lately. For an iFolder server it seems like a no brainer since Novell is a major sponsor of openSuSE and iFolder so they play together nicely and you have these great things called “one-click install”. YAST is awesome and the general look and feel is a bit more thought out and user friendly than ubuntu.

In this guide there are some things are done in YAST and others in the terminal. I like YAST for installing software because I can see the version and the repo, and you can cancel if you like. The terminal is a must for other things but the entire install could be done in the terminal if you know how.

I own a Mac, have administered windows machines since 2000 and have been using linux since 2004. That being said I still consider myself a linux newb however I’m learning quickly. I take no responsibility for any damage to data or property, back it up!

This guide assumes that you have a general working knowledge of computers and have at least played around with linux namely openSuSE which is available from http://www.opensuse.org.

System requirements will depend on how many users access the iFolder server, the speed of your network and how often items are changing. I am a home user running openSuSE 11.3 64bit on a Pentium D 920 2.GHz, 4GB DDR2, GeForce 6800, 2.5TB. The system is also a MythTV Frontend and Backend server, FTP server and local print server Xen virtual machine with one 2.4GHz processor, 512mb ram, 1TB storage on a raid5 LVM allocated to it and no desktop, just the shell minimal server install. The host is running OpenSuSE 11.3 64bit on a Core 2 Quad Q6600 Kentsfield 2.4GHz 2 x 4MB L2 Cache, Cooler Master Silent Pro M 600W PSU, Asus P5QL-CM motherboard, 4GB PC6400 DDR2. It has 2@250gb hard drives in a raid1 array for the OS and 3@2TB WD Green drives (6TB) in a raid5 array (4TB) and a LVM on top of that for the VMs and additional storage, GNOME desktop (with all visual effects) accessing HULU and the rest of the internet as well as being the media server for the house and an FTP/Samba server for personal use. It sits in a cabinet under the TV hidden away in a black Silverstone LC13-e case. I use SSH and FreeNX to remotely administer the machine. It has bluetooth and a Logitech PlayStation 3 Cordless MediaBoard Pro. Two users are syncing around 350GB between 5 machines and it is an active DVR and everything is fine. One day I’ll drop a quad core in there. Got it!!

Your FQDN may or may not include the ‘www’ prefix and your installation needs to reflect this. If you browse to your domain name with ‘www’ and it stays there then use it. If it does not then don’t use it. If both work, pick one and stick with it. I prefer not to use the ‘www’ prefix for all my sites. Your SSL cert should reflect the correct FQDN.

File or folder move operations are handled as if the file was deleted and then uploaded again. Renaming is handled just as a rename function. Basically if you move something expect a high bandwith cost for the operation.

Windows users watch out for long filenames. Files cannot exceed a path and filename exceeding 256 characters or you will get errors in syncing. (needs verifying)


Note about the iFolder clients

READ THE NOTE BELOW! This is the biggest issue I see people run in to.

NOTE: USE THE 3.8.0.3 CLIENTS FROM SOURCEFORGE!!! 3.8.0.0 WILL NOT WORK!!


iFolder Files and Community

iFolder client files

http://sourceforge.net/projects/ifolder/files/

iFolder server files for openSuSE 11.3

ifolder3-enterprise

http://software.opensuse.org/search?q=ifolder3-enterprise&baseproject=openSUSE%3A11.3&lang=en&exclude_debug=true

novell-ifolder-enterprise-plugins (use the server snapshot with the same version of the ifolder3-enterprise eg. 3.8.4)

http://software.opensuse.org/search?q=novell-ifolder-enterprise-plugins&baseproject=openSUSE%3A11.3&lang=en&exclude_debug=true

 

iFolder Community

http://community.kablink.org/

irc

irc.freenode.net #ifolder


Prerequisites

I know this is linux, if I say reboot please reboot. It is just easier in the long run. If you know what you are doing then thank you.

Download and install openSUSE 11.3 here: http://software.opensuse.org/113/en with GNOME (or KDE) as Desktop Environment (DE) (a DE is not required, but easy when needing to manage the system.). As iFolder utilizes Mono, GNOME seems a natural choice.

During partitioning you may want to edit the default configuration and NOT create a separate home partition.

Turn off the firewall either during the setup or in Yast. Security and Users after the install.

After install, open terminal. As root (that’s what this ‘#’ means) ensure ssh starts at boot (only if you need ssh).

# chkconfig sshd on

In Yast

Network Settings > Global Options

Disable IPv6 if not used

Network Settings > Overview

Edit your interface so it has a static ip

Network Settings > Hostname/DNS

Edit to match your configuration

Software Management

Remove the following

  1. beagle

Add the following

  1. kernel-source
  2. gcc
  3. gcc-c++
  4. apache2-prefork
  5. apache2-utils
  6. apache2-mod_mono
  7. mono-core
  8. mono-data
  9. mono-data-sqlite
  10. mono-web
  11. mono-winforms
  12. libapr-util1
  13. libapr1
  14. libflaim
  15. log4net
  16. xsp
  17. yast2-http-server
  18. nano (optional)

Close Yast

REBOOT


Configure Apache

Open terminal and check that your hostname is correct (it’s in the prompt) and check for updates.

# zypper ref

# zypper up

In the terminal, generate an ssl cert (5 year) using the FQDN of the iFolder Server.

# gensslcert -Y 1825 -n FQDN -e EMAIL@EXAMPLE.COM

Open Yast > HTTP Server module that was added (yast2-http-server). Using the defaults is fine here. Click Finish.

In the terminal, enable the apache2 modules that are needed.

# a2enmod ssl

# a2enmod mono

# a2enmod rewrite

In the terminal, ensure apache2 starts at boot then start it.

# chkconfig apache2 on

# rcapache2 start

In the terminal, set up the apache2 vhost-ssl.conf.

# cp /etc/apache2/vhosts.d/vhost-ssl.template /etc/apache2/vhosts.d/vhost-ssl.conf

Edit the /etc/apache2/vhosts.d/vhost-ssl.conf file and ensure the FQDN of the iFolder server is present as the ServerName in the file.

ServerName FQDN:443

Edit the /etc/hosts file and ensure the FQDN and the HOSTNAME of the iFolder server is present in the file. PUT BOTH!

127.0.0.1 localhost HOSTNAME

127.0.0.1 FQDN HOSTNAME

Edit the /etc/sysconfig/apache2 file and ensure APACHE_SERVER_FLAGS=”SSL” is present in the file.


iFolder Server Install

Go to: http://software.opensuse.org/search

Change your release version to OpenSuSE 11.3 before you search

Search for and ‘1-Click Install’ the following two items.

  1. ifolder3-enterprise (29MAR2011 using snapshot_snapshot)
  2. novell-ifolder-enterprise-plugins (29MAR2011 using server_snapshot)

or click the links below

ifolder3-enterprise

http://software.opensuse.org/search?q=ifolder3-enterprise&baseproject=openSUSE%3A11.3&lang=en&exclude_debug=true

novell-ifolder-enterprise-plugins (use the server snapshot with the same version of the ifolder3-enterprise eg. 3.8.4)

http://software.opensuse.org/search?q=novell-ifolder-enterprise-plugins&baseproject=openSUSE%3A11.3&lang=en&exclude_debug=true

 

You can also run a oneclick from terminal by running the following. INCLUDE THE QUOTES.

# su -c “OCICLI url of the file.ymp”

Currently these are (but please verify at http://software.opensuse.org/ before using):

# su -c "OCICLI http://software.opensuse.org/ymp/network:ifolder:server_snapshot/openSUSE_11.3/ifolder3-enterprise.ymp"

# su -c "OCICLI http://software.opensuse.org/ymp/network:ifolder:server_snapshot/openSUSE_11.3/novell-ifolder-enterprise-plugins.ymp"

REBOOT


iFolder Server Setup

First of all, restart the apache service (I know we JUST rebooted the machine). Look for errors and fix them first.
# rcapache2 restart

Unless you have a good reason:

  • The default data path is ‘/var/simias/data’. You may want to store the iFolder data in another location. You can change the default path or you can modify the mount point on another partition, drive or LV.
  • The FQDN of the iFolder server for BOTH public and private addresses: ‘https://FQDN/simias10′
  • System name & description can be modified to suite your needs
  • If you have an LDAP(v3) source for provisioning users, go ahead select Y (yes) for LDAP, otherwise choose N (no) to set up a local user store. If you don’t know what LDAP is, choose N (no)
  • Configure apache – YES!
  • Other settings are default values

Run the Simias Server Setup

# simias-server-setup

Check the owner and group of the Simias data store

# chown -R wwwrun:www /var/simias/ (or the path you entered)

Restart apache and check for errors

# rcapache2 restart

Run the iFolder web interface setups and restart apache

# ifolder-admin-setup

# ifolder-web-setup

# rcapache2 restart

Have lots of fun


iFolder User Setup

Go to ‘https://FQDN/admin’ or ‘https://localhost/admin’ and:

  1. login with the admin credentials
  2. create a new user
  3. set the user’s home server
  4. click save
  5. look around


iFolder System Testing

Go to ‘https://FQDN/ifolder’ or https://localhost/ifolder’ and:

  1. login with the new user
  2. create a new ifolder
  3. look around


iFolder Client Install

Get your client from

http://sourceforge.net/projects/ifolder/files/

Install it and enter the address for the server as well as your credentials. I do not choose to create my default iFolder because I want to pick the folders already existing on my computer.

If you are syncing  different platforms and or multiple machines, you can setup an iFolder client and do an inital sync on one machine (preferably local to the server if applicable) then copy the physical files with an external drive or other way to the additional machine, using the SAME FOLDER NAME, and tell the client on the new machine to ‘Merge’ the folder. This will not do a complete upload/download of the files but will compare the files saving you bandwidth and time.  You may see files with ‘Conflicts’ that need to be resolved when doing this. Use the ‘Resolve’ button in the iFolder client to manually compare the file name, size and date. Usually they are the same.  You can choose to sync to the ‘Local’ or ‘Server’ version of the file. If I do a merge like stated above, I will use the ‘Server’ version.


Appendix

AGAIN I SAY

USE THE 3.8.0.3 CLIENTS FROM SOURCEFORGE!!! 3.8.0.0 WILL NOT WORK!!

You can check the exact version of the client in Windows
C:\Program Files\iFolder
RT click on iFolderApp.exe > properties > details tab
Make sure its 3.8.0.3 or higher
If its 3.8.0.0 you need to uninstall it, delete the simias directory in %appdata% in winxp or %localappdata% in vista/7 and install the correct version

iFolder files

http://sourceforge.net/projects/ifolder/files/

iFolder Administrator Guide

http://ifolder.com/docs/ifolder38_admin.pdf

iFolder Community

http://community.kablink.org/

irc

irc.freenode.net #ifolder

On the iFolder Server

Unless you have a good reason to, DO NOT

WARNING – This will delete all simias server data as well as all local users and their files! If you run the simias-server-setup and type something incorrectly, remove the localsimias data store before rerunning (command is for the default location)

# rm -r /var/simias/

On the iFolder Client

Unless you have a good reason to, DO NOT:

WARNING – This will delete the local iFolder client data! You will need to reconnect to the iFolder server with a client.

 

OpenSuSE

# rm -r /home/user/.local/share/simias/

 

OS X

# rm -r /Users/user/.local/share/simias/

 

Windows Vista-7

delete %localappdata%\simias

 

Windows XP

delete %appdata%\simias


iFolder Troubleshooting

First of all ask yourself this. Is this iFolder server in production or is it a preproduction /test server.

For production machines in use be careful to protect the simias data folder!!!

For preproduction/test servers that are having troubles with the initial setup and configuration try to delete the simias directory on the server.
# rm -r /var/simias/

The below items are found in the “Configure Apache” section above

Recheck your /etc/hosts file for proper configuration

Recheck your /etc/apache2/vhosts.d/vhost-ssl.conf for proper configuration

Recheck your /etc/sysconfig/apache2 file for proper configuration

Restart apache

The below items are found in the “iFolder Server Setup” section above

Run simias-server setup

Check your simias folder owner and group

Run ifolder-admin-setup

Run ifolder-web-setup

USE THE 3.8.0.3 CLIENTS FROM SOURCEFORGE!!! 3.8.0.0 WILL NOT WORK!!

You can check the exact version of the client in Windows
C:\Program Files\iFolder
RT click on iFolderApp.exe > properties > details tab
Make sure its 3.8.0.3 or higher
If its 3.8.0.0 you need to uninstall it, delete the simias directory in %appdata% in winxp or %localappdata% in vista/7 and install the correct version

 

More to come

 

 

Very special thanks to:

#ifolder

rkumar

srinidhi

sshaw

fede

ifolder team at novell

http://www.diwi.nl/node/50 et al.

Sven B.

Morne H.

Tsvetan F.

everyone on skype!!!

everyone else who have helped make this tutorial very concise and complete

look for me and others on irc.freenode.net #ifolder

Creative Commons License
ifolder walkthrough by daniellench is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Based on a work at www.daniellench.com.

Trackbacks Comments
  • I have trying to follow several tutorials but this one worked out for me. ;-)

    Thanks Dan

  • Bo Rennison:

    Perfect !!
    Saved me for a lot of work

    Tanks

  • Ivan fong:

    Thank you very much for such detail instruction.

    Especially it is a working one.

  • The site`s design is great ;-)
    Wish you the best;-)

  • Hey Daniel,

    Nice writeup & thanks for mentioning my old dusty blog ;)

    As an added tip for the certificate, you could add ‘-Y 1825′ to the gensslcert command. That way at least it will stay valid for 5 years instead of the standard one.

    Cheers,
    Willem

  • Bill:

    I finally got this working.. I have two issues.
    1. passwords longer than 7 do not seem to work with the local thick clients.

    2. It keeps telling me I need to update the client to 3.8.4 and if I say yes, nothing happens… I can’t find anywhere on the server, or the net, the updated client.

    Thanks in advance.

    Bill.

    • Bill:

      After looking closely, It seems I downloaded the snapshot and not the stable version of I folder. I’ll download and reinstall and see if I still have the same issues.. THanks. Nice job on the walk through.

    • Hmmm. I think the password thing was part of libflaim version on the server, could be wrong. Check for updates. Didn’t think 3.8.4 was out yet. All server and clients need to be the same sub-subversion (3.8.0.#) 3.8.4 shouldn’t work with 3.8.0 (3.7.# wouldn’t work with 3.8.#). Also check for all updates. If you want to reinstall your windows client (just a guess) be sure you delete the local user’s simias folder (%localuserdata%\simias on v/7 and %appdata% on xp).

      Best,
      Dan

    • Miumi:

      Searching for 3.8.4 client too… can anybody help?

  • Rob Potthoff:

    Great JOB!!!
    Thank You, with out this I would not have gotten this up and running!

  • Great thanks to for this article, Daniel!

  • Chris:

    I got the server up and running, but I can not for the life of me figure out why I can not use the client for folder/file sync. :(

    • Are you sure that the clients are the same version as the server?
      3.8.0 server and 3.8.0 clients
      Also make sure that you are running the ‘stable’ ifolder version currently 3.8.0 off of the sourceforge site.
      best,
      dan

  • Andy Edmonds:

    I wish I’d found this article before I followed two other tutorials unsuccessfully! Worked like a charm first time – thanks!

  • Great tutorial.

    Thanks for taking the time to write this down.

    Cheers,

  • Tsvetan Filev:

    I used libflaim as a database (no LDAP).
    All web interfaces work well (admin, ifolder).
    I can create users and make folders.

    But when I try to login with a desktop client (windows or linux) I get an error message invalid credentials and this message in Simias.log:

    2011-02-08 09:31:24,744 [-1320158352] DEBUG Simias.Security.Web.AuthenticationModule – In verify[rincipalfromrequest: soapmethod is GetDomainID
    2011-02-08 09:31:27,804 [-1255158928] DEBUG Simias.DomainProvider – domainID 6d1d72d0-a102-41a8-80f4-ae47b8e9e3cf
    2011-02-08 09:31:27,805 [-1255158928] DEBUG Simias.Server.Authentication – Authenticate called
    2011-02-08 09:31:27,807 [-1255158928] DEBUG Simias.Server.Authentication – q?( is not member of simias
    2011-02-08 09:31:27,826 [-1238144144] DEBUG Simias.DomainProvider – domainID 6d1d72d0-a102-41a8-80f4-ae47b8e9e3cf
    2011-02-08 09:31:27,827 [-1238144144] DEBUG Simias.Server.Authentication – Authenticate called
    2011-02-08 09:31:27,828 [-1238144144] DEBUG Simias.Server.Authentication – q?( is not member of simias

    Is there a tool to connect to the flaim database and view the records and debug ?
    I could find one.

    • Thanks for checking out my tutorial.

      Can you check the exact version of the client in windows?
      C:\Program Files\iFolder
      RT click on iFolderApp.exe > properties >details tab
      Make sure its 3.8.0.3 or higher
      If its 3.8.0.0 you need to uninstall it, delete the simias directory in %appdata% in winxp or %localappdata% in vista/7 and then install the 3.8.0.3+ from sourceforge.

      I have not seen a tool to browse the flaim DB and I really don’t want to.

      On the server to enable debug logs, edit /etc/simias/Simias.log4net and change ‘INFO’ to ‘DEBUG’
      Logs are found in /var/simias/log/Simias.log (or your path)

      The same goes for the client, change the %appdata%\simias\Simias.log4net or %localappdata%\simias\Simias.log4net to ‘DEBUG’ and read the logs at %appdata%\simias\Simias.log (all windows versions)

      • Tsvetan Filev:

        Gee.

        God bless you buddy :-))
        You are 100% correct.
        Would be great if you update the tutorial with a note.

        Cheers.

  • Bud:

    I had the same issue. I found config files in:

    /usr/lib/simias/web/update//version.config

    I edited the windows one to the client version I have (3.8.0.3) and the prompt went away

  • Bernd:

    I have a slight Problem with the Install on a Suse 10.3

    The Error Message is:
    Server Version: 1.8.3.0
    HostName: linux-ir1r
    MachineName: linux-ir1r
    OS Version: Unix 2.6.34.12
    CLR Version: 2.0.50727.1433

    Exception detail:

    Exception type: Exception

    Unable to connect to master serverSystem.Net.WebException: Error: ConnectFailure (Connection refused) —> System.Net.Sockets.SocketException: Connection refused
    at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] in :0
    at System.Net.WebConnection.Connect (System.Net.HttpWebRequest request) [0x00000] in :0
    — End of inner exception stack trace —
    Does anybody know a solution?
    Thanks

    Bernd

  • Rajan:

    Do you ever done of iFolder 3.8 integration with windows 2008 active directory ? Your valuable experience will be a boost for the cloud community

    • iFolder will integrate into an LDAP environment such as Active Directory, however I have no LDAP experience, still learning. ;)

      check out the irc #ifolder

      i’ve been thinking of starting an unofficial forum here for ifolder, any thoughts?

      best,
      dan

    • m11:

      iFolder integration with Active Directory – here is what worked for me:

      1) Turn ON the LDAPS functionality on your DomainController (on WinSrv2008 just import the certificate to LocalComputer Personal store – CN has to be of course the same as FQDN of DC)

      2) On iFolder server import public certificate of DC and CA (in X.509 base-64 CER format):
      certmgr -add -c -m Trust dc.yourdomain.tld.cer
      certmgr -add -c -m CA your_ca.cer

      3) During the iFolder Server Setup (simias-server-setup) just use as the first Admin account a “Domain Admin” accout from your AD – this credential will be used only once with this setup script for creating/modifying “ifolderAdmin” and “ifolderProxy” account in your AD, and for Scema extension (if used Domain Admin account is member of Schema Admin group) what should be important only if you want use “LDAP Group support”

      Enjoy
      Martin

  • Hi Daniel

    I’ve been looking for a recent blog about installing ifolder server on openSuse (I normally build from source on ubuntu) and think this is great!

    I’ve run into a snag I don’t know how to resolve though. On a totally fresh 11.3 server (installed from the ISOs) I go through the steps outlined but always get an error when surfing to the /simias10 directory System.DllNotFoundException: /usr/lib/simias/web/bin/FlaimWrapper.so. When I look at the system, I can see the symlink pointing to ../../../libFlaimWrapper.so BUT this file is missing so the link is broken. I can’t work out which part of the process should be installing it.

    Any ideas?

  • Mike King:

    You are my new GOD :-) nice how to thanx

  • Thanks for the information.

    To install the 11.4 rpm’s and be able to log in, I had to do the following:

    ln -sf ../../../libFlaimWrapper.so.0.0.0 /usr/lib/simias/web/bin/FlaimWrapper.so

    And add the following to /etc/apache2/conf.d/simias.conf

    Options FollowSymLinks

    Regards,
    Arjen

  • Thanks Dustin!
    Check out our new documentation project at nofolder.com

Leave a Comment