"Coherence" over X

Discussion in 'Linux Virtual Machine' started by wzinet, Jun 7, 2008.

  1. wzinet

    wzinet Bit poster

    Messages:
    7
    I've been trying to get some sort of coherence running on my Ubuntu machine, and thought I might just post to say where I'm at, and what the issues are so far.

    First, my configuration:
    Macbook running OSX 10.5.2
    Parallels 3
    Ubuntu 8.04

    My target:
    Get Kmail, Kmymoney, Kphotoalbum running nearly natively on osX.
    Shared /Home space.

    I know that I could spend some time compiling these directly under osX, but I'm trying to get this up and running quickly, but as it's all effectivley beta on osX I thought that parallels would be the way to start...

    So what I do:
    1. Networking
    - Setup to be shared networking, Fixed IP addresses
    (10.211.55.10 for macbook, 10.211.55.11 for ubuntu)

    2. Disk Sharing
    NFS. This proved to be really simple in theory, but a right pain in practice - maybe someone can help me with this.

    OSX setup:
    add:
    /Users 10.211.55.11
    to /etc/exports
    nfsd restart
    showmount -e

    Ubuntu
    add:
    macbook:/Users /Users nfs defaults 0 0
    to /etc/fstab
    then:
    mkdir /Users
    mount /Users

    and hey presto, it works... well it should...

    You have to turn off the "Application Firewall" in 10.5, as this seems to block all NFS traffic (Can anyone tell me how to add "NFS" to this?), but please add a decent ruleset to your ipfw firewall.

    Then we need to get the UID/GID of all the files setup sensibly.

    On your ubuntu machine (this was basically a new installation for me, so the easier one to play with, also I'm more familiar with linux than BSD/OSx, so more scared to hack files), login as root.
    Add a new user with the correct UID/GID (Mac starts it UID's at 500, Ubuntu at 1000). To find your UID on your mac: open terminal, and type: "echo $UID"

    To get the setup running properly This is where I think that time should be spent for any devel at parallels:
    Matching /etc/passwd and /etc/group between mac and linux, and allowing NFS to work with the "Application Firewall"

    To share most files (I wanted to keep the dot files separate from machine to machine), I just made softlinks to "Desktop" "Documents" etc etc. between /home/<users> and /Users/<user>

    3. Application Setup
    on the Virtual Machine I installed all the relevant applications as per usual.

    4. Getting "Coherence"
    Ensure that sshd is installed and running on the VM.
    Optionally install a private key with ssh-keygen (avoids needing to keep typing passwords every time I start an app)

    ssh -X 10.211.55.11 <command>
    or:
    (for kde)
    ssh -X 10.211.55.11 kicker
    (for gnome)
    ssh -X 10.211.55.11 gnome-panel

    Can anyone tell me how to create a "Shortcut" for this?

    5. Tidying up:
    To reduce the resources that your VM is using, I turned off xdm/gdm/kdm, so I was only running a terminal (by changing the /etc/rc.x/S30_gdm to K30_gdm - I'm sure there's a gui for that, but I couldn't find it)

    I would love to be able to run the terminal that I start the applications from in the background (not requiring a window), if anyone can tell me how to do that it would be great!

    6. Wishlist
    For some reason when the VM is doing nothing I appear to be using 15-20% of CPU on the host. (running "top" on the vm shows 0 CPU use, and doesn't change this)
    This compares to 7-8% for my XP VM. Is anyonen aware of any reason for this?

    I hope people find this is interesting.
     
  2. John@Parallels

    John@Parallels Forum Maven

    Messages:
    6,333
    What is using CPU on host?
     
  3. wzinet

    wzinet Bit poster

    Messages:
    7
    The process listed in "Activity Montior" is "Parallels Desktop" for both the Windows and the Linux VM's (I can tell the difference because I have 500Mb assigned to my Linux machine, and 1500Mb assigned to the windows one. (in addition it's the same when I run one at a time)
     
  4. John@Parallels

    John@Parallels Forum Maven

    Messages:
    6,333
    For Windows 7-8 normal, because about 8 Parallels services are running in Windows Xp.
    As for 20% in Linux,
    -Do you have tools installed
    - What is Ubuntu release

    Idea is great (I mean nfs), but I will try also export by smbfs
    As for running Ubuntu Applications on Mac side there is some problems not related to Parallels Desktop but to keymap.
    As for shortcuts
    create txt file with sh extension and set executable flag and set it to open in Terminal always
    I also suggest to use SSH authentication by RSA or DSA key to avoid entering password every time

    example
    #! /bin/bash
    ssh -X 10.211.55.11 gnome-panel
     
  5. wzinet

    wzinet Bit poster

    Messages:
    7
    Ubuntu is a linux Distro. Release 8.04 (I don't know the names just the version numbers)
    I tried to install tools (the beta release) but it doesn't work properly (screen resizing doesn't work).

    Cheers for the scripts idea. I suspect that if mac is unix like then the extension doesn't matter (the #!/bin/bash tells it what to do), and yes - key based auth is def the way to go.

    Next challenge is to get the default web browser (under linux) to be firefox on osX :) Can't be too difficult to do since it always opens on my local machine when I start it on a remote machine under linux-linux client-server. Ho ho.
     
  6. unused_user_name

    unused_user_name Pro

    Messages:
    495
    The real trick would be to get it working with standby....

    Anyone know how to take a running program and change what X server it is outputting/inputting through without restarting the program?

    :)
     
  7. wzinet

    wzinet Bit poster

    Messages:
    7
    The best option here would to be to stop using X, and switch to something that allows this.

    E.g. http://www.nomachine.com/
    (freeNX allows two users, so should be ok for most people working over parallels).

    It works well for me under linux/linux, (it can be a little flakey if the network drops too much, but this won't be a problem with a VM)

    Please don't instantly think that this is some VNC-alike thing - it is a direct replacement for X that allows the client to disconnect at will.

    In addition to this, I would love to be able to update my "SSH" script to check that a machine is running first, and start it if not. In addition, it would be great to get some sort of a cron job going that checks if any connections are made, and if not, suspend/sleep the machine.
     
  8. John@Parallels

    John@Parallels Forum Maven

    Messages:
    6,333
    I - do not agree freeNX is very bandwidth hungry.
    As for script modification.
    check for ssh return value, any other value but 0, should invoke
    /Applications/Parallels/Parallels\ Desktop.app/Contents/MacOS/Parallels path-toVM-pvs file
    Set that machine to start when Parallels Desktop is starting
     
  9. wzinet

    wzinet Bit poster

    Messages:
    7
    Thanks.

    NX is definitly not bandwidth intensive (much less so than X or VNC in my experience), but I've found that on occasion if the network fails, nx (server) crashes, which was what I intended to say above.
     

Share This Page