Showing posts with label Network. Show all posts
Showing posts with label Network. Show all posts

Thursday, 12 February 2015

Blender render farm - built in Network renderer

Well, I tested this last year, but I can't believe it, I can't find any mention of me doing it. It either means I forgot to write it up, or didn't write it up in this blog! Oh well, here's a new writeup:

The only files I have to go from are two files named:
master.blend
slave.blend

Basically, these files have presets in them, so whichever machine opens them either becomes the master or the slave.

Here's a document I found which has 'slave.blend' mentioned in it, looks very promising.

  1. First thing is to load blender, and load the Network Renderer plugin. Go to:
    1. File > User Preferences > Render > Network render > tick:
  2. Up the top, next to File, Edit menus, there is a dropdown usually on "Scene". Select "Network Render":
  3. On the far right you should see the Network Render settings:
  4. Click Master on the machine you want to control jobs. Make sure it's a machine which is always on, perhaps with storage space which can be shared to other machines (not worked out where rendered files are stored)
    1. Click Start Service
  5. You can now view the jobs and clients connected to the master by browsing to the webpage:
    1. http://ipAddressOfMaster:8000:
      1. I had trouble with this, but found it was because I was on the master machine and so had to type:
        1. http://localhost:8000/
      2. There is also a newer jquery interface: /html/newui#interface:
  6.  Now start another machine as a slave
  7. On the final machine, load up a nice file and click "Send Job":
  8. The systems so good, the end files end up where-ever you said for the output (at the bottom of the client list). You can even download renders from previous jobs!!

Now that I got it all working, the plan was to save a master.blend file and a slave.blend file and have them load up when the machines are started, from command line. Here it goes:

 To run the master:
/Applications/Blender\ 2.73a/blender.app/Contents/MacOS/blender -b /Users/Shared/master.blend --addons netrender -a -noaudio -nojoystick

The slave:
/Applications/Blender\ 2.73a/blender.app/Contents/MacOS/blender -b /Users/Shared/slave.blend --addons netrender -a -noaudio -nojoystick 

Seems to work very nicely. One thing to note is that the IP address of the master has to be saved in the slave.blend file. I don't know how to add this through the command line.

The next thing is to get the slave.blend command to launch at system startup, and run as root.

Found this question and answer in stackoverflow 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>uk.ac.chesterfield.dci.blender.client</string> <!-- org.mongodb.mongodb perhaps? -->

    <key>KeepAlive</key>
    <true/>
  
    <key>RunAtLoad</key>
    <true/>
  
    <key>ProcessType</key>
    <string>Background</string>

    <key>UserName</key>
    <string>root</string>

    <key>ProgramArguments</key>
    <array>
            <string>/Applications/Blender 2.73a/blender.app/Contents/MacOS/blender</string>
            <string>-b</string>
            <string>/Users/Shared/slave.blend</string>
            <string>--addons</string>
            <string>netrender</string>
            <string>-a</string>
            <string>-noaudio</string>
            <string>-nojoystick</string>
    </array>
</dict>
</plist>

Monday, 13 January 2014

Find the IP address of a computer with know MAC address (ethernet ID)

So, on my server it is reporting an issue with a computer with MAC address AA:BB:CC:DD:EE:FF (obviously I made this one up).

Trouble is, I know this computers MAC address but not it's IP address. So how do you find it?

Well, found this forum and this forum which basically tells you to use the command 'arp':

arp -a | grep "AA:BB:CC:DD:EE:FF "

arp lists all MAC address of computers on your subnet. But it's taking a long time. Reading more in the forum it looks like it works by pinging all the IP addresses, then asking it for it's MAC address. Long winded!

Tuesday, 19 March 2013

Set Automatic Proxy Configuration through Command line in OS X 10.7

It took me a while to find it, but to set the Automatic Proxy Configuration url and tick the box through command line I found this helpful post which describes a script on how to do it.

First you need to find which network interface you want to change:

networksetup -listallnetworkservices
Ethernet

Use this in the command:
networksetup -setautoproxyurl Ethernet http://wpad.your.path.here/wpad.dat
By adding a url it automatically switches it on. To check:
networksetup -getautoproxyurl Ethernet
Simples. Don't know why it took me so long to find it. Don't think it's in the man page for networksetup for some reason!

Friday, 14 September 2012

Sharing a MS Access database

So I've got an inventory database but have about 8 people who need to use it. Thought this wouldn't be a problem but turns out this stuff is more complex then it appears. When more then one person opens it (it's on a networked drive) a message keeps popping up about permissions. I did a quick search and found Microsofts help page here and there are a few options:

  • Put it on a network folder
    • done this which is where the problem is
  • Split the database to front end and back end
  • Use SharePoint
  • Use a Database Server
The ideal one would be a database server. But unfortunately I lack the knowledge to create the queries and forms for the web.

Next best is either SharePoint or splitting the database. Here's an article on SharePoint but I'm unsure whether we have SharePoint enabled somewhere and also how to do it.

My favourite option is Splitting the Database. Basically have the tables in on database (the backend) and the forms, queries and reports in another (front end). Heres a quick forum post on how to do it.

Friday, 30 March 2012

Password for printing on OS X 10.6 and changing every day

Here's some info:

The need a password tickbox in mcxprinting has limiting effects. It appears in Photoshop that it only prompts for a password if you change the print settings for the printer! Seems to only stop you if you're using the OS X printer interface. Any other interface might get around the password facility.

I suppose one option is to see if the CUPS printing facility has an admin password thingy.

Alternatively, you could just have one user which can log into the machine.

One thing we need to do is to get something automatic in place which automatically changes the password depending on the day.

Found this which describes the use of passwd command line utility to change a users password. We could set up something automatic which would change the administrators password every day and loop.

Another thought I had was to share the printer with the server, but call the instance on the machine something miscellaneous like -error-, and have another printer set up which connects to the server. That way we can use it like any other! I think this is the best solution yet.

So, I tried to setup a network printer:

  1. I set up the printer on the machine and called it "-error1-" so no-one would use it
  2. ticked the "printer sharing" box in system preferences
    1. also ticked the windows sharing box
  3. I read somewhere it was best to turn the firewall on, so I did. I checked to see the exceptions and printing and smb were listed
  4. Next I went to the windows 2000 server added a 'local port' printer
    1. using port "\\123.45.67.89\-error1-" and used the right windows driver for it so papercut would be able to work out paper size etc.
    2. I shared this printer with the name "n239-Ep7600"
  5. I did a test print from the windows server and it came out fine, although it wanted the roll paper instead of sheet paper feed.
  6. On the Mac I set up the networked printer, using LPR, the ip address of the server and the queue name "N239-Ep7600"
    1. gave it the correct print driver
  7. I performed a test print from the OS X machine and it came up with some sort of "rasterize" error.
/Library/Printers/EPSON/InkjetPrinter2/Filter/rastertoescpII.app/Contents/MacOS/rastertoescpII failed

I can only assume that the print driver cannot cope with being sent through a network, and has to "rasterize" it on the fly?

Another option is to have the print queue paused for every printjob which requires an administrator to unpause it. Found this post which is for os x 10.5 and involves CUPs config file.

Wednesday, 14 September 2011

iPhoto '11 (version 9) library's volume is unsupported

After recently updating the OS and iLife to 10.6.6 and iLife '11 I've found that for networked users (using Active Directory hosted on Windows servers) this message appeared:

Error
The library could not be opened because the file system of the library's volume is unsupported

It became apparent that the new version of iPhoto does not support photo library's on this type of networked volume. I have now found it to encompass any type of volume which is not 'Mac OS Extended (Journaled)'.

I found quite a few postings on the subject, but most were concerned with NAS storage backup stuff, for which a few solutions were posted, but nothing relating to Active Directory windows servers stuff. But, at last, after a few more minutes I came across this post by PJ_AU down the bottom:
  1. Simply double click on the iphoto library located in the Pictures folder.
This opens it up in iPhoto, and iPhoto does not check the volume it is on.

For new users:
  1. 'Alt' click on the iPhoto icon in the dock (this opens iPhoto prompting for a library)
  2. Create a new iPhoto Library on the local Mac OS Extended (Journaled) volume
  3. Close iPhoto
  4. Move the Library to the networked (or unsupported) volume
  5. Double click it to open it in iPhoto
From then on iPhoto does not check the volume the library is on. It ONLY checks the volume when creating or updating the iPhoto Library.

Monday, 5 September 2011

802.1X login with OS X 10.6.6 and Active Directory

After re-imaging all the computer suites, there were a few machines without ethernet connections. These I had to set up using 802.1X logins on OS X 10.6.6, something I hadn't tested, although in theory there would be nothing different then the setup with OS X 10.5.8. But I've now just noticed that I have not written this process down, so this will be the first connotation of it:

After a few trials and tribulations I discovered the best (quickest and easiest) way to get the to log in wirelessly on Active Directory accounts using 802.1X.

  1. Go to Network Settings in System Preferences
  2. Click on Airport, turn it on and connect to ChesterfieldCollege wireless network:
  3. Authenticate using the login details which will be used in the 802.1X authentication (needs to be the full username i.e. username@students.chesterfield.ac.uk. I think I also unticked the "Remember Password" box.
  4. Accept the certificates (if you get any) and hopefully you should be connected
  5. Click on Advanced and then go to the 802.1X tab
  6. We are going to add a System Profile, so that whenever the computer is on, it'll always be authenticated on the wireless with a certain username and password.
  7. You need to fill out the FULL username (.......@students.chesterfield.ac.uk) and password, tick TTLS and PEAP (might just apply to this wireless) and select ChesterfieldCollege as the wireless to use. Oh and WPA2 Enterprise.
  8. Before we click OK I've found I also need to add the server certificate we just accepted (no.5) to the certificates. So go to Certificates, click add "Select Certificate from Keychain" and select the one you added:
  9. Click OK, OK and when back on the initial Network Settings screen, click "Disconnect" under 802.1X.
  10. Now restart the machine and see if it works!
In my experience, the wireless login takes a few more minutes to authenticate, so when restarting a machine you might want to give it a minute before trying to log in.

If it doesn't work, login as your administrator and see if it's connected to the wireless using 802.1X, and if not, delete the System Profile in Advanced and see if you can connect to it normally. Just keep on trying, and perhaps you added the wrong server certificate?



....
After doing this I always found a few machines which would come up with the "Error connecting to 802.1X" blaa blaa blaa. After a bit of trial and error it turns out that if I moved the machines to another part of the room it worked. Thus, the error message only came up when there was a low signal. Simple.

Tuesday, 30 August 2011

Re-image Mac Pro's with 10.6.6 Ethernet 2 not in list

After re-imaging a computer suite of Mac Pro's with 10.6.6 image taken from a new 27" iMac I noticed 3 of them were not showing up in ARD (Apple Remote Desktop).

I had a quick look at them, open System Preferences > Network and they showed as not having an IP address in their Ethernet 1 port. Of course Mac Pro's have two Ethernet ports, the second of which was not showing up in the list. Just clicked on the 'Plus' sign in the bottom right, selected Ethernet 2 and clicked OK.

This is obviously due to the fact that the original image was taken from an iMac which of course does not have two ethernet ports. What I assumed was that this would automatically get updated when the machine boots up. What I am now thinking is that it doesn't, but perhaps deleting the /Library/Preferences/SystemConfiguration/ folder would cause it to update what network hardware it had? I used this option before when having a problem with OS X 802.1X and Wifi.