Wuala file system integration

Hi,

I’m trying to get the FIS from wuala going on my Opensuse 11.1 system. It ran fine on 11.0…
It seems as if the nfs integration wouldn’t work…


reg@desktop-reg:~> sudo /etc/init.d/nfs start
Not starting NFS client services - no NFS found in /etc/fstab: unused
but remember my fstab says:
"localhost:/wuala /home/reg/wuala/direct nfs defaults,users,noauto,rsize=8192,wsize=8192,timeo=14,intr,nolock,soft"

Any clue(s) what could be happening here? :o In my fstab I got this:**localhost:/wuala /home/reg/wuala/direct nfs defaults,users,noauto,rsize=8192,wsize=8192,timeo=14,intr,nolock,soft
**
I have portmap installed too… there’s been a discussion going on in the Wuala forum and people there don’t seem to be able to help me, the link is: Could not upload file

I would really appreciate if anyone was able to help me!

Thank you tons,
Ron :slight_smile:

Hm, anyone?

The lines that test whether your fstab has a nfs mount are these:

while read  what where type options rest  ; do
    case "$what" in
        \#*|"")     continue ;;
    esac
    case ",$options," in
        *,noauto,*) continue ;;
    esac
    case "$type" in
        nfs|nfs4)   ;;
        *)          continue ;;
    esac
    nfs=yes
    if test "$1" = status ; then
        grep -qE "^$what:blank:]]+$where:blank:]]+nfs" /proc/mounts && continue
        state=3
        continue
    fi
    case "$where" in
        /usr*)
            usr="${usr:+$usr }$where"
            NEED_LDCONFIG=yes
            ;;
        /opt*)
            opt="${opt:+$opt }$where"
            NEED_LDCONFIG=yes
            ;;
        *)
            mnt="${mnt:+$mnt }$where"
            test "$NEED_LDCONFIG" = yes        && continue
            grep -qE "^$where" /etc/ld.so.conf || continue
            NEED_LDCONFIG=yes
            ;;
    esac
done < /etc/fstab

I don’t see anything wrong with your fstab, but somehow nfs still remains at “no” after the loop, so the case start-no was run, which prints that message. Two things you could try. One is to run the init script with -vx to show you the statements executed. Like this:

# sh -vx /etc/init.d/nfs start

That will tell you if the line was correctly read. Is there a possibility it contains some junk characters or isn’t properly terminated with a newline?

The other is to try to mount the nfs from the command like with:

# mount -a -t nfs

That will tell you if mount is seeing that nfs line.

I don’t quite get what I should read from

# sh -vx /etc/init.d/nfs start

the last few lines printed look like this:


+ case "$1-$nfs" in                                                                 
+ /usr/sbin/sm-notify                                                               
+ echo -n 'Not starting NFS client services - no NFS found in /etc/fstab:'          
Not starting NFS client services - no NFS found in /etc/fstab:+ rc_status -u        
+ rc_check                                                                          
+ _rc_status_ret=0
+ test 0 -eq 0
+ test 0 -eq 0
+ return 0
+ test 0 -gt 7
+ _rc_status_ret=0
+ case "$_rc_todo" in
+ local i
+ for i in '"$@"'
+ case "$i" in
+ echo -e '                                                                                                          unused'
                                                                                                                     unused
+ rc_failed 6
+ rc_reset
+ _rc_status=0
+ _rc_status_all=0
+ rc_check
+ _rc_status_ret=0
+ test 0 -eq 0
+ test 0 -eq 0
+ return 0
+ return 0
+ case "$1" in
+ _rc_status=6
+ rc_check
+ _rc_status_ret=0
+ test 0 -eq 0
+ test 6 -eq 0
+ _rc_status_all=6
+ return 0
+ return 6
+ return 0
rc_exit
+ rc_exit
+ exit 6


This doesn’t say anything tio me…does it to you?
There shouldn’t be any chunck in my fstab nfs line as i just completely retyped it manually - just to be sure…
I got no clue what’s going wrong…I’d appreciate your continuing help! Thank you!
Ron

No, much earlier, in the loop where it reads the lines from fstab and then checks the type field of each line. You should see it doing:

nfs=no

and then when it gets to your line it should detect the nfs type and do

nfs=yes

My guess is for one reason or another, that line isn’t recognised, so nfs stays at no.

Another reason might be some stray spaces. There should be no space between localhost: and /, also the path should contain no spaces.

The fstab line looks like this:
localhost:/wuala /home/reg/wuala/direct nfs defaults,users,noauto,rsize=8192,wsize=8192,timeo=14,intr,nolock,soft
and all i see in the output is:
**
nfs=no

Thanks again for your help!
Ron

For some reason the nfs line is not recognised. Please post /etc/fstab. Preferably don’t paste it, but wrap it in a zip or tar archive so that I can check for any illegal characters.

Or if you prefer to debug this yourself, edit /etc/init.d/nfs and add this bolded line after the read around line 43:

while read  what where type options rest  ; do
  **echo "$what|$where|$type|$options|$rest"**
  case "$what" in

Then run /etc/init.d/nfs start. Forget about the sh -vx this time, nothing more to be discovered from that. Post the outputs of that echo statement.

My fstab is right here.

Thanks dude for looking into this for me!

Ron

Ahhhhh…

The reason is simple. See these lines in the script?

   case ",$options," in
        *,noauto,*) continue ;;
   esac

That says: if noauto is in the options, then disregard this fstab line. Since you have specified that your nfs mount is not to be mounted automatically, it was ignored. Take out the noauto and it should mount at boot.

k, noauto removed and now i get this:


desktop-reg:/home/reg # mount -a
mount.nfs: mount to NFS server 'localhost:/wuala' failed: RPC Error: Program not registered

What the heck does this mean? :o

Did you start a NFS server on the same machine? The service is nfsserver. You can configure it in YaST.

Nope:



desktop-reg:/home/reg # /etc/init.d/nfs status
Checking for mounted nfs shares (from /etc/fstab):idmapd not running
                                                                                                                     unused
desktop-reg:/home/reg # /etc/init.d/nfsserver status
Checking for kernel based NFS server: idmapd                                                                         unused
 mountd                                                                                                              unused
 statd                                                                                                               unused
 nfsd                                                                                                                unused
desktop-reg:/home/reg #

In Yast “Do not start NFS server” is checked…

Well, you need to start the server then. Even though it’s localhost and on the same machine, the client requires a server.

This is from the Wuala forum:
You need to install nfs-common. Your system is working as nfs-server itself… Be sure you have intalled nfs-common or nfs-server…
The link to the discussion is here. That may help - not sure anymore… :open_mouth:

That advice may be for another distro or an older release of OpenSUSE. In 11.1, the names are slightly different. You need the packages

yast2-nfs-server
nfs-kernel-server

Make sure you have these packages installed, and then go to YaST to configure the server, exporting the directory mentioned in the first field of that fstab line.

BTW, it’s better to use YaST to configure the fstab line also and let YaST do what it deems best. I see you have lots of options on that fstab line which may or may not be useful, and can have the potential to upset things. I’m guessing you copied that line from a howto.

Well but Wuala would act as the nfs server as I understand it so yast wouldn’t be able to do anything with that…

Also: yes i did copy the line from a howto. It’s suspecious that this line used to work with OSS 11.0 and is working right now on my ubuntu machine… >:(

Well I don’t know anything about wuala, but in any case you need some kind of NFS server running on localhost if you hope to connect to it. There isn’t anything wrong with that fstab line, except the noauto which prevented it from starting at boot, but just make sure you understand what all those options mean and why they are needed with whatever NFS server is used.

I believe I need to noauto option cause the share is triggered to be mounted by the application that’s not launched when the shares are mounted on boot and hence there’s no wuala share to mount available at this time…does this make any kind of sense? :\

Well if you are mounting on demand, and not on boot, then yes, you would use noauto to specify no mounting on boot. But you wouldn’t be able to use the init script to start the NFS client, you would just issue the mount command. Just

mount /your/target/partion/path

as root should work. You will need to make sure the needed services like portmap are already running by then, you’d have to set them to enabled.

Not knowing anything about wuala and why it’s using NFS, I can’t say much more about this.

Yup, I believe portmap is making me issues, i can’t start it


desktop-reg:/home/reg # /etc/init.d/portmap status
Checking for RPC portmap daemon:                                       unused
desktop-reg:/home/reg # /etc/init.d/portmap start
Starting RPC portmap daemon                                        failed
desktop-reg:/home/reg #

How