Skip to content

Instantly share code, notes, and snippets.

@aderixon
aderixon / mysql_backup_restore.md
Last active November 12, 2021 10:50
MySQL data migration

Migrating MySQL databases via dump/restore

Guidance on migrating MySQL data between servers (and potentially releases) using database dump/restore.

Definitive MySQL backup command

$ mysqldump --single-transaction --quick --skip-set-charset --default-character-set=utf8 --add-drop-table --routines --events --all-databases --force

(Note: --routines invalid pre-5.1; --events invalid pre-5.5)

Time Machine configuration for filesystem

Create a case sensitive sparse bundle on the destination folder with:

hdiutil create -size 500g -type SPARSEBUNDLE -fs "HFS+J" -fsargs -s -volname 'TimeMachine' TimeMachine.sparsebundle

Tell TM to inherit it (sets the correct label):

sudo tmutil inheritbackup /path/to/TimeMachine.sparsebundle
---
# complete example
driver:
name: vagrant
vagrantfiles:
- test/vagrant-vbguest.rb
provision: true
provisioner:
name: ansible_playbook
@aderixon
aderixon / grub-rhgb.pp
Created June 5, 2014 15:13
Remove entries from grub.conf with augeas
augeas {
"Disable Graphical Boot in /etc/grub.conf":
context => "/files/etc/grub.conf",
lens => "grub.lns",
incl => "/etc/grub.conf",
changes => "rm title/kernel/rhgb";
"Disable Quiet Boot in /etc/grub.conf":
context => "/files/etc/grub.conf",
lens => "grub.lns",
incl => "/etc/grub.conf",
@aderixon
aderixon / ctrlaltdel.pp
Created May 20, 2014 15:11
Disable CTRL-ALT-DEL reboot sequence on Linux using Puppet
$initconf = '/etc/inittab'
case $::osfamily {
/(?i-mx:redhat)/: {
case $::osmajor {
'6': {
# EL6+ has a dedicated config file
file { '/etc/init/control-alt-delete.conf':
ensure => 'present',
source => "puppet:///modules/${module_name}/control-alt-delete.conf",
owner => 'root',
@aderixon
aderixon / passwd_history.pp
Created May 20, 2014 15:08
Example of enabling password history in PAM using Puppet/Augeas
class pam::passwd_history(
$num = 4
) {
case $::osfamily {
/(?i-mx:redhat)/: {
# enable password history
# if not present:
augeas { 'passwd-hist':
context => '/files/etc/pam.d/system-auth',
changes => ["set *[module =~ regexp('.*pam_unix.so')][type = 'password']/argument[last()+1] remember=${num}"],
@aderixon
aderixon / tally.pp
Created May 20, 2014 15:06
Example of enabling pam_tally on various Linux with Puppet/Augeas
class pam::tally {
$tally_deny = extlookup('tally_deny', 5)
case $::operatingsystem {
# EL
/(?i-mx:redhat|centos|oraclelinux|oel)/: {
$pammod = $::osmajor ? {
'6' => 'pam_tally2.so',
default => 'pam_tally.so',
}