User Tools

Site Tools


sysadmin:index

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sysadmin:index [2019/12/04 14:08] – [Introduzione a GIT] ferodasysadmin:index [2022/06/16 09:00] (current) – [Installazioni nuovi certificati con acme.sh] acme-renew.sh script feroda
Line 210: Line 210:
 == Comandi base == == Comandi base ==
  
-  git init - Crea un repository Git vuoto o reinizializza uno esistente+Se si è creata una directory e la si vuole far diventare un repository Git
  
-  git log permette di tenere traccia delle nostre versioni.+  git init 
 +   
 +Una volta fatte le modifiche:
  
-  git checkout + codice univoco  permette di spostarsi dentro la repository+  git add  
      
-  git checkout master ti riporta al ramo principale +Indica a Git che si desidera includere gli aggiornamenti di un determinato file nel prossimo commit. Le modifiche vengono effettivamente registrate nel repository locale dopo che viene eseguito il comando
  
-  git add  Indica a Git che si desidera includere gli aggiornamenti di un determinato file nel prossimo  +  git commit
-  commit. Tuttavia le modifiche non vengono effettivamente registrate fino a quando non si esegue git  +
-  commit+
  
-  git status permette di determinare lo stato dei tuoi file. +Per vedere la traccia di tutti i commit nel branch corrente (di default è "master")
  
-  git commit viene utilizzato per salvare le modifiche nel repository locale+  git log
  
-=== Creazione di un nuovo server ===+Per vedere i file aggiunti/modificati/eliminati:
  
-We need LVM setup. Here is a proposal:+  git status
  
-```+ 
 +Per spostarsi "nel tempo e nello spazio", ossia andare in una situazione temporale di codice differente (ad es: la versione di codice di 3gg fa) 
 + 
 +  git checkout <codice hash del commit> 
 + 
 +Per rispostarsi alla versione "principale": 
 +   
 +  git checkout master 
 + 
 + 
 +===== Esportazione cartelle sul nextcloud con occ dal terminale ===== 
 + 
 +Questo comando ti mostra la lista completa di tutte le cartelle condivise su nextcloud. 
 + 
 +  sudo -u apache /opt/rh/rh-php72/root/bin/php /usr/share/nextcloud/occ files_external:list -all 
 +   
 + 
 +===Per aggiungere una cartella condivisa si usa files_external:create=== 
 + 
 +esempio:  
 +  sudo -u apache /opt/rh/rh-php72/root/bin/php /usr/share/nextcloud/occ files_external:create Labidee 'smb' password::sessioncredentials -c host=localhost -c share=Labidee --users=7DF8102E-A6DF-4E0E-870F-7E523564FCAC 
 + 
 +"smb": (smb per sistemi Windows), in questo campo viene inserito il Back-end di archiviazione disponibili 
 + 
 +password: qui va inserito il tipo di autenticazione  
 + 
 +===Per vedere che tipi di autenticazioni sono supportati digitare questo comando=== 
 + 
 +  sudo -u apache /opt/rh/rh-php72/root/bin/php /usr/share/nextcloud/occ files_external:backends 
 + 
 + -c: ti permette di aggiungere più valori 
 + 
 + host: l'url del server Samba 
 + 
 + share: nome della cartella 
 + 
 + --users= + codice univoco del utente 
 + 
 + ===Per vedere i codici del utente usare questo comando===  
 + 
 +  sudo -u apache /opt/rh/rh-php72/root/bin/php /usr/share/nextcloud/occ user:list 
 + 
 + esempio di un codice univoco: "4A96FE56-8373-403C-BA53-1B8D64C3660E" 
 + 
 +=== Per cancellare una configurazione usare il comando === 
 + 
 +  sudo -u apache /opt/rh/rh-php72/root/bin/php /usr/share/nextcloud/occ files_external:delete + il <mount_id> 
 + 
 + 
 +===== Ridimensionare una partizione LVM ===== 
 + 
 +LVM - Logical Volume Manager consente di gestire in modo logico le partizioni. Questo vuol dire che le partizioni si possono ridimensionare al bisogno. È più facile ingrandirle che ridurle, però si può fare. 
 + 
 +Ora vi elenco le componenti base: 
 + 
 +  - **pv**: Physical Volume, sono i dispositivi a blocchi partizioni/dischi inizializzati per LVM; 
 +  - **vg**: Volume Group, sono i gruppi di **pv** hanno un nome. Rappresentano "il mucchio" di blocchi allocabili. Per convenzione in beFair il primo lo chiamiamo proprio ''vg'' 
 +  - **lv**: Logical Volume, sono le partizioni create dentro i **vg** e sono queste che vengono formattate con il filesystem, ad esempio ''ext4'' 
 + 
 +==== Ridimensionare un Logical Volume perché esaurito lo spazio ==== 
 + 
 +Questo è il caso critico più frequente che quindi ci interessa descrivere qui. Spazio esaurito, come si affronta con LVM? Semplice! 
 + 
 +  - Visualizzo i blocchi non allocati nel Volume Group con il comando ''vgdisplay''; 
 +  - Ridimensiono il Logical Volume corrispondente con ''lvresize''; 
 +  - Estendo la partizione che nel caso di ''ext4'' può essere fatto senza smontarla con ''resize2fs''; 
 + 
 +=== Esempio === 
 + 
 +Spazio esaurito su server database: 
 + 
 +<code> 
 +postgres@T-FTSQL01:~/exports$ df -h 
 +Filesystem               Size  Used Avail Use% Mounted on 
 +udev                     7.9G      7.9G   0% /dev 
 +tmpfs                    1.6G   25M  1.6G   2% /run 
 +/dev/mapper/vg-root       15G  1.8G   12G  14% / 
 +tmpfs                    7.9G  8.0K  7.9G   1% /dev/shm 
 +tmpfs                    5.0M      5.0M   0% /run/lock 
 +tmpfs                    7.9G      7.9G   0% /sys/fs/cgroup 
 +/dev/mapper/vg-var        27G  292M   25G   2% /var 
 +/dev/mapper/vg-home      922M  2.4M  856M   1% /home 
 +/dev/mapper/vg--data-db  393G  373G     0 100% /var/lib/postgresql 
 +tmpfs                    1.6G      1.6G   0% /run/user/
 +</code> 
 + 
 +In questo caso il device è identificato da ''/dev/mapper/vg--data-db'' dove ''vg-data'' è il Volume Group e ''db'' è il nome del Logical Volume (o partizione logica). 
 + 
 +NOTA: il volume group si chiama ''vg-data'' perché Luca ha deciso di crearne uno apposito per il database. Non sappiamo se è la scelta migliore, ma è sembrato utile separare in quel momento. 
 + 
 +Quindi guardo i blocchi disponibili con ''vgdisplay'' e vedo che in ''vg-data'' ce ne sono 25599 ossia ''<100GB'' 
 + 
 +<code> 
 +root@T-FTSQL01:/var/lib/postgresql# vgdisplay 
 +  --- Volume group --- 
 +  VG Name               vg-data 
 +  System ID 
 +  Format                lvm2 
 +  Metadata Areas        1 
 +  Metadata Sequence No  2 
 +  VG Access             read/write 
 +  VG Status             resizable 
 +  MAX LV                0 
 +  Cur LV                1 
 +  Open LV               1 
 +  Max PV                0 
 +  Cur PV                1 
 +  Act PV                1 
 +  VG Size               <500,00 GiB 
 +  PE Size               4,00 MiB 
 +  Total PE              127999 
 +  Alloc PE / Size       102400 / 400,00 GiB 
 +  Free  PE / Size       25599 / <100,00 GiB 
 +  VG UUID               MEJIEI-FCew-cjqa-Hxhw-NRC5-97Vb-5LnW75 
 + 
 +  --- Volume group --- 
 +  VG Name               vg 
 +  System ID 
 +  Format                lvm2 
 +  Metadata Areas        1 
 +  Metadata Sequence No  4 
 +  VG Access             read/write 
 +  VG Status             resizable 
 +  MAX LV                0 
 +  Cur LV                3 
 +  Open LV               3 
 +  Max PV                0 
 +  Cur PV                1 
 +  Act PV                1 
 +  VG Size               <80,00 GiB 
 +  PE Size               4,00 MiB 
 +  Total PE              20479 
 +  Alloc PE / Size       10942 / 42,74 GiB 
 +  Free  PE / Size       9537 / 37,25 GiB 
 +  VG UUID               zY74Qj-dd6d-udes-2rMX-B80a-UYVQ-Q5RHdY 
 +</code> 
 + 
 +Poi ridimensiono con ''lvresize'' aumentando di 20G la partizione e ridimensiono il filesystem con ''resize2fs'' 
 + 
 +<code> 
 +root@T-FTSQL01:/var/lib/postgresql# lvresize -L+20G /dev/mapper/vg--data-db 
 +  Size of logical volume vg-data/db changed from 400,00 GiB (102400 extents) to 420,00 GiB (107520 extents). 
 +  Logical volume vg-data/db successfully resized. 
 +root@T-FTSQL01:/var/lib/postgresql# resize2fs /dev/mapper/vg--data-db 
 +resize2fs 1.44.5 (15-Dec-2018) 
 +Filesystem at /dev/mapper/vg--data-db is mounted on /var/lib/postgresql; on-line resizing required 
 +old_desc_blocks = 50, new_desc_blocks = 53 
 +The filesystem on /dev/mapper/vg--data-db is now 110100480 (4k) blocks long. 
 +</code> 
 + 
 +Ultimo passo fondamentale: verifico se effettivamente lo spazio è aumentato 
 + 
 +<code> 
 +root@T-FTSQL01:/var/lib/postgresql# df -h 
 +Filesystem               Size  Used Avail Use% Mounted on 
 +udev                     7,9G      7,9G   0% /dev 
 +tmpfs                    1,6G   33M  1,6G   3% /run 
 +/dev/mapper/vg-root       15G  1,8G   12G  14% / 
 +tmpfs                    7,9G  8,0K  7,9G   1% /dev/shm 
 +tmpfs                    5,0M      5,0M   0% /run/lock 
 +tmpfs                    7,9G      7,9G   0% /sys/fs/cgroup 
 +/dev/mapper/vg-var        27G  292M   25G   2% /var 
 +/dev/mapper/vg-home      922M  2,4M  856M   1% /home 
 +/dev/mapper/vg--data-db  413G  373G   19G  96% /var/lib/postgresql 
 +tmpfs                    1,6G      1,6G   0% /run/user/
 +</code> 
 + 
 +==== Esempio di creazione partizioni per un nuovo server ==== 
 + 
 +<code>
 20GB / 20GB /
 5GB /dev/mapper/vg--hosting-home /home 5GB /dev/mapper/vg--hosting-home /home
 50GB /dev/mapper/vg--hosting-var /var 50GB /dev/mapper/vg--hosting-var /var
-```+</code>
  
 remaining disk blocks could be unpartitioned to allow LVM partition resizing on demand. remaining disk blocks could be unpartitioned to allow LVM partition resizing on demand.
  
-In order to achieve this goal you have to create a volume group (VG)+In order to achieve this goal you have to create a volume group (VG) ''hosting'' bound to /dev/sda 
-* `hostingbound to /dev/sda+ 
 + 
 +===== Installazioni nuovi certificati con acme.sh ===== 
 + 
 +È presente lo script ''acme-renew.sh'' che si può usare con ''acme-renew.sh befair.it www.befair.it'' 
 + 
 +Il funzionamento in dettaglio è il seguente: 
 + 
 +  acme.sh --issue --standalone -d befair.it -d www.befair.it 
 +  mkdir -p /etc/nginx/certificates/befair.it/ 
 +  acme.sh --install-cert -d befair.it --cert-file /etc/nginx/certificates/befair.it/cert.pem --key-file /etc/nginx/certificates/befair.it/privkey.pem --fullchain-file /etc/nginx/certificates/befair.it/fullchain.pem  
  
-  
sysadmin/index.1575468514.txt.gz · Last modified: 2019/12/04 14:08 by feroda