From 6866aa0fd307dcb96436eb5c2923996e848d77fe Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 17:20:47 +0100 Subject: [PATCH 01/19] New install link --- .../01.administrate/02.install/install.fr.md | 121 ++++++++++++------ pages/01.administrate/02.install/install.md | 14 +- 2 files changed, 88 insertions(+), 47 deletions(-) diff --git a/pages/01.administrate/02.install/install.fr.md b/pages/01.administrate/02.install/install.fr.md index 7237a17d..040bc76e 100644 --- a/pages/01.administrate/02.install/install.fr.md +++ b/pages/01.administrate/02.install/install.fr.md @@ -7,72 +7,113 @@ routes: default: '/install' --- +On which hardware do you want install Yunohost ? + + + + + + Il existe plusieurs manières d’installer YunoHost. La méthode d’installation diffère légèrement si vous souhaitez l’installer chez vous ou à distance, et du matériel utilisé : **[voir le matériel compatible](/hardware)** Cette page liste plusieurs types d’installations, classés par catégories. --- -## Essayer -[div class="flex-container"] -[div class="flex-child"] -[[figure caption="Serveur de démo"]![](image://logo.png?height=150)[/figure]](/try) -[/div] -[div class="flex-child"] -[[figure caption="Essayer dans une machine virtuelle"]![](image://virtualbox.png?height=150)[/figure]](/install_on_virtualbox) -[/div] -[/div] -## Installer à la maison -[div class="flex-container"] -[div class="flex-child"] -[[figure caption="Sur un Raspberry Pi"]![](image://raspberrypi.jpg?height=150)[/figure]](/install_on_raspberry) -[/div] -[div class="flex-child"] -[[figure caption="Sur une carte ARM"]![](image://olinuxino.jpg?height=150)[/figure]](/install_on_arm_board) -[/div] +

Essayer

-[div class="flex-child"] -[[figure caption="Sur un ordinateur standard"]![](image://computer.png?height=150)[/figure]](/install_iso) -[/div] +
-[/div] + -## Installer à distance + -!!! [fa=fa-heart /] Des FAI associatifs près de chez vous sont peut-être capable de vous fournir un *Serveur Privé Virtuel* (VPS), géré par des humains qui respectent les utilisateurs et la [Neutralité du Net](https://fr.wikipedia.org/wiki/Neutralit%C3%A9_du_r%C3%A9seau) ! Voir [cette page](https://db.ffdn.org/) pour plus d'informations. +
-[div class="flex-container"] +
-[div class="flex-child"] +--- -[[figure caption="Sur un serveur dédié ou virtuel (VPS)"]![](image://vps.png?height=150)[/figure]](/install_on_vps) +

Installer à la maison

-[/div] +
-[/div] + -## Avancé / autres + -[div class="flex-container"] + -[div class="flex-child"] -[[figure caption="Sur Debian 10/Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_on_debian) -[/div] +
-[div class="flex-child"] -[[figure caption="Environnement de dev avec LXD/LXC"]![](image://lxc.png?height=150)[/figure]](/dev) -[/div] +
-[div class="flex-child"] -[[figure caption="(Non-officiel !) Images docker"]![](image://docker.png?height=150)[/figure]](/docker) -[/div] +--- -[/div] +

Installer à distance

+ +
+ Des FAI associatifs près de chez vous sont peut-être capable de vous fournir un *Serveur Privé Virtuel* (VPS), géré par des humains qui respectent les utilisateurs et la [Neutralité du Net](https://fr.wikipedia.org/wiki/Neutralit%C3%A9_du_r%C3%A9seau) ! Voir [cette page](https://db.ffdn.org/) pour plus d'informations. +
+ +
+ + + +
+ +
+ +--- + +

Avancé / autres

+ +
+ + + + + + + +
diff --git a/pages/01.administrate/02.install/install.md b/pages/01.administrate/02.install/install.md index e9b3e36e..f1f261ca 100644 --- a/pages/01.administrate/02.install/install.md +++ b/pages/01.administrate/02.install/install.md @@ -20,7 +20,7 @@ This page lists a few installation guides. [/div] [div class="flex-child"] -[[figure caption="Try with VirtualBox"]![](image://virtualbox.png?height=150)[/figure]](/install_on_virtualbox) +[[figure caption="Try with VirtualBox"]![](image://virtualbox.png?height=150)[/figure]](/install_process/hardware:virtualbox) [/div] [/div] @@ -30,15 +30,15 @@ This page lists a few installation guides. [div class="flex-container"] [div class="flex-child"] -[[figure caption="On a Raspberry Pi"]![](image://raspberrypi.jpg?height=150)[/figure]](/install_on_raspberry) +[[figure caption="On a Raspberry Pi"]![](image://raspberrypi.jpg?height=150)[/figure]](/install_process/hardware:rpi2plus) [/div] [div class="flex-child"] -[[figure caption="On an ARM board"]![](image://olinuxino.jpg?height=150)[/figure]](/install_on_arm_board) +[[figure caption="On an ARM board"]![](image://olinuxino.jpg?height=150)[/figure]](/install_process/hardware:arm_sup) [/div] [div class="flex-child"] -[[figure caption="On a regular computer"]![](image://computer.png?height=150)[/figure]](/install_iso) +[[figure caption="On a regular computer"]![](image://computer.png?height=150)[/figure]](/install_process/hardware:regular) [/div] [/div] @@ -51,7 +51,7 @@ This page lists a few installation guides. [div class="flex-child"] -[[figure caption="On a dedicated or virtual private server"]![](image://vps.png?height=150)[/figure]](/install_on_vps) +[[figure caption="On a dedicated or virtual private server"]![](image://vps.png?height=150)[/figure]](/install_process/hardware:vps_debian) [/div] @@ -62,7 +62,7 @@ This page lists a few installation guides. [div class="flex-container"] [div class="flex-child"] -[[figure caption="On Debian 10 Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_on_debian) +[[figure caption="On Debian 10 Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_on_debian)/install_process:hardware [/div] [div class="flex-child"] @@ -70,7 +70,7 @@ This page lists a few installation guides. [/div] [div class="flex-child"] -[[figure caption="(Non-official!) Docker images"]![](image://docker.png?height=150)[/figure]](/docker) +[[figure caption="(Non-official!) Docker images"]![](image://docker.png?height=150)[/figure]](/install_process/hardware:docker) [/div] [/div] From 3bca5cb26198146d3bc28e6d80c2eab02143b7f9 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 17:28:00 +0100 Subject: [PATCH 02/19] [enh] New install process --- .../02.install/01.iso/install_iso.md | 394 +++++++++++++++++- .../02.install/02.vps/install_on_vps.de.md | 27 -- .../02.install/02.vps/install_on_vps.es.md | 27 -- .../02.install/02.vps/install_on_vps.fr.md | 26 -- .../02.install/02.vps/install_on_vps.it.md | 27 -- .../02.install/02.vps/install_on_vps.md | 26 -- .../03.manualinstall/install_manually.de.md | 26 -- .../03.manualinstall/install_manually.es.md | 27 -- .../03.manualinstall/install_manually.fr.md | 27 -- .../03.manualinstall/install_manually.md | 27 -- .../04.rpi/install_on_raspberry.de.md | 57 --- .../04.rpi/install_on_raspberry.es.md | 57 --- .../04.rpi/install_on_raspberry.fr.md | 58 --- .../02.install/04.rpi/install_on_raspberry.md | 60 --- .../05.arm/install_on_arm_board.es.md | 50 --- .../05.arm/install_on_arm_board.fr.md | 50 --- .../02.install/05.arm/install_on_arm_board.md | 51 --- .../06.debian/install_on_debian.ar.md | 31 -- .../06.debian/install_on_debian.fr.md | 31 -- .../06.debian/install_on_debian.it.md | 30 -- .../02.install/06.debian/install_on_debian.md | 31 -- .../07.virtualbox/install_on_virtualbox.es.md | 81 ---- .../07.virtualbox/install_on_virtualbox.fr.md | 82 ---- .../07.virtualbox/install_on_virtualbox.md | 87 ---- .../08.plugandboot/plug_and_boot.es.md | 24 -- .../08.plugandboot/plug_and_boot.fr.md | 36 -- .../08.plugandboot/plug_and_boot.md | 38 -- .../02.install/09.docker/docker.fr.md | 19 - .../02.install/09.docker/docker.md | 19 - .../11.burn_iso/burn_or_copy_iso.fr.md | 52 --- .../11.burn_iso/burn_or_copy_iso.md | 59 --- .../boot_and_graphical_install.fr.md | 56 --- .../boot_and_graphical_install.md | 52 --- 33 files changed, 372 insertions(+), 1373 deletions(-) delete mode 100644 pages/01.administrate/02.install/02.vps/install_on_vps.de.md delete mode 100644 pages/01.administrate/02.install/02.vps/install_on_vps.es.md delete mode 100644 pages/01.administrate/02.install/02.vps/install_on_vps.fr.md delete mode 100644 pages/01.administrate/02.install/02.vps/install_on_vps.it.md delete mode 100644 pages/01.administrate/02.install/02.vps/install_on_vps.md delete mode 100644 pages/01.administrate/02.install/03.manualinstall/install_manually.de.md delete mode 100644 pages/01.administrate/02.install/03.manualinstall/install_manually.es.md delete mode 100644 pages/01.administrate/02.install/03.manualinstall/install_manually.fr.md delete mode 100644 pages/01.administrate/02.install/03.manualinstall/install_manually.md delete mode 100644 pages/01.administrate/02.install/04.rpi/install_on_raspberry.de.md delete mode 100644 pages/01.administrate/02.install/04.rpi/install_on_raspberry.es.md delete mode 100644 pages/01.administrate/02.install/04.rpi/install_on_raspberry.fr.md delete mode 100644 pages/01.administrate/02.install/04.rpi/install_on_raspberry.md delete mode 100644 pages/01.administrate/02.install/05.arm/install_on_arm_board.es.md delete mode 100644 pages/01.administrate/02.install/05.arm/install_on_arm_board.fr.md delete mode 100644 pages/01.administrate/02.install/05.arm/install_on_arm_board.md delete mode 100644 pages/01.administrate/02.install/06.debian/install_on_debian.ar.md delete mode 100644 pages/01.administrate/02.install/06.debian/install_on_debian.fr.md delete mode 100644 pages/01.administrate/02.install/06.debian/install_on_debian.it.md delete mode 100644 pages/01.administrate/02.install/06.debian/install_on_debian.md delete mode 100644 pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.es.md delete mode 100644 pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.fr.md delete mode 100644 pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.md delete mode 100644 pages/01.administrate/02.install/08.plugandboot/plug_and_boot.es.md delete mode 100644 pages/01.administrate/02.install/08.plugandboot/plug_and_boot.fr.md delete mode 100644 pages/01.administrate/02.install/08.plugandboot/plug_and_boot.md delete mode 100644 pages/01.administrate/02.install/09.docker/docker.fr.md delete mode 100644 pages/01.administrate/02.install/09.docker/docker.md delete mode 100644 pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.fr.md delete mode 100644 pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.md delete mode 100644 pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.fr.md delete mode 100644 pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.md diff --git a/pages/01.administrate/02.install/01.iso/install_iso.md b/pages/01.administrate/02.install/01.iso/install_iso.md index 664f27e3..3c3321e8 100644 --- a/pages/01.administrate/02.install/01.iso/install_iso.md +++ b/pages/01.administrate/02.install/01.iso/install_iso.md @@ -1,42 +1,392 @@ --- -title: Install on a regular computer +title: Install YunoHost template: docs taxonomy: category: docs +never_cache_twig: true +twig_first: true +process: + markdown: true + twig: true routes: - default: '/install_iso' + default: '/install_process' + aliases: + - '/docker' + - '/install_iso' + - '/install_on_vps' + - '/install_manually' + - '/install_on_raspberry' + - '/install_on_arm_board' + - '/install_on_debian' + - '/install_on_virtualbox' + - '/plug_and_boot' + - '/burn_or_copy_iso' + - '/boot_and_graphical_install' --- +{% set arm, at_home, regular, rpi2plus, rpi1, rpi0, arm_sup, arm_unsup, vps, vps_debian, vps_ynh, virtualbox, internetcube, docker = false, false, false, false, false, false, false, false, false, false, false, false, false, false %} +{% if uri.param('hardware') == 'regular' %} + {% set regular = true %} +{% elseif uri.param('hardware') == 'internetcube' %} + {% set arm, arm_sup, internetcube = true, true, true %} +{% elseif uri.param('hardware') == 'rpi2plus' %} + {% set arm, rpi2plus = true, true %} +{% elseif uri.param('hardware') == 'rpi1' %} + {% set arm, rpi1 = true, true %} +{% elseif uri.param('hardware') == 'rpi0' %} + {% set arm, rpi0 = true, true %} +{% elseif uri.param('hardware') == 'arm_sup' %} + {% set arm, arm_sup = true, true %} +{% elseif uri.param('hardware') == 'arm_unsup' %} + {% set arm, arm_unsup = true, true %} +{% elseif uri.param('hardware') == 'vpsdebian' %} + {% set vps, vps_debian = true, true %} +{% elseif uri.param('hardware') == 'vpsynh' %} + {% set vps, vps_ynh = true, true %} +{% elseif uri.param('hardware') == 'virtualbox' %} + {% set at_home, virtualbox = true, true %} +{% elseif arm or regular %} + {% set at_home = true %} +{% elseif uri.param('hardware') == 'docker' %} + {% set docker = true %} +{% endif %} -## Requirements +{% if docker %} +!! **YunoHost doesn’t support Docker officially since issues with versions 2.4+. In question, YunoHost 2.4+ doesn’t work anymore on Docker because YunoHost requires systemd and Docker has chosen to not support it natively (and there are other problems link to the firewall and services).** +!! +!! **We strongly discourage you to run YunoHost on docker with those images** -[center] -![Laptop](image://laptop.png?resize=200,200&class=inline) -![Desktop](image://desktop.jpg?resize=200,200&class=inline) -![Nettop](image://nettop.jpg?resize=200,200&class=inline) -[/center] +## Community images + +However, community images exist and are available on Docker Hub: + + * [AMD64 (classic) (ancienne version de YunoHost)](https://hub.docker.com/r/domainelibre/yunohost/) + * [I386 (old computers) (ancienne version de YunoHost)](https://hub.docker.com/r/domainelibre/yunohost-i386/) + * [ARMV7 (Raspberry Pi 2/3 ...) (ancienne version de YunoHost)](https://hub.docker.com/r/domainelibre/yunohost-arm/) + * [ARMV6 (Raspberry Pi 1) (old yunoHost version)](https://hub.docker.com/r/tuxalex/yunohost-armv6/) +{% else %} + + +## Pre-requisites + +[figure class="nomargin" caption="On a regular computer"] +![](image://computer.png?resize=150,150&class=inline) +[/figure] + +{% if regular %} +* A x86-compatible hardware dedicated to YunoHost: laptop, nettop, netbook, desktop ... +{% elseif rpi2plus %} +* A Raspberry Pi 2, 3 or 4 ... +{% elseif rpi1 %} +* A RPi 1 ... +{% elseif rpi0 %} +* A RPi zero ... +{% elseif arm_sup %} +* An Orange Pi PC+, or an Onlinuxino Lime 1 or 2 ... +{% elseif arm_unsup %} +* An ARM board with 500MHz CPU ... +{% elseif vps_debian %} +* A dedicated or virtual private server with Debian 10 (with **kernel >= 3.12**)) +preinstalled ... +{% elseif vps_ynh %} +* A dedicated or virtual private server with yunohost preinstalled ... +{% elseif virtualbox %} +* An x86 computer with VirtualBox installed and enough RAM capacity to be able to run a small virtual machine ... +{% endif %} +* ... with 512MB RAM{% if not arm %} and 15GB capacity{% endif %} (at least) + +{% if arm %} +* A power supply (either an adapter or a MicroUSB cable) for your board; +* A microSD card: 16GB capacity (at least) and Class 10 speed rate are highly recommended (like the Transcend 300x); +{% endif %} +{% if regular %} +* A USB stick of at least 1GB capacity OR a standard blank CD +{% endif %} +{% if at_home %} +* A reasonable ISP, preferably with a good and unlimited upstream bandwidth +{% if rpi0 %} +* An usb OTG or a wifi dongle to connect your Raspberry Pi Zero +{% else %} +* An ethernet cable (RJ-45) to connect your server to your router. +{% endif %} +* A computer to read this guide, write the image and access to your server. +{% endif %} +{% if not at_home %} +* A computer or a smartphone to read this guide and access to your server. +{% endif %} + +{% if virtualbox %} +! N.B. : Installing YunoHost in a VirtualBox is usually intended for testing. To run an actual server on the long-term, you usually need a dedicated physical machine (old computer, ARM board...) or a VPS online. +{% endif %} + +{% if at_home %} +## Download the YunoHost image +
+
+
+

Regular computer

+
64 bits - default
+
+![Regular computer](image://computer.png?resize=100,100) +
+
+ + +
+
+ +{% if regular %} +!!! ***Particular case*** : If your server has no graphic card, [prepare iso for booting with serial port](https://github.com/luffah/debian-mkserialiso). +{% elseif virtualbox %} +!!! If your host OS is 32 bits, be sure that you downloaded the 32-bit image previously. +{% endif %} + + +{% if not virtualbox %} +## Flash the YunoHost image +Now that you downloaded the image of YunoHost, you should flash it on {% if arm %}a SD card{% else %}a USB stick or a CD.{% endif %} + +{% if arm %} +![SD card](image://sdcard.jpg?resize=100,100&class=inline) +![Micro SD card](image://micro-sd-card.jpg?resize=100,100&class=inline) +{% else %} +![USB drive](image://usb_key.png?resize=100,100&class=inline) +![CD](image://cd.jpg?resize=100,100&class=inline) +{% endif %} + +[ui-tabs position="top-left" active="0" theme="lite"] +[ui-tab title="(Recommended) With Etcher"] + +Download Etcher for your operating system and install it. + +![Etcher](image://etcher.gif?resize=100%&class=inline) + +Plug your USB stick, select your YunoHost ISO and click "Flash" +[/ui-tab] +[ui-tab title="With UNetbootin"] + +Download UNetbootin for your operating system and install it. + +![UNetbootin](image://unetbootin.png?resize=100%&class=inline) + +Put your USB stick on, select your YunoHost ISO and click "OK" + + +[/ui-tab] +[ui-tab title="With dd"] + +If you are on GNU/Linux / macOS and know your way around command line, you may also flash your USB stick or SD card with `dd`. You can identify which device corresponds to your USB stick or SD card with `fdisk -l` or `lsblk`. A typical SD card name is something like `/dev/mmcblk0`. BE CAREFUL and make sure you got the right name. + +Then run : + +```bash +# Replace /dev/mmcblk0 if the name of your device is different... +dd if=/path/to/yunohost.img of=/dev/mmcblk0 +``` +[/ui-tab] +{% if regular %} +[ui-tab title="Burning a CD/DVD"] +For older devices, you might want to burn a CD/DVD. The software to use depends on your operating system. + +* On Windows, use [ImgBurn](http://www.imgburn.com/) to write the image file on the disc + +* On macOS, use [Disk Utility](http://support.apple.com/kb/ph7025) + +* On GNU/Linux, you have plenty of choices, like [Brasero](https://wiki.gnome.org/Apps/Brasero) or [K3b](http://www.k3b.org/) +[/ui-tab] +{% endif %} +[/ui-tabs] + +{% else %} +## Create a new virtual machine + +![](image://virtualbox_1.png?class=inline) -* A x86-compatible hardware dedicated to YunoHost: laptop, nettop, netbook, desktop. -You can use any computer with **256MB RAM or more**. -* Another computer to read this guide and access to your server. -* A [reasonable ISP](/administrate/advance/isp), preferably with a good and unlimited upstream bandwidth -* A **USB stick** of at least 1GB capacity **OR** a standard **blank CD** -* ***Particular case*** : If your server has no graphic card, [prepare iso for booting with serial port](https://github.com/luffah/debian-mkserialiso). --- -## Installation steps +## Change network settings -[0. Download the YunoHost ISO image](/images?classes=btn,btn-lg,btn-primary) +**NB:** You must carry out this step. If not, the install will fail. -[1. Burn the ISO image on a USB stick](/burn_or_copy_iso?classes=btn,btn-lg,btn-primary) +Go to **Settings** > **Network**: -[2. Boot the machine and run the installation](/boot_and_graphical_install?classes=btn,btn-lg,btn-primary) +![](image://virtualbox_2.png?class=inline) -[3. Proceed with the initial configuration (post-installation)](/postinstall?classes=btn,btn-lg,btn-primary) +* Select `Bridged adapter` + +* Select your interface's name: + + **wlan0** if you are connected wirelessly, else **eth0**. --- -To connect directly to your computer or with [SSH](/ssh) (only on local network: -* User: `root` -* Password: `yunohost` +{% endif %} + + + + + + + + + +{% if arm %} +## Power up the board +* Plug the ethernet cable. +!!! Note: if you want the network configuration to be set up automatically, you have to plug your server with an Ethernet cable right behind your main router.[details="If you have confident in your skills, it's possible to connect your server through WiFi"]If you want your server to connect using WiFi, you may configure it as explained [here](https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md). Alternatively, you can mount the second partition of the SD card and edit the `wpa-supplicant.conf` file prior to boot the card for the first time. On Windows you can use [Paragon ExtFS](https://www.paragon-software.com/home/extfs-windows/) for this - just don't forget to unmount everytime for changes to take effect.[/details] +* Plug the SD card +* Power up the board +!!! You can also boot your server with a screen and keyboard connected to it to see how the boot process is going on.[details="See more"]This method can also be useful to troubleshoot issues and to have a direct access to it.
[/details] +* Wait a couple minutes for your server to boot and to resize automatically partition +* Make sure that your computer (desktop/laptop) is connected to the same local network (i.e. same internet box) as your server. + +TODO improve details feature ? + +{% elseif virtualbox %} +## Boot up the virtual machine + +Start the virtual machine + +![](image://virtualbox_2.1.png?class=inline) + +You will have to select your ISO image here, then you should see the YunoHost's boot screen. + +! If you encounter the error "VT-x is not available", you need probably need to enable Virtualization in the BIOS of your computer. + + +{% else %} +## Boot the machine on your usb stick and run the installation +* Plug the ethernet cable. +!!! Note: if you want the network configuration to be set up automatically, you have to plug your server with an Ethernet cable right behind your main router. The wireless connections are not supported yet, and if you use intermediate routers, the network ports opening will not be automatic: Your server will not be accessible externally. +* If your server was under windows 7+, ask for windows to boot on the USB stick TODO +* Boot up your server with the USB stick or a CD-ROM inserted, and select it as **bootable device** by pressing one of the following keys (hardware specific): +``````, ``````, ``````, ``````, `````` or `````` +{% endif %} + +{% if regular or virtualbox %} +## Launch graphical install + +You should see a screen like this: + +[figure class="nomargin" caption="Preview of the ISO menu"] +![](image://virtualbox_3.png?class=inline) +[/figure] + + 1. Select `Graphical install` + 2. Select your language, your location and your keyboard layout + 3. If a partitioning screen appears, confirm. + !! This will totally erase the data on your hard drive + 4. Let the installer do the rest, it will download required packages and install them. + + ! If it fails, you probably have an Internet connection issue. + ! Check that your computer is physically connected and retry. + + 5. It should reboot automatically. + +TODO what to do with default credentials info ? + +{% endif %} + + + + + + + + +{% else %} +## Run the install script + +Once you have access to a command line on your server (either directly or through SSH), you can install YunoHost by running command as root : + +```bash +curl https://install.yunohost.org | bash +``` + +!!! If `curl` is not installed on your system, you might need to install it with `apt install curl`. +!!! Otherwise, if the command does not do anything, you might want to `apt install ca-certificates` + +--- + +!!! **Note for advanced users concerned with the `curl|bash` approach:** +!!! If you strongly object to the `curl|bash` way (and similar commands) of installing software, consider reading ["Is curl|bash insecure?"](https://sandstorm.io/news/2015-09-24-is-curl-bash-insecure-pgp-verified-install) on Sandstom's blog, and possibly [this discussion on Hacker News](https://news.ycombinator.com/item?id=12766350). + +{% endif %} +## Proceed with initial configuration or restore an archive +!!! if you are in the process of restoring a server from scratch **and** you have a yunohost-made backup, you can skip this process and follow through with the "restoring during the postinstall" step, in the [backup](/backup) page. + +[ui-tabs position="top-left" active="0" theme="lite"] +[ui-tab title="From the web interface"] +You can perform the post-installation with the web interface by entering in your browser {%if at_home %} **`{% if internetcube %}internetcube.local{% else %}yunohost.local{% endif %}`** OR **the local IP address of your server** if it is on your local network (e.g. at home !). The address typically looks like `192.168.x.y` (see [finding your local IP](/finding_the_local_ip)){% else %} **the public IP address of your server** if your server is not on your local network. Typically, if you own a VPS, your VPS provider should have given you the IP of the server.{% endif %} + +During the first visit, you will very likely encounter a security warning related to the certificate used by the server. For now, your server uses a self-signed certificate. You will later be able to add a certificate automatically recognized by web browsers as described in the [certificate documentation](/certificate). For now, you should add a security exception to accept the current certificate. + +{% if not internetcube %} +You should then land on this page : + +[figure class="nomargin" caption="Preview of the Web initial configuration page"] +![Initial configuration page](image://postinstall_web.png?resize=100%&class=inline) +[/figure] + +{% endif %} +[/ui-tab] +[ui-tab title="From the command line"] + +You can also perform the postinstallation with the command `yunohost tools postinstall` directly on the server, or [via SSH](/ssh). + +[figure class="nomargin" caption="Preview of the command-line post-installation"] +![Initial configuration with CLI](image://postinstall_cli.png?resize=100%&class=inline) +[/figure] + +[/ui-tab] +[/ui-tabs] + +{% if not internetcube %} +### Informations asked + +#### Main domain + +This is the first domain name linked to your YunoHost server, but also the one which will be used by your server's users to access the **authentication portal**. It will thus be **visible by everyone**, choose it wisely. + +* If you do not have a domain name, or if you want to use the YunoHost's DynDNS service, choose a sub-domain of **.nohost.me**, **.noho.st** or **.ynh.fr** (e.g. `homersimpson.nohost.me`). Provided that it's not already taken, the domain will be configured automatically and you won't need any further configuration step. + +* If you do know what **DNS** is, you probably want to configure your own domain name here. In this case, please refer to the [DNS page](/dns) page for more informations. + +* If you don't own a domain name and don't want a **.nohost.me**, **.noho.st** or **.ynh.fr**, you can use a local domain. More information on how to setup a local domain can be found [here](/dns_local_network). + +#### Administration password + +This password will be used to access to your server's [administration interface](/admin). You would also use it to connect via **SSH** or **SFTP**. In general terms, this is your **system's key**, [choose it carefully](http://www.wikihow.com/Choose-a-Secure-Password). + + +## Create a first user +[ui-tabs position="top-left" active="0" theme="lite"] +[ui-tab title="From the web interface"] +[/ui-tab] +[ui-tab title="From the command line"] +[/ui-tab] +[/ui-tabs] +{% endif %} + +## Run diagnostic and fix DNS or Router issues if needed +[ui-tabs position="top-left" active="0" theme="lite"] +[ui-tab title="(Recommended) From the web interface"] +[/ui-tab] +[ui-tab title="From the command line"] +[/ui-tab] +[/ui-tabs] + +## Let's Encrypt +[ui-tabs position="top-left" active="0" theme="lite"] +[ui-tab title="From the web interface"] +[/ui-tab] +[ui-tab title="From the command line"] +[/ui-tab] +[/ui-tabs] +{% endif %} diff --git a/pages/01.administrate/02.install/02.vps/install_on_vps.de.md b/pages/01.administrate/02.install/02.vps/install_on_vps.de.md deleted file mode 100644 index 25836606..00000000 --- a/pages/01.administrate/02.install/02.vps/install_on_vps.de.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Installation auf einem dedizierten Server -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_vps' ---- - -*Andere Wege Yunohost zu installieren findest Du **[hier](/install)**.* - -### Vorraussetzungen - -![](image://vps.png?resize=250) - -* Ein dedizierter (Root-Server) oder virtueller privater Server (VPS) -* mit mindestens **512MB** RAM -* und **Debian 10.x (Buster) 64bits** als Betriebssystem - ---- - -## Installationsschritte - -[div class="btn btn-lg btn-default"] [1. Manuelle Installation](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Weiter mit der Erstkonfiguration (nach der Installation)](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/02.vps/install_on_vps.es.md b/pages/01.administrate/02.install/02.vps/install_on_vps.es.md deleted file mode 100644 index 9d8adefc..00000000 --- a/pages/01.administrate/02.install/02.vps/install_on_vps.es.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Instalación en un servidor dedicado -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_vps' ---- - -*Encontrar otros medios de instalar YunoHost **[aquí](/install)**.* - -## Prerrequisitos - -![](image://vps.png?resize=250) - -* Un servidor dedicado o virtual -* con al menos **512MB** RAM -* y **Debian 10.x (Buster) 64bits** como sistema operativo - ---- - -## Etapas de instalación - -[div class="btn btn-lg btn-default"] [1. Instalar manualmente](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Post-instalación](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/02.vps/install_on_vps.fr.md b/pages/01.administrate/02.install/02.vps/install_on_vps.fr.md deleted file mode 100644 index 098ec3fe..00000000 --- a/pages/01.administrate/02.install/02.vps/install_on_vps.fr.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: Installation sur un serveur dédié -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_vps' ---- - -*Trouvez d’autres moyens d’installer YunoHost **[ici](/install)**.* - -## Prérequis - -![](image://vps.png?resize=250) - -* Un serveur dédié ou virtuel -* avec au moins **512MB** RAM -* et **Debian 10.x (Buster) 64bits** comme système d'exploitation - ---- - -## Étapes d’installation - -[div class="btn btn-lg btn-default"] [1. Installer manuellement](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Effectuer la configuration initiale (post-installation)](/postinstall) [/div] diff --git a/pages/01.administrate/02.install/02.vps/install_on_vps.it.md b/pages/01.administrate/02.install/02.vps/install_on_vps.it.md deleted file mode 100644 index 29381ae9..00000000 --- a/pages/01.administrate/02.install/02.vps/install_on_vps.it.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Installa su un server dedicato -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_vps' ---- - -*Scopri altri modi di installare YunoHost **[qui](/install)**.* - -### Pre-requisiti - -![](image://vps.png?resize=250) - -* Un server dedicato o un server privato virtuale (VPS) -* con almeno **512MB** di RAM -* e **Debian 10.x (Buster) 64bits** come sistema operativo - ---- - -## Procedura di installazione - -[div class="btn btn-lg btn-default"] [1. Installa manualmente](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Post-installazione](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/02.vps/install_on_vps.md b/pages/01.administrate/02.install/02.vps/install_on_vps.md deleted file mode 100644 index 887808e7..00000000 --- a/pages/01.administrate/02.install/02.vps/install_on_vps.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: Install on a dedicated server -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_vps' ---- - -*Find other ways to install YunoHost **[here](/install)**.* - -### Pre-requisite - -![VPS](image://vps.png?resize=250) - -* A dedicated or virtual private server -* with at least **512MB** RAM -* and **Debian 10.x (Buster) 64bits** as operating system - ---- - -## Installation steps - -[1. Install manually](/administrate/install/manualinstall?classes=btn,btn-lg,btn-primary) - -[2. Proceed with the initial configuration (post-installation)](/administrate/postinstall?classes=btn,btn-lg,btn-primary) diff --git a/pages/01.administrate/02.install/03.manualinstall/install_manually.de.md b/pages/01.administrate/02.install/03.manualinstall/install_manually.de.md deleted file mode 100644 index 19f4a140..00000000 --- a/pages/01.administrate/02.install/03.manualinstall/install_manually.de.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: YunoHost manuell installieren -template: docs -taxonomy: - category: docs -routes: - default: '/install_manually' ---- - -!!! Dieser Vorgang funktioniert nur unter **Debian 10** (mit **kernel >= 3.12**)) - -Sobald Du Zugriff auf die Kommandozeile auf Deinem Server hast (entweder direkt oder über SSH), kannst Du yunohost installieren, in dem Du das folgende Kommando als root ausführst: - -```bash -curl https://install.yunohost.org | bash -``` - -*(Falls `curl` noch nicht auf Deinem System installiert ist, musst Du es eventuell mit `apt install curl` installieren. Falls das Kommando fehlschlägt, ist eventuell ein `apt install ca-certificates` notwendig.)* - -Sobald die Installation abgeschlossen ist, fahre mit der [**Postinstallation**](/postinstall) fort. - ---- - -**Anmerkung für forgeschrittene Benutzer mit Sorge gegenüber dem `curl|bash` Ansatz** - -Falls Du stark gegen den `curl|bash` Weg (und ähnlicher Kommandos) zum installieren von Software eingestellt bist, empfehlen wir, ["Is curl|bash insecure?"](https://sandstorm.io/news/2015-09-24-is-curl-bash-insecure-pgp-verified-install) auf dem Sandstom Blog, und vielleicht [diese Diskussion auf Hacker News](https://news.ycombinator.com/item?id=12766350) zu lesen (beides Englisch). diff --git a/pages/01.administrate/02.install/03.manualinstall/install_manually.es.md b/pages/01.administrate/02.install/03.manualinstall/install_manually.es.md deleted file mode 100644 index c7837014..00000000 --- a/pages/01.administrate/02.install/03.manualinstall/install_manually.es.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Instalar YunoHost manualmente -template: docs -taxonomy: - category: docs -routes: - default: '/install_manually' ---- - -!!! This procedure only works on **Debian 10** machines (with **kernel >= 3.12**)) - -Una vez que tienes acceso a tu servidor (directamente o con SSH), puedes instalar YunoHost ejecutando este comando como root : - -```bash -curl https://install.yunohost.org | bash -``` - -*(Si `curl` no está instalado en tu sistema, tal vez tendrás que instalarlo con `apt install curl`. De otro modo, si el comando no muestra nada, puedes intentar `apt install ca-certificates`)* - -Cuando la instalación esté terminada, habrá que [**proceder a la post-instalación**](/postinstall) - ---- - -**Nota para los usuarios expertos preocupados por el enfoque `curl|bash`** - -Si no te gusta utilizar `curl|bash` (ou comandos similares) para desplegar software, toma el tiempo de leer ["Is curl|bash insecure?"](https://sandstorm.io/news/2015-09-24-is-curl-bash-insecure-pgp-verified-install) en el blog de Sandstorm, y también [esta discusión en Hacker News](https://news.ycombinator.com/item?id=12766350). - diff --git a/pages/01.administrate/02.install/03.manualinstall/install_manually.fr.md b/pages/01.administrate/02.install/03.manualinstall/install_manually.fr.md deleted file mode 100644 index a7c546f2..00000000 --- a/pages/01.administrate/02.install/03.manualinstall/install_manually.fr.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Installer YunoHost manuellement -template: docs -taxonomy: - category: docs -routes: - default: '/install_manually' ---- - -!!! Cette procédure fonctionne seulement sur des machines avec **Debian 10** (et **kernel >= 3.12**)) - -Une fois que vous avez accès à votre serveur (directement ou par SSH), vous pouvez installer YunoHost en exécutant cette commande en tant que root : - -```bash -curl https://install.yunohost.org | bash -``` - -*(Si `curl` n'est pas installé sur votre système, il vous faudra peut-être l'installer avec `apt install curl`. Autrement, si la commande n'affiche rien du tout, vous pouvez tenter `apt install ca-certificates`)* - -Une fois l'installation terminée, il vous faudra [**procéder à la post-installation**](/postinstall) - ---- - -**Note pour les utilisateurs avancés inquiets à propos de l'approche `curl|bash`** - -Si vous êtes suspicieux de la tendance à utiliser `curl|bash` (ou commandes similaires) pour déployer des logiciels, prenez le temps de lire ["Is curl|bash insecure?"](https://sandstorm.io/news/2015-09-24-is-curl-bash-insecure-pgp-verified-install) sur le blog de Sandstorm, et possiblement [cette discussion sur Hacker News](https://news.ycombinator.com/item?id=12766350). - diff --git a/pages/01.administrate/02.install/03.manualinstall/install_manually.md b/pages/01.administrate/02.install/03.manualinstall/install_manually.md deleted file mode 100644 index 3f75f7e9..00000000 --- a/pages/01.administrate/02.install/03.manualinstall/install_manually.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Installing YunoHost manually -template: docs -taxonomy: - category: docs -routes: - default: '/install_manually' ---- - -! This procedure only works on **Debian 10** machines (with **kernel >= 3.12**)) - -Once you have access to a command line on your server (either directly or through SSH), you can install YunoHost by running command as root : - -```bash -curl https://install.yunohost.org | bash -``` - -!!! If `curl` is not installed on your system, you might need to install it with `apt install curl`. -!!! Otherwise, if the command does not do anything, you might want to `apt install ca-certificates` - -Once the installation is finished, you may want to [**proceed to post-installation**](/postinstall) - ---- - -!!! **Note for advanced users concerned with the `curl|bash` approach:** -!!! If you strongly object to the `curl|bash` way (and similar commands) of installing software, consider reading ["Is curl|bash insecure?"](https://sandstorm.io/news/2015-09-24-is-curl-bash-insecure-pgp-verified-install) on Sandstom's blog, and possibly [this discussion on Hacker News](https://news.ycombinator.com/item?id=12766350). - diff --git a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.de.md b/pages/01.administrate/02.install/04.rpi/install_on_raspberry.de.md deleted file mode 100644 index e9bef176..00000000 --- a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.de.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: YunoHost auf einem Raspberry Pi installieren -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_raspberry' ---- - -*Alle Arten YunoHost zu installieren findest du **[hier](/install)**.* - -![](image://raspberrypi.jpg?resize=300) -![](image://micro-sd-card.jpg) - -!!! Vor der Einrichtung eines Servers zuhause ist es empfehlenswert [mögliche Einschränkungen deines Providers](/isp) zu kennen. Wenn er zu viele Einschränkungen vornimmt, kann es sinnvoll sein ein VPN zu nutzen um diese zum umgehen. - -## Voraussetzungen - -- Einen Raspberry Pi 2, 3 oder 4 (RPi 0 and 1 may work but require some tweaking ... see [this issue](https://github.com/YunoHost/issues/issues/1423)) ; -- Eine microSD Karte: **8 GB** Speicherplatz (mindestens) und **Class 10** Geschwindigkeit werden empfohlen (wie zum Beispiel die [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; -- Ein Netzeil (entweder ein Steckernetzteil oder ein MicroUSB Kabel) ; -- An Netzwerkkabel (RJ-45) um den Raspberry mit dem router zu verbinden. (Raspberry Pi Zero Nutzer können ein OTG Kabel nutzen, [Wifi dongle](https://core-electronics.com.au/tutorials/raspberry-pi-zerow-headless-wifi-setup.html).) ; -- Einen [geeigneten Provider](/isp), am Besten einen mit einer guten upload Geschwindigkeit. - ---- - -## Install with the pre-installed image (recommended) - -[div class="btn btn-lg btn-default"] [0. Download the pre-installed image for Raspberry Pi](/images) [/div] - -[div class="btn btn-lg btn-default"] [1. Flash the SD card with the image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Boot the board and connect to the web interface at `yunohost.local`](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [4. Proceed to post-installation](/postinstall) [/div] - ---- - -## Manual installation (advanced users) - -! We do not recommend the manual installation because it is more technical and longer than using the pre-installed image. This documentation is only intended for advanced users. - -! The latest Raspberry Pi OS Lite images requires a screen and a keyboard, as it is no longer possible to connect directly to the Raspberry through SSH. Nevertheless it is possible to re-enable SSH at boot: before starting your Raspberry, put in the boot partition of the SD card an empty file named `ssh` (without extension). - -0. Install Raspberry Pi OS Lite on the SD card ([instructions](https://www.raspberrypi.org/downloads/raspberry-pi-os/)). - -1. Connect to your Raspberry Pi with the user `pi`. Set the root password with -```bash -sudo passwd root -``` - -2. Edit `/etc/ssh/sshd_config` to allow SSH login for root, by replacing `PermitRootLogin without-password` with `PermitRootLogin yes`. Reload the SSH daemon with `service ssh reload`. - -3. Disconnect and reconnect, this time as root. - -4. Then follow the generic manual install procedure. - diff --git a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.es.md b/pages/01.administrate/02.install/04.rpi/install_on_raspberry.es.md deleted file mode 100644 index 9fbb4fe2..00000000 --- a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.es.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: Instalar YunoHost en un Raspberry Pi -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_raspberry' ---- - -*Encontrar otros medios de instalar YunoHost **[aquí](/install)**.* - -![](image://raspberrypi.jpg?resize=300) -![](image://micro-sd-card.jpg) - -!!! Antes de alojar tu propio servidor en tu casa, te recomendamos que consultes las [posibles restricciones impuestas por tu Proveedor de Internet](/isp). Si tu proveedor es demasiado restrictivo, puedes utilizar un VPN para eludir estas restricciones. - -## Prerrequisitos - -- Un Raspberry Pi 2, 3 o 4 (RPi 0 and 1 may work but require some tweaking ... see [this issue](https://github.com/YunoHost/issues/issues/1423)) ; ; -- Un adaptador de corriente para alimentar la tarjeta ; -- Una tarjeta microSD : al menos **8 Go** y **Clase 10** (por ejemplo una [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; -- Un cable ethernet/RJ-45 para conectar la tarjeta con tu enrutador o tu caja internet. (Con el Raspberry Pi 0, puedes conectar tu tarjeta con un cable OTG y un adaptador Wifi USB.) -- Un [proveedor de Internet ético](/isp), de preferencia con buena velocidad de upload. - ---- - -## Instalación con la imagen pre-instalada (recomendada) - -[div class="btn btn-lg btn-default"] [1. Descargar la imagen para Raspberry Pi](/images) [/div] - -[div class="btn btn-lg btn-default"] [2. Poner la imagen en tu tarjeta SD](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [3. Conectar y encender](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [4. Proceder a la post-instalación](/postinstall) [/div] - ---- - -## Instalación manual (desaconsejada) - -! No recomendamos la instalación manual porque es más técnica y más larga que la instalación vía la imagen per-instalada. Esta documentación sobre todo está destinada a los usuarios expertos. - -! Las últimas versiones de Raspberry Pi OS necesitan una pantalla y un teclado porque ya no es posible conectarse directamente por SSH al Raspberry por defecto. Sin embargo, es posible reactivar el inicio de SSH al boot : solo hay que poner un archivo llamado `ssh` (vacío, sin extensión) en la partición boot de la tarjeta SD. - -0. Instalar Raspberry Pi OS Lite ([instrucciones](https://www.raspberrypi.org/downloads/raspberry-pi-os/)) en la tarjeta SD. - -1. Conéctate con SSH al Raspberry Pi con el usuario pi. Define una contraseña root con -```bash -sudo passwd root -``` - -2. Modifica `/etc/ssh/sshd_config` para autorizar root a que se conecte con ssh, reemplazando `PermitRootLogin without-password` por `PermitRootLogin yes`. Recarga el daemon ssh con `service ssh reload`, y luego re-conéctate como root. - -3. Desconéctate et reconéctate con el usuario root esta vez. - -4. Sigue con el procedimiento de instalación manual genérico. - diff --git a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.fr.md b/pages/01.administrate/02.install/04.rpi/install_on_raspberry.fr.md deleted file mode 100644 index f3651515..00000000 --- a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.fr.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: Installer YunoHost sur Raspberry Pi -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_raspberry' ---- - -*Toutes les autres façons d’installer YunoHost sont listées **[ici](/install)**.* - -![](image://raspberrypi.jpg?resize=300) -![](image://micro-sd-card.jpg) - -!!! Avant d'héberger un serveur chez vous, il est recommandé de prendre connaissance des [possibles limitations liées à votre FAI](/isp). Si votre FAI est trop contraignant, vous pouvez envisager d'utiliser un VPN pour contourner ces limitations. - -## Prérequis - -- Un Raspberry Pi 2, 3 ou 4 (Les RPi 0 et 1 peuvent fonctionner mais nécessitent de bricoler un peu ... voir [cette issue](https://github.com/YunoHost/issues/issues/1423)) ; -- Un adaptateur secteur pour alimenter la carte ; -- Une carte microSD : au moins **8 Go** et **Classe 10** (par exemple une [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; -- Un câble ethernet/RJ-45 pour brancher la carte à votre routeur/box internet. (Avec le Raspberry Pi 0, vous pouvez connecter votre carte avec un câble OTG et un adaptateur Wifi USB.) -- Un [fournisseur d’accès correct](/isp), de préférence avec une bonne vitesse d’upload. - ---- - -## Installation avec l'image pré-installée (recommandée) - -[div class="btn btn-lg btn-default"] [1. Télécharger l'image pour Raspberry Pi](/images) [/div] - -[div class="btn btn-lg btn-default"] [2. Flasher la carte SD avec l'image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [3. Démarrer la carte et se connecter à l'interface web sur `yunohost.local`](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [4. Effectuer la configuration initiale (post-installation)](/postinstall) [/div] - ---- - -## Installation manuelle (déconseillée) - -! Nous déconseillons l'installation manuelle car elle est plus technique et plus longue que l'installation via l'image pré-installée. Cette documentation est surtout destinée aux utilisateurs avancés. - -! Les dernières versions de Raspbian nécessitent un écran et un clavier, car il n'est plus possible de se connecter directement en SSH au Raspberry par défaut. Néanmoins, il est possible de réactiver le lancement de SSH au boot : il suffit de placer dans la partition boot de la carte SD un fichier nommé `ssh`, vide et sans extension. - -0. Installez Raspberry Pi OS Lite ([instructions](https://www.raspberrypi.org/downloads/raspberry-pi-os/)) sur la carte SD. -Le lien vers Raspberry Pi OS Lite est ici : https://downloads.raspberrypi.org/raspbian_lite/images/ - -1. Connectez-vous en SSH au Raspberry Pi avec l'utilisateur pi. Définissez un mot de passe root avec -```bash -sudo passwd root -``` - -2. Modifiez `/etc/ssh/sshd_config` pour autoriser root à se logger en SSH, en remplaçant `PermitRootLogin without-password` par `PermitRootLogin yes`. Rechargez le daemon SSH avec `service ssh reload`, puis re-connectez-vous en root. - -3. Déconnectez-vous et reconnectez-vous avec l'utilisateur root cette fois. - -4. Poursuivez avec la procédure d'installation manuelle générique. - diff --git a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.md b/pages/01.administrate/02.install/04.rpi/install_on_raspberry.md deleted file mode 100644 index 83c781e4..00000000 --- a/pages/01.administrate/02.install/04.rpi/install_on_raspberry.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Install YunoHost on a Raspberry Pi -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_raspberry' ---- - -*Find all the ways to install YunoHost **[here](/install)**.* - -[center] -![Raspberry Pi](image://raspberrypi.jpg?resize=300&class=inline) -![Micro SD card](image://micro-sd-card.jpg?class=inline) -[/center] - -! Before setting up a server at home, it is recommended that you know the [possible limitations imposed by your ISP](/administrate/advance/isp). -! If they are too restrictive, you might consider using a VPN to bypass them. - -## Pre-requisites - -- A Raspberry Pi 2, 3 or 4 (RPi 0 and 1 may work but require some tweaking... see [this issue](https://github.com/YunoHost/issues/issues/1423)); -- An microSD card: **8GB** capacity (at least) and **Class 10** speed rate are highly recommended (like the [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; -- A power supply (either an adapter or a MicroUSB cable); -- An ethernet cable (RJ-45) to connect your Raspberry Pi to your router. (Raspberry Pi Zero users can connect the Pi using an OTG cable, [Wifi dongle](https://core-electronics.com.au/tutorials/raspberry-pi-zerow-headless-wifi-setup.html).); -- A [reasonable ISP](/isp), preferably with a good and unlimited upload bandwidth. - ---- - -## Install with the pre-installed image (recommended) - -[div class="btn btn-lg btn-default"] [0. Download the pre-installed image for Raspberry Pi](/images) [/div] - -[div class="btn btn-lg btn-default"] [1. Flash the SD card with the image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Boot the board and connect to the web interface at `yunohost.local`](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Proceed with the initial configuration (post-installation)](/postinstall) [/div] - ---- - -## Manual installation (advanced users) - -! We do not recommend the manual installation because it is more technical and longer than using the pre-installed image. This documentation is only intended for advanced users. - -! The latest Raspberry Pi OS images requires a screen and a keyboard, as it is no longer possible to connect directly to the Raspberry through SSH. Nevertheless it is possible to re-enable SSH at boot: before starting your Raspberry, put in the boot partition of the SD card an empty file named `ssh` (without extension). - -0. Install Raspberry Pi OS Lite on the SD card ([instructions](https://www.raspberrypi.org/downloads/raspberry-pi-os/)). The Raspberry Pi OS Lite can be found here: https://downloads.raspberrypi.org/raspbian_lite/images/ - -1. Connect to your Raspberry Pi with the user `pi`. Set the root password with -```bash -sudo passwd root -``` - -2. Edit `/etc/ssh/sshd_config` to allow SSH login for root, by replacing `PermitRootLogin without-password` with `PermitRootLogin yes`. Reload the SSH daemon with `service ssh reload`. - -3. Disconnect and reconnect, this time as root. - -4. Then follow the generic manual install procedure. - diff --git a/pages/01.administrate/02.install/05.arm/install_on_arm_board.es.md b/pages/01.administrate/02.install/05.arm/install_on_arm_board.es.md deleted file mode 100644 index 7b3b3ece..00000000 --- a/pages/01.administrate/02.install/05.arm/install_on_arm_board.es.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: Instalar YunoHost en una tarjeta ARM -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_arm_board' ---- - -*Encontrar otros medios de instalar YunoHost **[aquí](/install)**.* - -![](image://olinuxino.jpg?resize=250) -![](image://micro-sd-card.jpg) - -!!! Antes de alojar tu propio servidor en tu casa, te recomendamos que consultes las [posibles restricciones impuestas por tu Proveedor de Internet](/isp). Si tu proveedor es demasiado restrictivo, puedes utilizar un VPN para eludir estas restricciones. - -- Una tarjeta ARM con un procesador de 500 MHz et 512 Mo de memoria RAM ; -- Un adaptador de corriente para alimentar la tarjeta ; -- Una tarjeta microSD : al menos **8 Go** y **Clase 10** (por ejemplo una [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; -- Un cable ethernet/RJ-45 para conectar la carte con el router / caja internet. (Con el Raspberry Pi 0, puedes conectar tu tarjeta con un cable OTG y un adaptador Wifi USB.) -- Un [proveedor de Internet ético](/isp), de preferencia con una buena velocidad de upload. - ---- - -## Instalación con la imagen pre-instalada (recomendada) - -[div class="btn btn-lg btn-default"] [0. Descargar la imagen pre-instalada para tu tarjeta ARM](/images) [/div] -
-Si no existe una imagen dedicada a tu tarjeta, puedes seguir la sección "Instalación encima de ARMbian". - -[div class="btn btn-lg btn-default"] [1. Poner la imagen en tu tarjeta SD](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Conectar y encender](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Proceder a la post-instalación](/postinstall) [/div] - ---- - -## Instalación encima de ARMbian - -[div class="btn btn-lg btn-default"] [0. Descargar la imagen ARMbian para tu tarjeta ARM](https://www.armbian.com/download/) [/div] - -[div class="btn btn-lg btn-default"] [1. Poner la imagen en tu tarjeta SD](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Conectar y encender](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Conectarse en SSH](/ssh) [/div] - -[div class="btn btn-lg btn-default"] [4. Proceder a la post-instalación genérica](/install_manually) [/div] - diff --git a/pages/01.administrate/02.install/05.arm/install_on_arm_board.fr.md b/pages/01.administrate/02.install/05.arm/install_on_arm_board.fr.md deleted file mode 100644 index f7694109..00000000 --- a/pages/01.administrate/02.install/05.arm/install_on_arm_board.fr.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: Installer YunoHost sur carte ARM -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_arm_board' ---- - -*Toutes les autres façons d’installer YunoHost sont listées **[ici](/install)**.* - -![](image://olinuxino.jpg?resize=250) -![](image://micro-sd-card.jpg) - -!!! Avant d'héberger un serveur chez vous, il est recommandé de prendre connaissance des [possibles limitations liées à votre FAI](/isp). Si votre FAI est trop contraignant, vous pouvez envisager d'utiliser un VPN pour contourner ces limitations. - -- Une carte ARM avec un processeur de 500 MHz et 512 Mo de mémoire vive ; -- Un adaptateur secteur pour alimenter la carte ; -- Une carte microSD : au moins **8 Go** et **Classe 10** (par exemple une [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; -- Un câble ethernet/RJ-45 pour brancher la carte à votre routeur/box internet. (Avec le Raspberry Pi 0, vous pouvez connecter votre carte avec un câble OTG et un adaptateur Wifi USB.) -- Un [fournisseur d’accès correct](/isp), de préférence avec une bonne vitesse d’upload. - ---- - -## Installation avec l'image pré-installée (recommandée) - -[div class="btn btn-lg btn-default"] [0. Télécharger l'image pré-installée pour votre carte ARM](/images) [/div] -
-Si il n'existe pas d'image pré-installée pour votre carte, vous pouvez suivre la section "Installation par dessus ARMbian". - -[div class="btn btn-lg btn-default"] [1. Flasher la carte SD avec l'image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Démarrer la carte et se connecter à l'interface web sur `yunohost.local`](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Effectuer la configuration initiale (post-installation)](/postinstall) [/div] - ---- - -## Installation par dessus ARMbian - -[div class="btn btn-lg btn-default"] [0. Télécharger l'image ARMbian pour votre carte ARM](https://www.armbian.com/download/) [/div] - -[div class="btn btn-lg btn-default"] [1. Flasher la carte SD avec l'image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Brancher & démarrer](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Se connecter en SSH](/ssh) [/div] - -[div class="btn btn-lg btn-default"] [4. Suivre la procédure d'installation générique](/install_manually) [/div] - diff --git a/pages/01.administrate/02.install/05.arm/install_on_arm_board.md b/pages/01.administrate/02.install/05.arm/install_on_arm_board.md deleted file mode 100644 index 8f7790af..00000000 --- a/pages/01.administrate/02.install/05.arm/install_on_arm_board.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: Install YunoHost on ARM board -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_arm_board' ---- - -*Find other ways to install YunoHost **[here](/install)**.* - -![](image://olinuxino.jpg?resize=250) -![](image://micro-sd-card.jpg) - -!!! Before setting up a server at home, it is recommended that you know the [possible limitations imposed by your ISP](/isp). If they are too restrictive, you might consider using a VPN to bypass them. - -## Pre-requisites - -- An ARM board with 500MHz CPU and 512 MB of RAM; -- A power supply for your board; -- A microSD card: **8GB** capacity (at least) and **Class 10** speed rate are highly recommended (like the [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)); -- An ethernet cable (RJ-45) to connect your board to your router; -- A [reasonable ISP](/isp), preferably with a good and unlimited upload bandwidth. - ---- - -## Install with the pre-installed image (recommended) - -[div class="btn btn-lg btn-default"] [0. Download the pre-installed image for your board](/images) [/div] -
-If no pre-installed image exists for your board, you can follow the instructions to "Install on top of ARMbian" - -[div class="btn btn-lg btn-default"] [1. Flash the SD card with the image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Boot the board and connect to the web interface at `yunohost.local`](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Proceed with the initial configuration (post-installation)](/postinstall) [/div] - ---- - -## Install on top of ARMbian - -[div class="btn btn-lg btn-default"] [0. Download the ARMbian image for your board](https://www.armbian.com/download/) [/div] - -[div class="btn btn-lg btn-default"] [1. Flash the SD card with the image](/burn_or_copy_iso) [/div] - -[div class="btn btn-lg btn-default"] [2. Plug & boot](/plug_and_boot) [/div] - -[div class="btn btn-lg btn-default"] [3. Connect to your server with SSH](/ssh) [/div] - -[div class="btn btn-lg btn-default"] [4. Follow the generic install procedure](/install_manually) [/div] diff --git a/pages/01.administrate/02.install/06.debian/install_on_debian.ar.md b/pages/01.administrate/02.install/06.debian/install_on_debian.ar.md deleted file mode 100644 index 9600728d..00000000 --- a/pages/01.administrate/02.install/06.debian/install_on_debian.ar.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: التنصيب على ديبيان -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_debian' ---- - -
- -*يمكنكم الإطلاع على طُرق أخرى لتنصيب واي يونوهوست YunoHost **[هنا](/install)**.* - -## المتطلبات - -![](image://debian-logo.png?resize=100) - -على منصة ARM أو على خادوم إفتراضي خاص أو على خادوم إستضافة أو على حاسوب x86 عادي أو على حاسوب ماكينطوش قديم … إلخ - -* على **ديبيان 8** (جيسي) قد تم تنصيبه مِن قبل -* مُتصل بالإنترنت عبر كابل إيثرنت -* مباشرة عبر **النفاذ بالمستخدم الجذري root** أو عبر الـ SSH - ---- - -## خطوات التنصيب - -[div class="btn btn-lg btn-default"] [1. التنصيب يدويًا](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. ما بعد التنصيب](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/06.debian/install_on_debian.fr.md b/pages/01.administrate/02.install/06.debian/install_on_debian.fr.md deleted file mode 100644 index 8927bc75..00000000 --- a/pages/01.administrate/02.install/06.debian/install_on_debian.fr.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: Installation sur Debian -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_debian' ---- - -*Trouvez d’autres moyens d’installer YunoHost **[ici](/install)**.* - -## Prérequis - -![](image://debian-logo.png?resize=100) - -Sur une plateforme ARM, un VPS, un serveur dédié, un ordinateur x86 standard, un vieux Macintosh,... - -* avec **Debian 10** (Buster) installé (avec un kernel >= 3.12) - * l'ISO Debian 10 ISO peut être téléchargée depuis [cette page](https://www.debian.org/releases/buster/debian-installer/). Prenez la 'netinst CD image' pour votre architecture - * N.B. : Avoir un environnement graphique n'est *pas* recommandé ! Les serveurs sont généralement administrés à distance ! -* connecté à Internet -* avec un **accès root** directement ou par SSH - ---- - -## Étapes d’installation - -[div class="btn btn-lg btn-default"] [1. Installer manuellement](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Post-installation](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/06.debian/install_on_debian.it.md b/pages/01.administrate/02.install/06.debian/install_on_debian.it.md deleted file mode 100644 index 65404a42..00000000 --- a/pages/01.administrate/02.install/06.debian/install_on_debian.it.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: Installazione su Debian -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_debian' ---- - -*Altri sistemi per installare Debian **[qui](/install)**.* - -### Requisiti - -![](image://debian-logo.png?resize=100) - -Su un computer ARM, un VPS, un server dedicato, un computer x86 standard, un vecchio Macintosh, ... - -* con **Debian 10** (Buster) installato (con un kernel >= 3.12) - * l'immagine ISO di Debian 10 può essere scaricata da [qui](https://www.debian.org/releases/buster/debian-installer/). Scegli l'immagine 'netinst CD' per la tua architettura. - * N.B.: l'uso di un'interfaccia grafica *non* è raccomandato! I server dovrebbero essere amministrati da remoto! -* connesso ad Internet -* con un **accesso root** diretto o via SSH - ---- - -## Passi per l'installazione - -[div class="btn btn-lg btn-default"] [1. Installazione manuale](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Post-installazione](/postinstall) [/div] diff --git a/pages/01.administrate/02.install/06.debian/install_on_debian.md b/pages/01.administrate/02.install/06.debian/install_on_debian.md deleted file mode 100644 index 53c8c7b2..00000000 --- a/pages/01.administrate/02.install/06.debian/install_on_debian.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: Installation on Debian -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_debian' ---- - -*Find other ways to install YunoHost **[here](/install)**.* - -### Requirements - -![](image://debian-logo.png?resize=100) - -An ARM box, a VPS, a dedicated server, a standard x86 computer, an old Macintosh, ... - -* with **Debian 10** (Buster) installed (with kernel >= 3.12) - * the Debian 10 ISO can be downloaded from [here](https://www.debian.org/releases/buster/debian-installer/). Take the 'netinst CD image' for your architecture. - * N.B. : having a graphical environment is *not* recommended! Servers are meant to be administrated remotely! -* connected to the Internet -* with a direct **root access** or via SSH - ---- - -## Installation steps - -[div class="btn btn-lg btn-default"] [1. Install manually](/install_manually) [/div] - -[div class="btn btn-lg btn-default"] [2. Post-install](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.es.md b/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.es.md deleted file mode 100644 index a26db787..00000000 --- a/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.es.md +++ /dev/null @@ -1,81 +0,0 @@ ---- -title: Instalar YunoHost en VirtualBox -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_virtualbox' ---- - -*Encontrar otros medios de instalar YunoHost **[aquí](/install)**.* - -## Prerrequisitos - -![](image://virtualbox.png?resize=200) - -* Un ordenador x86 con VirtualBox instalado y bastante RAM disponible para iniciar una pequeña máquina virtual. -* La última **imagen ISO YunoHost** estable, disponible [aquí](/images). - -! N.B. : Instalar YunoHost en VirtualBox es útil para probar la distribución. Para realmente autoalojarse a largo plazo, probablement necesitarás una máquina virtual (viejo ordenador, tarjeta ARM...) o un VPS. - ---- - -## 1. Crear una nueva máquina virtual - -![](image://virtualbox_1.png) - -
- -* No es grave si sólo la versión 32-bit está disponible, pero en este caso asegúrate que 32 bit previamente. -* 256Mo de RAM es el requisito mínimo, 512Mo está recomendado (1Go o más si puedes). -* 8Go de almacenaje mínimo requisito. - ---- - -## 2. Modificar la configuración de la red - -Ir a **Settings** > **Network** : - -![](image://virtualbox_2.png) - -
- -* Selectiona `Bridged adapter` - -* Elige tu interfaz según su nombre : - - **wlan0** si estás conectado sin hilo, **eth0** de otro modo. - ---- - -## 3. Inicia tu máquina virtual - -Inicia tu máquina virtual - -![](image://virtualbox_2.1.png) - -
- -Aquí tienes que seleccionar la imagen ISO, luego deberías ver esta pantalla de bienvenida. - -
- -Si te encuentras con el error "VT-x is not available", probablement hay que activar (enable) la virtualización en la opciones del BIOS de tu ordenador. - -
- -![](image://virtualbox_3.png) - -
- -* Elige `Instalación gráfica` - -* Selecciona tu idioma, tu ubicación, la distribución de tu teclado y deja el ordenador terminar el proceso :-) - ---- - -## 4. Efectuar la post-instalación - -Después del reinicio, la máquina debería proponerte de efectuar la post-instalación : - -[div class="btn btn-lg btn-default"] [Documentación de post-instalación](/postinstall) [/div] diff --git a/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.fr.md b/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.fr.md deleted file mode 100644 index 5856e4a5..00000000 --- a/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.fr.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: Installer YunoHost sur VirtualBox -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_virtualbox' ---- - -*Trouvez d’autres moyens d’installer YunoHost **[ici](/install)**.* - -## Prérequis - -![](image://virtualbox.png?resize=200) - -* Un ordinateur x86 avec VirtualBox installé et assez de RAM disponible pour lancer une petite machine virtuelle. -* La dernière **image ISO YunoHost** stable, disponible [ici](/images). - -! N.B. : Installer YunoHost dans une VirtualBox est utile pour tester la distribution. Pour réellement s'autohéberger sur le long terme, il vous faudra probablement une machine physique (vieil ordinateur, carte ARM...) ou un VPS en ligne. - ---- - -## 1. Créer une nouvelle machine virtuelle - -![](image://virtualbox_1.png) - -
- -* Ce n'est pas grave si seulement la version 32-bit est dispo, mais dans ce cas soyez sur d'avoir téléchargé l'image 32 bit précédemment. -* 256Mo de RAM est le minimum requis, 512Mo est recommandé (1Go ou plus si vous pouvez). -* 8Go de stockage minimum requis pour le système, y ajouter l'espace pour vos applications. - ---- - -## 2. Modifier la configuration réseau - -Allez dans **Réglages** > **Réseau** : - -![](image://virtualbox_2.png) - -
- -* Sélectionnez `Accès par pont` - -* Choisissez votre interface selon son nom : - - **wlan0** si vous êtes connecté sans-fil, **eth0** sinon. - ---- - -## 3. Lancer votre machine virtuelle - -Démarrez votre machine virtuelle - -![](image://virtualbox_2.1.png) - -
- -Vous devez sélectionner ici l’image ISO, puis vous devriez voir cet écran d’accueil YunoHost. - -
- -Si vous rencontrez l'erreur "VT-x is not available", il vous faut probablement activer (enable) la virtualisation dans les options du BIOS de votre ordinateur. - -
- -![](image://virtualbox_3.png) - -
- -* Choisissez `Installation graphique` - -* Sélectionnez votre langue, votre emplacement, la disposition de votre clavier et laissez l’installeur faire le reste :-) - ---- - -## 4. Effectuer la post-installation - -Après le redémarrage, la machine devrait vous proposer d'effectuer la -post-installation : - -[div class="btn btn-lg btn-default"] [Documentation de la postinstall](/postinstall) [/div] diff --git a/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.md b/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.md deleted file mode 100644 index 7072c089..00000000 --- a/pages/01.administrate/02.install/07.virtualbox/install_on_virtualbox.md +++ /dev/null @@ -1,87 +0,0 @@ ---- -title: Install YunoHost on VitualBox -template: docs -taxonomy: - category: docs -routes: - default: '/install_on_virtualbox' ---- - -*Find other ways to install YunoHost **[here](/install)**.* - -## Requirements - -![](image://virtualbox.png?resize=200) - -* An x86 computer with VirtualBox installed and enough RAM capacity to be able to run a small virtual machine. -* The latest stable **YunoHost ISO image**, available [here](/images). - -! N.B. : Installing YunoHost in a VirtualBox is usually intended for testing. To run an actual server on the long-term, you usually need a dedicated physical machine (old computer, ARM board...) or a VPS online. - ---- - -## 1. Create a new virtual machine - -![](image://virtualbox_1.png) - -
- -* It's okay if you can only have 32-bit versions, just be sure that you downloaded the 32-bit image previously. -* 256MB RAM is the minimum required, but at least 512MB is recommended (1Go or more if you can). -* 8GB storage is the minimum required for the system, add whatever is necessary for your apps. - ---- - -## 2. Change network settings - -**NB:** You must carry out this step. If not, the install will fail. - -Go to **Settings** > **Network**: - -![](image://virtualbox_2.png) - -
- -* Select `Bridged adapter` - -* Select your interface's name: - - **wlan0** if you are connected wirelessly, else **eth0**. - ---- - -## 3. Boot up the virtual machine - -Start the virtual machine - -![](image://virtualbox_2.1.png) - -
- -You will have to select your ISO image here, then you should see the YunoHost's boot screen. - -
- -If you encounter the error "VT-x is not available", you need probably need to enable Virtualization in the BIOS of your computer. - -
- -![](image://virtualbox_3.png) - -
- -* Select `Graphical install` - -* Select your language, your location, your keyboard layout and let the installer do the rest :-) - ---- - -## 4. Proceed to post-installation - -After the reboot, the system should ask you to proceed with the -post-installation - -[div class="btn btn-lg btn-default"] [Post-install documentation](/postinstall) [/div] - - - diff --git a/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.es.md b/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.es.md deleted file mode 100644 index 0356dd2b..00000000 --- a/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.es.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Conectar e iniciar el servidor -template: docs -taxonomy: - category: docs -routes: - default: '/plug_and_boot' ---- - -* Conecta tu servidor con un cable Ethernet (RJ-45) **directamente sobre tu router principal**. También puedes configurar la conexión wifi como explicado [aquí (fr)](http://raspbian-france.fr/connecter-wifi-raspberry-pi-3/). El wifi también puede configurarse sin haber iniciado la tarjeta, "montando" la segunda partición de la tarjeta y finalmente editando el archivo wpa-supplicant.conf. En Windows, puedes utilizar [Paragon ExtFS](https://www.paragon-software.com/home/extfs-windows/), no olvides de "unmount" para que los cambios estén integrados. - -* No te olvides de **conectar una pantalla** si quieres observar cómo ocurre el inicio, y un teclado si quieres un acceso con **línea de comandos** a tu servidor. - -* Inicia el servidor, el Raspberry Pi va a reiniciarse si-mismo una primera vez, pues espera hasta que veas un gran `Y` cuadrado : - -
- -![](image://boot_screen.png) - -

-*Nota el valor `IP` visible en la pantalla : esto es **la dirección IP local** de tu servidor.* -

- -
diff --git a/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.fr.md b/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.fr.md deleted file mode 100644 index 7e3a907d..00000000 --- a/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.fr.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Brancher et démarrer votre serveur -template: docs -taxonomy: - category: docs -routes: - default: '/plug_and_boot' ---- - -* Mettez la carte SD dans le serveur (pour le cas des cartes ARM) -* Branchez le cable ethernet -* Branchez l'alimentation -* Laissez quelques minutes à votre serveur pour démarrer - -### Se connecter à son serveur - -* Assurez vous que votre ordianteur (de bureau ou portable) est connecté au même réseau local (c'est-à-dire la même box internet) que votre serveur. -* Ouvrez un navigateur internet et tapez `https://yunohost.local` dans la barre d'adresse. -* Si votre serveur est actif, vous rencontrerez très probablement un avertissement de sécurité. Cet avertissement viens du fait que votre serveur utilise pour le moment ce qui s'appelle un "certificat auto-signé" - et que nous utisons un domaine spécial en `.local`. Vous pourrez plus tard ajouter 'vrai' domaine et un certificat automatiquement reconnus par les navigateurs comme décrit dans la page sur les [Certificats](/certificate). En attendant, ajoutez une exception de sécurité pour accepter le certificat actuel. -* Si vous n'arrivez pas à contacter votre serveur avec `yunohost.local`, essayez de [trouver l'IP locale de votre serveur](/finding_the_local_ip) - puis dans la barre d'adresse de votre navigateur, tapez `https://192.168.x.y` -* [Effectuer la configuration initiale (post-installation)](/postinstall) - ---- - -#### [Optionnel] Connecter le serveur à internet en WiFi - -* Vous pouvez aussi configurer la connexion wifi comme expliqué [ici](http://raspbian-france.fr/connecter-wifi-raspberry-pi-3/). -* La configuration wifi peut aussi se faire sans avoir booté sur la carte, en "montant" la deuxième partition de la carte et enfin éditer le fichier `wpa-supplicant.conf`. Sur Windows vous pouvez utiliser [Paragon ExtFS](https://www.paragon-software.com/home/extfs-windows/). Ne pas oublier de "unmount" pour que les changements soient pris en compte. - ---- - -#### [Optionnel] Accès direct avec un écran et clavier - -* Il est possible de brancher un écran et clavier sur votre serveur pour vérifier que le processus de démarrage (boot) se passe bien et pour avoir un accès direct en console. - -![](image://boot_screen.png) diff --git a/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.md b/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.md deleted file mode 100644 index 1216eb8e..00000000 --- a/pages/01.administrate/02.install/08.plugandboot/plug_and_boot.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -title: Plug and boot your server up -template: docs -taxonomy: - category: docs -routes: - default: '/plug_and_boot' ---- - -# Boot and connect to your server - -* Plug the SD card (for ARM boards) -* Plug the ethernet cable -* Plug the power supply -* Wait a couple minutes for your server to boot - -### Connecting to your server - -* Make sure that your computer (desktop/laptop) is connected to the same local network (i.e. same internet box) as your server. -* Open a browser and type `https://yunohost.local` in the address bar. -* If your server is up, you will very likely encounter a security warning. This is because your server is for now using what's called a "self-signed certificate" - and because we're accessing the server through a special `.local` domain. You will later be able to add a proper domain and install a certificate automatically recognized by web browsers as described in the [certificate documentation](/certificate). In the meantime, you should add a security exception to accept the current certificate. -* If you are NOT able to join your server using the `yunohost.local` domain, try to [find the local IP of your server](/finding_the_local_ip) - then in your browser's address bar, type `https://192.168.x.y` -* [Proceed with the initial configuration (post-installation)](/postinstall) - ---- - -#### [Optional] Connecting your server to the internet through WiFi - -* If you want your server to connect using WiFi, you may configure it as explained [here](https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md). -* Alternatively, you can mount the second partition of the SD card and edit the `wpa-supplicant.conf` file prior to boot the card for the first time. On Windows you can use [Paragon ExtFS](https://www.paragon-software.com/home/extfs-windows/) for this - just don't forget to unmount everytime for changes to take effect. - ---- - -#### [Optional] Direct access with a screen and keyboard - -You can also boot your server with a screen and keyboard connected to it to see how the boot process is going on (which can also be useful to troubleshoot issues) and to have a direct access to it. - -![](image://boot_screen.png) diff --git a/pages/01.administrate/02.install/09.docker/docker.fr.md b/pages/01.administrate/02.install/09.docker/docker.fr.md deleted file mode 100644 index 77f9d90f..00000000 --- a/pages/01.administrate/02.install/09.docker/docker.fr.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: Docker et YunoHost -template: docs -taxonomy: - category: docs -routes: - default: '/docker' ---- - -!! **YunoHost ne supporte plus officiellement Docker depuis les problèmes rencontrés avec la version 2.4+. En cause, YunoHost dépend désormait de systemd et docker a décidé qu’ils ne le supporteraient pas nativement (et il y a d'autres problèmes liés au firewall et aux services).** - -## Images communautaires - -Cependant il existe des images communautaires disponibles sur Docker Hub : - - * [AMD64 (classique) (YunoHost v4+)](https://hub.docker.com/r/domainelibre/yunohost/) - * [I386 (anciens pc) (YunoHost v4+)](https://hub.docker.com/r/domainelibre/yunohost-i386/) - * [ARMV7 (Raspberry Pi 2/3 ...) (YunoHost v4+)](https://hub.docker.com/r/domainelibre/yunohost-arm/) - * [ARMV6 (Raspberry Pi 1) (ancienne version de YunoHost)](https://hub.docker.com/r/tuxalex/yunohost-armv6/) diff --git a/pages/01.administrate/02.install/09.docker/docker.md b/pages/01.administrate/02.install/09.docker/docker.md deleted file mode 100644 index e6e9a79f..00000000 --- a/pages/01.administrate/02.install/09.docker/docker.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: Docker and YunoHost -template: docs -taxonomy: - category: docs -routes: - default: '/docker' ---- - -!! **YunoHost doesn’t support Docker officially since issues with versions 2.4+. In question, YunoHost 2.4+ doesn’t work anymore on Docker because YunoHost requires systemd and Docker has chosen to not support it natively (and there are other problems link to the firewall and services).** - -## Community images - -However, community images exist and are available on Docker Hub: - - * [AMD64 (classic) (ancienne version de YunoHost)](https://hub.docker.com/r/domainelibre/yunohost/) - * [I386 (old computers) (ancienne version de YunoHost)](https://hub.docker.com/r/domainelibre/yunohost-i386/) - * [ARMV7 (Raspberry Pi 2/3 ...) (ancienne version de YunoHost)](https://hub.docker.com/r/domainelibre/yunohost-arm/) - * [ARMV6 (Raspberry Pi 1) (old yunoHost version)](https://hub.docker.com/r/tuxalex/yunohost-armv6/) diff --git a/pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.fr.md b/pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.fr.md deleted file mode 100644 index 215980ad..00000000 --- a/pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.fr.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Flasher l'ISO YunoHost -template: docs -taxonomy: - category: docs -routes: - default: '/burn_or_copy_iso' ---- - -Maintenant que vous avez téléchargé l’image ISO de YunoHost, vous devez la mettre sur un support physique. Classiquement, il s'agit d'une **Clé USB** ou d'une **Carte SD**. - -![](image://sdcard.jpg?resize=100) -![](image://micro-sd-card.jpg?resize=100) -![](image://usb_key.png?resize=150) -![](image://cd.jpg?resize=100) - ---- - -### (Recommandé) Avec Etcher - -Téléchargez Etcher pour votre système d'exploitation et installez-le. - -![](image://etcher.gif) - -Branchez votre clef USB, selectionnez l'ISO YunoHost puis cliquez sur 'Flash' - -### Avec UNetbootin - -Téléchargez UNetbootin pour votre système d'exploitation et installez-le. - -![](image://unetbootin.png) - -Branchez votre clef USB, selectionnez l'ISO YunoHost puis cliquez sur 'OK' - -### Avec `dd` - -Si vous êtes familier avec la ligne de commande, il est possible de flasher la clef USB ou carte SD avec `dd`. Vous pouvez identifier le nom du périphérique avec `fdisk -l` ou `lsblk`. Une carte SD s'apelle typiquement `/dev/mmcblk0`. ATTENTION à faire attention de prendre le bon nom ! - -```bash -# Remplacer /dev/mmcblk0 par le nom de votre périphérique -dd if=/chemin/de/yunohost.iso of=/dev/mmcblk0 -``` - -### CD/DVD - -Pour les anciens matériels, il vous faut peut-être utiliser un CD/DVD. Le logiciel à utiliser est différent suivant votre système d’exploitation. - -* Sur Windows, utilisez [ImgBurn](http://www.imgburn.com/) pour écrire l’image sur le disque - -* Sur macOS, utilisez [Disk Utility](http://support.apple.com/kb/ph7025) - -* Sur GNU/Linux, vous avez plusieurs choix, tels que [Brasero](https://wiki.gnome.org/Apps/Brasero) ou [K3b](http://www.k3b.org/) diff --git a/pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.md b/pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.md deleted file mode 100644 index 0dbe9f6d..00000000 --- a/pages/01.administrate/02.install/11.burn_iso/burn_or_copy_iso.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: Flashing the YunoHost ISO -template: docs -taxonomy: - category: docs -routes: - default: '/burn_or_copy_iso' ---- - -Now that you downloaded the ISO image of YunoHost, you should flash/burn it on a physical medium. Typically, this is done on a **USB stick** or an **SD card**. - -[center] -![SD card](image://sdcard.jpg?resize=100,100&class=inline) -![Micro SD card](image://micro-sd-card.jpg?resize=100,100&class=inline) -![USB drive](image://usb_key.png?resize=100,100&class=inline) -![CD](image://cd.jpg?resize=100,100&class=inline) -[/center] - -### (Recommended) With Etcher - -Download Etcher for your operating system and install it. - -[center] -![Etcher](image://etcher.gif?resize=100%&class=inline) -[/center] - -Plug your USB stick, select your YunoHost ISO and click "Flash" - -### With UNetbootin - -Download UNetbootin for your operating system and install it. - -[center] -![UNetbootin](image://unetbootin.png?resize=100%&class=inline) -[/center] - -Put your USB stick on, select your YunoHost ISO and click "OK" - - -### With `dd` - -If you are on GNU/Linux / macOS and know your way around command line, you may also flash your USB stick or SD card with `dd`. You can identify which device corresponds to your USB stick or SD card with `fdisk -l` or `lsblk`. A typical SD card name is something like `/dev/mmcblk0`. BE CAREFUL and make sure you got the right name. - -Then run : - -```bash -# Replace /dev/mmcblk0 if the name of your device is different... -dd if=/path/to/yunohost.img of=/dev/mmcblk0 -``` - -### Burning a CD/DVD - -For older devices, you might want to burn a CD/DVD. The software to use depends on your operating system. - -* On Windows, use [ImgBurn](http://www.imgburn.com/) to write the image file on the disc - -* On macOS, use [Disk Utility](http://support.apple.com/kb/ph7025) - -* On GNU/Linux, you have plenty of choices, like [Brasero](https://wiki.gnome.org/Apps/Brasero) or [K3b](http://www.k3b.org/) diff --git a/pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.fr.md b/pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.fr.md deleted file mode 100644 index 7d18ddb3..00000000 --- a/pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.fr.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Installation graphique -template: docs -taxonomy: - category: docs -routes: - default: '/boot_and_graphical_install' ---- - -Maintenant que vous possédez un support YunoHost, vous pouvez procéder à l’installation. - -## 1. Brancher le câble réseau - -Si vous souhaitez que la configuration réseau soit configurée automatiquement, vous devez brancher votre serveur avec un câble **Ethernet** directement **derrière votre routeur (ou box) principal**. - -Les connexions sans-fil ne sont pas supportées pour le moment, et si vous utilisez des routeurs intermédiaires, l’ouverture des ports réseau ne se fera pas automatiquement : votre serveur ne sera pas accessible depuis l’extérieur. - -## 2. Démarrer sur le CD/la clé USB - -Démarrez votre serveur avec la clé USB ou le CD-ROM inséré, et sélectionnez-le comme **périphérique de démarrage** en pressant l’une des touches suivantes (dépendant de votre ordinateur) : -```<Échap>```, ``````, ``````, ``````, `````` or `````` - -## 3. Lancer l’installation graphique - -Vous devriez voir un écran comme ça : - -![](image://virtualbox_3.png) - - -* Sélectionnez `Graphical install` - -* Sélectionnez votre langue, votre localisation et votre agencement de clavier. - -* Si un écran de partitionnement apparaît, confirmez simplement. - -!! **Attention** : Cette opération effacera totalement les données sur votre disque dur - -* Laissez l’installateur faire le reste, il téléchargera les paquets requis et les installera. - -!!! Si cette opération échoue, vous avez probablement un problème de connexion à Internet. Vérifiez que votre serveur est bien branché et réessayez. - -* L’ordinateur devrait redémarrer automatiquement à la fin de l’installation. - -## 4. Log in - -Après avoir redémarré, votre machine devrait afficher un écran noir avec -quelques mots vous invitant à vous identifier. Vous pouvez utiliser les -identifiants suivants : - -* User: **root** -* Password: **yunohost** - -## 5. Procéder à la post-installation - -[div class="btn btn-lg btn-default"] [Documentation de la post-installation](/postinstall) [/div] - diff --git a/pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.md b/pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.md deleted file mode 100644 index 440803f0..00000000 --- a/pages/01.administrate/02.install/12.graphical_install/boot_and_graphical_install.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Graphical installation -template: docs -taxonomy: - category: docs -routes: - default: '/boot_and_graphical_install' ---- - -Now that your YunoHost install medium, you can start with the installation. - -## 1. Plug the network cable - -If you want the network configuration to be set up automatically, you have to plug your server with an **Ethernet** cable **right behind your main router**. - -The wireless connections are not supported yet, and if you use intermediate routers, the network ports opening will not be automatic: Your server will not be accessible externally. - -## 2. Boot on CD / USB stick - -Boot up your server with the USB stick or a CD-ROM inserted, and select it as **bootable device** by pressing one of the following keys (hardware specific): -``````, ``````, ``````, ``````, `````` or `````` - -## 3. Launch graphical installation - -You should see a screen like this: - -![VirtualBox](image://virtualbox_3.png?class=center) - -1. Select `Graphical install` -2. Select your language, your location and your keyboard layout -3. If a partitioning screen appears, confirm. - !! This will totally erase the data on your hard drive -4. Let the installer do the rest, it will download required packages and install them. - - ! If it fails, you probably have an Internet connection issue. - ! Check that your computer is physically connected and retry. - -5. It should reboot automatically. - -## 4. Log in - -After the reboot, you should see a black screen with a few words asking you to -log in. You can log with the following credentials : - -* User: `root` -* Password: `yunohost` - -## 5. Proceed to post-installation - -[div class="btn btn-lg btn-default"] [Post-install documentation](/administrate/postinstall) [/div] - - From 01efcdfae09e8d9c7d5c2afffbc6fa27c773a015 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 17:31:05 +0100 Subject: [PATCH 03/19] [enh] Rename install iso in a generic name --- .../02.install/{01.iso => 01.install_process}/install_iso.de.md | 0 .../02.install/{01.iso => 01.install_process}/install_iso.es.md | 0 .../02.install/{01.iso => 01.install_process}/install_iso.fr.md | 0 .../02.install/{01.iso => 01.install_process}/install_iso.it.md | 0 .../02.install/{01.iso => 01.install_process}/install_iso.md | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename pages/01.administrate/02.install/{01.iso => 01.install_process}/install_iso.de.md (100%) rename pages/01.administrate/02.install/{01.iso => 01.install_process}/install_iso.es.md (100%) rename pages/01.administrate/02.install/{01.iso => 01.install_process}/install_iso.fr.md (100%) rename pages/01.administrate/02.install/{01.iso => 01.install_process}/install_iso.it.md (100%) rename pages/01.administrate/02.install/{01.iso => 01.install_process}/install_iso.md (100%) diff --git a/pages/01.administrate/02.install/01.iso/install_iso.de.md b/pages/01.administrate/02.install/01.install_process/install_iso.de.md similarity index 100% rename from pages/01.administrate/02.install/01.iso/install_iso.de.md rename to pages/01.administrate/02.install/01.install_process/install_iso.de.md diff --git a/pages/01.administrate/02.install/01.iso/install_iso.es.md b/pages/01.administrate/02.install/01.install_process/install_iso.es.md similarity index 100% rename from pages/01.administrate/02.install/01.iso/install_iso.es.md rename to pages/01.administrate/02.install/01.install_process/install_iso.es.md diff --git a/pages/01.administrate/02.install/01.iso/install_iso.fr.md b/pages/01.administrate/02.install/01.install_process/install_iso.fr.md similarity index 100% rename from pages/01.administrate/02.install/01.iso/install_iso.fr.md rename to pages/01.administrate/02.install/01.install_process/install_iso.fr.md diff --git a/pages/01.administrate/02.install/01.iso/install_iso.it.md b/pages/01.administrate/02.install/01.install_process/install_iso.it.md similarity index 100% rename from pages/01.administrate/02.install/01.iso/install_iso.it.md rename to pages/01.administrate/02.install/01.install_process/install_iso.it.md diff --git a/pages/01.administrate/02.install/01.iso/install_iso.md b/pages/01.administrate/02.install/01.install_process/install_iso.md similarity index 100% rename from pages/01.administrate/02.install/01.iso/install_iso.md rename to pages/01.administrate/02.install/01.install_process/install_iso.md From 539fb88dd5435dc05ea45d2a0e60d99e9aa40234 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 17:32:38 +0100 Subject: [PATCH 04/19] [enh] Rename install iso in a generic name --- .../{install_iso.de.md => install_process.de.md} | 0 .../{install_iso.es.md => install_process.es.md} | 0 .../{install_iso.fr.md => install_process.fr.md} | 0 .../{install_iso.it.md => install_process.it.md} | 0 .../01.install_process/{install_iso.md => install_process.md} | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename pages/01.administrate/02.install/01.install_process/{install_iso.de.md => install_process.de.md} (100%) rename pages/01.administrate/02.install/01.install_process/{install_iso.es.md => install_process.es.md} (100%) rename pages/01.administrate/02.install/01.install_process/{install_iso.fr.md => install_process.fr.md} (100%) rename pages/01.administrate/02.install/01.install_process/{install_iso.it.md => install_process.it.md} (100%) rename pages/01.administrate/02.install/01.install_process/{install_iso.md => install_process.md} (100%) diff --git a/pages/01.administrate/02.install/01.install_process/install_iso.de.md b/pages/01.administrate/02.install/01.install_process/install_process.de.md similarity index 100% rename from pages/01.administrate/02.install/01.install_process/install_iso.de.md rename to pages/01.administrate/02.install/01.install_process/install_process.de.md diff --git a/pages/01.administrate/02.install/01.install_process/install_iso.es.md b/pages/01.administrate/02.install/01.install_process/install_process.es.md similarity index 100% rename from pages/01.administrate/02.install/01.install_process/install_iso.es.md rename to pages/01.administrate/02.install/01.install_process/install_process.es.md diff --git a/pages/01.administrate/02.install/01.install_process/install_iso.fr.md b/pages/01.administrate/02.install/01.install_process/install_process.fr.md similarity index 100% rename from pages/01.administrate/02.install/01.install_process/install_iso.fr.md rename to pages/01.administrate/02.install/01.install_process/install_process.fr.md diff --git a/pages/01.administrate/02.install/01.install_process/install_iso.it.md b/pages/01.administrate/02.install/01.install_process/install_process.it.md similarity index 100% rename from pages/01.administrate/02.install/01.install_process/install_iso.it.md rename to pages/01.administrate/02.install/01.install_process/install_process.it.md diff --git a/pages/01.administrate/02.install/01.install_process/install_iso.md b/pages/01.administrate/02.install/01.install_process/install_process.md similarity index 100% rename from pages/01.administrate/02.install/01.install_process/install_iso.md rename to pages/01.administrate/02.install/01.install_process/install_process.md From 68a3b4c3afc9d9627bd0ded5f6fb14dc2be22d14 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 17:50:17 +0100 Subject: [PATCH 05/19] [wip] Delete post install section --- .../02.findinglocalip}/finding_the_local_ip.fr.md | 0 .../02.findinglocalip}/finding_the_local_ip.md | 0 .../03.isp_box_config}/isp_box_config.es.md | 0 .../03.isp_box_config}/isp_box_config.fr.md | 0 .../03.isp_box_config}/isp_box_config.md | 0 .../{03.postinstall/02.dns => 02.install/04.dns}/dns_config.es.md | 0 .../{03.postinstall/02.dns => 02.install/04.dns}/dns_config.fr.md | 0 .../{03.postinstall/02.dns => 02.install/04.dns}/dns_config.md | 0 .../05.certificate}/certificate.es.md | 0 .../05.certificate}/certificate.fr.md | 0 .../03.certificate => 02.install/05.certificate}/certificate.md | 0 .../04.diagnostics => 02.install/05.diagnostics}/diagnostic.fr.md | 0 .../04.diagnostics => 02.install/05.diagnostics}/diagnostic.md | 0 13 files changed, 0 insertions(+), 0 deletions(-) rename pages/01.administrate/{03.postinstall/00.findinglocalip => 02.install/02.findinglocalip}/finding_the_local_ip.fr.md (100%) rename pages/01.administrate/{03.postinstall/00.findinglocalip => 02.install/02.findinglocalip}/finding_the_local_ip.md (100%) rename pages/01.administrate/{03.postinstall/01.isp_box_config => 02.install/03.isp_box_config}/isp_box_config.es.md (100%) rename pages/01.administrate/{03.postinstall/01.isp_box_config => 02.install/03.isp_box_config}/isp_box_config.fr.md (100%) rename pages/01.administrate/{03.postinstall/01.isp_box_config => 02.install/03.isp_box_config}/isp_box_config.md (100%) rename pages/01.administrate/{03.postinstall/02.dns => 02.install/04.dns}/dns_config.es.md (100%) rename pages/01.administrate/{03.postinstall/02.dns => 02.install/04.dns}/dns_config.fr.md (100%) rename pages/01.administrate/{03.postinstall/02.dns => 02.install/04.dns}/dns_config.md (100%) rename pages/01.administrate/{03.postinstall/03.certificate => 02.install/05.certificate}/certificate.es.md (100%) rename pages/01.administrate/{03.postinstall/03.certificate => 02.install/05.certificate}/certificate.fr.md (100%) rename pages/01.administrate/{03.postinstall/03.certificate => 02.install/05.certificate}/certificate.md (100%) rename pages/01.administrate/{03.postinstall/04.diagnostics => 02.install/05.diagnostics}/diagnostic.fr.md (100%) rename pages/01.administrate/{03.postinstall/04.diagnostics => 02.install/05.diagnostics}/diagnostic.md (100%) diff --git a/pages/01.administrate/03.postinstall/00.findinglocalip/finding_the_local_ip.fr.md b/pages/01.administrate/02.install/02.findinglocalip/finding_the_local_ip.fr.md similarity index 100% rename from pages/01.administrate/03.postinstall/00.findinglocalip/finding_the_local_ip.fr.md rename to pages/01.administrate/02.install/02.findinglocalip/finding_the_local_ip.fr.md diff --git a/pages/01.administrate/03.postinstall/00.findinglocalip/finding_the_local_ip.md b/pages/01.administrate/02.install/02.findinglocalip/finding_the_local_ip.md similarity index 100% rename from pages/01.administrate/03.postinstall/00.findinglocalip/finding_the_local_ip.md rename to pages/01.administrate/02.install/02.findinglocalip/finding_the_local_ip.md diff --git a/pages/01.administrate/03.postinstall/01.isp_box_config/isp_box_config.es.md b/pages/01.administrate/02.install/03.isp_box_config/isp_box_config.es.md similarity index 100% rename from pages/01.administrate/03.postinstall/01.isp_box_config/isp_box_config.es.md rename to pages/01.administrate/02.install/03.isp_box_config/isp_box_config.es.md diff --git a/pages/01.administrate/03.postinstall/01.isp_box_config/isp_box_config.fr.md b/pages/01.administrate/02.install/03.isp_box_config/isp_box_config.fr.md similarity index 100% rename from pages/01.administrate/03.postinstall/01.isp_box_config/isp_box_config.fr.md rename to pages/01.administrate/02.install/03.isp_box_config/isp_box_config.fr.md diff --git a/pages/01.administrate/03.postinstall/01.isp_box_config/isp_box_config.md b/pages/01.administrate/02.install/03.isp_box_config/isp_box_config.md similarity index 100% rename from pages/01.administrate/03.postinstall/01.isp_box_config/isp_box_config.md rename to pages/01.administrate/02.install/03.isp_box_config/isp_box_config.md diff --git a/pages/01.administrate/03.postinstall/02.dns/dns_config.es.md b/pages/01.administrate/02.install/04.dns/dns_config.es.md similarity index 100% rename from pages/01.administrate/03.postinstall/02.dns/dns_config.es.md rename to pages/01.administrate/02.install/04.dns/dns_config.es.md diff --git a/pages/01.administrate/03.postinstall/02.dns/dns_config.fr.md b/pages/01.administrate/02.install/04.dns/dns_config.fr.md similarity index 100% rename from pages/01.administrate/03.postinstall/02.dns/dns_config.fr.md rename to pages/01.administrate/02.install/04.dns/dns_config.fr.md diff --git a/pages/01.administrate/03.postinstall/02.dns/dns_config.md b/pages/01.administrate/02.install/04.dns/dns_config.md similarity index 100% rename from pages/01.administrate/03.postinstall/02.dns/dns_config.md rename to pages/01.administrate/02.install/04.dns/dns_config.md diff --git a/pages/01.administrate/03.postinstall/03.certificate/certificate.es.md b/pages/01.administrate/02.install/05.certificate/certificate.es.md similarity index 100% rename from pages/01.administrate/03.postinstall/03.certificate/certificate.es.md rename to pages/01.administrate/02.install/05.certificate/certificate.es.md diff --git a/pages/01.administrate/03.postinstall/03.certificate/certificate.fr.md b/pages/01.administrate/02.install/05.certificate/certificate.fr.md similarity index 100% rename from pages/01.administrate/03.postinstall/03.certificate/certificate.fr.md rename to pages/01.administrate/02.install/05.certificate/certificate.fr.md diff --git a/pages/01.administrate/03.postinstall/03.certificate/certificate.md b/pages/01.administrate/02.install/05.certificate/certificate.md similarity index 100% rename from pages/01.administrate/03.postinstall/03.certificate/certificate.md rename to pages/01.administrate/02.install/05.certificate/certificate.md diff --git a/pages/01.administrate/03.postinstall/04.diagnostics/diagnostic.fr.md b/pages/01.administrate/02.install/05.diagnostics/diagnostic.fr.md similarity index 100% rename from pages/01.administrate/03.postinstall/04.diagnostics/diagnostic.fr.md rename to pages/01.administrate/02.install/05.diagnostics/diagnostic.fr.md diff --git a/pages/01.administrate/03.postinstall/04.diagnostics/diagnostic.md b/pages/01.administrate/02.install/05.diagnostics/diagnostic.md similarity index 100% rename from pages/01.administrate/03.postinstall/04.diagnostics/diagnostic.md rename to pages/01.administrate/02.install/05.diagnostics/diagnostic.md From cdfe86380096eed417f21069cf082cc635940a75 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 17:51:06 +0100 Subject: [PATCH 06/19] [enh] Delete post install section --- .../certificate.es.md | 0 .../certificate.fr.md | 0 .../certificate.md | 0 .../03.postinstall/postinstall.es.md | 72 ----------------- .../03.postinstall/postinstall.fr.md | 78 ------------------- .../03.postinstall/postinstall.md | 71 ----------------- 6 files changed, 221 deletions(-) rename pages/01.administrate/02.install/{05.certificate => 06.certificate}/certificate.es.md (100%) rename pages/01.administrate/02.install/{05.certificate => 06.certificate}/certificate.fr.md (100%) rename pages/01.administrate/02.install/{05.certificate => 06.certificate}/certificate.md (100%) delete mode 100644 pages/01.administrate/03.postinstall/postinstall.es.md delete mode 100644 pages/01.administrate/03.postinstall/postinstall.fr.md delete mode 100644 pages/01.administrate/03.postinstall/postinstall.md diff --git a/pages/01.administrate/02.install/05.certificate/certificate.es.md b/pages/01.administrate/02.install/06.certificate/certificate.es.md similarity index 100% rename from pages/01.administrate/02.install/05.certificate/certificate.es.md rename to pages/01.administrate/02.install/06.certificate/certificate.es.md diff --git a/pages/01.administrate/02.install/05.certificate/certificate.fr.md b/pages/01.administrate/02.install/06.certificate/certificate.fr.md similarity index 100% rename from pages/01.administrate/02.install/05.certificate/certificate.fr.md rename to pages/01.administrate/02.install/06.certificate/certificate.fr.md diff --git a/pages/01.administrate/02.install/05.certificate/certificate.md b/pages/01.administrate/02.install/06.certificate/certificate.md similarity index 100% rename from pages/01.administrate/02.install/05.certificate/certificate.md rename to pages/01.administrate/02.install/06.certificate/certificate.md diff --git a/pages/01.administrate/03.postinstall/postinstall.es.md b/pages/01.administrate/03.postinstall/postinstall.es.md deleted file mode 100644 index 4b670635..00000000 --- a/pages/01.administrate/03.postinstall/postinstall.es.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -title: Post-instalación -template: docs -taxonomy: - category: docs -routes: - default: '/postinstall' ---- - -La etapa que llamamos « **post-instalación** » de hecho es la etapa de configuración inicial de YunoHost. Se ejecuta después de la **instalación** del sistema mismo. - -NB : Si estàs en el proceso de instalar de nuevo a un servidor **y** que ya tienes un archivo creada por yunohost, no debes seguir a està etapa y encontro seguir a la seccion "Restoring during the postinstall" de la pagina [backup](/backup). - -### Vía la interfaz web - -Puedes acceder a la post-instalación gráfica entrando en un navegador web : -* la dirección **IP local de tu servidor** si éste está conectado a tu red local (en general `192.168.x.x`, ver ['Encontrar mi IP' en la página sobre SSH](/ssh)) -* la dirección **IP pública de tu servidor** si éste no está conectado a tu red local (por ejemplo, si es un VPS, tu proveedor debería haberte transmitido la dirección IP). - -Durante la primera visita, encontrarás muy probablemente una advertencia de seguridad relacionada al certificado utilizado. De momento, tu servidor utiliza un certificado autofirmado. Después, podrás utilizar un certificado automáticamente reconocido por los navegadores como descrito en la página sobre los [Certificados](/certificate). Mientras tanto, añade una excepción de seguridad para aceptar el certificado vigente. - -Luego, llegas en esta página : - -![](image://postinstall_web.png) - -*

Vistazo de la post-instalación Web

* - -### Vía la interfaz de línea de comando - -También puedes acceder a la post-instalación entrando el comando `yunohost tools postinstall` directamente en el servidor o [en SSH](/ssh). - -![](image://postinstall_cli.png) - -*

Vistazo de la post-instalación con línea de comando

* - -## Informaciones solicitadas - -### Dominio principal - -Es el nombre de dominio que permitirá el acceso a tu servidor así como al portal de autenticación de los usuarios. Entonces estará **visible por todo el mundo** : elígelo en consecuencia. - -* YunoHost te propone un DNS dinámico, proveando nombres de dominio del tipo *midominio.nohost.me*, *midominio.noho.st* o *midominio.ynh.fr*. Si no posees un nombre de dominio y/o que quieres aprovechar de este servicio, elige un dominio terminando con `.nohost.me`, `.noho.st` o `.ynh.fr`. Si no está utlizado ya, el dominio automáticamente estará vinculado a tu servidor YunoHost, y no tendrás más etapas de configuración. - -* Si, en cambio, dominas la noción de **DNS**, puedes utilizar tu propio nombre de dominio. En este caso, refiérete a la página [yunohost.org/dns](/dns) por más información. - -* Si no tienes nombre de dominio y que no quieres uno que acabe con *.nohost.me*, *.noho.st* ou *.ynh.fr*, puedes utilizar un dominio local. Más información sobre cómo [acceder a tu servidor desde la red local](/dns_local_network). - - -### Contraseña de administración - -Es la contraseña que permitirá acceder a la [interfaz de administración](/admin) de tu servidor. También podrás utilizarla para conectarte remotamente vía **SSH**, o vía **SFTP** para transferir archivos. - -De manera general, ésta es la **llave de entrada en tu sistema**, pues piensa en **[elegirla atentamente](https://es.wikihow.com/escoger-una-contrase%C3%B1a-segura)**. - -
- ---- - -## Enhorabuena ! - -Si llegas aquí después de haber visto “YunoHost fue instalado con éxito" desde tu navegador ou tu interfaz de línea de comando, pues felicitaciones ! - - -### ¿ Y ahora ? - -- Si te auto-alojas en casa y sin VPN, tienes que asegurarte que [los puertos de tu caja internet estén redirigidos](/isp_box_config) ; -- Si utilizas tu propio nombre de dominio (i.e. que no sea un nohost.me / - noho.st), tienes que [configurar el nombre de dominio según la configuración recomendada](/dns_config) ; -- Si no puedes configurar el nombre de dominio de momento (porque todavía no lo has comprado, ou porque es un dominio test), puedes solucionar temporalmente el problema con las instrucciones del último párrafo [aquí](/dns_local_network) ; -- No te asustes demasiado por [la advertencia a propósito del certificado](/certificate), tendrás la posibilidad de obtener un certificado Let's Encrypt :). -- Echa un vistazo a las [aplicaciones disponibles](/apps) ! - diff --git a/pages/01.administrate/03.postinstall/postinstall.fr.md b/pages/01.administrate/03.postinstall/postinstall.fr.md deleted file mode 100644 index 440c09c9..00000000 --- a/pages/01.administrate/03.postinstall/postinstall.fr.md +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Post-installation -template: docs -taxonomy: - category: docs -routes: - default: '/postinstall' ---- - -L’étape appelée « **post-installation** » est en fait l’étape de configuration initiale de YunoHost. Il faut l’exécuter après l’**installation** du système en lui-même. - -NB : Si vous êtes en train de restaurer un système complet **et** que vous disposez d'un fichier de sauvegarde généré par YunoHost, vous devez sauter cette étape et vous référer à la section "Restaurer durant la postinstallation" sur la page [sauvegardes](/backup). - -### Via l'interface web - -Vous pouvez accéder à la post-installation graphique en entrant dans un navigateur web : -* l'adresse **`yunohost.local`** OU l’adresse **IP locale de votre serveur** si celui-ci est connecté à votre réseau local (généralement `192.168.x.x`, voir ['Trouver son IP locale'](/finding_the_local_ip)) -* l’adresse **IP publique de votre serveur** si celui-ci n’est pas connecté à votre réseau local (par exemple dans le cas d'un VPS, votre fournisseur devrait vous avoir transmis l'adresse IP). - -Lors de la première visite, vous rencontrerez très probablement un avertissement de sécurité lié au certificat utilisé. Pour le moment, votre serveur utilise un certificat auto-signé. Vous pourrez plus tard ajouter un certificat automatiquement reconnus par les navigateurs comme décrit dans la page sur les [Certificats](/certificate). En attendant, ajoutez une exception de sécurité pour accepter le certificat actuel. - -Vous arrivez ensuite sur cette page : - -![](image://postinstall_web.png) - -*

Aperçu de la post-installation Web

* - -### Via la ligne de commande - -Vous pouvez aussi y accéder en entrant la commande `yunohost tools postinstall` directement sur le serveur ou [en SSH](/ssh). - -![](image://postinstall_cli.png) - -*

Aperçu de la post-installation en ligne de commande

* - -## Informations demandées - -### Domaine principal - -C’est le nom de domaine qui permettra l’accès à votre serveur ainsi qu’au portail d’authentification des utilisateurs. Il sera donc **visible par tout le monde**, choisissez-le en conséquence. - -* YunoHost propose un service de DNS dynamique fournissant des noms de domaine de type *mondomaine.nohost.me*, *mondomaine.noho.st* ou *mondomaine.ynh.fr*. Si vous ne possédez pas de nom de domaine et/ou que vous souhaitez profiter de ce service, choisissez un domaine se terminant en `.nohost.me`, `.noho.st` ou `.ynh.fr`. S'il n'est pas déjà utilisé, le domaine sera automatiquement rattaché à votre serveur YunoHost, et vous n’aurez pas d’étape de configuration supplémentaire. - -* Si en revanche vous maîtrisez la notion de **DNS**, vous pouvez utiliser votre propre nom de domaine. Dans ce cas, référez-vous à la page [yunohost.org/dns](/dns) pour plus d’informations. - -* Si vous n'avez pas de nom de domaine et que vous n'en voulez pas en *mondomaine.nohost.me*, *mondomaine.noho.st* ou *mondomaine.ynh.fr*, vous pouvez utilisez un domaine local. Plus d'infos sur comment [accéder à son serveur depuis le réseau local](/dns_local_network). - - -### Mot de passe d’administration - -C’est le mot de passe qui vous permettra d’accéder à l’[interface d’administration](/admin) de votre serveur. Vous pourrez également l’utiliser pour vous connecter à distance via **SSH**, ou en **SFTP** pour transférer des fichiers. - -De manière générale, c’est la **clé d’entrée à votre système**, pensez donc à la **[choisir attentivement](http://www.commentcamarche.net/faq/8275-choisir-un-bon-mot-de-passe)**. - -
- ---- - -## Félicitations ! - -Si vous arrivez ici après avoir vu "YunoHost a été installé avec succès" depuis -votre navigateur ou la ligne de commande, alors félicitations ! - -### Et maintenant ? - -- Si vous vous auto-hébergez à la maison et sans VPN, il faut vous assurer - de bien [rediriger les ports de votre box internet](/isp_box_config) ; -- Si vous utilisez votre propre nom de domaine (c.-à-d. pas un nohost.me / - noho.st), il vous faut [configurer le nom de domaine d'après la configuration - recommandée](/dns_config) ; -- Si vous ne pouvez pas configurer le nom de domaine pour le moment (parce qu'il - n'est pas encore acheté, ou parce que c'est un domaine de test), vous pouvez - contourner temporairement le problème avec les instructions du dernier - paragraphe [ici](/dns_local_network) ; -- Ne soyez pas trop effrayé par [l'avertissement à propos du - certificat](/certificate), vous aurez probablement la possibilité - d'installer un certificat Let's Encrypt :). -- Jetez un œil aux [applications disponibles](/apps) ! diff --git a/pages/01.administrate/03.postinstall/postinstall.md b/pages/01.administrate/03.postinstall/postinstall.md deleted file mode 100644 index 724b4687..00000000 --- a/pages/01.administrate/03.postinstall/postinstall.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: Post-Installation -template: docs -taxonomy: - category: docs -routes: - default: '/postinstall' ---- - -The step called "**post-installation**" is actually the initial configuration of YunoHost. It has to be done just after the installation of the system itself. - -! If you are in the process of restoring a server from scratch **and** you have a yunohost-made backup, you can skip this process and follow through with the "restoring during the postinstall" step, in the [backup](/backup) page. - -### From the web interface - -You can perform the post-installation with the web interface by entering in your browser : -* **`yunohost.local`** OR **the local IP address of your server** if it is on your local network (e.g. at home !). The address typically looks like `192.168.x.y` (see [finding your local IP](/finding_the_local_ip)) -* **the public IP address of your server** if your server is not on your local network. Typically, if you own a VPS, your VPS provider should have given you the IP of the server. - -During the first visit, you will very likely encounter a security warning related to the certificate used by the server. For now, your server uses a self-signed certificate. You will later be able to add a certificate automatically recognized by web browsers as described in the [certificate documentation](/certificate). For now, you should add a security exception to accept the current certificate. - -You should then land on this page : - -[figure caption="Preview of the Web post-installation"]![](image://postinstall_web.png)[/figure] - -### From the command line - -You can also perform the postinstallation with the command `yunohost tools postinstall` directly on the server, or [via SSH](/ssh). - - -[figure caption="Preview of the command-line post-installation"]![](image://postinstall_cli.png)[/figure] - -## Asked information - -### Main domain - -This is the first domain name linked to your YunoHost server, but also the one which will be used by your server's users to access the **authentication portal**. It will thus be **visible by everyone**, choose it wisely. - -* If you do not have a domain name, or if you want to use the YunoHost's DynDNS service, choose a sub-domain of **.nohost.me**, **.noho.st** or **.ynh.fr** (e.g. `homersimpson.nohost.me`). Provided that it's not already taken, the domain will be configured automatically and you won't need any further configuration step. - -* If you do know what **DNS** is, you probably want to configure your own domain name here. In this case, please refer to the [DNS page](/dns) page for more informations. - -* If you don't own a domain name and don't want a **.nohost.me**, **.noho.st** or **.ynh.fr**, you can use a local domain. More information on how to setup a local domain can be found [here](/dns_local_network). - -### Administration password - -This password will be used to access to your server's [administration interface](/admin). You would also use it to connect via **SSH** or **SFTP**. In general terms, this is your **system's key**, [choose it carefully](http://www.wikihow.com/Choose-a-Secure-Password). - -
- ---- - -## Congratz! - -If you got so far and saw 'YunoHost has been successfully installed' (web -postinstall) or 'YunoHost has been correctly configured', then congratulations! - -### What now ? - -- If you're self-hosting at home and without a VPN, you need to [make sure to - correctly forward ports on your router/Internet box](/isp_box_config) ; -- If you're using your own domain name (i.e. not a .nohost.me / .noho.st), you - need to [configure it according to the recommended DNS - configuration](/dns_config) ; -- If you cannot configure your domain name yet (because you didn't register it - yet, or because this is a test domain), see last paragraph - [here](/dns_local_network) for a workaround ; -- Don't be too afraid of the [certificate warning](/certificate), you'll probably - be able to install a Let's Encrypt certificate :). -- Have a look at [the available apps](/apps) ! - From f2b93a25637a8ff5f5f01addca2ea09aa177f856 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 18:56:01 +0100 Subject: [PATCH 07/19] [enh] Add possibility to select device for install process --- .../02.install/00.hardware/hardware.md | 2 +- .../01.install_process/install_process.md | 54 ++++++++++++++++--- pages/01.administrate/02.install/install.md | 2 +- 3 files changed, 49 insertions(+), 9 deletions(-) diff --git a/pages/01.administrate/02.install/00.hardware/hardware.md b/pages/01.administrate/02.install/00.hardware/hardware.md index 6b95ba32..e5822719 100644 --- a/pages/01.administrate/02.install/00.hardware/hardware.md +++ b/pages/01.administrate/02.install/00.hardware/hardware.md @@ -1,5 +1,5 @@ --- -title: Hardware +title: Choose your hardware template: docs taxonomy: category: docs diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index 3c3321e8..7e22464b 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -50,6 +50,41 @@ routes: {% set docker = true %} {% endif %} + +Select the hardware on which you want install YunoHost : +[div class="flex-container"] + +[div class="flex-child"] +[[figure caption="VirtualBox"]![](image://virtualbox.png?height=75)[/figure]](/install_process/hardware:virtualbox) +[/div] + +[div class="flex-child"] +[[figure caption="Raspberry Pi"]![](image://raspberrypi.jpg?height=75)[/figure]](/install_process/hardware:rpi2plus) +[/div] + +[div class="flex-child"] +[[figure caption="ARM board"]![](image://olinuxino.jpg?height=75)[/figure]](/install_process/hardware:arm_sup) +[/div] + +[div class="flex-child"] +[[figure caption="Regular computer"]![](image://computer.png?height=75)[/figure]](/install_process/hardware:regular) +[/div] + +[div class="flex-child"] +[[figure caption="Dedicated or virtual private server"]![](image://vps.png?height=75)[/figure]](/install_process/hardware:vps_debian) +[/div] + +[div class="flex-child"] +[[figure caption="(Non-official!) Docker"]![](image://docker.png?height=75)[/figure]](/install_process/hardware:docker) +[/div] + +[/div] + + + + {% if docker %} !! **YunoHost doesn’t support Docker officially since issues with versions 2.4+. In question, YunoHost 2.4+ doesn’t work anymore on Docker because YunoHost requires systemd and Docker has chosen to not support it natively (and there are other problems link to the firewall and services).** !! @@ -68,10 +103,6 @@ However, community images exist and are available on Docker Hub: ## Pre-requisites -[figure class="nomargin" caption="On a regular computer"] -![](image://computer.png?resize=150,150&class=inline) -[/figure] - {% if regular %} * A x86-compatible hardware dedicated to YunoHost: laptop, nettop, netbook, desktop ... {% elseif rpi2plus %} @@ -325,7 +356,7 @@ curl https://install.yunohost.org | bash [ui-tab title="From the web interface"] You can perform the post-installation with the web interface by entering in your browser {%if at_home %} **`{% if internetcube %}internetcube.local{% else %}yunohost.local{% endif %}`** OR **the local IP address of your server** if it is on your local network (e.g. at home !). The address typically looks like `192.168.x.y` (see [finding your local IP](/finding_the_local_ip)){% else %} **the public IP address of your server** if your server is not on your local network. Typically, if you own a VPS, your VPS provider should have given you the IP of the server.{% endif %} -During the first visit, you will very likely encounter a security warning related to the certificate used by the server. For now, your server uses a self-signed certificate. You will later be able to add a certificate automatically recognized by web browsers as described in the [certificate documentation](/certificate). For now, you should add a security exception to accept the current certificate. +! During the first visit, you will very likely encounter a security warning related to the certificate used by the server. For now, your server uses a self-signed certificate. You will later be able to add a certificate automatically recognized by web browsers as described in the [certificate documentation](/certificate). For now, you should add a security exception to accept the current certificate. PLEASE, don't take the habit to blindly accept this kind of alert ! {% if not internetcube %} You should then land on this page : @@ -348,7 +379,8 @@ You can also perform the postinstallation with the command `yunohost tools posti [/ui-tabs] {% if not internetcube %} -### Informations asked + +[details="Details on information asked during initial configuration"] #### Main domain @@ -363,13 +395,21 @@ This is the first domain name linked to your YunoHost server, but also the one w #### Administration password This password will be used to access to your server's [administration interface](/admin). You would also use it to connect via **SSH** or **SFTP**. In general terms, this is your **system's key**, [choose it carefully](http://www.wikihow.com/Choose-a-Secure-Password). - +[/details] ## Create a first user +You should create a first user. + +!!! This user will received special emails `root@`, `admin@`, `postmaster@`, `webmaster@` and `abuse@`. These emails are used to send you mails about your server. + [ui-tabs position="top-left" active="0" theme="lite"] [ui-tab title="From the web interface"] [/ui-tab] [ui-tab title="From the command line"] +You can create your first user by running this command, it will ask you some information. +``` +yunohost user create johndoe +``` [/ui-tab] [/ui-tabs] {% endif %} diff --git a/pages/01.administrate/02.install/install.md b/pages/01.administrate/02.install/install.md index f1f261ca..6347501f 100644 --- a/pages/01.administrate/02.install/install.md +++ b/pages/01.administrate/02.install/install.md @@ -62,7 +62,7 @@ This page lists a few installation guides. [div class="flex-container"] [div class="flex-child"] -[[figure caption="On Debian 10 Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_on_debian)/install_process:hardware +[[figure caption="On Debian 10 Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_process:hardware) [/div] [div class="flex-child"] From 30f98dc2106cea883a7ea925fd9059e54027bbef Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 19:37:02 +0100 Subject: [PATCH 08/19] [enh] Add hardware model in install process --- .../01.install_process/install_process.md | 80 +++++++++++++++---- 1 file changed, 66 insertions(+), 14 deletions(-) diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index 7e22464b..773d6ab6 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -24,6 +24,11 @@ routes: - '/boot_and_graphical_install' --- {% set arm, at_home, regular, rpi2plus, rpi1, rpi0, arm_sup, arm_unsup, vps, vps_debian, vps_ynh, virtualbox, internetcube, docker = false, false, false, false, false, false, false, false, false, false, false, false, false, false %} +{% set hardware = uri.param('hardware') %} +{% if not hardware %} + {% set hardware = 'vps_debian' %} +{% endif %} + {% if uri.param('hardware') == 'regular' %} {% set regular = true %} {% elseif uri.param('hardware') == 'internetcube' %} @@ -38,50 +43,93 @@ routes: {% set arm, arm_sup = true, true %} {% elseif uri.param('hardware') == 'arm_unsup' %} {% set arm, arm_unsup = true, true %} -{% elseif uri.param('hardware') == 'vpsdebian' %} +{% elseif uri.param('hardware') == 'vps_debian' %} {% set vps, vps_debian = true, true %} -{% elseif uri.param('hardware') == 'vpsynh' %} +{% elseif uri.param('hardware') == 'vps_ynh' %} {% set vps, vps_ynh = true, true %} {% elseif uri.param('hardware') == 'virtualbox' %} {% set at_home, virtualbox = true, true %} -{% elseif arm or regular %} - {% set at_home = true %} {% elseif uri.param('hardware') == 'docker' %} {% set docker = true %} {% endif %} - Select the hardware on which you want install YunoHost : [div class="flex-container"] -[div class="flex-child"] +[div class="flex-child hardware{%if virtualbox %} active{% endif %}"] [[figure caption="VirtualBox"]![](image://virtualbox.png?height=75)[/figure]](/install_process/hardware:virtualbox) [/div] -[div class="flex-child"] +[div class="flex-child hardware{%if rpi2plus or rpi1 or rpi0 %} active{% endif %}"] [[figure caption="Raspberry Pi"]![](image://raspberrypi.jpg?height=75)[/figure]](/install_process/hardware:rpi2plus) [/div] -[div class="flex-child"] +[div class="flex-child hardware{%if arm_sup or arm_unsup or internetcube %} active{% endif %}"] [[figure caption="ARM board"]![](image://olinuxino.jpg?height=75)[/figure]](/install_process/hardware:arm_sup) [/div] -[div class="flex-child"] +[div class="flex-child hardware{%if regular %} active{% endif %}"] [[figure caption="Regular computer"]![](image://computer.png?height=75)[/figure]](/install_process/hardware:regular) [/div] -[div class="flex-child"] -[[figure caption="Dedicated or virtual private server"]![](image://vps.png?height=75)[/figure]](/install_process/hardware:vps_debian) +[div class="flex-child hardware{%if vps_debian or vps_ynh %} active{% endif %}"] +[[figure caption="Remote server"]![](image://vps.png?height=75)[/figure]](/install_process/hardware:vps_debian) [/div] -[div class="flex-child"] +[div class="flex-child hardware{%if docker %} active{% endif %}"] [[figure caption="(Non-official!) Docker"]![](image://docker.png?height=75)[/figure]](/install_process/hardware:docker) [/div] [/div] +[div class="flex-container"] +{% if rpi2plus or rpi1 or rpi0 %} +[div class="flex-child hardware{%if rpi2plus %} active{% endif %}"] +[[figure caption="Raspberry Pi 2, 3 or 4"]![](image://raspberrypi.jpg?height=25)[/figure]](/install_process/hardware:rpi2plus) +[/div] + +[div class="flex-child hardware{%if rpi1 %} active{% endif %}"] +[[figure caption="Raspberry Pi 1"]![](image://raspberrypi.jpg?height=25)[/figure]](/install_process/hardware:rpi1) +[/div] + +[div class="flex-child hardware{%if rpi0 %} active{% endif %}"] +[[figure caption="Raspberry Pi zero"]![](image://raspberrypi.jpg?height=25)[/figure]](/install_process/hardware:rpi0) +[/div] +{% elseif arm_sup or arm_unsup or internetcube %} + +[div class="flex-child hardware{%if internetcube %} active{% endif %}"] +[[figure caption="Internet cube With VPN"]![](image://olinuxino.jpg?height=25)[/figure]](/install_process/hardware:internetcube) +[/div] + +[div class="flex-child hardware{%if arm_sup and not internetcube %} active{% endif %}"] +[[figure caption="Olinuxino lime1&2 or Orange Pi PC+"]![](image://olinuxino.jpg?height=25)[/figure]](/install_process/hardware:arm_sup) +[/div] + +[div class="flex-child hardware{%if arm_unsup %} active{% endif %}"] +[[figure caption="Others boards"]![](image://olinuxino.jpg?height=25)[/figure]](/install_process/hardware:arm_unsup) +[/div] +{% elseif vps_debian or vps_ynh %} + +[div class="flex-child hardware{%if vps_debian %} active{% endif %}"] +[[figure caption="VPS or dedicated server with Debian 10"]![](image://vps.png?height=25)[/figure]](/install_process/hardware:vps_debian) +[/div] + +[div class="flex-child hardware{%if vps_ynh %} active{% endif %}"] +[[figure caption="VPS or dedicated server with YunoHost pre-installed"]![](image://vps.png?height=25)[/figure]](/install_process/hardware:vps_ynh) +[/div] + +{% endif %} + +[/div] @@ -124,7 +172,6 @@ preinstalled ... * An x86 computer with VirtualBox installed and enough RAM capacity to be able to run a small virtual machine ... {% endif %} * ... with 512MB RAM{% if not arm %} and 15GB capacity{% endif %} (at least) - {% if arm %} * A power supply (either an adapter or a MicroUSB cable) for your board; * A microSD card: 16GB capacity (at least) and Class 10 speed rate are highly recommended (like the Transcend 300x); @@ -422,11 +469,16 @@ yunohost user create johndoe [/ui-tab] [/ui-tabs] -## Let's Encrypt +## Get a Let's Encrypt certificate +If your DNS and router configuration are ok, you can next ask for a Let's Encrypt certificate. + [ui-tabs position="top-left" active="0" theme="lite"] [ui-tab title="From the web interface"] [/ui-tab] [ui-tab title="From the command line"] +``` +yunohost domain cert-install +``` [/ui-tab] [/ui-tabs] {% endif %} From a7a5a9e02a54ed3965eb7285901e9ab7ded44a81 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 19:57:24 +0100 Subject: [PATCH 09/19] [enh] Add tabs in certificate --- .../02.install/06.certificate/certificate.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pages/01.administrate/02.install/06.certificate/certificate.md b/pages/01.administrate/02.install/06.certificate/certificate.md index 430ec2e8..2c6144cd 100644 --- a/pages/01.administrate/02.install/06.certificate/certificate.md +++ b/pages/01.administrate/02.install/06.certificate/certificate.md @@ -23,7 +23,8 @@ To avoid this confusion, it's possible to get a certificate signed a known autho Before attempting to install a Let's Encrypt certificate, you should make sure that your DNS is correctly configured (your.domain.tld should point to your server's IP) and that your domain is accessible through HTTP from outside your local network (i.e. at least port 80 should be forwarded to your server). -#### From the web administration interface +[ui-tabs position="top-left" active="0" theme="lite"] +[ui-tab title="From the web interface"] Go to the 'Domain' part of the admin interface, then in the section dedicated to your.domain.tld. You should find a 'SSL certificate' button: @@ -41,7 +42,8 @@ Once the install is made, you can check that the certificate is live via your br ![](image://certificate-signed-by-LE.png) -#### From the command line interface +[/ui-tab] +[ui-tab title="From the command line"] Connect to your server through SSH. @@ -66,6 +68,9 @@ Success! Successfully installed Let's Encrypt certificate for domain DOMAIN.TLD! Once this is done, you can check that the certificate is live via your browser by going to your domain in HTTPS. The certificate will automatically be renewed every three months. +[/ui-tab] +[/ui-tabs] + ##### Troubleshooting If due to some bad tweaking, your certificate ends up in a bad state (e.g. lost the certificate or unable to read the files), you should be able to clean the situation by regenerating a self-signed certificate: From 0d833b56900be9a5f17f526199009c7710a9f14b Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 19:57:52 +0100 Subject: [PATCH 10/19] [enh] Improve pre-requisites --- .../01.install_process/install_process.md | 24 +++++++++---------- pages/01.administrate/02.install/install.md | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index 773d6ab6..df2fbf39 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -150,28 +150,28 @@ However, community images exist and are available on Docker Hub: ## Pre-requisites - {% if regular %} -* A x86-compatible hardware dedicated to YunoHost: laptop, nettop, netbook, desktop ... +* A x86-compatible hardware dedicated to YunoHost: laptop, nettop, netbook, desktop with 512MB RAM and 15GB capacity (at least) {% elseif rpi2plus %} -* A Raspberry Pi 2, 3 or 4 ... +* A Raspberry Pi 2, 3 or 4 with 512MB RAM (at least) {% elseif rpi1 %} -* A RPi 1 ... +* A Raspberry Pi 1 with 512MB RAM (at least) {% elseif rpi0 %} -* A RPi zero ... +* A Raspberry Pi zero with 512MB RAM (at least) {% elseif arm_sup %} -* An Orange Pi PC+, or an Onlinuxino Lime 1 or 2 ... +* A VPN with a dedicated IP and a .cube file +* An Orange Pi PC+ or an Onlinuxino Lime 1 or 2 +{% elseif arm_sup %} +* An Orange Pi PC+ or an Onlinuxino Lime 1 or 2 {% elseif arm_unsup %} -* An ARM board with 500MHz CPU ... +* An ARM board with 500MHz CPU and 512MB RAM (at least) {% elseif vps_debian %} -* A dedicated or virtual private server with Debian 10 (with **kernel >= 3.12**)) -preinstalled ... +* A dedicated or virtual private server with Debian 10 (with **kernel >= 3.12**)) preinstalled, 512MB RAM and 15GB capacity (at least) {% elseif vps_ynh %} -* A dedicated or virtual private server with yunohost preinstalled ... +* A dedicated or virtual private server with yunohost preinstalled, 512MB RAM and 15GB capacity (at least) {% elseif virtualbox %} -* An x86 computer with VirtualBox installed and enough RAM capacity to be able to run a small virtual machine ... +* An x86 computer with VirtualBox installed and enough RAM capacity to be able to run a small virtual machine with 512MB RAM and 8GB capacity (at least) {% endif %} -* ... with 512MB RAM{% if not arm %} and 15GB capacity{% endif %} (at least) {% if arm %} * A power supply (either an adapter or a MicroUSB cable) for your board; * A microSD card: 16GB capacity (at least) and Class 10 speed rate are highly recommended (like the Transcend 300x); diff --git a/pages/01.administrate/02.install/install.md b/pages/01.administrate/02.install/install.md index 6347501f..44424c98 100644 --- a/pages/01.administrate/02.install/install.md +++ b/pages/01.administrate/02.install/install.md @@ -62,7 +62,7 @@ This page lists a few installation guides. [div class="flex-container"] [div class="flex-child"] -[[figure caption="On Debian 10 Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_process:hardware) +[[figure caption="On Debian 10 Buster"]![](image://debian-logo.png?height=150)[/figure]](/install_process/hardware:vps_debian) [/div] [div class="flex-child"] From c011258bf67fdbc22f98d4855b1127260b320163 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 20:17:41 +0100 Subject: [PATCH 11/19] [enh] Add toc --- .../01.install_process/install_process.md | 58 ++++++++++++++----- 1 file changed, 45 insertions(+), 13 deletions(-) diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index df2fbf39..5991cf80 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -8,6 +8,9 @@ twig_first: true process: markdown: true twig: true +page-toc: + active: true + depth: 2 routes: default: '/install_process' aliases: @@ -25,31 +28,31 @@ routes: --- {% set arm, at_home, regular, rpi2plus, rpi1, rpi0, arm_sup, arm_unsup, vps, vps_debian, vps_ynh, virtualbox, internetcube, docker = false, false, false, false, false, false, false, false, false, false, false, false, false, false %} {% set hardware = uri.param('hardware') %} -{% if not hardware %} +{% if hardware == '' %} {% set hardware = 'vps_debian' %} {% endif %} -{% if uri.param('hardware') == 'regular' %} +{% if hardware == 'regular' %} {% set regular = true %} -{% elseif uri.param('hardware') == 'internetcube' %} +{% elseif hardware == 'internetcube' %} {% set arm, arm_sup, internetcube = true, true, true %} -{% elseif uri.param('hardware') == 'rpi2plus' %} +{% elseif hardware == 'rpi2plus' %} {% set arm, rpi2plus = true, true %} -{% elseif uri.param('hardware') == 'rpi1' %} +{% elseif hardware == 'rpi1' %} {% set arm, rpi1 = true, true %} -{% elseif uri.param('hardware') == 'rpi0' %} +{% elseif hardware == 'rpi0' %} {% set arm, rpi0 = true, true %} -{% elseif uri.param('hardware') == 'arm_sup' %} +{% elseif hardware == 'arm_sup' %} {% set arm, arm_sup = true, true %} -{% elseif uri.param('hardware') == 'arm_unsup' %} +{% elseif hardware == 'arm_unsup' %} {% set arm, arm_unsup = true, true %} -{% elseif uri.param('hardware') == 'vps_debian' %} +{% elseif hardware == 'vps_debian' %} {% set vps, vps_debian = true, true %} -{% elseif uri.param('hardware') == 'vps_ynh' %} +{% elseif hardware == 'vps_ynh' %} {% set vps, vps_ynh = true, true %} -{% elseif uri.param('hardware') == 'virtualbox' %} +{% elseif hardware == 'virtualbox' %} {% set at_home, virtualbox = true, true %} -{% elseif uri.param('hardware') == 'docker' %} +{% elseif hardware == 'docker' %} {% set docker = true %} {% endif %} @@ -196,6 +199,17 @@ However, community images exist and are available on Docker Hub: ! N.B. : Installing YunoHost in a VirtualBox is usually intended for testing. To run an actual server on the long-term, you usually need a dedicated physical machine (old computer, ARM board...) or a VPS online. {% endif %} + + + + + + + + + + + {% if at_home %} ## Download the YunoHost image
@@ -224,6 +238,11 @@ However, community images exist and are available on Docker Hub: {% endif %} + + + + + {% if not virtualbox %} ## Flash the YunoHost image Now that you downloaded the image of YunoHost, you should flash it on {% if arm %}a SD card{% else %}a USB stick or a CD.{% endif %} @@ -378,7 +397,7 @@ TODO what to do with default credentials info ? -{% else %} +{% elseif vps_debian %} ## Run the install script Once you have access to a command line on your server (either directly or through SSH), you can install YunoHost by running command as root : @@ -462,10 +481,23 @@ yunohost user create johndoe {% endif %} ## Run diagnostic and fix DNS or Router issues if needed +To diagnose that all critical aspects of your server are properly configured, +you should run a diagnosis from the webadmin in the "Diagnosis" section. (This +feature was added in YunoHost 3.8). + +TODO: elaborate on the fact that the diagnosis runs periodically, sends an email +to root which is forwarded to the very first user created, and that issues +should either be fixed or ignored (if they are understood/not relevant) +otherwise an email will be sent twice a day.. + +TODO: Redirect on good links about DNS and router [ui-tabs position="top-left" active="0" theme="lite"] [ui-tab title="(Recommended) From the web interface"] [/ui-tab] [ui-tab title="From the command line"] +``` +yunohost diagnosis run +``` [/ui-tab] [/ui-tabs] From e1e02e5c70deb62de43a4fd371b62752600095ec Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 20:35:05 +0100 Subject: [PATCH 12/19] [enh] Add advice for windows 8+ --- .../02.install/01.install_process/install_process.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index 5991cf80..117927cd 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -339,11 +339,10 @@ Go to **Settings** > **Network**: !!! Note: if you want the network configuration to be set up automatically, you have to plug your server with an Ethernet cable right behind your main router.[details="If you have confident in your skills, it's possible to connect your server through WiFi"]If you want your server to connect using WiFi, you may configure it as explained [here](https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md). Alternatively, you can mount the second partition of the SD card and edit the `wpa-supplicant.conf` file prior to boot the card for the first time. On Windows you can use [Paragon ExtFS](https://www.paragon-software.com/home/extfs-windows/) for this - just don't forget to unmount everytime for changes to take effect.[/details] * Plug the SD card * Power up the board -!!! You can also boot your server with a screen and keyboard connected to it to see how the boot process is going on.[details="See more"]This method can also be useful to troubleshoot issues and to have a direct access to it.
[/details] +!!! You can also boot your server with a screen and keyboard connected to it to see how the boot process is going on.[details="See more"]This method can also be useful to troubleshoot issues and to have a direct access to it.[/details] * Wait a couple minutes for your server to boot and to resize automatically partition * Make sure that your computer (desktop/laptop) is connected to the same local network (i.e. same internet box) as your server. -TODO improve details feature ? {% elseif virtualbox %} ## Boot up the virtual machine @@ -361,7 +360,7 @@ You will have to select your ISO image here, then you should see the YunoHost's ## Boot the machine on your usb stick and run the installation * Plug the ethernet cable. !!! Note: if you want the network configuration to be set up automatically, you have to plug your server with an Ethernet cable right behind your main router. The wireless connections are not supported yet, and if you use intermediate routers, the network ports opening will not be automatic: Your server will not be accessible externally. -* If your server was under windows 7+, ask for windows to boot on the USB stick TODO +* If your server was under windows 8+, go on Advanced startup options of windows to ask windows for booting on the USB stick. * Boot up your server with the USB stick or a CD-ROM inserted, and select it as **bootable device** by pressing one of the following keys (hardware specific): ``````, ``````, ``````, ``````, `````` or `````` {% endif %} From ed9adcf48332734dc64c5844f6ffc1e8324d44ca Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 21:26:24 +0100 Subject: [PATCH 13/19] [fix] Capacity requirements --- pages/01.administrate/02.install/00.hardware/hardware.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/01.administrate/02.install/00.hardware/hardware.md b/pages/01.administrate/02.install/00.hardware/hardware.md index e5822719..53d0bf70 100644 --- a/pages/01.administrate/02.install/00.hardware/hardware.md +++ b/pages/01.administrate/02.install/00.hardware/hardware.md @@ -16,4 +16,4 @@ YunoHost can be installed on the following hardware: * 500 MHz CPU * 512 MB RAM (recommended : 1 GB in order to run all the services and apps properly) -* 8 GB storage capacity (recommended : 32 GB to store mails and documents) +* 16 GB storage capacity (recommended : 32 GB to store mails and documents) From f12d3cd8f84eec39900d7a83c75a5fd1088402fb Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 21:43:06 +0100 Subject: [PATCH 14/19] [fix] Images view --- .../02.install/10.images/images.ar.md | 64 ++---------------- .../02.install/10.images/images.es.md | 64 ++---------------- .../02.install/10.images/images.fr.md | 64 ++---------------- .../02.install/10.images/images.md | 67 ++----------------- themes/yunohost-docs/css/custom.css | 67 +++++++++++++++++++ 5 files changed, 92 insertions(+), 234 deletions(-) diff --git a/pages/01.administrate/02.install/10.images/images.ar.md b/pages/01.administrate/02.install/10.images/images.ar.md index d47b94bf..9ef16d52 100644 --- a/pages/01.administrate/02.install/10.images/images.ar.md +++ b/pages/01.administrate/02.install/10.images/images.ar.md @@ -7,8 +7,10 @@ routes: default: '/images' --- +
+
- - - - - + {% if regular %} !!! ***Particular case*** : If your server has no graphic card, [prepare iso for booting with serial port](https://github.com/luffah/debian-mkserialiso). From ad96f281e16694f0a6ccf0aa83281224f0f223c4 Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 22:45:21 +0100 Subject: [PATCH 17/19] [enh] Diagnosis and LE doc --- images/diagnostic.png | Bin 0 -> 45598 bytes .../01.install_process/install_process.md | 25 +++++++++++++----- 2 files changed, 18 insertions(+), 7 deletions(-) create mode 100644 images/diagnostic.png diff --git a/images/diagnostic.png b/images/diagnostic.png new file mode 100644 index 0000000000000000000000000000000000000000..b24b65a1a825406c69c49045832f5fc75e4eca3e GIT binary patch literal 45598 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 literal 0 HcmV?d00001 diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index 73bb43dc..ac82195b 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -522,17 +522,21 @@ yunohost user create johndoe ## Run diagnostic and fix DNS or Router issues if needed To diagnose that all critical aspects of your server are properly configured, -you should run a diagnosis from the webadmin in the "Diagnosis" section. (This -feature was added in YunoHost 3.8). +you should run a diagnosis. After the first run, the diagnosis will run twice a day to alert you if something break. +Email are sent to the first user created. -TODO: elaborate on the fact that the diagnosis runs periodically, sends an email -to root which is forwarded to the very first user created, and that issues -should either be fixed or ignored (if they are understood/not relevant) -otherwise an email will be sent twice a day.. +You need to fix red issues if you want to be able to access your server outside your local network. + +!!! If an alert is not relevant you should go on `Webadmin > Diagnosis` and click on the ignore button for this specifc unrelevant issue. -TODO: Redirect on good links about DNS and router [ui-tabs position="top-left" active="0" theme="lite"] [ui-tab title="(Recommended) From the web interface"] +To run a diagnosis, go on `Web Admin` in the `Diagnosis` section. You should get a screen like this : + +[figure class="nomargin" caption="Preview of the diagnostic panel"] +![](image://diagnostic.png?resize=100%&class=inline) +[/figure] + [/ui-tab] [ui-tab title="From the command line"] ``` @@ -544,8 +548,15 @@ yunohost diagnosis run ## Get a Let's Encrypt certificate If your DNS and router configuration are ok, you can next ask for a Let's Encrypt certificate. +For more detailled instructions or know more about TLS certificate, see [here](/certificate) + [ui-tabs position="top-left" active="0" theme="lite"] [ui-tab title="From the web interface"] + +[figure class="nomargin" caption="Preview of the diagnostic panel"] +![](image://certificate-before-LE.png?resize=100%&class=inline) +[/figure] + [/ui-tab] [ui-tab title="From the command line"] ``` From 2605d371b7905319f89ec70c5c6886f896d4f8fd Mon Sep 17 00:00:00 2001 From: ljf Date: Sun, 7 Feb 2021 22:50:10 +0100 Subject: [PATCH 18/19] [enh] Diagnosis and LE doc --- .../02.install/01.install_process/install_process.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index ac82195b..13e33cef 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -503,6 +503,8 @@ This is the first domain name linked to your YunoHost server, but also the one w This password will be used to access to your server's [administration interface](/admin). You would also use it to connect via **SSH** or **SFTP**. In general terms, this is your **system's key**, [choose it carefully](http://www.wikihow.com/Choose-a-Secure-Password). [/details] +At this step, if you got so far and saw 'YunoHost has been successfully installed' (web postinstall) or 'YunoHost has been correctly configured', then congratulations! + ## Create a first user You should create a first user. @@ -565,3 +567,7 @@ yunohost domain cert-install [/ui-tab] [/ui-tabs] {% endif %} + +## Congratz! + +You have now a pretty well configured server. You can now try to install apps if you need (don't keep apps on your server if you don't need it) and configure a backup. From ecc4c75cb3843b63f2b364c37f7eb0aae409761c Mon Sep 17 00:00:00 2001 From: Kay0u Date: Sun, 7 Feb 2021 23:43:22 +0100 Subject: [PATCH 19/19] fix my merge --- .../01.install_process/install_process.md | 3 +- themes/yunohost-docs/css/custom.css | 65 +++++++++++++++++++ 2 files changed, 67 insertions(+), 1 deletion(-) diff --git a/pages/01.administrate/02.install/01.install_process/install_process.md b/pages/01.administrate/02.install/01.install_process/install_process.md index 13e33cef..987bdf64 100644 --- a/pages/01.administrate/02.install/01.install_process/install_process.md +++ b/pages/01.administrate/02.install/01.install_process/install_process.md @@ -62,7 +62,8 @@ routes: Select the hardware on which you want install YunoHost : diff --git a/themes/yunohost-docs/css/custom.css b/themes/yunohost-docs/css/custom.css index 9a6ebe4a..ead0ef98 100644 --- a/themes/yunohost-docs/css/custom.css +++ b/themes/yunohost-docs/css/custom.css @@ -124,6 +124,71 @@ img#whitelogo { padding: 10px; } +/* Hide home page in menu */ +.simplebar-content h5:first-child { + display: none; +} + +/* Sidebar */ + +#sidebar-id { + background-color: #fffefe; +} + +body .off-canvas .learn-sidebar a { + color: #364149; +} + +body .off-canvas .learn-sidebar .learn-nav ul li.active > a { + color: black; + background-color: transparent; +} + +body .off-canvas .learn-sidebar .learn-brand #logo path { + fill: black!important; +} + +body #top-bar #breadcrumbs > span span, #top-bar #breadcrumbs > a span { + font-size: 0.7rem; +} + +body #top-bar a:visited { + color: #3e7694; +} + +body #top-bar a:hover { + text-decoration: underline; +} + +body .off-canvas .learn-sidebar .searchbox ::placeholder { + color: rgba(68, 68, 68, 0.8); +} + +body .off-canvas .learn-sidebar a:hover { + color: #37419a; +} + +body #header .off-canvas .learn-sidebar a:hover { + color: black; + text-decoration: underline black; +} + +body .off-canvas .learn-sidebar .learn-nav ul li a > span > b { + color: black; +} + +body .off-canvas .learn-sidebar .learn-nav ul li ul li.active > a { + background-color: #7f7f7f3d; + border-left: black 2px solid; +} + +body .off-canvas .learn-sidebar .learn-nav .read-icon, body .off-canvas .learn-sidebar .searchbox, body .off-canvas .learn-sidebar .search-options .version-chooser select { + color: rgba(0, 0, 0, 0.6); +} + +body .off-canvas .learn-sidebar .searchbox input { + color: rgb(78, 78, 78); +} /* ###############################################################################