marți, 15 noiembrie 2022

Partajare NAS si mapare in Centos

 Creare mount point

mkdir /mnt

mkdir /mnt/share


Instalare cifs-utils

yum install cifs-utils


Montare pana la urmatorul boot

mount.cifs //172.18.172.46/backup /mnt/share -o user=root,pass=

Desi pe NAS am userul admin, nu merge cu el, vrea cu root. Parola este de la NAS/admin


Montare permanenta la boot

Se editeaza /etc/fstab

se adauga linia

172.18.172.46/backup /mnt/share/ cifs username=root,password= 0 0

Se scrie parola de la NAS

unmount - pentru teste

umount -a -t cifs -l



marți, 18 octombrie 2022

Webmin and Virtualmin @ s156 Debian 11 cu multiple php

 1. Debian 12 chior.

Se instalează timeshift

apt update

apt install timeshift

Salvezi la diferite momente sistemul.
/usr/bin/timeshift
timeshift --create --comments "Primul backup" --tags D
wget http://software.virtualmin.com/gpl/scripts/install.sh
/bin/sh install.sh
timeshift --create --comments "Backup dup instalare Virtualmin" --tags D
timeshift --create --comments "Backup dupa configurare s156 virtual" --tags D
apt-get -y install apt-transport-https lsb-release ca-certificates curl && curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg && sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/sury-debian-php-$(lsb_release -sc).list' && apt-get update
apt-get install php5.6-{cgi,cli,fpm,pdo,gd,mbstring,mysqlnd,opcache,curl,xml,zip}
apt-get install php7.3-{cgi,cli,fpm,pdo,gd,mbstring,mysqlnd,opcache,curl,xml,zip}
for php in $(ls /etc/php); do sudo apt-get install -y "php$php-"{curl,intl}; done

Activezi FCGI mode in virtualmin. Lets encrypt se instalează singur.

Instalare script virtualmin (include si webmin): 

wget http://software.virtualmin.com/gpl/scripts/install.sh
/bin/sh install.sh

Debianul ăsta foloseste firewalld. Install-ul isi setează singur zonele. 
//Se adauga in iptables linia

//Se reporneste iptables, se acceseaza cu https://...:10000

Se creaza seerverul virtual, se lasă sa se genereze certificatul pentru el cu Lets encrypt
Se bifeaza pentru serverul virual in configuratie MariaDB

Pentru php multiplu:
https://www.virtualmin.com/documentation/web/multiplephp/

noul debian - se adauga reposytory etc/apt/sources.list.d/php.list 
apt-get install apt-transport-https lsb-release ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
#!/bin/sh
# To add this repository please do:

if [ "$(whoami)" != "root" ]; then
    SUDO=sudo
fi

${SUDO} apt-get update
${SUDO} apt-get -y install lsb-release ca-certificates curl
${SUDO} curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
${SUDO} dpkg -i /tmp/debsuryorg-archive-keyring.deb
${SUDO} sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
${SUDO} apt-get update
apt-get update
apt-get install php5.6 - cu sudo in fata

Installing on Debian

Enable sury/php repository

apt-get -y install apt-transport-https lsb-release ca-certificates curl && curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg && sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/sury-debian-php-$(lsb_release -sc).list' && apt-get update

Install additional PHP packages

apt-get install php*-{cgi,cli,fpm,pdo,gd,mbstring,mysqlnd,opcache,xml,zip}

Note: php* should be replaced with a specific PHP version, i.e. php7.4, unless you really need to install all available additional PHP versions.


In Virtualmin - Server configuration - php options





 PHP Options
In domain s156.central.ucv.ro
PHP options for this domain
PHP script execution mode
Maximum PHP script run time   seconds
PHP versions
EnabledWebsite subdirectoryVersion

joi, 20 ianuarie 2022

Modificare template Uber @ Bitspec pentru a se afisa meniul dropdown la adaugare Blog in Easyblog

 1. Am creat in templates/uber/local/css fisierul blog.css

cu urmatorul continut

[data-tippy-root] [data-animation="fade"] {
    opacity: 1;
}

In tempaltele uber, la Custom code, Before </head>

am adaugat linia

<link rel="stylesheet" type="text/css" href="/templates/uber/local/css/blog.css" />

luni, 18 octombrie 2021

Redirectare emailuri in postfix

 Informații aici

https://blog.benoitblanchon.fr/postfix-forward/


Fisierul este etc/postfix/virtual

Dupa modificare

trebuie facute operatiile

sudo postmap /etc/postfix/virtual
sudo service postfix reload

vineri, 17 septembrie 2021

Webmin, Virtualmin si folosirea de versiuni diferite de php in subfoldere

 Instalare CENTOS 7 - minimal install. 

Partitia Home e cea mai mare, acolo pune virtualmin datele

se instaleaza iptables, se elimina firewalld

se instaleaza webmin, fara sa se porneasca - nu va merge, ca nu e instalat httpd

se instaleaza virtualmin, care instaleaza httpd cu mod_cgi corect configurat pentru suexec.

De verificat cum pod da utilizatorului drepturi depline.

miercuri, 14 octombrie 2020

Upgrade / downgrade php on centos 7

 

# php -v
Afli ce versiune ai
Instalezi - daca nu sunt deja instalate
 yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
 yum install yum-utils
 yum-config-manager --disable remi-php71
yum-config-manager --disable remi-php5*
yum-config-manager --disable remi-test


# yum-config-manager --enable remi-php71
# yum-config-manager --enable remi-php72 
# yum-config-manager --enable remi-php73
# yum-config-manager --enable remi-php74   
 
 yum remove php
yum remove php-*
Se dezinstaleaza tot ce tine de php, inclusiv phpmyadmin
Apoi se instaleaza ce pachet a fost enable

yum -y install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json
Se restarteaza httpd

vineri, 9 octombrie 2020

Procedura de asignare corectă a cohortelor in moodle la trecerea intr-un an nou

La fiecare an promovat, studentul trece intr-o noua cohortă, care va fi asignată deja la cursurile corespunzătoare, nu mai este nevoie să parcurgem fiecare curs si să asignăm cohorta redenumită.

Procedura este următoare

Initial avem 3 ani Anul 1, Anul 2 si Anul 3

Studentii din Anul 1 trec in Anul 2, cei din Anul 2 în Anul 3, cei din anul 3 finalizaează sau trec ma Master, pentru cei de la licență.

Se crează o nouă cohortă, numită Anul 0, în care se adaugă csv-ul cu studentii noi înmatriculați în anul I.

Se crează o cohortă denumită Anul SUP, în care se vor muta studenții din cohorta Anul 3.

Cum se face mutarea:

Utilizatori - Conturi - Actiuni in masa pentru utilizatori

Se porneste de la Cohorta Anul 3

Se alage filtrul ID cohortăeste egal cu Anul 3

Lista se adaugă la selecție

Se execută operația Adaugă la cohortă -> Anul SUP

In fereastra de cohorte se verifică identitatea de mambri - ca numar - intre cohorta Anul 3 si Anul SUP.

Se elimină din cohorta Anul 3 membrii vechi. Atentie, operatiunea necesita ceva timp.

Cohorta 3 rămâne cu zero membri si va putea prelua membrii cohortei Anul 2.

Si așa mai departe.


Completare cu ChatGPT. Creare nume de utilizatori din campurile nume si prenume

Se inlocuieste A2 cu C2 

1. Varianta cu diacritice:

=CONCATENATE(LOWER(SUBSTITUTE(A2, "-", "-")), ".", LOWER(B2))

Unde:

  • A2 este celula care conține prenumele (în formatul PRENUME1-PRENUME2).
  • B2 este celula care conține numele.

Explicația formulei:

  1. SUBSTITUTE(A2, "-", "-"): Aceasta verifică dacă există un „-” în câmpul PRENUME, și îl păstrează neschimbat.
  2. LOWER(): Funcția LOWER transformă textul în litere mici.
  3. ".": Adaugă punctul între prenume și nume.
  4. CONCATENATE(): Concatenează rezultatele într-un singur câmp cu formatul prenume.nume.

De exemplu:

  • Dacă în celula A2 ai „ION-ALIN” și în B2 ai „POPESCU”, rezultatul va fi „ion-alin.popescu”.

Această formulă funcționează și pentru cazurile în care există doar un singur prenume.


Varianta 2 - fara diacritice:

=LOWER(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, "Ă", "a"), "Â", "a"), "Î", "i"), "Ș", "s"), "Ț", "t"), "ă", "a"), "â", "a"), "î", "i"), "ș", "s"), "ț", "t")) & "." & LOWER(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B2, "Ă", "a"), "Â", "a"), "Î", "i"), "Ș", "s"), "Ț", "t"), "ă", "a"), "â", "a"), "î", "i"), "ș", "s"), "ț", "t"))

Explicația formulei:

  1. SUBSTITUTE(A2, "Ă", "a"): Înlocuiește litera "Ă" cu "a". Acest lucru se repetă pentru fiecare diacritică (majuscule și minuscule).
  2. LOWER(): Transformă textul în litere mici după ce diacriticele au fost înlocuite.
  3. "& '.' &": Adaugă punctul între prenume și nume.
  4. A2 și B2: Reprezintă celulele cu prenumele și numele (scrise cu majuscule și, eventual, cu diacritice).

Această formulă va transforma diacriticele din câmpurile prenume și nume și va returna rezultatul în formatul „prenume.nume” fără diacritice.

Exemplu:

  • Dacă în A2 ai „ION-ȘTEFAN” și în B2 ai „POPESCU”, rezultatul va fi „ion-stefan.popescu”.