OpenMediaVault (OMV) sur Raspberry pi B3+
On en a parlé plusieurs fois, alors je (Daniel) me suis décidé (pour occuper un temps de confinement) à l'installer pour un usage NAS interne qui puisse aussi être utilisé par Kodi sur un autre raspeberry. Chez moi Yunohost est avant tout destiné à l'usage externe comme un wiki et la diffusion de photos.
Ceci est un compte rendu qui me sert de notes. Quand tout va bien ça prend un peu plus d'une heure, mais vaut mieux lire un peu de doc en parallèle ou mieux avant (au besoin c'est là https://openmediavault.readthedocs.io/en/5.x/). J'ai gardé la version anglaise car la doc est en anglais, mais ensuite on peut changer la langue à la connexion ou dans le logiciel.
Mise à jour le 3-10-2021
Installation du serveur rpi
C'est du classique mais je me suis basé sur https://blog.crankshafttech.com/2020/01/setup-openmediavault-with-syncthing.html
Depuis le PC (pour moi sous linux)
* copier debian buster lite sur la carte SD avec rpi imager (j'ai mis la version 32 bits de base avec bureau) bien que j'ai un rpi4, le gain est USB3 et le réseau plus que le 64 bits
* démarrer le rpi (j'ai utilisé un écran et un clavier pour voir ce qui se passait)
* faire les configs et mises à jour habituelles (penser à ssh), j'ai mis voute comme nom d'hôte, mon IP réservée est 192.162.0.136
* redémarrer
* installer openmediavault
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash
* patience * c'est la phase la plus longue mais il suffit d'attendre, on redémarre avec sudo reboot après avoir branché le disque externe qui contient 2 partitions et on vérifie avec lsblk que les 2 partitions sont bien là sda1 et sda2 on les voit pour le moment sur le bureau
On va maintenant continuer avec l'admin web en se connectant sur 192.162.0.136, avec admin et mot de passe openmediavault
* changer le mot de \passe * mettre le nom de l'hôte voute (celui mis dans le rpi) * Disques : on doit voir /dev/\sda * systèmes de fichier j'ai dû démonter puis remonter /dev/sda1 et /dev/sda2 (ils disparaissent du bureau et apparaissent dans /etc/fstab) * utilisateur \dp * créations des dossiers partagés et donner privilèges et \ACL * configurer SMB avec \partages * tout vé\rifier * faire copie de la carte SD comme bup
Ancien
Les disques et le partage
# montage fixe des disques sur KODI et NAS
UUID=5e9170a4-5436-4dde-a480-8b1b4ef2d7a7 /NAS ext4 defaults, noatime 0 1
UUID=5a97bece-92a7-4a76-8b89-965f4ac66c51 /KODI ext4 defaults, noatime 0 1= Les 2 disques utilisés dans cette note sont identiques (j'envisage RAID pour + tard), l'un s'appelle KODI et l'autre NAS, chacun contient un dossier à partager du même nom. Pour commencer j'ai regroupé dans ces dossiers KODI et NAS tout ce qui doit être partagé
Pour m'y retrouver dans un premier temps je vais \donc * avoir dans chaque disque un “file system” dont je garde le nom KODI ou NAS. Chaque partition est vue dans OMV comme un \filesystem * dans chacun de ces filesystem je vais déclarer un shared folder (qui est un dossier dans la partition) du même nom, ainsi ce dossier sera pour moi l'image de la \partition * ensuite il faudra pour smb établir l'usage de ces shared folderspour les différents udagers
Il est bon de penser à l'avance aux partages que l'on veut faire, en effet on peut déclarer comme shared folder n'inporte quel dossier d'un file system. Si l'on a plusieurs partitions sur le disque on aura plusieurs filesystems. Puis dans chaque filesystem on peut déclarer un ou plusieurs shared folder. Un filesystem (partition) contient de manière récursive des sharedforders (dossiers).
Ainsi par exemple je peux faire un shared folder KODI dans le filesystem KODI et dedans faire shared folders KODI pour tout et un autre metopera qui est contenu dedans. Ainsi on peut y définir des droits différents pour des utilisateurs différents. Et bien sûr on peut utiliser n'importe quel nom pour les shared file et shared folder(dans la mesure oû on s'y retrouve !)
Configuration d'openmediavault
On se connecte par le fureteur du PC (pour moi firefox) sur l'adresse IP du réseau interne que l'on vient de relever, à partir de maintenant tout va se faire dans l'interface graphique via le fureteur en suivant calmement pas à pas https://pimylifeup.com/raspberry-pi-openmediavault/.
Si on suit la logique (sans sauter d’étape et avec une confirmation à chaque fois) tout se passe \bien * s'assurer que le file system est bien monté (j'ai eu des problèmes et ai du parfois le démonter et remonter) * créer le shared \folder * Créer les utilisateurs et leurs \droits * activer \smb * partager le partage de fichier
attention attendre la confirmation de chaque commande en jaune pour l'appliquer, ça vaut pour quasiment toutes les fonctions et ça peut prendre 10 sec ou plus, sinon on se perd car des commits ne se font pas et on tombe sur des erreurs que j'avais du mal à comprendre….
Dans mon cas pour omission de confirmation ça c'est terminé par une réinstallation complète…
General settings * changer mot de passe (j'ai mis le même que pour le rpi au besoin je changerai + tard, histoire de ne pas me perdre dans les mots de passe) * ajuster l'heure (date and time) * hostname : j'ai eu plusieurs refus de changement et de manières différentes, par exemple j'avais appelé le rpi “communs” avec raspi-config lors de la création de la carte, OMV me propose alors raspberrycommuns et ensuite je butte sur la longueur du nom (trop long) puis sur un très long message que je ne suis pas capable d'utiliser. Conseil pour les néophytes pour qui le hostname est un peu obscur ne pas y toucher car j'ai dû recommencer ayant fini par perdre le contact avec mon raspberry. J'ai donc gardé la proposition par défaut sans avoir changé le hostname par défaut à l'installation du rpi ni dans OMV.
Storage * parfait il voit mes disques comme sda et sdb (le troisième c'est la carte SD du rpi) * file system : il voit mes partitions sda1 et sdb1 en ext4, je les démonte et les monte (penser à attendre la confirmation du montage), pour le moment il n'est pas référencé car il n'y a pas encore de shared folder. Un file system correspond à une partition existante sur le disque, je pense qu'il faut qu'elles existent au préalable, les créer consiste à les trouver on peut alors les monter et les démonter. * Shared folders : j'en crée un pour chaque partition dans les file system. Vérification maintenant le filesystem est alors référencé
* Enabling SAMBA/CIFS avec guest allowed
Disque montage permanent
Sur le rpi j'ai créé les points de montage KODI et NAS (j'ai utilisé le même nom pour m'y retrouver après avoir perdu du temps avec les mauvais choix de noms et les conflits : conseil y aller proprement en planifiant un peu)
\ pi@raspberrypi:~ $ cd /\ pi@raspberrypi:/ $ sudo mkdir KODI\ pi@raspberrypi:/ $ sudo mkdir NAS\ pi@raspberrypi:/ $ ls\ bin dev home lib media NAS proc run srv tmp var\ boot etc KODI lost+found mnt opt root sbin sys usr
Recherche du nom et du UUID
\ pi@raspberrypi:/ $ lsblk\ NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT\ sda 8:0 0 3.7T 0 disk\ └─sda1 8:1 0 3.7T 0 part\ sdb 8:16 0 3.7T 0 disk\ └─sdb1 8:17 0 3.7T 0 part\ mmcblk0 179:0 0 29.8G 0 disk\ ├─mmcblk0p1 179:1 0 256M 0 part /boot\ └─mmcblk0p2 179:2 0 29.6G 0 part /
On voit les 2 disques avec chacun une partition avec les labels KODI et NAS, mais ils ne sont pas encore montés. On recherche les UUID
\ pi@raspberrypi:/ $ sudo blkid | grep "/dev/sda"\ /dev/sda1: LABEL="NAS" UUID="5e9170a4-5436-4dde-a480-8b1b4ef2d7a7" TYPE="ext4" PARTLABEL="stock" PARTUUID="d65b51fc-d655-4fad-948e-203491c79e6b"\ pi@raspberrypi:/ $ sudo blkid | grep "/dev/sdb"\ /dev/sdb1: LABEL="KODI" UUID="5a97bece-92a7-4a76-8b89-965f4ac66c51" TYPE="ext4" PARTLABEL="Loisirs" PARTUUID="319498ba-1793-1544-aaba-980e5bfdc38e"
Modification de /etc/fstab avec nano
proc /proc proc defaults 0 0\ PARTUUID=6e01cafe-01 /boot vfat defaults 0 2\ PARTUUID=6e01cafe-02 / ext4 defaults,noatime 0 1\ # a swapfile is not a swap partition, no line here\ # use dphys-swapfile swap[on|off] for that # montage fixe des disques sur KODI et NAS UUID=5e9170a4-5436-4dde-a480-8b1b4ef2d7a7 /NAS ext4 defaults, noatime 0 1 UUID=5a97bece-92a7-4a76-8b89-965f4ac66c51 /KODI ext4 defaults, noatime 0 1
On reboote pour voir si le disques se montent bien
pi@raspberrypi:~ $ \lsblk NAME MAJ:MIN RM SIZE RO TYPE \MOUNTPOINT sda 8:0 0 3.7T 0 \disk └─sda1 8:1 0 3.7T 0 part /\NAS sdb 8:16 0 3.7T 0 \disk └─sdb1 8:17 0 3.7T 0 part /\KODI mmcblk0 179:0 0 29.8G 0 \disk ├─mmcblk0p1 179:1 0 256M 0 part /\boot └─mmcblk0p2 179:2 0 29.5G 0 part /
pi@raspberrypi:/ $ sudo \blkid /dev/mmcblk0p1: LABEL_FATBOOT=“boot” LABEL=“boot” UUID=“C839-E506” BLOCK_SIZE=“512” TYPE=“vfat” PARTUUID=“fc9518f5-01” /dev/mmcblk0p2: LABEL=“rootfs” UUID=“568caafd-bab1-46cb-921b-cd257b61f505” BLOCK_SIZE=“4096” TYPE=“ext4” PARTUUID=“fc9518f5-02” /dev/sda1: LABEL=“ESTO” UUID=“b1ee8be0-9cb3-415d-807a-d2e101fdb34d” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“PSTO” PARTUUID=“e08beeb1-b39c-5d41-807a-d2e101fdb34d” /dev/sda2: LABEL=“EOMV” UUID=“9e2398d1-68aa-4b50-bcae-931a4846a344” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“POMV” PARTUUID=“4e607e15-d3d5-4a25-b39b-476cf42eab40”
NAS - samba 24-07-2022
installation OS sur carte 32 go
OPERA-NAS
DC-A6-32-EF-6C-F5
192.168.0.242
mot de passe opera
compte pour samba : opera avec mot de passe opera
https://raspberry-pi.fr/raspberry-pi-nas-samba/
Le disque externe usb3 a été préparé sur mon PC
opera@opera-nas:/home/shares/public $ ls -l\ total 8\ drwxrwxr-x 16 root users 4096 Jul 23 22:41 V1\ drwxrwxr-x 10 root users 4096 Jan 31 01:13 V2
opera@opera-nas:/etc/samba $ \lsblk NAME MAJ:MIN RM SIZE RO TYPE \MOUNTPOINT sda 8:0 0 5.5T 0 \disk ├─sda1 8:1 0 3.5T 0 part /home/shares/public/\V1 └─sda2 8:2 0 1.9T 0 part /home/shares/public/\V2 mmcblk0 179:0 0 29.7G 0 \disk ├─mmcblk0p1 179:1 0 256M 0 part /\boot └─mmcblk0p2 179:2 0 29.5G 0 part /
GNU nano 5.4 /etc/\fstab proc /proc proc defaults 0 \0 PARTUUID=877979f3-01 /boot vfat defaults,flush 0 \2 PARTUUID=877979f3-02 / ext4 defaults,noatime 0 \1 # a swapfile is not a swap partition, no line \here # use dphys-swapfile swap[on|off] for that /dev/sda1 /home/shares/public/V1 auto noatime,nofail 0 \0 /dev/sda2 /home/shares/public/V2 auto noatime,nofail 0 0 [ Read 9 lines ] ^G Help ^O Write Out ^W Where Is ^K Cut ^T Execute ^C Location M-U \Undo ^X Exit ^R Read File ^ Replace ^U Paste ^J Justify ^_ Go To Line M-E Redo
# # Sample configuration file for the Samba suite for Debian GNU/Linux. # # # This is the main Samba configuration file. You should read \the # smb.conf(5) manual page in order to understand the options \listed # here. Samba has a huge number of configurable options most of \which # are not shown in this \example # # Some options that are often worth tuning have been included \as # commented-out examples in this file. # - When such options are commented with ";", the proposed \setting # differs from the default Samba \behaviour # - When commented with "#", the proposed setting is the \default # behaviour of Samba but the option is considered \important # enough to be mentioned \here # # NOTE: Whenever you modify this file you should run the \command # "testparm" to check that you have not made any basic \syntactic # errors. #======================= Global Settings ======================= [global] ## Browsing/Identification ### # Change this to the workgroup/NT-domain name your Samba server will part \of workgroup = WORKGROUP #### Networking #### # The specific set of interfaces / networks to bind \to # This can be either the interface name or an IP address/netmask; # interface names are normally \preferred ; interfaces = 127.0.0.0/8 eth0 # Only bind to the named interfaces and/or networks; you must use \the # 'interfaces' option above to use this. # It is recommended that you enable this feature if your Samba machine \is # not protected by a firewall or is a firewall itself. However, \this # option cannot handle dynamic or non-broadcast interfaces correctly. ; bind interfaces only = yes #### Debugging/Accounting #### # This tells Samba to use a separate log file for each \machine # that \connects log file = /var/log/samba/log.%m # Cap the size of the individual log files (in KiB). max log size = 1000 # We want Samba to only log to /var/log/samba/log.{smbd,nmbd}. # Append syslog@1 if you want important messages to be sent to syslog too. logging = file # Do something sensible when Samba crashes: mail the admin a \backtrace panic action = /usr/share/samba/panic-action %d ####### Authentication ####### security = \user # Server role. Defines in which mode Samba will operate. \Possible # values are "standalone server", "member server", "classic \primary # domain controller", "classic backup domain controller", "\active # directory domain controller". # # Most people will want "standalone server" or "member server". # Running as "active directory domain controller" will require \first # running "samba-tool domain provision" to wipe databases and create \a # new domain. server role = standalone server obey pam restrictions = yes # This boolean parameter controls whether Samba attempts to sync the \Unix # password with the SMB password when the encrypted SMB password in \the # passdb is changed. unix password sync = yes # For Unix password sync to work on a Debian GNU/Linux system, the \following # parameters must be set (thanks to Ian Kahan <<[email protected]> \for # sending the correct chat script for the passwd program in Debian Sarge). passwd program = /usr/bin/passwd %\u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . # This boolean controls whether PAM will be used for password \changes # when requested by an SMB client instead of the program listed \in # 'passwd program'. The default is 'no'. pam password change = yes # This option controls how unsuccessful authentication attempts are \mapped # to anonymous \connections map to guest = bad user ########## Domains ########### # # The following settings only takes effect if 'server role = \classic # primary domain controller', 'server role = classic backup domain controller' # or 'domain logons' is \set # # It specifies the location of the user'\s # profile directory from the client point of view) The \following # required a [profiles] share to be setup on the samba server (\see # below) ; logon path = %N\\profiles%\U # Another common choice is storing the profile in the user's home \directory # (this is Samba's default) # logon path = %\N%U\profile # The following setting only takes effect if 'domain logons' is \set # It specifies the location of a user's home directory (from the \client # point of view) ; logon drive = H: # logon home = %\N%U # The following setting only takes effect if 'domain logons' is \set # It specifies the script to run during logon. The script must be \stored # in the [netlogon] \share # NOTE: Must be store in 'DOS' file format \convention ; logon script = logon.cmd # This allows Unix users to be created on the domain controller via the \SAMR # RPC pipe. The example command creates a user account with a disabled \Unix # password; please adapt to your \needs ; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u # This allows machine accounts to be created on the domain controller via \the # SAMR RPC pipe. # The following assumes a "machines" group exists on the \system ; add machine script = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u # This allows Unix groups to be created on the domain controller via the \SAMR # RPC pipe. ; add group script = /usr/sbin/addgroup --force-badname %g ############ Misc ############ # Using the following line enables you to customise your \configuration # on a per machine basis. The %m gets replaced with the netbios \name # of the machine that is \connecting ; include = /home/samba/etc/smb.conf.%m # Some defaults for winbind (make sure you're not using the \ranges # for something else.) ; idmap config * : backend = \tdb ; idmap config * : range = 3000-\7999 ; idmap config YOURDOMAINHERE : backend = \tdb ; idmap config YOURDOMAINHERE : range = 100000-\999999 ; template shell = /bin/bash # Setup usershare options to enable non-root users to share \folders # with the net usershare command. # Maximum number of usershare. 0 means that usershare is disabled. # usershare max shares = 100 # Allow users who've been granted usershare privileges to \create # public shares, not just authenticated \ones usershare allow guests = yes #======================= Share Definitions ======================= [homes] comment = Home \Directories browseable = no # By default, the home directories are exported read-only. Change \the # next parameter to 'no' if you want to be able to write to them. read only = no # File creation mask is set to 0700 for security reasons. If you want \to # create files with group=rw permissions, set next parameter to 0775. create mask = 0700 # Directory creation mask is set to 0700 for security reasons. If you want \to # create dirs. with group=rw permissions, set next parameter to 0775. directory mask = 0700 # By default, \\server\username shares can be connected to by \anyone # with access to the samba server. # The following parameter makes sure that only "username" can \connect # to \\server\\username # This might need tweaking when using external authentication \schemes valid users = %S # Un-comment the following and create the netlogon directory for Domain \Logons # (you need to configure Samba to act as a domain controller too.) ;[netlogon] ; comment = Network Logon \Service ; path = /home/samba/\netlogon ; guest ok = \yes ; read only = no # Un-comment the following and create the profiles directory to \store # users profiles (see the "logon path" option above) # (you need to configure Samba to act as a domain controller too.) # The path below should be writable by all users so that \their # profile directory may be created the first time they log \on ;[profiles] ; comment = Users \profiles ; path = /home/samba/\profiles ; guest ok = \no ; browseable = \no ; create mask = \0600 ; directory mask = 0700 [printers] comment = All \Printers browseable = \no path = /var/spool/\samba printable = \yes guest ok = \no read only = \yes create mask = 0700 # Windows clients look for this share name as a source of \downloadable # printer \drivers [print$] comment = Printer \Drivers path = /var/lib/samba/\printers browseable = \yes read only = \yes guest ok = \no # Uncomment to allow remote administration of Windows print drivers. # You may need to replace 'lpadmin' with the name of the group \your # admin users are members of. # Please note that you also need to set appropriate Unix \permissions # to the drivers directory for these users to have write rights in \it ; write list = root, @lpadmin [public] comment= Public \Storage path = /home/shares/\public # path = /home/shares/public/\V1 # path = /home/shares/public/\V2 valid users = @\users force group = \users create mask = \0660 directory mask = \0771 read only = no
Taille d'un réprtoire
1. Connaître la taille du répertoire /home/ré\pertoire # du /home/répertoire 2. Connaître la taille d’un répertoire avec l’option “-h” # du -h /home/répertoire 3. Connaître la taille totale d’un ré\pertoire # du -sh /home/répertoire 4. Lister les fichiers et répertoires et connaître leur \taille # du -a /home/répertoire 5. Lister les fichiers et répertoires et connaître leur taille avec l’option “-h” # du -ah /home/répertoire 6. Connaître la taille d’un répertoire et sous-répertoires en kilo-\octets # du -k /home/répertoire 7. Connaître la taille d’un répertoire et sous-répertoires en mé\gaoctets # du -mh /home/répertoire 8. Taille totale du disque # du -ch /home/répertoire
Archive sur montage d'un disque externe
* La doc est ici https://yunohost.org/#/external_storage_fr
Réalisation
* Le disque est vu en tant que \sda
admin@y:~ $ \lsblk NAME MAJ:MIN RM SIZE RO TYPE \MOUNTPOINT sda 8:0 0 3.7T 0 \disk |-sda1 8:1 0 128M 0 part\ `-sda2 8:2 0 3.7T 0 part /dd4to\ mmcblk0 179:0 0 59.6G 0 disk\ |-mmcblk0p1 179:1 0 43.8M 0 part /boot\ `-mmcblk0p2 179:2 0 59.6G 0 part /
Le point de montage est celui qui existait avant (dans une autre installation) sur la partition sda2
j'ai créé le point de montage et suivi la doc (mettre le lien)
* je me connecte en \root
root@y:cd / root@y:/# mkdir \nas root@y:/# mount /dev/sda2 /\nas root@y:/# cd /\nas root@y:/nas# \ls Archives_Photos lectures Photos \Transferts Bibliothèque_calibre logiciels Photos-19-12-2018 Video-\Daniel carte64 lost+found photos-brutes \Volumes DANIEL Mots de passe.kdbx récup wetransfer-\bb7676 doli opéras rpi \xp Kopies photos test yuno
* On voit le nouveau point de montage mount /dev/sda2 /nas qui a été choisi directement à la racine
root@y:/nas# \lsblk NAME MAJ:MIN RM SIZE RO TYPE \MOUNTPOINT sda 8:0 0 3.7T 0 \disk ├─sda1 8:1 0 128M 0 \part └─sda2 8:2 0 3.7T 0 part /\nas mmcblk0 179:0 0 119.1G 0 \disk ├─mmcblk0p1 179:1 0 43.8M 0 part /\boot └─mmcblk0p2 179:2 0 119G 0 part /
* Recherche du UUID pour installation fixe (explication à venir)
root@y:/# blkid | grep "/dev/sda" /dev/sda2: LABEL="NAS" UUID="215105e9-dfb3-4d68-97d7-a7ad65740775" TYPE="ext4" PARTLABEL="NAS" PARTUUID="90df8beb-dde7-41a3-85d0-68d7e31fd041" /dev/sda1: PARTLABEL="Microsoft reserved partition" PARTUUID="203858d8-d1fd-45d6-b434-772e1884d002"
* configuration de fsatb avec nano (prévoir un petit tutoriel sur nano)
GNU nano 2.7.4 File: /etc/fstab proc /proc proc defaults 0 \0 PARTUUID=853fbe81-01 /boot vfat defaults 0 \2 PARTUUID=853fbe81-02 / ext4 defaults,noatime 0 \1 # a swapfile is not a swap partition, no line \here # use dphys-swapfile swap[on|off] for \that UUID=215105e9-dfb3-4d68-97d7-a7ad65740775 /nas ext4 defaults,noatime 0 0
et au redémarrage je vois le \disque
admin@y:~ $ \lsblk NAME MAJ:MIN RM SIZE RO TYPE \MOUNTPOINT sda 8:0 0 3.7T 0 disk Le disque est vu en tant que \sda |-sda1 8:1 0 128M 0 part\ `-sda2 8:2 0 3.7T 0 part /media/stockage\ mmcblk0 179:0 0 59.6G 0 disk\ |-mmcblk0p1 179:1 0 43.8M 0 part /boot\ `-mmcblk0p2 179:2 0 59.6G 0 part /
et son contenu pré-existant par exemple avec filezilla bien pratique pour déplacer des fichiers
Installation
Installation faite en suivant la doc https://yunohost.org/#/admindoc_fr
- Config des ports dans le routeur
- Réservation de l'adresse dans le routeur
- Connexion par ssh
- Création premier utilisateur (ici vu dans l'interface d'administration)
- Installation de mc par apt install
Domaines et Cloudflare
- Ici on voit le domaine principal pascot.ca à mon adresse maison 69.9.76.108
- pi et pl sont des sous-domaines
- Des certificats let'sencrypt ont ensuite été générés pour chaque domaine référencé dans cloudflare
VIEUX
Montage d'un disque externe
- La doc est ici https://yunohost.org/#/external_storage_fr
Réalisation
- Le disque est vu en tant que sda
admin@y:~ $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 3.7T 0 disk |-sda1 8:1 0 128M 0 part `-sda2 8:2 0 3.7T 0 part /dd4to mmcblk0 179:0 0 59.6G 0 disk |-mmcblk0p1 179:1 0 43.8M 0 part /boot `-mmcblk0p2 179:2 0 59.6G 0 part /
Le point de montage est celui qui existait avant (dans une autre installation) sur la partition sda2
j'ai créé le point de montage et suivi la doc (mettre le lien)
- je me connecte en root
root@y:cd / root@y:/# mkdir nas root@y:/# mount /dev/sda2 /nas root@y:/# cd /nas root@y:/nas# ls Archives_Photos lectures Photos Transferts Bibliothèque_calibre logiciels Photos-19-12-2018 Video-Daniel carte64 lost+found photos-brutes Volumes DANIEL Mots de passe.kdbx récup wetransfer-bb7676 doli opéras rpi xp Kopies photos test yuno
- On voit le nouveau point de montage mount /dev/sda2 /nas qui a été choisi directement à la racine
root@y:/nas# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 3.7T 0 disk ├─sda1 8:1 0 128M 0 part └─sda2 8:2 0 3.7T 0 part /nas mmcblk0 179:0 0 119.1G 0 disk ├─mmcblk0p1 179:1 0 43.8M 0 part /boot └─mmcblk0p2 179:2 0 119G 0 part /
- Recherche du UUID pour installation fixe (explication à venir)
root@y:/# blkid | grep "/dev/sda" /dev/sda2: LABEL="NAS" UUID="215105e9-dfb3-4d68-97d7-a7ad65740775" TYPE="ext4" PARTLABEL="NAS" PARTUUID="90df8beb-dde7-41a3-85d0-68d7e31fd041" /dev/sda1: PARTLABEL="Microsoft reserved partition" PARTUUID="203858d8-d1fd-45d6-b434-772e1884d002"
- configuration de fsatb avec nano (prévoir un petit tutoriel sur nano)
GNU nano 2.7.4 File: /etc/fstab proc /proc proc defaults 0 0 PARTUUID=853fbe81-01 /boot vfat defaults 0 2 PARTUUID=853fbe81-02 / ext4 defaults,noatime 0 1 # a swapfile is not a swap partition, no line here # use dphys-swapfile swap[on|off] for that UUID=215105e9-dfb3-4d68-97d7-a7ad65740775 /nas ext4 defaults,noatime 0 0
et au redémarrage je vois le disque
admin@y:~ $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 3.7T 0 disk Le disque est vu en tant que sda |-sda1 8:1 0 128M 0 part `-sda2 8:2 0 3.7T 0 part /media/stockage mmcblk0 179:0 0 59.6G 0 disk |-mmcblk0p1 179:1 0 43.8M 0 part /boot `-mmcblk0p2 179:2 0 59.6G 0 part /
et son contenu pré-existant par exemple avec filezilla bien pratique pour déplacer des fichiers
Installation 17 mars 2022 pour png et jpg dans scanimage
https://forums.linuxmint.com/viewtopic.php?t=348190
https://forum.ubuntu-fr.org/viewtopic.php?id=2047352
Notes pour la gestion du serveur yunohost sur rpi
installation avec sous domaine
https://yavin4.ovh/index.php/2014/12/31/raspberry-pi-recuperer-la-temperature-cpu-dans-un-fichier/
perdu admin dans dokuwiki
ajouter ceci à la fin du URL : ?do=login
=
Borg
dans /root/.bashrc
export BORG_PASSPHRASE='4ojmwA79Y#Gp%$%r'\ export BORG_REMOTE_PATH='borg1'\ export BORG_RSH='ssh -i /root/.ssh/id_borg_ed25519'\ export b='[email protected]:backup'
Après restauration il me semblait que Borg faisait partie du backup des applis
history de la première installation sur rpi
yunohost app remove borg yunohost app list | grep borg yunohost app install borg cat /root/.ssh/id_borg_ed25519.pub scp scp /root/.ssh/id_borg_ed25519.pub [email protected]:.ssh/authorized_keys ssh [email protected] ls ssh -i /root/.ssh/id_borg_ed25519 [email protected] ls nano /root/.bashrc source /root/.bashrc borg list borg list $b
surveiller borg
admin@pascot:~$ sudo su root@pascot:/home/admin# borg list $b auto_conf_16_02_20_00:00 Sat, 2020-02-15 19:00:39 [56a4e2b0417a7d0c7a64204fc3e73e367559f4e717ca19d51979767a86734942] auto_data_16_02_20_00:00 Sat, 2020-02-15 19:01:16 [308e913cc5a7a5e4f13556db66edb33bd18fc3a07a49bc0c3f709a6a8c5892f3] auto_archivist_16_02_20_00:01 Sat, 2020-02-15 19:01:52 [86885573d4ab40272151ea5b1d8add3db2d3d36400eb9ce6516da054f1575579] auto_borg_16_02_20_00:02 Sat, 2020-02-15 19:02:24 [6dcaeac5dd04d8d1bb5c206e1e79790ab7b61c912cf4401d2a1c35030e705aba] .... root@pascot:/home/admin# borg info $b Repository ID: 57a3903c89d9eef59b6b94167c2e92f963a6331f067b0e7e102a29ecf5887363 Location: ssh://[email protected]/./backup Encrypted: Yes (repokey) Cache: /root/.cache/borg/57a3903c89d9eef59b6b94167c2e92f963a6331f067b0e7e102a29ecf5887363 Security dir: /root/.config/borg/security/57a3903c89d9eef59b6b94167c2e92f963a6331f067b0e7e102a29ecf5887363 ------------------------------------------------------------------------------ Original size Compressed size Deduplicated size All archives: 242.14 GB 234.94 GB 20.82 GB Unique chunks Total chunks Chunk index: 86653 1155912
récupérer une archive
root@pascot:/home/admin# mkdir test2 root@pascot:/home/admin# ls media test test2 root@pascot:/home/admin# cd test2 root@pascot:/home/admin/test2# ls root@pascot:/home/admin/test2# borg extract $b::auto_dokuwiki__5_16_04_20_00:21 root@pascot:/home/admin/test2# ls apps backup.csv info.json
Clé dans m0n carnet de notes dmX3jTN5tLPQ2 probablement le mot de passe
Gabriel
2 avril Tu as bien fait de vérifier, il y avait effectivement une autre erreur! Borg avertissait que l'emplacement du backup chez Rsync avait changé. Bizarre car on n'a rien modifié.
J'ai ajouté cette commande au début du script de backup (/etc/yunohost/hooks.d/backup_method/05-borg_app)
export BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
Et j'ai reparti le backup et ça semble fonctionner :)
Je vais créer une proposition au développeur de l'ajouter à son script source car si on mets à jour l'application Borg dans Yunohost, il faudra refaire la modif. ====
30 mars
Tu as bien fait de vérifier, il y avait effectivement une autre erreur! Borg avertissait que l'emplacement du backup chez Rsync avait changé. Bizarre car on n'a rien modifié.
J'ai ajouté cette commande au début du script de backup (/etc/yunohost/hooks.d/backup_method/05-borg_app)
export BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
Et j'ai reparti le backup et ça semble fonctionner :)
Je vais créer une proposition au développeur de l'ajouter à son script source car si on mets à jour l'application Borg dans Yunohost, il faudra refaire la modif.
relancer borg
J'ai résolu le problème pour les backups. Ils devraient bien se faire ce soir. C'est comme si le backup avait “coupé” une fois et que ça empêchait les prochains essais. Il y avait une erreur “failed to acquire lock” donc j'ai fait cette commande :
borg break-lock $b
Il faut seulement faire cette commande si on a le problème à nouveau (ce qui normalement ne devrait pas arriver) et seulement si aucun backup n'a lieu en ce moment.
autre bobo
Bonsoir Daniel, La cache de Borg semblait corrompue. On peut apparemment la supprimer sans problème. Je l’ai fait avec :
rm -r /root/.cache/borg
Bizarre quand même, je n’ai jamais eu à faire cela.
Le backup devrait se faire à minuit :)
RE :oui mais j'avais eu une panne de courant peut-être au mauvais moment
Bug réglé
Bonjour Daniel,
Je crois avoir réglé le problème de borg. Je me suis gardé une note pour vérifier que la prochaine sauvegarde de minuit aura bien fonctionnée.
Le problème était que l'exécutable de borg ne s'était pas bien installé. J'ai regardé le code source et je l'ai réinstallé avec les commandes suivantes
virtualenv --python=python3 /opt/borg-env /opt/borg-env/bin/python /opt/borg-env/bin/pip install borgbackup==1.1.10
Dokuwiki de privé à public et réciproquement
https://forum.yunohost.org/t/dokuwiki-de-prive-a-public/7113
Aleks Dev group 1 Feb '19
Salut,
Y’a pas de manière user-friendly actuellement, mais en attendant tu peux je pense faire :
yunohost app setting dokuwiki is_public -v 1 # Cette action est surtout “symbolique”, la vraie action est la deuxieme … yunohost app setting dokuwiki unprotected_uris -v '/' yunohost app ssowatconf
(pas 100% sur de la syntaxe exacte :sweat_smile:) Solution Wiilly Feb '19
yunohost app setting set dokuwiki is_public -v 1 # Cette action est surtout “symbolique”, la vraie action est la deuxieme …
ok, j’essaie, merci :slight_smile:
si toutefois, je souhaites revenir en “privé”, c’est possible de revenir en arrière (dans le doute, je préfère savoir avant :p) Aleks Dev group Feb '19
Oui, a mon avis il suffira de faire :
yunohost app setting dokuwiki is_public -v 0 # Cette action est surtout “symbolique”, la vraie action est la deuxieme … yunohost app setting dokuwiki unprotected_uris -d yunohost app ssowatconf
Wiilly Feb '19
cool !
je ne pige pas la commande : p c’est quoi en fait ?
unprotected_uris -d
Aleks Dev group Feb '19
La commande yunohost app setting dokuwiki unprotected_uris -v '/' change / défini la valeur du parametre “unprotected_uris” pour l’app dokuwiki à /, ce qui veut dire “pour l’app dokuwiki, considère que “ton.domaine.tld/dokuwiki/” n’est pas à protéger derrière le SSO …
(le / étant celui a la fin, mais on pourrait imaginer vouloir deproteger dokuwiki/admin…)
Dans l’autre commande, le -d corresponds à –delete …
Puis yunohost app ssowatconf regenere la conf ssowat …
Installer yunohost sur un disque externe sur le port USB
On trouve ici (et ailleurs) des directives
https://raspberry-pi.fr/boot-raspberry-pi-usb/
https://www.imnotgeek.com/fr_fr/15-11-2016/raspberry-pi-3-booter-sur-un-disque-cle-usb-28534
http://science-facile.fr/2019/03/installer-raspbian-sur-un-disque-dur-ou-ssd.html
Objectf : remplacer la carte SD par le disque externe
Je fais l'installation sur un vieux disque 500go avec alim externe. J'ai essayé sur un dique 4To pour finir après bien des déconvenues par m'appercevoir que l'on ne peut pas avoir des partitions de plus de 2 To avec une table de partition msdos et que le rpi ne démarre pas sur une table gpt nécessaire pour ce plus gros disuqe. Ça m'a valu des messages partition ne peut pas être en dehors du disque dont j'ai eu du mal à me débarasser, j'ai fini par reformater avec fdisk car gparted n'y arrivait pas, même problème et solution avec mes essais erreurs sur le dique externe
Ce qui a finalement marché
- copie de la carte SD sur le disque dur avec mon ordi
- sudo dd bs=1M if=/dev/sde of=/dev/sdc status=progress conv=fsync
- le copié collé avec gârted n'on pas fonctionné
- extension de la partition ext4 avec gparted
- connexion du disque externe sur le rpi
- démarrage sans la carte sd : bingo ça marche, juste un peu plus lent au démarrage
Scanner sur nuc''Code « machine à écrire »''
j'ai modifié le fichier "40-basic-permissions.rules" qui se trouve dans /etc/udev/rules.d/ comme suit :
j'ai mis : # USB devices (usbfs replacement) SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0777" SUBSYSTEM=="usb_device", MODE="0777"
Voilà je pense que ça change les permissions pour tous mes périphériques usb.
Connection Iphone
https://www.maketecheasier.com/easily-mount-your-iphone-as-an-external-drive-in-ubuntu/
sudo mkdir /media/iphone ifuse /media/iphone
Using an iPhone as an external Ubuntu drive used to be tricky. Linux support for iOS devices like the iPhone, iPad, and iPod used to be pretty poor, but that situation has changed.
Here’s how you can mount your iPhone storage on Ubuntu and other Linux distributions using the libimobiledevice library. Installing libimobiledevice
For iPhone and other iOS devices to be recognized on Ubuntu, you’ll need to install the libimobiledevice library first. This allows Ubuntu and other Linux operating systems to interact with these Apple devices.
This is important, especially due to Apple’s security measures. Libimobiledevice lets you access system information for your device as well as access the internal storage. The libimobiledevice website has a list of currently-included features as well as features planned for the future.
If you want to use your iPhone as an external drive, you’ll need to install libimobildevice first.
Install Libimobiledevice
You don’t need to add any additional package repositories to install libimobiledevice, so open a terminal window and type:
sudo apt install libimobiledevice6 libimobiledevice-utils
Once libimobiledevice has installed, try to connect your iPhone. If your iPhone file system doesn’t mount automatically when connected, you may need to pair your iPhone. Open a terminal and type:
idevicepair pair
A success message should appear after running this. Then, run the following:
usbmuxd -f -v
This allows for multiple connections between your iPhone and your Ubuntu installation.
After running all of these commands, if you still can’t connect to your iPhone, you’ll need to install and use a second package called iFuse to mount your iPhone manually. Installing iFuse
The iFuse package allows you to mount and access the file system on iOS devices. It’s likely that iFuse will install itself along with libimobiledevice, but if it hasn’t, you’ll need to install it manually.
Like libimobiledevice, you should find iFuse in the usual Ubuntu package repositories.
Install Ifuse
To install it, open your terminal and type:
sudo apt install ifuse
This will install iFuse and any additional packages it might need on your Ubuntu installation. Accessing Your iPhone Storage
If you have Ubuntu with the GNOME desktop environment, then your iPhone file system should mount automatically once you plug it in. Reboot your PC if, in the first instance, your device doesn’t mount automatically. You should also unlock your iPhone device screen. If you don’t, you won’t be able to access the internal storage.
If that doesn’t work, you may need to mount your iPhone manually. You may also need to do this if you don’t use the standard Ubuntu installation with GNOME.
First, pair your iPhone by opening a Linux terminal and typing:
idevicepair pair
You should see a success message appear after running this command, or idevicepair will inform you it can’t find your iOS device.
Idevicepair Command
If that’s the case, restart and try it again. Once your device is paired, type the following to mount your iPhone:
sudo mkdir /media/iphone ifuse /media/iphone
Replace the “/media/iphone” directory with another directory of your choice. This is where your iPhone files and folders will be seen on your device.
Once mounted, you should then be able to see your iPhone file system in your chosen file manager. You can then remove or add files to the device to treat it as your own external drive.
If you mounted your device manually and want to safely unmount it, open your terminal again and type:
ifuse -u /media/iphone
This will safely unmount your iPhone storage. Once done, you can then unplug it from your Ubuntu PC or laptop.
Disque montage permanent
pi@raspberrypi:~ $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 3.7T 0 disk └─sda1 8:1 0 3.7T 0 part /media/pi/KODI sdb 8:16 0 465.8G 0 disk └─sdb1 8:17 0 465.8G 0 part /media/pi/loisir mmcblk0 179:0 0 29.7G 0 disk ├─mmcblk0p1 179:1 0 256M 0 part /boot └─mmcblk0p2 179:2 0 29.5G 0 part / pi@raspberrypi:~ $ blkid | grep "/dev/sda" /dev/sda1: LABEL="KODI" UUID="5a97bece-92a7-4a76-8b89-965f4ac66c51" TYPE="ext4" PARTLABEL="KODI" PARTUUID="319498ba-1793-1544-aaba-980e5bfdc38e" pi@raspberrypi:~ $ blkid | grep "/dev/sdb" /dev/sdb1: LABEL="loisir" UUID="6909CF5F411CE8B2" TYPE="ntfs" PTTYPE="dos" PARTUUID="47ce7394-01"
suivi de modif dans fsta
GNU nano 3.2 /etc/fstab Modified proc /proc proc defaults 0 0 PARTUUID=f2d5e123-01 /boot vfat defaults 0 2 PARTUUID=f2d5e123-02 / ext4 noatime,nodiratime,defaults 0 1 # a swapfile is not a swap partition, no line here # use dphys-swapfile swap[on|off] for that UUID=5a97bece-92a7-4a76-8b89-965f4ac66c51 /Loisirs et4 defaults, noatime 0 1
Anchor
Dans la page pour envoyer le lien (en fait on complète le lien vers la page de l'ancrage par le nom de l'ancre)
[[theories:references#penrose|]]
Pour établir le lien
{{anchor:penrose}}**Roger Penrose** : Le génial mathématicien et physicien Roger Penrose est désormais un prix Nobel de Physique. Or, depuis quelques années, il pense avoir trouvé des preuves en faveur de son modèle de « cosmologie cyclique conforme » https://www.futura-sciences.com/sciences/actualites/cosmologie-prix-nobel-physique-roger-penrose-pense-avoir-preuves-univers-avant-big-bang-26213/
Dotclear2
Opérations
\ chgrp -R www-data /var/www/dotclear2/public
Dans nextcloud
* Dossier partagé Livres-en-partage :
* https://partages.pascot.ca/s/j4Jak2SAaaymFWc
* mot de passe : 7-En-Famille
https://forum.yunohost.org/t/dotclear2-probleme-de-propriete/17535
Installation
* dans le compte dp avec mot de passe du site (C=bangastidebinemeuf)
Patch
drwxr-x— 6 dotclear2 dotclear2 4096 Dec 24 14:30 Avebury\ drwxr-x— 7 dotclear2 www-data 4096 Nov 19 12:51 berlin\ drwxr-x— 3 dotclear2 www-data 4096 Nov 19 12:51 blueSilence\ drwxr-x— 3 dotclear2 www-data 4096 Nov 19 12:51 customCSS\ drwxr-x— 4 dotclear2 www-data 4096 Nov 19 12:51 default\ drwxr-x— 5 dotclear2 www-data 4096 Nov 19 12:51 ductile\ root@pascot:/var/www/dotclear2/themes# chgrp -r www-data Avebury/\ chgrp: invalid option – 'r'\ Try 'chgrp –help' for more information.\ root@pascot:/var/www/dotclear2/themes# chgrp -R www-data Avebury/\ root@pascot:/var/www/dotclear2/themes# chgrp -R www-data Avebury/\ root@pascot:/var/www/dotclear2/themes# ls -l\ total 24\ drwxr-x— 6 dotclear2 www-data 4096 Dec 24 14:30 Avebury\ drwxr-x— 7 dotclear2 www-data 4096 Nov 19 12:51 berlin\ drwxr-x— 3 dotclear2 www-data 4096 Nov 19 12:51 blueSilence\ drwxr-x— 3 dotclear2 www-data 4096 Nov 19 12:51 customCSS\ drwxr-x— 4 dotclear2 www-data 4096 Nov 19 12:51 default\ drwxr-x— 5 dotclear2 www-data 4096 Nov 19 12:51 ductile\ root@pascot:/var/www/dotclear2/themes#