Anlık görüntüler için Sudoer yapılandırması nasıl oluşturulur

LVM anlık görüntülerini kullanırken, / etc / sudoers dosyasında aşağıdaki girişler gereklidir. / Etc / sudoers dosyasını düzenlemek için "visudo" çalıştırın ve izin vermek için bu girişleri ekleyin mysql Kullanıcı, şifre sorulmadan ve oturum açma kabuğuna ihtiyaç duymadan gerekli komutları çalıştırabilir:

mysql = NOPASSWD: / bin / mount, NOPASSWD: / bin / umount, NOPASSWD: / bin / df, NOPASSWD: / usr / sbin / lvdisplay, NOPASSWD: / usr / sbin / lvcreate, NOPASSWD: / usr / sbin / lvremove Varsayılanları: % mysql! requireetty Varsayılanları: mysql! requiredetty

İşletim sistemine bağlı olarak tüm lvm araçlarına uygun yolu değiştirmeyi unutmayın, çünkü bu, kullandığınız Linux dağıtımına bağlı olarak farklılık gösterebilir.

Şirketinizin daha katı politikaları olması durumunda sudoers dosyanıza ince ayar yapabilirsiniz, bir örnek alalım:

Diyelim ki MySQL sunucusu, diamond.jewel.com, 3 cilt grubu VolGroup00, vg1 & vg2 ve LogVol00, lv1 ve lv2 mantıksal ciltlerinin her birinde bir tane var. Lv00'de innodb veritabanı ve lv1'de innodb günlükleriyle Logvol2'de mysql datadir var:
 

Dosya sistemi 1K bloklar Kullanılabilir Kullanılabilir Kullanım Yüzdesi
/ dev / mapper / VolGroup00-LogVol00
7459216 3040728 4033464% 43 /
/ dev / sda1 101086 10895 84972% 12 / önyükleme
tmpfs 127668 0 127668 0% / dev / shm
/ dev / eşleyici / vg1-lv1 126931 11832 108546% 10 / l1
/ dev / eşleyici / vg2-lv2 126931 11833 108545% 10 / l2


/Etc/my.cnf dosyasının içeriği aşağıdaki gibidir

innodb_data_home_dir = / l1 / ibdata innodb_data_file_path = ibdata1: 10M: autoextend innodb_log_group_home_dir = / l2 / iblogs


Sudoer dosya yapılandırması, yukarıdaki örnek için aşağıdaki satırlara sahip olmalıdır ve yalnızca bir cilt grubunuz varsa, yalnızca bir satıra sahip olmanız gerekir.

mysql diamond.jewel.com = NOPASSWD: / bin / mount / dev / VolGroup00 / zrm * / tmp / zrm *, NOPASSWD: / bin / umount / tmp / zrm *, NOPASSWD: / bin / df, NOPASSWD: / usr / sbin / lvdisplay, NOPASSWD: / usr / sbin / lvcreate -L * -s -n zrm * / dev / VolGroup00 / LogVol00, NOPASSWD: / usr / sbin / lvremove -f / dev / VolGroup00 / zrm * mysql diamond.jewel. com = NOPASSWD: / bin / mount / dev / vg1 / zrm * / tmp / zrm *, NOPASSWD: / bin / umount / tmp / zrm *, NOPASSWD: / bin / df, NOPASSWD: / usr / sbin / lvdisplay, NOPASSWD : / usr / sbin / lvcreate -L * -s -n zrm * / dev / vg1 / lv1, NOPASSWD: / usr / sbin / lvremove -f / dev / vg1 / zrm * mysql diamond.jewel.com = NOPASSWD: / bin / mount / dev / vg2 / zrm * / tmp / zrm *, NOPASSWD: / bin / umount / tmp / zrm *, NOPASSWD: / bin / df, NOPASSWD: / usr / sbin / lvdisplay, NOPASSWD: / usr / sbin / lvcreate -L * -s -n zrm * / dev / vg2 / lv2, NOPASSWD: / usr / sbin / lvremove -f / dev / vg2 / zrm *


NOT: Lütfen lvm komutlarına ve df'ye doğru yolu verin.

Xfs dosya sistemi kullanıyorsanız, şunu belirtmeniz gerekir:

mysql diamond.jewel.com = NOPASSWD: / bin / mount -o -nouuid / dev / VolGroup00 / zrm * / tmp / zrm *, NOPASSWD: / bin / umount / tmp / zrm *, NOPASSWD: / bin / df, NOPASSWD : / usr / sbin / lvdisplay, NOPASSWD: / usr / sbin / lvcreate -L * -s -n zrm * / dev / VolGroup00 / LogVol00, NOPASSWD: / usr / sbin / lvremove -f / dev / VolGroup00 / zrm *

Lütfen ayrıca aşağıdaki satırları eklemeyi unutmayın, böylece bir oturum açma kabuğu için gerekli değildir. mysql sudo komutunu çalıştıracak kullanıcı:

Varsayılanlar:% mysql! Requireetty Varsayılanlar: mysql! Requireetty