Explorar o código

Updated documentation

TC pushbot 5 %!s(int64=4) %!d(string=hai) anos
pai
achega
3ae55f653e

+ 32 - 1
docs/chapter/started/4.md

@@ -25,6 +25,37 @@ aroz_online_linux_arm64  web  system
 
 Start the binary by calling sudo ./aroz_online_linux_arm64 (or without sudo if you prefer no hardware management)
 
+### For PC with x64 (amd64) CPU
+
+Install Debian Buster on your PC and download the binary ``` arozos_linux_amd64``` with the web and system folder. You will see something like this everything is downloaded.
+
+```
+$ ls
+arozos_linux_amd64  web  syste
+```
+
+Start the binary with ./arozos_linux_amd64
+
+## Build From Source
+
+### Linux (Debian) / Darwin (MacOS)
+
+To build from source, install Git and Go and follow the instructions below.
+
+```
+git clone https://github.com/tobychui/arozos arozos
+cd ./arozos/src
+go build
+```
+
+#### Required Linux Packages
+
+The ArozOS will require these extra packages to function normally.
+
+1. fmpeg
+
+2. wpa_supplicant (or nmcli), if you have wlan interface(s)
+
 ### Windows
 
 If you are deploying on Windows, you need to add ffmpeg to %PATH% environment variable.
@@ -38,4 +69,4 @@ go build
 arozos.exe
 ```
 
-However, not all features are available for Windows.
+However, not all features are available for Windows (e.g. WiFi / Samba)

+ 3 - 5
docs/chapter/started/7.md

@@ -38,11 +38,9 @@ Mobile Desktop Interface was first introduce in arozos 1.105 for supporting vert
 
 
 
-| List Menu                           | Tool Sidebar                      | Opening Applications                |
-| ----------------------------------- | --------------------------------- | ----------------------------------- |
-| ![image19](../../img/7/image19.jpg) | ![image8](../../img/7/image8.jpg) | ![image16](../../img/7/image16.jpg) |
-
-
+| List Menu                                                 | Tool Sidebar                                            | Opening Applications                                      |
+| --------------------------------------------------------- | ------------------------------------------------------- | --------------------------------------------------------- |
+| ![image19](../../img/started/7/image19-1609908981935.jpg) | ![image8](../../img/started/7/image8-1609908986370.jpg) | ![image16](../../img/started/7/image16-1609908989224.jpg) |
 
 ### Grid Menu Interface
 

+ 74 - 0
docs/chapter/started/8.md

@@ -0,0 +1,74 @@
+["First Time Startup"]
+
+# First Time Startup
+
+If you are starting up your system for the first  time, you will see the following message shown in the console showcasing your setup is complete and it is now working. The following is an example from v0.1.109 release on Windows Hosts
+
+```
+2021/01/06 12:58:31 ArozOS(C) 2020 IMUSLAB.INC.
+2021/01/06 12:58:31 ArozOS development Revision 0.1.109
+2021/01/06 12:58:31 Key-value Database Service Started: system/ao.db
+2021/01/06 12:58:31 New authentication session key generated
+2021/01/06 12:58:31 Key-value Database Service Started: files/aofs.db
+2021/01/06 12:58:32 Key-value Database Service Started: tmp/aofs.db
+2021/01/06 12:58:32 Failed to create system handler for Storage 1
+2021/01/06 12:58:32 Unsupported platform
+2021/01/06 12:58:32 Failed to create system handler for Storage 2
+2021/01/06 12:58:32 Unsupported platform
+2021/01/06 12:58:32 Failed to create system handler for Storage 3
+2021/01/06 12:58:32 Mount point not exists!
+2021/01/06 12:58:32 Failed to create system handler for Storage 4
+2021/01/06 12:58:32 Mount point not exists!
+2021/01/06 12:58:32 Key-value Database Service Started: web/aofs.db
+2021/01/06 12:58:32 Web Mounted as web:/ for group administrator
+2021/01/06 12:58:32 Failed to create system handler for Test
+2021/01/06 12:58:32 Mount point not exists!
+2021/01/06 12:58:33 ArozOS Neighbour Scanning Started
+2021/01/06 12:58:33 Web server listening at :8080
+```
+
+**For first time startup, we recommend running the program using sudo permission for it to install all dependencies that it needs using apt-get**
+
+Once you see the console stop printing new text, you can now create your first account on your ArozOS Host.
+
+## Connecting to the Web UI
+
+### Windows Network Neighborhood Method
+
+If you are using Windows as your main system, you will see the following  devices pop up on your Network Neighborhood page. 
+
+
+
+![2020-12-01_16-23-31](../../img/started/8/2020-12-01_16-23-31-1609909422405.png)
+
+Double click the icon and you will be redirected to the ArozOZ Web UI Home page.
+
+
+
+### Router IP Checking
+
+In the case you don't know the IP address of your host, check the IP address of your host from your NAT gateway router. It is usually under DHCP --> Client List --> Your host name & the LAN IP Address.
+
+
+
+### SSH IP Checking
+
+If you have already connected to your host using SSH, use ```sudo ifconfig``` to see what IP address it is using. In most case, you will find your address under eth0 . In the example below, it is 192.168.0.128.
+
+![2021-01-06_13-05-54](../../img/started/8/2021-01-06_13-05-54.png)
+
+
+
+## Setting up the first user account
+
+After you have redirected to the Web UI, create your account with new username and password. Select "Administrator" under the user group option and continue.
+
+![2020-12-01_16-25-35](../../img/started/8/2020-12-01_16-25-35.png)
+
+
+
+## Login with your new username and password
+
+After your account is created, you can now login to your system using your username and password just entered. Be reminded that this a standalone system that there is no way to recover your password using email / phone SMS services like the other cloud services. So **DONT FORGET YOUR ADMINISTARTOR PASSWORD**
+
+![2020-12-01_16-25-45](../../img/started/8/2020-12-01_16-25-45.png)

+ 183 - 0
docs/chapter/started/9.md

@@ -0,0 +1,183 @@
+["Startup Options and Flags"]
+
+# Startup Options & Flags
+
+ArozOS provide many startup options for use under many different conditions. 
+
+To list the flags and their usage, use 
+
+```
+./arozos -h
+```
+
+Here is a list of startup flags supported in ArozOS 1.109
+
+```
+Usage of arozos.exe:
+  -allow_autologin
+        Allow RESTFUL login redirection that allow machines like billboards to login to the system on boot (default true)
+  -allow_mdns
+        Enable MDNS service. Allow device to be scanned by nearby ArOZ Hosts (default true)
+  -allow_pkg_install
+        Allow the system to install package using Advanced Package Tool (aka apt or apt-get) (default true)
+  -allow_ssdp
+        Enable SSDP service, disable this if you do not want your device to be scanned by Windows's Network Neighborhood Page (default true)
+  -allow_upnp
+        Enable uPNP service, recommended for host under NAT router
+  -beta_scan
+        Allow compatibility to ArOZ Online Beta Clusters
+  -cert string
+        TLS certificate file (.crt) (default "localhost.crt")
+  -console
+        Enable the debugging console.
+  -demo_mode
+        Run the system in demo mode. All directories and database are read only.
+  -dir_list
+        Enable directory listing (default true)
+  -disable_ip_resolver
+        Disable IP resolving if the system is running under reverse proxy environment
+  -disable_subservice
+        Disable subservices completely
+  -enable_hwman
+        Enable hardware management functions in system (default true)
+  -hostname string
+        Default name for this host (default "My ArOZ")
+  -iobuf int
+        Amount of buffer memory for IO operations (default 1024)
+  -key string
+        TLS key file (.key) (default "localhost.key")
+  -max_upload_size int
+        Maxmium upload size in MB. Must not exceed the available ram on your system (default 8192)
+  -ntt int
+        Nightly tasks execution time. Default 3 = 3 am in the morning (default 3)
+  -port int
+        Listening port (default 8080)
+  -public_reg
+        Enable public register interface for account creation
+  -root string
+        User root directories (default "./files/")
+  -session_key string
+        Session key, must be 16, 24 or 32 bytes long (AES-128, AES-192 or AES-256). Leave empty for auto generated.
+  -storage_config string
+        File location of the storage config file (default "./system/storage.json")
+  -tls
+        Enable TLS on HTTP serving
+  -tmp string
+        Temporary storage, can be access via tmp:/. A tmp/ folder will be created in this path. Recommend fast storage devices like SSD (default "./")
+  -tmp_time int
+        Time before tmp file will be deleted in seconds. Default 86400 seconds = 24 hours (default 86400)
+  -upload_async
+        Enable file upload buffering to run in async mode (Faster upload, require RAM >= 8GB)
+  -upload_buf int
+        Upload buffer memory in MB. Any file larger than this size will be buffered to disk (slower). (default 25)
+  -uuid string
+        System UUID for clustering and distributed computing. Only need to config once for first time startup. Leave empty for auto generation.
+  -version
+        Show system build version
+  -wlan_interface_name string
+        The default wireless interface for connecting to an AP (default "wlan0")
+  -wpa_supplicant_config string
+        Path for the wpa_supplicant config (default "/etc/wpa_supplicant/wpa_supplicant.conf")
+```
+
+
+
+## Examples
+
+Here are some examples for using arozos in different situations
+
+### Basics
+
+- Change port to port 80
+- Change hostname to "My Network Disk"
+
+```
+./arozos -port 80 -hostname "My Network Disk"
+```
+
+
+
+### Enable TLS support (aka HTTPS)
+
+- Enable TLS
+- Change port to 443
+- Load the cert and key from file
+
+```
+./arozos -port 443 -tls=true -cert "mycert.crt" -key "mykey.key"
+```
+
+
+
+### Access From Outside Home
+
+Use case: You have a gateway NAT router with public IP address and you want to access your ArozOS Host outside your home with your public IP address
+
+- Enable UPNP
+- Don't use Port 80
+- Disable IP resolver (as it will always be your NAT router address anyway)
+
+```
+./arozos -allow_upnp=true -port 8123 -disable_ip_resolver=true
+```
+
+*This operation will require your router to support UPnP function. If not, skip the "allow-upnp" flag and setup port forward in the router instead.*
+
+### Deploying on Cloud VM 
+
+Use case: Deploying on AWS, Linode / Ramnode  or Azure
+
+- Disable network discovery functions (as it is under virtual network anyway)
+- Disable package install to prevent changing to the production environment
+- Disable dir listing so users can't scan what files is located within the web server
+- Disable hardware management as there is no real hardware in VM
+- Disable IP resolver )in case you are running under reverse proxy, which in production environment is quite common)
+
+```
+./arozos -allow_mdns=false -allow_pkg_install=false -allow_ssdp=false -dir_list=false -enable_hwman=false -disable_ip_resolve=true
+```
+
+
+
+### Deploying on Ultra Low Memory Single Board Computers
+
+Use case: deploy on Pi zero w, ZeroPi or Orange Pi Zero that only has 512MB or even 256MB RAM 
+
+- Lower the IO operation buffer (Optional)
+- Lower upload buffer memory from 25MB to 10MB
+
+*Under low memory environment (< 2GB RAM), ArozOS will automatically switch to "low memory upload mode" in which it will use WebSocket chunk based upload instead of Form Post Upload method.*
+
+```
+./arozos -iobuf 512 -upload_buf 10
+```
+
+
+
+### Deploying on a Thin Client that its primary drive only has less than 16GB space
+
+Use case: 2nd hand thin client as NAS, Really tight budget personal cloud storage build
+
+**Assume you have an external storage devices  (e.g. an external SSD ) plugged in and mounted as /media/storage**
+
+- Move user root and tmp folders outside of the installation disk
+- Reduce max file upload size from 8GB to 25MB
+
+```
+./arozos -tmp "/media/storage/" -root "./media/storage/files/" -max_upload_size 25
+```
+
+
+
+### Deploying as the Server for Automated Services / Panels
+
+Use case: Weather station, digital billboard and other IoT devices that require auto login
+
+- Enable Auto Login
+
+```
+./arozos -allow_autologin=true
+```
+
+and follow up the setting in the Auto Login Mode System Setting tab
+

BIN=BIN
docs/img/started/7/image16-1609908989224.jpg


BIN=BIN
docs/img/started/7/image19-1609908981935.jpg


BIN=BIN
docs/img/started/7/image8-1609908986370.jpg


BIN=BIN
docs/img/started/8/2020-12-01_16-23-31-1609909422405.png


BIN=BIN
docs/img/started/8/2020-12-01_16-23-31.png


BIN=BIN
docs/img/started/8/2020-12-01_16-25-35.png


BIN=BIN
docs/img/started/8/2020-12-01_16-25-45.png


BIN=BIN
docs/img/started/8/2021-01-06_13-05-54.png