diff options
author | onefang | 2020-09-08 21:37:57 +1000 |
---|---|---|
committer | onefang | 2020-09-08 21:37:57 +1000 |
commit | d0025122e0d9e509cfb8267c8275469256923511 (patch) | |
tree | 89bcb18acbcf92adf998a20e95400336b84ee299 /INSTALL.md | |
parent | Clean out the SledjChisl sub modules stuff. (diff) | |
download | opensim-SC-d0025122e0d9e509cfb8267c8275469256923511.zip opensim-SC-d0025122e0d9e509cfb8267c8275469256923511.tar.gz opensim-SC-d0025122e0d9e509cfb8267c8275469256923511.tar.bz2 opensim-SC-d0025122e0d9e509cfb8267c8275469256923511.tar.xz |
Install notes.
Diffstat (limited to '')
-rw-r--r-- | INSTALL.md | 228 |
1 files changed, 228 insertions, 0 deletions
diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000..40bf35b --- /dev/null +++ b/INSTALL.md | |||
@@ -0,0 +1,228 @@ | |||
1 | Use this to create a sim that links into IG or MG grids from Linux. Or | ||
2 | to run your own grid. | ||
3 | |||
4 | It's only been tested on Ubuntu 10.04, 11.04, 12.04, 16.04, as well as | ||
5 | Debian 8, Devuan 9, and Devuan 9. YMMV. This is also a WIP, use it at | ||
6 | your own risk. It's been used to set up a few freshly installed servers | ||
7 | though. It should work on recent Debian based Linux distros. | ||
8 | |||
9 | You may want to use the latest Mono, you can get it by following the | ||
10 | instructions at - | ||
11 | |||
12 | https://www.mono-project.com/docs/getting-started/install/linux/ | ||
13 | |||
14 | |||
15 | For those in a hurry. | ||
16 | --------------------- | ||
17 | |||
18 | On a recent Debian based Linux (Debian, Devuan, Ubuntu, Mint, ...) | ||
19 | terminal, run the following command - | ||
20 | |||
21 | ./InstallItAll.sh | ||
22 | |||
23 | This will install the prerequisites (MariaDB, monit, MONO, tmux, | ||
24 | uuid-runtime); create a database in MariaDB called opensim_SC and a | ||
25 | database user called opensim_SC with a random password; add a Linux user | ||
26 | and group to your system called opensimsc; create the /opt/opensim_SC | ||
27 | directory to run it all from; copy everything to | ||
28 | /opt/opensim_SC/opensim-SC_0.9.0.1; setup the directory structure needed | ||
29 | to run it all; create some default configuration files; build opensim-SC; | ||
30 | and finally change ownership and file permissions for everything. | ||
31 | |||
32 | You will likely need to login your user again, so you get the new group | ||
33 | assigned to it. Otherwise the tmux stuff in start-sim might fail. | ||
34 | |||
35 | Next go to /opt/opensim_SC/current/scripts/install and run - | ||
36 | |||
37 | sudo ./create_sim.sh | ||
38 | |||
39 | This will create a randomly named sim at a randomly chosen position. Or | ||
40 | for something less random - | ||
41 | |||
42 | sudo ./create_sim.sh "My new sim" "1234,5678" | ||
43 | |||
44 | At this point /opt/opensim_SC/config/config.ini will be a symlink | ||
45 | pointing to config_localhost.ini, which is for a standalone sim. If you | ||
46 | want your new random sim to be part of IG or MG grids then you'll have to | ||
47 | change that syml/ink to point to config_IG.ini or config_MG.ini | ||
48 | respectively. There is no point doing that unless you are a member of | ||
49 | those grids. | ||
50 | |||
51 | /opt/opensim_SC/config/sim01 now contains the actual configuration of | ||
52 | your randomly created sim. Edit the .ini file to make that sim a little | ||
53 | less random. You can even rename the .ini file to match your sim name. | ||
54 | |||
55 | If you are running a grid run - | ||
56 | |||
57 | cd /opt/opensim_SC/config/ROBUSH | ||
58 | ./start-sim | ||
59 | |||
60 | Then to actually startup your sim - | ||
61 | |||
62 | cd /opt/opensim_SC/config/sim01 | ||
63 | ./start-sim | ||
64 | |||
65 | And if you want to see the console of your sim run - | ||
66 | |||
67 | cd /opt/opensim_SC/current/scripts | ||
68 | ./show-console | ||
69 | |||
70 | |||
71 | The directory layout. | ||
72 | --------------------- | ||
73 | |||
74 | The various directories are - | ||
75 | |||
76 | .git Used by git for it's internal accounting, and the older versions. | ||
77 | |||
78 | .nant Used by the obsolete nant build tool. | ||
79 | |||
80 | OpenSim OpenSim source code. | ||
81 | |||
82 | Prebuild Used by the build system. | ||
83 | |||
84 | ThirdParty For third party OpenSim modules. | ||
85 | ThirdPartyLicenses | ||
86 | |||
87 | addon-modules Also for third party modules. Don't ask me why there's two. | ||
88 | |||
89 | bin The OpenSim binaries, and other files. | ||
90 | |||
91 | doc Supposedly for documentation, which I wish OpenSim devs would write some. | ||
92 | |||
93 | example An example of how to set this all up. | ||
94 | |||
95 | scripts Various Linux scripts for managing OpenSim. | ||
96 | |||
97 | share No idea really. | ||
98 | |||
99 | Also, the installation script copies the following directories from the | ||
100 | example directory, to outside of this main directory, they are all used | ||
101 | for writing various things. Makes it easy to upgrade, and separates them | ||
102 | from actual executable stuff. | ||
103 | |||
104 | AssetFiles Stores assets if running in grid mode. | ||
105 | |||
106 | backups All sim and inventory backups are stored here. | ||
107 | |||
108 | caches Various cached things. | ||
109 | |||
110 | config All your configuration files. | ||
111 | |||
112 | db If you are not using MySQL, your data lives here. | ||
113 | |||
114 | logs Log files get stored here. | ||
115 | |||
116 | web Web files go here. You can edit them to change the background image for example. | ||
117 | |||
118 | |||
119 | Follow these steps. | ||
120 | ------------------- | ||
121 | |||
122 | First you need to have a user on your computer with sudo access. | ||
123 | |||
124 | Next you need to figure out what password you want to use for OpenSims | ||
125 | access to the database. We will call this "DatabasePassword". Run the | ||
126 | following script, from inside the OpenSim directory - | ||
127 | |||
128 | ./InstallItAll.sh DatabasePassword | ||
129 | |||
130 | This will do most of the work for you, except for creating sims. | ||
131 | |||
132 | |||
133 | Creating sims. | ||
134 | -------------- | ||
135 | |||
136 | A separate script is here for sim creation, you can use it to create many | ||
137 | sims. You will need - | ||
138 | |||
139 | A name for your sim, we will use "My new sim". It should be unique on | ||
140 | the grid. | ||
141 | |||
142 | A location for your sim, we will use "1234,5678". Choose an empty spot. | ||
143 | |||
144 | Once you have all that information sorted out, run this script from the | ||
145 | scripts/install directory - | ||
146 | |||
147 | ./create_sim.sh "My new sim" "1234,5678" "sims.example.net" | ||
148 | |||
149 | Also, you can create a varregion with something like - | ||
150 | |||
151 | ./create_sim.sh "My new sim" "1234,5678" 512 | ||
152 | |||
153 | Note that the size has to be a multiple of 256, so 512, 768, 1024, etc. | ||
154 | 8096 is the maximum size, 2048 is about the biggest that is decently | ||
155 | manageable. | ||
156 | |||
157 | |||
158 | Running ROBUST. | ||
159 | --------------- | ||
160 | |||
161 | If you are running your own grid, you need to start up ROBUST, which is | ||
162 | a bunch of common services sims use. Go to /opt/opensim_SC/config/ROBUST | ||
163 | and run the following script to start it up - | ||
164 | |||
165 | ./start-sim | ||
166 | |||
167 | You will see the tmux console. You can run the tmux console again by | ||
168 | running that command once more, or running the show-console script. | ||
169 | |||
170 | |||
171 | Running sims. | ||
172 | ------------- | ||
173 | |||
174 | Now you can go to /opt/opensim_SC/config/sim01 and run the following script | ||
175 | to start it up - | ||
176 | |||
177 | ./start-sim | ||
178 | |||
179 | You will see the tmux console. You can run the tmux console again by | ||
180 | running that command once more, or running the show-console script. | ||
181 | |||
182 | You can stop the sim with - | ||
183 | |||
184 | ./stop-sim | ||
185 | |||
186 | You can backup the sim with - | ||
187 | |||
188 | ./backup-sim | ||
189 | |||
190 | |||
191 | Running it all at once. | ||
192 | ----------------------- | ||
193 | |||
194 | You don't have to run ROBUST, then each sim, you can run the lot at once. | ||
195 | Go to /opt/opensim_SC/current/scripts and run - | ||
196 | |||
197 | ./start-sim | ||
198 | |||
199 | It'll wait a minute between sims to give things time to settle down, and | ||
200 | not over work your computer. | ||
201 | |||
202 | |||
203 | Finishing up. | ||
204 | ------------- | ||
205 | |||
206 | Once it's all tested, you can use this to finish things off (back in | ||
207 | the /opt/opensim_SC/current/scripts directory) - | ||
208 | |||
209 | ./go_live.sh | ||
210 | |||
211 | Which sets up the monit control file/s, though you should double check | ||
212 | it all, and you still have to do the basic configuration and enabling of | ||
213 | monit yourself. This is in case you already have monit set the way you | ||
214 | like. | ||
215 | |||
216 | This step is entirely optional, and some versions of monit might not work | ||
217 | so well. | ||
218 | |||
219 | |||
220 | NOTES - | ||
221 | |||
222 | This attempts to use only one copy of the OS install for all sims. We | ||
223 | are running one instance of OS for each sim though, as this prevents one | ||
224 | sim crashing from bringing down the others. OS however really wants to | ||
225 | write data to directories within it's own bin directory. The preferred | ||
226 | way to update opensim-SC is to download a fresh copy, run BuildIt.sh, | ||
227 | delete the installed copy, then copy this new one to where the old one | ||
228 | used to be. I'll write an update script in the next version. | ||