Skip to content

Commit 240ecb2

Browse files
trostenbjornmu
authored andcommitted
BUG#20587028 LOG IS NOT WRITTEN IN /VAR/LOG/MYSQL/MYSQLD.LOG IN SLES12 REPO
Perms set on log file directory was too strict, server was not allowed to write to log file. Also fix perms on datadir as socket file might be inside and perms set on mysql-files directory. Signed-off-by: Terje Røsten <[email protected]> (cherry picked from commit 4d99bc6ecfb5d31616adac74e5386a9919beb678)
1 parent 0445ceb commit 240ecb2

File tree

6 files changed

+17
-17
lines changed

6 files changed

+17
-17
lines changed

packaging/rpm-fedora/mysql.spec.in

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,7 @@ MBD=$RPM_BUILD_DIR/%{src_dir}
464464
# Ensure that needed directories exists
465465
install -d -m 0755 %{buildroot}/var/lib/mysql
466466
install -d -m 0755 %{buildroot}/var/run/mysqld
467-
install -d -m 0770 %{buildroot}/var/lib/mysql-files
467+
install -d -m 0750 %{buildroot}/var/lib/mysql-files
468468

469469
# Install all binaries
470470
pushd $MBD/release
@@ -517,7 +517,7 @@ rm -r $(readlink var) var
517517

518518
%post server
519519
datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
520-
/bin/chmod 0750 "$datadir" >/dev/null 2>&1 || :
520+
/bin/chmod 0755 "$datadir" >/dev/null 2>&1 || :
521521
/bin/touch /var/log/mysqld.log >/dev/null 2>&1 || :
522522
%systemd_post mysqld.service
523523
/usr/bin/systemctl enable mysqld >/dev/null 2>&1 || :
@@ -635,7 +635,7 @@ datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n
635635
%attr(644, root, root) %config(noreplace,missingok) %{_sysconfdir}/logrotate.d/mysql
636636
%dir %attr(755, mysql, mysql) /var/lib/mysql
637637
%dir %attr(755, mysql, mysql) /var/run/mysqld
638-
%dir %attr(770, mysql, mysql) /var/lib/mysql-files
638+
%dir %attr(750, mysql, mysql) /var/lib/mysql-files
639639

640640
%files common
641641
%defattr(-, root, root, -)

packaging/rpm-oel/mysql.init

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ start(){
8484
mkdir -p "$datadir" || exit 1
8585
fi
8686
chown mysql:mysql "$datadir"
87-
chmod 0750 "$datadir"
87+
chmod 0755 "$datadir"
8888
[ -x /sbin/restorecon ] && /sbin/restorecon "$datadir"
8989
# Now create the database
9090
action $"Initializing MySQL database: " /usr/bin/mysql_install_db --datadir="$datadir" --user=mysql
@@ -100,7 +100,7 @@ start(){
100100

101101
fi
102102
chown mysql:mysql "$datadir"
103-
chmod 0750 "$datadir"
103+
chmod 0755 "$datadir"
104104
# Pass all the options determined above, to ensure consistent behavior.
105105
# In many cases mysqld_safe would arrive at the same conclusions anyway
106106
# but we need to be sure. (An exception is that we don't force the

packaging/rpm-oel/mysql.spec.in

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -625,7 +625,7 @@ MBD=$RPM_BUILD_DIR/%{src_dir}
625625
# Ensure that needed directories exists
626626
install -d -m 0755 %{buildroot}/var/lib/mysql
627627
install -d -m 0755 %{buildroot}/var/run/mysqld
628-
install -d -m 0770 %{buildroot}/var/lib/mysql-files
628+
install -d -m 0750 %{buildroot}/var/lib/mysql-files
629629

630630
# Install all binaries
631631
cd $MBD/release
@@ -681,7 +681,7 @@ rm -r $(readlink var) var
681681

682682
%post server
683683
datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
684-
/bin/chmod 0750 "$datadir" >/dev/null 2>&1 || :
684+
/bin/chmod 0755 "$datadir" >/dev/null 2>&1 || :
685685
/bin/touch /var/log/mysqld.log >/dev/null 2>&1 || :
686686
%if 0%{?systemd}
687687
%systemd_post mysqld.service
@@ -842,7 +842,7 @@ fi
842842
%attr(644, root, root) %config(noreplace,missingok) %{_sysconfdir}/logrotate.d/mysql
843843
%dir %attr(755, mysql, mysql) /var/lib/mysql
844844
%dir %attr(755, mysql, mysql) /var/run/mysqld
845-
%dir %attr(770, mysql, mysql) /var/lib/mysql-files
845+
%dir %attr(750, mysql, mysql) /var/lib/mysql-files
846846

847847
%files common
848848
%defattr(-, root, root, -)

packaging/rpm-sles/mysql.init

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ install_db () {
7777
logfile=$(get_option mysqld_safe log-error "/var/log/mysql/mysqld.log")
7878

7979
# Restore log, dir, perms and SELinux contexts
80-
[ -d "$datadir" ] || install -d -m 0750 -omysql -gmysql "$datadir" || return 1
80+
[ -d "$datadir" ] || install -d -m 0755 -omysql -gmysql "$datadir" || return 1
8181

8282
[ -e $logfile ] || touch $logfile || return 1
8383
chmod 0640 $logfile

packaging/rpm-sles/mysql.spec.in

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -441,10 +441,10 @@ mkdir release
441441
MBD=$RPM_BUILD_DIR/%{src_dir}
442442

443443
# Ensure that needed directories exists
444-
install -d -m 0750 %{buildroot}/var/lib/mysql
444+
install -d -m 0755 %{buildroot}/var/lib/mysql
445445
install -d -m 0755 %{buildroot}/var/run/mysql
446-
install -d -m 0660 %{buildroot}/var/log/mysql
447-
install -d -m 0770 %{buildroot}/var/lib/mysql-files
446+
install -d -m 0750 %{buildroot}/var/log/mysql
447+
install -d -m 0750 %{buildroot}/var/lib/mysql-files
448448

449449

450450
# Install all binaries
@@ -509,7 +509,7 @@ rm -r $(readlink var) var
509509

510510
%post server
511511
datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
512-
/bin/chmod 0750 "$datadir"
512+
/bin/chmod 0755 "$datadir"
513513
/bin/touch /var/log/mysql/mysqld.log
514514
%if 0%{?systemd}
515515
%service_add_post mysql.service
@@ -668,10 +668,10 @@ fi
668668
%attr(755, root, root) %{_sysconfdir}/init.d/mysql
669669
%endif
670670
%attr(644, root, root) %config(noreplace,missingok) %{_sysconfdir}/logrotate.d/mysql
671-
%dir %attr(750, mysql, mysql) /var/lib/mysql
671+
%dir %attr(755, mysql, mysql) /var/lib/mysql
672672
%dir %attr(755, mysql, mysql) /var/run/mysql
673-
%dir %attr(660, mysql, mysql) /var/log/mysql
674-
%dir %attr(770, mysql, mysql) /var/lib/mysql-files
673+
%dir %attr(750, mysql, mysql) /var/log/mysql
674+
%dir %attr(750, mysql, mysql) /var/lib/mysql-files
675675

676676
%files common
677677
%defattr(-, root, root, -)

scripts/systemd/mysqld_pre_systemd.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ install_db () {
3434

3535
# Restore log, dir, perms and SELinux contexts
3636

37-
[ -d "$datadir" ] || install -d -m 0750 -o@MYSQLD_USER@ -g@MYSQLD_USER@ "$datadir" || exit 1
37+
[ -d "$datadir" ] || install -d -m 0755 -o@MYSQLD_USER@ -g@MYSQLD_USER@ "$datadir" || exit 1
3838

3939
[ -e $log ] || touch $log
4040
chmod 0640 $log

0 commit comments

Comments
 (0)