diff --git a/contriborbase b/contriborbase deleted file mode 100644 index ef36a67..0000000 --- a/contriborbase +++ /dev/null @@ -1 +0,0 @@ -sme10 diff --git a/createlinks b/createlinks index fdd8672..4a56869 100755 --- a/createlinks +++ b/createlinks @@ -15,7 +15,8 @@ safe_symlink("/usr/bin/mariadb-binlog","root/usr/bin/mysqlbinlog"); safe_symlink("/usr/bin/mariadb-convert-table-format","root/usr/bin/mysql_convert_table_format"); safe_symlink("/usr/bin/mariadb-find-rows","root/usr/bin/mysql_find_rows"); safe_symlink("/usr/bin/mariadb-fix-extensions","root/usr/bin/mysql_fix_extensions"); - +safe_symlink("/usr/bin/mariadb-install-db","root/usr/bin/mysql_install_db"); +safe_symlink("/usr/bin/mariadb-embedded","root/usr/bin/mysql_embedded"); #-------------------------------------------------- # pre-backup actions diff --git a/root/etc/e-smith/templates/var/lib/mysql.private/set.password b/root/etc/e-smith/templates/var/lib/mysql.private/set.password index 897db0b..149cc09 100644 --- a/root/etc/e-smith/templates/var/lib/mysql.private/set.password +++ b/root/etc/e-smith/templates/var/lib/mysql.private/set.password @@ -4,6 +4,14 @@ my $pw = esmith::util::LdapPassword(); $OUT .= "use mysql;\n"; - $OUT .= "SET PASSWORD FOR 'root'\@localhost = PASSWORD(\"$pw\"); \n"; + $OUT .= "FLUSH PRIVILEGES;\n"; + $OUT .= "CREATE OR REPLACE USER 'root'\@localhost IDENTIFIED VIA unix_socket OR mysql_native_password USING PASSWORD(\"$pw\"); \n"; + $OUT .= "GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION; \n"; + $OUT .= "FLUSH PRIVILEGES;\n"; + # will not work as requires the With_grant privilege.... but accepts second line to alter the table to give it... + #$OUT .= "GRANT PROXY ON ``@`` TO `root`\@localhost WITH GRANT OPTION;\n"; + $OUT .= "REPLACE INTO `proxies_priv` (`Host`, `User`, `Proxied_host`, `Proxied_user`, `With_grant`, `Grantor`, `Timestamp`) VALUES + ('localhost', 'root', '', '', 1, '', current_timestamp()), + ('$SystemName.$DomainName', 'root', '', '', 1, '', current_timestamp());\n"; $OUT .= "FLUSH PRIVILEGES;\n"; } diff --git a/root/sbin/e-smith/systemd/mariadb-initialize b/root/sbin/e-smith/systemd/mariadb-initialize index 033d760..ba01477 100644 --- a/root/sbin/e-smith/systemd/mariadb-initialize +++ b/root/sbin/e-smith/systemd/mariadb-initialize @@ -3,9 +3,13 @@ exec 2>&1 if [ ! -f /var/lib/mysql/mysql/user.frm ] then - setuidgid mysql sh /usr/bin/mysql_install_db --rpm --skip-test-db --user=mysql --group=mysql + setuidgid mysql sh /usr/bin/mariadb-install-db --rpm --skip-test-db --user=mysql --group=mysql if [ -f /home/e-smith/db/mysql/mysql.dump ] then /sbin/e-smith/expand-template /etc/e-smith/sql/init/00_restore_dumped_dbs fi fi + +# set root password and access to socket passwordless +/usr/sbin/mariadbd --socket=/var/lib/mysql/mysql.sock --bootstrap --user=mysql < /var/lib/mysql.private/set.password +exit 0 diff --git a/root/sbin/e-smith/systemd/mariadb-post b/root/sbin/e-smith/systemd/mariadb-post deleted file mode 100644 index 4e9309a..0000000 --- a/root/sbin/e-smith/systemd/mariadb-post +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -for i in $(seq 1 20); -do - if [ -S /var/lib/mysql/mysql.sock ] - then - /usr/bin/mysql < /var/lib/mysql.private/set.password - echo "root password set" - exit 0 - fi - echo waiting for mariadb to start to set root password - sleep 1 -done -echo failed to set root password -# we fail silently, mariadb will still work, only issue is for phpmyadmin -# and non socket access -exit 0 - diff --git a/root/usr/lib/systemd/system/mariadb.service.d/50koozali.conf b/root/usr/lib/systemd/system/mariadb.service.d/50koozali.conf index 2af674a..8c62a83 100644 --- a/root/usr/lib/systemd/system/mariadb.service.d/50koozali.conf +++ b/root/usr/lib/systemd/system/mariadb.service.d/50koozali.conf @@ -36,8 +36,6 @@ ExecStart=/usr/sbin/mariadbd \ --user=mysql \ --pid-file=/run/mariadb/mariadb.pid -ExecStartPost=-/sbin/e-smith/systemd/mariadb-post - [Install] WantedBy=sme-server.target diff --git a/smeserver-mysql.spec b/smeserver-mysql.spec index 3bd9afc..b0f4e3b 100644 --- a/smeserver-mysql.spec +++ b/smeserver-mysql.spec @@ -2,7 +2,7 @@ Summary: Koozali SME Server specific mysql configuration and templates. %define name smeserver-mysql Name: %{name} %define version 11.0.0 -%define release 11 +%define release 12 Version: %{version} Release: %{release}%{?dist} License: GPL @@ -79,6 +79,9 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root) %changelog +* Fri Apr 04 2025 Jean-Philippe Pialasse 11.0.0-12.sme +- restore root user, pasword and socket login [SME: 12978] + * Fri Mar 07 2025 Jean-Philippe Pialasse 11.0.0-11.sme - upgrade to support mariadb 11.4 [SME: 12930] move mariadb-upgrade to mysql.init unit