﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=Org%3AInstitute%2FOpen_projects%2FPeach%2FRenderfarm</id>
	<title>Org:Institute/Open projects/Peach/Renderfarm - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=Org%3AInstitute%2FOpen_projects%2FPeach%2FRenderfarm"/>
	<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=Org:Institute/Open_projects/Peach/Renderfarm&amp;action=history"/>
	<updated>2026-05-03T12:42:41Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=Org:Institute/Open_projects/Peach/Renderfarm&amp;diff=56428&amp;oldid=prev</id>
		<title>Yamyam: 1版 をインポートしました</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=Org:Institute/Open_projects/Peach/Renderfarm&amp;diff=56428&amp;oldid=prev"/>
		<updated>2018-06-28T17:52:31Z</updated>

		<summary type="html">&lt;p&gt;1版 をインポートしました&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;2018年6月28日 (木) 17:52時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ja&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(相違点なし)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Yamyam</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=Org:Institute/Open_projects/Peach/Renderfarm&amp;diff=56427&amp;oldid=prev</id>
		<title>2010年4月3日 (土) 15:38にwiki&gt;Terrywallworkによる</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=Org:Institute/Open_projects/Peach/Renderfarm&amp;diff=56427&amp;oldid=prev"/>
		<updated>2010-04-03T15:38:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Some notes on the sun grid renderfarm&lt;br /&gt;
* Systems run Solaris 10 64-bit, AMD-Processors, 4gig ram. [[http://www.sun.com/servers/entry/v20z/index.jsp]]&lt;br /&gt;
* Internet access is available (inside a solaris zone[[http://www.sun.com/bigadmin/content/zones/]], only 1 processor can be accessed)&lt;br /&gt;
&lt;br /&gt;
See Building Blender on solaris http://wiki.blender.org/index.php/BlenderDev/BuildingBlender/Solaris&lt;br /&gt;
&lt;br /&gt;
== Interactive Session ==&lt;br /&gt;
When running an interactive session on suns network.com you need to have a script that connects to your system. This script is the script that runs as a part of a job.&lt;br /&gt;
&lt;br /&gt;
Our internet can disconnect so I added a infinate loop that reconnects every 2min. this way you can only stop the job be canceling through the web interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''interactive_session.sh''' - XXXXXXX replace with the ip/domain name.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#&lt;br /&gt;
if [ -f $HOME/.profile ]; then&lt;br /&gt;
  . $HOME/.profile&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
while true; do&lt;br /&gt;
	if [[ -f ~/session.lock ]]; then  &lt;br /&gt;
		echo &amp;quot;Session running fine&amp;quot;&lt;br /&gt;
		# session must re-create so we know its running&lt;br /&gt;
		# while true; do touch ~/session.lock; echo &amp;quot;keepalive&amp;quot;; sleep 20; done&lt;br /&gt;
		rm ~/session.lock &lt;br /&gt;
	else&lt;br /&gt;
		echo &amp;quot;There is no xterm session running, restarting&amp;quot;&lt;br /&gt;
		qsh -display blender3d.dyndns.org:1&lt;br /&gt;
	fi&lt;br /&gt;
	&lt;br /&gt;
	sleep 120&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Packaging Blender for the sun grid ==&lt;br /&gt;
&lt;br /&gt;
The directory structure is as follows &lt;br /&gt;
 '''./bundle/*''' - archive to upload to suns grid, will be zipped into an 'Application' resource.&lt;br /&gt;
 '''./blender/*''' - blenders source code. (svn checkout)&lt;br /&gt;
 '''./lib/solaris-2.10-x86_64/*''' - Solaris libs, these are used for building but OpenGL libs from here are also needed to run blender on the renderfarm.&lt;br /&gt;
&lt;br /&gt;
The Files for the package are as follows &lt;br /&gt;
&lt;br /&gt;
Blender binary (statically linked)&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt; ./bundle/bin/blender&amp;lt;/source&amp;gt;&lt;br /&gt;
Python so blender can load modules like math&lt;br /&gt;
 ./bundle/pythonhome/&lt;br /&gt;
Scripts (contense listed below)&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;./bundle/blenderBatch.sh&lt;br /&gt;
 ./bundle/blenderBatchItem.sh&lt;br /&gt;
 ./bundle/blenderTestRun.sh&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Scripts to run the renderfarm===&lt;br /&gt;
'''./bundle/commandBatch.sh''' - Master script that runs every line in a text file, and retries if the command fails.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#&lt;br /&gt;
if [ -f $HOME/.profile ]; then&lt;br /&gt;
  . $HOME/.profile&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
ifile=$1 # Use first argument&lt;br /&gt;
[ ! -f $ifile ] &amp;amp;&amp;amp; exit&lt;br /&gt;
&lt;br /&gt;
while read line_iter&lt;br /&gt;
do&lt;br /&gt;
  echo &amp;quot;Running&amp;quot; $line_iter&lt;br /&gt;
  EXITSTATUS=&amp;quot;1&amp;quot;&lt;br /&gt;
  while [ ! &amp;quot;$EXITSTATUS&amp;quot; -eq 0 ]&lt;br /&gt;
  do&lt;br /&gt;
    # This line should contain the qsub command!&lt;br /&gt;
    $line_iter&lt;br /&gt;
    &lt;br /&gt;
    # Deal with failed attempts to add a job.&lt;br /&gt;
    EXITSTATUS=&amp;quot;$?&amp;quot;&lt;br /&gt;
    if [ ! &amp;quot;$EXITSTATUS&amp;quot; -eq 0 ]&lt;br /&gt;
    then&lt;br /&gt;
      echo &amp;quot;Failed to add job, sleeping 10sec and try again...&amp;quot;&lt;br /&gt;
      sleep 10&lt;br /&gt;
    fi&lt;br /&gt;
    &lt;br /&gt;
  done&lt;br /&gt;
  &lt;br /&gt;
done &amp;lt; $ifile&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;done&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''./bundle/blenderBatchItem.sh''' - Called from blenderBatch.sh, renders each line in &amp;quot;blender.in&amp;quot;.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #$ -N Blender&lt;br /&gt;
 #$ -cwd&lt;br /&gt;
 export NAN_BLENDERHOME=$PWD&lt;br /&gt;
 export OUT=${NAN_BLENDERHOME}/render&lt;br /&gt;
 export LD_LIBRARY_PATH=/usr/local/lib:/usr/X11/lib:${NAN_BLENDERHOME}/lib&lt;br /&gt;
 export PYTHONHOME=${NAN_BLENDERHOME}/pythonhome&lt;br /&gt;
 &lt;br /&gt;
 echo $LD_LIBRARY_PATH&lt;br /&gt;
 echo $NAN_BLENDERHOME&lt;br /&gt;
 &lt;br /&gt;
 mkdir $OUT&lt;br /&gt;
 echo	$NAN_BLENDERHOME/bin/blender -b $@&lt;br /&gt;
 	$NAN_BLENDERHOME/bin/blender -b $@&lt;br /&gt;
&lt;br /&gt;
'''./bundle/blenderTestRun.sh''' - Only for running blender locally and testing.&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 export NAN_BLENDERHOME=$PWD&lt;br /&gt;
 export NAN_BLENDEROUT=${NAN_BLENDERHOME}/render&lt;br /&gt;
 export LD_LIBRARY_PATH=/usr/local/lib:/usr/X11/lib:${NAN_BLENDERHOME}/lib&lt;br /&gt;
 export PYTHONHOME=${NAN_BLENDERHOME}/pythonhome&lt;br /&gt;
 &lt;br /&gt;
 echo $LD_LIBRARY_PATH&lt;br /&gt;
 echo $NAN_BLENDERHOME&lt;br /&gt;
 &lt;br /&gt;
 $NAN_BLENDERHOME/bin/blender&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Updating The Package===&lt;br /&gt;
'''./update.sh''' - update and repackage the application to run on sun grid nodes.&lt;br /&gt;
&amp;lt;br&amp;gt;''(note, required for the renderfarm, just makes updating blender_app.tar.bz2 easier)''&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
PACKAGE=&amp;quot;blender_app&amp;quot;&lt;br /&gt;
rm $PACKAGE.tar.bz2&lt;br /&gt;
&lt;br /&gt;
svn update ./lib/solaris-2.10-x86_64&lt;br /&gt;
svn update ./blender&lt;br /&gt;
&lt;br /&gt;
cd blender # blenders svn repo&lt;br /&gt;
gmake NAN_NO_KETSJI=true NAN_NO_OPENAL=true WITH_BF_BLENDERPLAYER=false&lt;br /&gt;
cd ..&lt;br /&gt;
cp ./blender/obj/solaris-2.10-x86_64/bin/blender ./bundle/bin/blender&lt;br /&gt;
&lt;br /&gt;
strip ./bundle/bin/blender&lt;br /&gt;
&lt;br /&gt;
# Update python from solaris lib&lt;br /&gt;
rm -rf ./bundle/pythonhome&lt;br /&gt;
svn export ./lib/solaris-2.10-x86_64/python ./bundle/pythonhome&lt;br /&gt;
&lt;br /&gt;
# Copy libGL&lt;br /&gt;
rm -rf ./bundle/lib&lt;br /&gt;
mkdir ./bundle/lib&lt;br /&gt;
cp /usr/lib/X11/mesa/amd64/libGL.so.1 ./bundle/lib/&lt;br /&gt;
cp /usr/lib/X11/mesa/amd64/libGLU.so.1 ./bundle/lib/&lt;br /&gt;
cp ./lib/solaris-2.10-x86_64/python/lib/libpython2.5.so.1.0 ./bundle/lib/&lt;br /&gt;
&lt;br /&gt;
# Remove some unneeded python files for a smaller package&lt;br /&gt;
rm -rf ./bundle/pythonhome/include/&lt;br /&gt;
rm -rf ./bundle/pythonhome/bin&lt;br /&gt;
rm -rf ./bundle/pythonhome/man&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/bsddb&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/compiler&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/config&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/ctypes&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/curses&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/distutils&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/email&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/encodings&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/hotshot&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/idlelib&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/lib-tk&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/logging&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/plat-sunos5&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/site-packages&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/sqlite3&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/test&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/wsgiref&lt;br /&gt;
rm -rf ./bundle/pythonhome/lib/python2.5/xml&lt;br /&gt;
&lt;br /&gt;
# Create with no subdirectory&lt;br /&gt;
cd ./bundle/&lt;br /&gt;
&lt;br /&gt;
tar -cvvf ../$PACKAGE.tar *&lt;br /&gt;
cd ..&lt;br /&gt;
&lt;br /&gt;
bzip2 -9 $PACKAGE.tar&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example .job file==&lt;br /&gt;
This file is really really simple, it needs to be uploaded with any job you submit.&lt;br /&gt;
&lt;br /&gt;
'''01_intro-04.job''' - Render's 6 frames at once!&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
qsub -N 01_intro-04_0001 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 1&lt;br /&gt;
qsub -N 01_intro-04_0002 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 2&lt;br /&gt;
qsub -N 01_intro-04_0003 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 3&lt;br /&gt;
qsub -N 01_intro-04_0004 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 4&lt;br /&gt;
qsub -N 01_intro-04_0005 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 5&lt;br /&gt;
qsub -N 01_intro-04_0006 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 6&lt;br /&gt;
qsub -N 01_intro-04_0007 -cwd blenderBatchItem.sh ./production/scenes/01_intro/04.blend -P ./production/scripts/render_settings.py -o 01_intro-04_ -f 7&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Run &amp;quot;blender --help&amp;quot; for details on other arguments you can use.&lt;br /&gt;
&lt;br /&gt;
== Render Presets ==&lt;br /&gt;
'''render_settings.py''' - Use when you want to render many files with some of the same settings.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# run with...&lt;br /&gt;
# blender -b myblendfile.blend -P render_settings.py -a&lt;br /&gt;
from Blender import Scene, Object&lt;br /&gt;
import sys&lt;br /&gt;
&lt;br /&gt;
def main():&lt;br /&gt;
	&lt;br /&gt;
	# Was a camera name given as a python arg???&lt;br /&gt;
	# eg...&lt;br /&gt;
	# -- SomeCameraName&lt;br /&gt;
	camera = None&lt;br /&gt;
	argv = sys.argv&lt;br /&gt;
	if argv:&lt;br /&gt;
		try:&lt;br /&gt;
			camera = Object.Get(argv[argv.index('--')+1])&lt;br /&gt;
		except:&lt;br /&gt;
			print &amp;quot;ERROR, Camera as argument could not be set '%s'&amp;quot; % argv[0]&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	# Settings for all scenes&lt;br /&gt;
	for sce in Scene.Get():&lt;br /&gt;
		rend = sce.render&lt;br /&gt;
		rend.freeImages = True&lt;br /&gt;
		rend.saveBuffers = True&lt;br /&gt;
		rend.compositeFree = True&lt;br /&gt;
		&lt;br /&gt;
		rend.oversampling = True&lt;br /&gt;
		&lt;br /&gt;
		# rend.OSALevel = 8 # We dont want to set this now.&lt;br /&gt;
		rend.threads = 1&lt;br /&gt;
		&lt;br /&gt;
		rend.motionBlur = False&lt;br /&gt;
		rend.fieldRendering = False&lt;br /&gt;
		&lt;br /&gt;
		if camera:&lt;br /&gt;
			sce.camera = camera&lt;br /&gt;
	&lt;br /&gt;
	# Settings for render scene&lt;br /&gt;
	sce = Scene.GetCurrent()&lt;br /&gt;
	rend = sce.render&lt;br /&gt;
	&lt;br /&gt;
	rend.extensions = 1&lt;br /&gt;
	rend.renderwinSize = 100&lt;br /&gt;
	&lt;br /&gt;
	#rend.enableSky()&lt;br /&gt;
	#rend.enablePremultiply()&lt;br /&gt;
	#rend.enableKey()&lt;br /&gt;
	&lt;br /&gt;
	#rend.enableBWColor()&lt;br /&gt;
	rend.enableRGBColor()&lt;br /&gt;
	#rend.enableRGBAColor()&lt;br /&gt;
	&lt;br /&gt;
	rend.compositor = True&lt;br /&gt;
	rend.sequencer = False&lt;br /&gt;
	rend.sizeX = 1920&lt;br /&gt;
	rend.sizeY = 1080&lt;br /&gt;
	&lt;br /&gt;
	rend.xParts = 6&lt;br /&gt;
	rend.yParts = 6&lt;br /&gt;
	&lt;br /&gt;
	rend.fps = 24&lt;br /&gt;
	&lt;br /&gt;
	rend.zbuf = False&lt;br /&gt;
	rend.halfFloat = True&lt;br /&gt;
	rend.preview = False&lt;br /&gt;
	&lt;br /&gt;
	rend.touch = False&lt;br /&gt;
	rend.noOverwrite =False&lt;br /&gt;
	&lt;br /&gt;
	rend.imageType = Scene.Render.OPENEXR&lt;br /&gt;
&lt;br /&gt;
if __name__ == '__main__':&lt;br /&gt;
	main()&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Packaging Libs==&lt;br /&gt;
These commands make a package with a binary and all its dependencies&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
 MYBIN=/opt/csw/bin/svn&lt;br /&gt;
 MYDIR=./bundle&lt;br /&gt;
 mkdir $MYDIR&lt;br /&gt;
 export IFS=$'\n'&lt;br /&gt;
 MYLIBS=$(for f in `ldd -d $MYBIN`; do echo $f | cut -f3; done)&lt;br /&gt;
 export IFS=$'\n\t '&lt;br /&gt;
 for f in $MYLIBS; do cp -L $f $MYDIR/ ; done&lt;br /&gt;
 cp $MYBIN $MYDIR/&lt;br /&gt;
 tar -cvfh svnlibs.tar $MYDIR/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EDIT, setting the library path did not seem to work, used a single solaris svn binary from...&lt;br /&gt;
 http://osdir.com/ml/version-control.subversion.rapidsvn.devel/2006-10/msg00020.html&lt;br /&gt;
&lt;br /&gt;
==SSH On Sun's Grid==&lt;br /&gt;
Port 22 is blocked from the sun grid, so a default ssh configuration wont be able to call out from an interactive session.&lt;br /&gt;
This is easy to work around by using port 80 (usually used for http).&lt;br /&gt;
&lt;br /&gt;
This will only work if your server is not currently using http of course.&lt;br /&gt;
&lt;br /&gt;
===Server===&lt;br /&gt;
On a linux system edit /etc/ssh/sshd_config&lt;br /&gt;
Change &amp;quot;Port 22&amp;quot; to &amp;quot;Port 80&amp;quot;&lt;br /&gt;
&lt;br /&gt;
then restart the sshd server&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 sudo /etc/init.d/ssh restart&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Client===&lt;br /&gt;
When using ssh to do access the command prompt just add '''-p 80''', for eg..&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 ssh user@biserver -p 80&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When using svn you need to set the SVN_SSH environment variable&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 export SVN_SSH=&amp;quot;ssh -p 80&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you can do an rsync copy through ssh with port 80&lt;br /&gt;
&lt;br /&gt;
For rsync &lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 rsync -ave ssh ~/test.txt myname@url.org:/home/myname/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Becomes...&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 rsync -ave 'ssh -p 80' ~/test.txt myname@url.org:/home/myname/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>wiki&gt;Terrywallwork</name></author>
		
	</entry>
</feed>