diff --git a/docs/Divers/git/git.md b/docs/Divers/git/git.md index dfeff04..4207d25 100644 --- a/docs/Divers/git/git.md +++ b/docs/Divers/git/git.md @@ -135,6 +135,18 @@ Pas de bruno@dsm916e/ +Si erreur de certificat: + +```bash +bruno@Mint-book:~/Documents$ git clone https://192.168.1.7/volume1/Repositories/ +Clonage dans 'Repositories'... +fatal: unable to access 'https://192.168.1.7/volume1/Repositories/': SSL: certificate subject name (clicclac.synology.me) does not match target host name '192.168.1.7' + +GIT_SSL_NO_VERIFY=true git clone ssh://bruno@192.168.1.7:42666/volume1/Repositories/shell_scripts.git +``` + + + #### Tirer un seul fichier d'un repo git: ```bash @@ -354,6 +366,12 @@ $ git push origin master $ git remote show origin ``` +##### Ajouter un dépot distant: + +```bash +GIT_SSL_NO_VERIFY=true git remote add origin ssh://bruno@192.168.1.7:42666/volume1/Repositories/shell_scripts.git +``` + ### Etiquettes: @@ -441,6 +459,8 @@ https://git-scm.com/book/fr/v1/Les-branches-avec-Git-Brancher-et-fusionner%C2%A0 #### Rebaser +Avec la commande rebase, vous prenez toutes les modifications qui ont été validées sur une branche et vous les rejouez sur une autre. + #### => [Session de travail avec git](git-session.md) <= diff --git a/docs/Divers/nextcloud.md b/docs/Divers/nextcloud.md new file mode 100644 index 0000000..388ebda --- /dev/null +++ b/docs/Divers/nextcloud.md @@ -0,0 +1,100 @@ +# Installer Nextcloud en logne de commande + + + +```bash +$ cd /volume1/web/nextcloud +``` + +```bash +$ sudo -u http php72 occ maintenance:install --database "mysql" --database-name "nextcloud" --database-user "dbuser" --database-pass "dbpass" --admin-user "admin" --admin-pass "adminpass" +Password: +Cannot write into "config" directory! +This can usually be fixed by giving the webserver write access to the config directory +See https://docs.nextcloud.com/server/16/go.php?to=admin-dir_permissions + +Or, if you prefer to keep config.php file read only, set the option "config_is_read_only" to true in it. +See https://docs.nextcloud.com/server/16/go.php?to=admin-config + + +``` + +Corriger les autorisations du dossier nextcloud + +```bash +# !/bin/bash + +chown -R http:http /volume1/web/nextcloud/ +chown -R http:http /volume1/web/nextcloud/apps/ +chown -R http:http /volume1/web/nextcloud/config/ +chown -R http:http /volume1/web/nextcloud/themes/ +chown -R http:http /volume1/nextcloud/ +chown http:http /volume1/web/nextcloud/.htaccess +find /volume1/web/nextcloud/ -type f -print0 | xargs -0 chmod 777 +find /volume1/web/nextcloud/ -type d -print0 | xargs -0 chmod 777 +find /volume1/nextcloud/ -type d -print0 | xargs -0 chmod 777 +chmod 777 /volume1/web/nextcloud/.htaccess +``` + + + +Créer le dossier data en dehors de Document Root: + +```bash +bruno@DS916:/volume1/nextcloud $ mkdir data +bruno@DS916:/volume1/nextcloud $ sudo chown -R http:http data/ +bruno@DS916:/volume1/nextcloud $ sudo chmod 750 data/ +``` + + + +```bash +$ sudo -u http php72 /volume1/web/nextcloud/occ +The current PHP memory limit is below the recommended value of 512MB. +Nextcloud is not installed - only a limited number of commands are available +Nextcloud 16.0.1 +``` + +```bash +bruno@DS916:/volume1/web/nextcloud $ sudo -u http php72 occ maintenance:install --database "mysql" --database-name "nextcloud" --database-host "127.0.0.1:3307" --database-user "root" --database-pass "dbpass" --admin-user "admin" --admin-pass "adminpass" --verbose -vvv +The current PHP memory limit is below the recommended value of 512MB. +Nextcloud was successfully installed +``` + + + +Accès webdav: +https://clicclac.synology.me/nextcloud/remote.php/dav/files/admin/ + + + +```bash +'overwrite.cli.url' => 'https://yourdomain.com', +‘memcache.local’ => ‘\\OC\\Memcache\\APCu’, +``` + +https://clicclac.synology.me/nextcloud/index.php/s/q6eEBA9ciqnfPsC + + + + + + +'cipher' => 'AES-256-CFB', +The default cipher for encrypting files. Currently AES-128-CFB and AES-256-CFB are supported. + +15552000 + +```bash + + # Guarantee HTTPS for 1 Year including Sub Domains + Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains" + +``` + +The hint "Limitations for Android-User: change to “ssl_ecdh_curve prime256v1;” instead of “ssl_ecdh_curve secp384r1;” " by Carsten Rieger on https://www.c-rieger.de/nextcloud-installation-guide/#c04 fixed the problem. + +```bash +/usr/local/etc/apache22/sites-enabled $ sudo nano httpd-vhost.conf +``` + diff --git a/docs/Linux/permissions.md b/docs/Linux/permissions.md index 5a4d8b5..da7a5ff 100644 --- a/docs/Linux/permissions.md +++ b/docs/Linux/permissions.md @@ -1,12 +1,13 @@ -# Permissions +# Permissions #### Quelques commandes: - su - temporarily become the superuser - sudo - temporarily become the superuser -- chmod - modify file access rights -- chown - change file ownership -- chgrp - change a file's group ownership +- chmod - modifier les droits d'accèès au fichier +- chown - changer le possesseur du fichier +- chgrp - changer a file's group ownership +- umask - permissions par défaut @@ -18,6 +19,17 @@ ``` +| read value + | write value + | execute value = | numericvalue: | symbolic equivalent: | +| :----------: | :-----------: | :-------------: | :-----------: | :------------------: | +| | | | | | +| | | **1** | **1** | **x** | +| | **2** | | **2** | **w** | +| | **2** | **1** | **3** | **wx** | +| **4** | | | **4** | **r** | +| **4** | | **1** | **5** | **rx** | +| **4** | **2** | | **6** | **rw** | +| **4** | **2** | **1** | **7** | **rwx** | + #### chmod: change les permissions pour un fichier ou un dossier @@ -105,6 +117,30 @@ bruno@macbook-pro:~$ ls -la +#### umask: + +définit les permissions par défaut d'un répertoire ou d'un fichier créé. + +```bash +Par défaut: +$ umask +022 +# 666 ANT NOT 022 = 644 (fichiers) +# 777 AND NOT 022 = 755 (dossiers) + +$ umask -S +u=rwx,g=rx,o=rx +``` + +Modifier les permissions par défaut: + +```bash +$ umask 777 +# Personne n'aura accès aux fichiers nouvellement crées +``` + + + #### setuid: ``` diff --git a/docs/Linux/redirections.md b/docs/Linux/redirections.md index 8b2d8c1..47de94c 100644 --- a/docs/Linux/redirections.md +++ b/docs/Linux/redirections.md @@ -5,7 +5,7 @@ Redirige la sortie standart vers un nouveau fichier: ```bash -bruno@macbook-pro:~$ ls > liste.txt +$ ls > liste.txt ``` @@ -13,7 +13,7 @@ bruno@macbook-pro:~$ ls > liste.txt Redirige la sortie standart vers un fichier (ajoute à la suite): ```bash -bruno@macbook-pro:~$ ls >> liste.txt +$ ls >> liste.txt ``` @@ -23,7 +23,7 @@ bruno@macbook-pro:~$ ls >> liste.txt Considère liste.txt comme entrée standart (au lieu du clavier): ```bash -bruno@macbook-pro:~$ sort < liste.txt +$ sort < liste.txt ``` @@ -31,5 +31,28 @@ bruno@macbook-pro:~$ sort < liste.txt #### On peut combiner les 2 ```bash -bruno@macbook-pro:~$ sort < liste.txt > liste_triee.txt -``` \ No newline at end of file +$ sort < liste.txt > liste_triee.txt +``` + + + +#### Erreurs + +Rediriger les erreurs vers un fichier: + +```bash +$ UneCommande & > fichier-erreurs.txt +``` + +Rediriger les erreurs vers un fichier (ajoute à la suite):: + +```bash +$ UneCommande & > fichier-erreurs.txt +``` + +Rediriger la sortie et les erreurs vers un fichier: + +```bash +$ UneCommande 2>&1 | tee fichier.txt +``` + diff --git a/docs/Mint/applications.md b/docs/Mint/applications.md index f9c6508..043bfd5 100644 --- a/docs/Mint/applications.md +++ b/docs/Mint/applications.md @@ -12,6 +12,12 @@ Plusieurs solutions pour installer des applications dans Mint: #### Gestionnaire de paquets Synaptic +Liste de tous les paquets installés sur le système: + +```bash +$ dpkg --get-selections > mylist.list +``` + #### Flatpak diff --git a/docs/Mint/samba.md b/docs/Mint/samba.md index ad13cff..3eaecb3 100644 --- a/docs/Mint/samba.md +++ b/docs/Mint/samba.md @@ -10,3 +10,141 @@ Mais pour créer partager sous Mint, il faut installer le paquet Samba. +**Dossier public partagé** + +Créer un dossier public pour le partage: + +```bash +$ sudo mkdir -p /home/the-user/sambashare +``` + +Régler le permissions pour que tout le monde puisse lire/écrire dedans: + +```bash +$ sudo chown -R nobody:nogroup /home/hendadel/sambashare/ +$ sudo chmod -R 0775 /home/hendadel/sambashare/ +``` + +Editer le fichier de configuration de Samba: + +```bash +$ sudo nano /etc/samba/smb.conf +``` + + +Ajouter les lignes suivantes au fichier de configuration de Samba: + +```bash +[global] +workgroup = WORKGROUP +server string = Samba Server %v +netbios name = hendadel-VBox +security = user + +[SambaShare] +Comment = Samba Shared Directory +path = /home/hendadel/sambashare +writable = yes +guest ok = yes +read only = no +force user = nobody +``` + +Tester le fichier de configuration de Samba: + +```bash +$ testparm +``` + +Redémarrer Samba: + +```bash +$ sudo service smbd restart +``` + +Accéder au répertoire: + +```bash +\192.168.1.8\sambashare + +-- accès sans l/p -- +``` + + + +**Dossier privé partagé** + +Créer un groupe, y ajouter des utilisateurs et membres. Uniquement les membres de ce groupe auront accès au dossier partagé. + + + +Créer un groupe: + +```bash +$ sudo addgroup smbgroup +``` + +Ajouter un utilisateur au groupe smbgroup: + +```bash +$ sudo usermod -aG smbgroup the-user +``` + + +Donner un mot-de-passe: Give a password for the samba user. + +```bash +$ sudo smbpasswd -a the-user +``` + +Créer un répertoire pour partager en privé: + +```bash +$ sudo mkdir -p /home/the-user/sambaprivate/ +``` + +Régler les permissions du dossier pour que seuls root et les membres du groupe accèdent au dossier partagé: + +```bash +$ sudo chown -R root:smbgroup /home/hendadel/sambaprivate/ +$ sudo chmod -R 0770 /home/hendadel/sambaprivate/ +``` + +Editer le fichier de configuration de Samba pour y ajouter le nouveau répertoire. + +```bash +$ sudo vi /etc/samba/smb.conf +``` + + +Ajouter ce qui suit: + +```bash +[SambaPrivate] +path = /home/hendadel/sambaprivate +valid users = @smbgroup +guest ok = no +writable = yes +browsable = yes +``` + +Redémarrer le service Samba. + +```bash +sudo service smbd restart +``` + +Tester le fichier de configuration de Samba: + +```bash +$ testparm +``` + +Accéder au répertoire: + +```bash +\192.168.1.8\sambashare + +-- demande l/p -- +``` + diff --git a/docs/Raspberry/backup_sd.md b/docs/Raspberry/backup_sd.md new file mode 100644 index 0000000..6798889 --- /dev/null +++ b/docs/Raspberry/backup_sd.md @@ -0,0 +1,86 @@ +# Backup carte SD RaspberryPi sous Linux: + + + +```bash +bruno@debian:~$ sudo fdisk -l + +Carte SD +Disque /dev/sdg : 29,7 GiB, 31914983424 octets, 62333952 secteurs +Unités : secteur de 1 × 512 = 512 octets +Taille de secteur (logique / physique) : 512 octets / 512 octets +taille d'E/S (minimale / optimale) : 512 octets / 512 octets +Type d'étiquette de disque : dos +Identifiant de disque : 0x4ad391be + +Périphérique Amorçage Début Fin Secteurs Taille Id Type +/dev/sdg1 8192 98045 89854 43,9M c W95 FAT32 (LBA) +/dev/sdg2 98304 62333951 62235648 29,7G 83 Linux +``` + + + +```bash +bruno@debian:~$ sudo dd if=/dev/sdg of=~/raspian_backup.img status=progress +62333952+0 enregistrements lus +62333952+0 enregistrements écrits +31914983424 bytes (32 GB, 30 GiB) copied, 2111,96 s, 15,1 MB/s + +# if (input file) +# of (output file) +# status=progress sinon dd n'affiche rien +``` + + + +Avec dd, l'image à la même taille que le disque, quelque soit la taille occupée réelle. + +Avec pishrink, la taille est réduite à la taille réellement occupée. + +```bash +$ wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh +$ chmod +x pishrink.sh +$ sudo ./pishrink.sh raspian_backup.img +Creating new /etc/rc.local +rootfs : 121548/1907808 fichiers (0.2% non contigus), 1043934/7779456 blocs +resize2fs 1.43.4 (31-Jan-2017) +resize2fs 1.43.4 (31-Jan-2017) +En train de redimensionner le système de fichiers sur /dev/loop0 à 1343833 (4k) blocs. +Début de la passe 2 (max = 69797) +Relocalisation de blocs XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +Début de la passe 3 (max = 238) +Examen de la table d'i-noeuds XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +Début de la passe 4 (max = 11012) +Mise à jour des références d'i-noeudsXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +Le système de fichiers sur /dev/loop0 a maintenant une taille de 1343488 blocs (4k). + +Shrunk raspian_backup.img from 30G to 5,2G + +Disque /dev/sdg : 29,7 GiB, 31914983424 octets, 62333952 secteurs +Unités : secteur de 1 × 512 = 512 octets +Taille de secteur (logique / physique) : 512 octets / 512 octets +taille d'E/S (minimale / optimale) : 512 octets / 512 octets +Type d'étiquette de disque : dos +Identifiant de disque : 0x00000000 + +Périphérique Amorçage Début Fin Secteurs Taille Id Type +/dev/sdg1 2048 62332927 62330880 29,7G b W95 FAT32 +``` + + + +#### Restaure sur la carte SD: + +```bash +$ sudo dd if=~/raspian_backup.img of=/dev/sdg +10848969+0 enregistrements lus +10848969+0 enregistrements écrits +5554672128 bytes (5,6 GB, 5,2 GiB) copied, 850,459 s, 6,5 MB/s +``` + +Linux: + +Windows: + +Utiliser WinDisk32 sourceforge.net/projects/win32diskimager +