update.sql 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. -- 操作系统模板镜像
  2. CREATE TABLE IF NOT EXISTS os_template_image(
  3. label VARCHAR(255) NOT NULL,
  4. description TEXT,
  5. path VARCHAR(255) NOT NULL,
  6. active BOOLEAN NOT NULL DEFAULT TRUE,
  7. logo VARCHAR(255) NOT NULL,
  8. os_template_profile_id BIGINT UNSIGNED NOT NULL,
  9. PRIMARY KEY (id))
  10. ENGINE=InnoDB
  11. DEFAULT CHARSET=utf8;
  12. -- 操作系统模板描述文件
  13. CREATE TABLE IF NOT EXISTS os_template_profile(
  14. id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  15. label VARCHAR(255) NOT NULL,
  16. description TEXT,
  17. -- http://libguestfs.org/guestfish.1.html#inspect-get-type
  18. os_type VARCHAR(10) NOT NULL,
  19. -- http://libguestfs.org/guestfish.1.html#inspect-get-distro
  20. os_distro VARCHAR(20) NOT NULL,
  21. os_major TINYINT UNSIGNED NOT NULL,
  22. os_minor TINYINT UNSIGNED NOT NULL,
  23. -- http://libguestfs.org/guestfish.1.html#inspect-get-arch http://libguestfs.org/guestfish.1.html#file-architecture
  24. os_arch VARCHAR(10) NOT NULL,
  25. os_product_name VARCHAR(255) NOT NULL,
  26. active BOOLEAN NOT NULL DEFAULT TRUE,
  27. icon VARCHAR(255) NOT NULL,
  28. os_template_initialize_operate_set_id BIGINT UNSIGNED NOT NULL,
  29. PRIMARY KEY (id))
  30. ENGINE=InnoDB
  31. DEFAULT CHARSET=utf8;
  32. ALTER TABLE os_template_profile ADD INDEX (label);
  33. ALTER TABLE os_template_profile ADD INDEX (os_type);
  34. ALTER TABLE os_template_profile ADD INDEX (os_distro);
  35. ALTER TABLE os_template_profile ADD INDEX (os_product_name);
  36. -- 操作系统模板初始化操作集
  37. CREATE TABLE IF NOT EXISTS os_template_initialize_operate_set(
  38. id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  39. label VARCHAR(255) NOT NULL,
  40. description TEXT,
  41. active BOOLEAN NOT NULL DEFAULT TRUE,
  42. PRIMARY KEY (id))
  43. ENGINE=InnoDB
  44. DEFAULT CHARSET=utf8;
  45. ALTER TABLE os_template_initialize_operate_set ADD INDEX (label);
  46. -- 操作系统模板初始化操作细则
  47. CREATE TABLE IF NOT EXISTS os_template_initialize_operate(
  48. id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  49. os_template_initialize_operate_set_id BIGINT UNSIGNED NOT NULL,
  50. kind TINYINT UNSIGNED NOT NULL DEFAULT 0,
  51. sequence TINYINT UNSIGNED NOT NULL DEFAULT 0,
  52. path VARCHAR(255) NOT NULL,
  53. content TEXT,
  54. command TEXT,
  55. PRIMARY KEY (id))
  56. ENGINE=InnoDB
  57. DEFAULT CHARSET=utf8;
  58. ALTER TABLE os_template_initialize_operate ADD INDEX (os_template_initialize_operate_set_id);
  59. INSERT INTO os_template_initialize_operate_set (label, description, active) VALUES ('CentOS-Systemd', '用作 Redhat Systemd 系列的系统初始化。初始化操作依据 CentOS 7 来实现。', 1);
  60. INSERT INTO os_template_initialize_operate_set (label, description, active) VALUES ('CentOS-SysV', '用作 Redhat SysV 系列的系统初始化。初始化操作依据 CentOS 6.8 来实现。', 1);
  61. INSERT INTO os_template_initialize_operate_set (label, description, active) VALUES ('Gentoo-OpenRC', '用作 Gentoo OpenRC 系列的系统初始化。', 1);
  62. INSERT INTO os_template_initialize_operate_set (label, description, active) VALUES ('Windows', '用作 MS-Windows 系列的系统初始化。初始化操作依据 Windows 2012 来实现。', 1);
  63. -- For CentOS-Systemd
  64. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (1, 1, 0, '/etc/resolv.conf', 'nameserver {DNS1}
  65. nameserver {DNS2}', '');
  66. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (1, 1, 1, '/etc/sysconfig/network-scripts/ifcfg-eth0', 'DEVICE=eth0
  67. TYPE=Ethernet
  68. ONBOOT=yes
  69. BOOTPROTO="static"
  70. IPADDR={IP}
  71. NETMASK={NETMASK}
  72. GATEWAY={GATEWAY}
  73. DNS1={DNS1}
  74. DNS2={DNS2}
  75. IPV6INIT=no
  76. NAME=eth0', '');
  77. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (1, 1, 2, '/etc/hostname', '{HOSTNAME}', '');
  78. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (1, 0, 3, '', '', 'echo "root:{PASSWORD}" | chpasswd');
  79. -- For CentOS-SysV
  80. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (2, 1, 0, '/etc/resolv.conf', 'nameserver {DNS1}
  81. nameserver {DNS2}', '');
  82. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (2, 1, 1, '/etc/sysconfig/network-scripts/ifcfg-eth0', 'DEVICE=eth0
  83. TYPE=Ethernet
  84. ONBOOT=yes
  85. BOOTPROTO="static"
  86. IPADDR={IP}
  87. NETMASK={NETMASK}
  88. GATEWAY={GATEWAY}
  89. IPV6INIT=no
  90. NAME=eth0', '');
  91. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (2, 1, 2, '/etc/sysconfig/network', 'NETWORKING=yes
  92. HOSTNAME="{HOSTNAME}"', '');
  93. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (2, 0, 3, '', '', 'echo "root:{PASSWORD}" | chpasswd');
  94. -- For Gentoo-OpenRC
  95. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (3, 1, 0, '/etc/resolv.conf', 'nameserver {DNS1}
  96. nameserver {DNS2}', '');
  97. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (3, 1, 1, '/etc/conf.d/net', 'config_eth0="{IP}/{NETMASK}"
  98. routes_eth0="default via {GATEWAY}"', '');
  99. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (3, 1, 2, '/etc/conf.d/hostname', 'hostname="{HOSTNAME}"', '');
  100. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (3, 0, 3, '', '', 'echo "root:{PASSWORD}" | chpasswd');
  101. -- For Windows
  102. INSERT INTO os_template_initialize_operate (os_template_initialize_operate_set_id, kind, sequence, path, content, command) VALUES (4, 1, 0, '/Windows/jimv_init.bat', 'netsh interface ip set address name="Ethernet" source=static {IP} {NETMASK} {GATEWAY}
  103. netsh interface ip set dns "Ethernet" static {DNS1} primary
  104. netsh interface ip add dns "Ethernet" {DNS2}
  105. wmic computersystem where name="%COMPUTERNAME%" call rename name="{HOSTNAME}"
  106. net user Administrator {PASSWORD}
  107. timeout 3 > NUL
  108. sc delete JimVInit
  109. del C:\\Windows\\jimv_init.bat
  110. timeout 2 > NUL
  111. shutdown -r -t 0', '');
  112. INSERT INTO os_template_profile (label, description, os_type, os_distro, os_major, os_minor, os_arch, os_product_name, active, icon, os_template_initialize_operate_set_id)
  113. VALUES ('CentOS-7.4', 'CentOS 7.4。', 'linux', 'centos', 7, 4, 'x86_64', 'CentOS Linux release 7.4.1708 (Core)', 1, 'icon-os icon-os-centos', 1);
  114. INSERT INTO os_template_profile (label, description, os_type, os_distro, os_major, os_minor, os_arch, os_product_name, active, icon, os_template_initialize_operate_set_id)
  115. VALUES ('CentOS-6.8', 'CentOS 6.8。', 'linux', 'centos', 6, 8, 'x86_64', 'CentOS release 6.8 (Final)', 1, 'icon-os icon-os-centos', 2);
  116. INSERT INTO os_template_profile (label, description, os_type, os_distro, os_major, os_minor, os_arch, os_product_name, active, icon, os_template_initialize_operate_set_id)
  117. VALUES ('Gentoo-2.2', 'Gentoo 2.2。', 'linux', 'gentoo', 2, 2, 'x86_64', 'Gentoo Base System release 2.2', 1, 'icon-os icon-os-gentoo', 3);
  118. INSERT INTO os_template_profile (label, description, os_type, os_distro, os_major, os_minor, os_arch, os_product_name, active, icon, os_template_initialize_operate_set_id)
  119. VALUES ('Windows-2012-R2-Standard', 'Windows 2012 R2 Standard。', 'windows', 'windows', 6, 3, 'x86_64', 'Windows Server 2012 R2 Standard', 1, 'icon-os icon-os-windows', 4);