讓電腦自動完成安裝,咱們要把分區、root口令等告訴電腦,咱們用一個(應答文件的文本文件)將設置寫入其中,讓安裝嚮導找到該應答文件便可自動安裝。
準備素材:centos七、centos7mini(最小化安裝版本)
此實驗以centos7爲例,centos6相似html
##### A、[root@localhost ~]# ls anaconda-ks.cfg 此文件anaconda-ks.cfg爲記錄了咱們是如何安裝系統的。 ##### B、將網卡配置文件的 onboot 改成 yes [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=bd070b36-c892-43b7-a8c8-d179b44c1d3c DEVICE=ens33 ONBOOT=yes ~ [root@localhost ~]# systemctl restart network ##### C、主機 centos7 ssh上遠程的 centos7mini [root@centos7 ~]# ssh 192.168.58.133 root@192.168.58.133's password: Last login: Wed Jan 30 12:49:40 2019 from 192.168.58.1 [root@localhost ~]# scp anaconda-ks.cfg 192.168.58.254:/data root@192.168.58.254's password: anaconda-ks.cfg 100% 1421 120.3KB/s 00:00 [root@localhost ~]# exit logout Connection to 192.168.58.133 closed. 此處是將 anaconda-ks.cfg 文件拷貝到主機上 ##### D、咱們能夠把 anaconda-ks.cf 文件當作最小化安裝的模板。以下: [root@centos7 ~]# cd /data [root@centos7 data]# ls anaconda-ks.cfg hallo.sh magedu.pubkey [root@centos7 data]# vim anaconda-ks.cfg #version=DEVEL # System authorization information auth --enableshadow --passalgo=sha512 # Use CDROM installation media cdrom # Use graphical install graphical # Run the Setup Agent on first boot firstboot --enable ignoredisk --only-use=sda # Keyboard layouts keyboard --vckeymap=us --xlayouts='us' # System language lang en_US.UTF-8 # Network information network --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate network --hostname=localhost.localdomain # Root password rootpw --iscrypted $6$V2eP8pESlfKIToP8$NVcSm0geeSV4X1cd1lccrs9FAdK1rbj6EczSviVmoz75Znj5GaI.qY7jA0H1dmbh.hsI2ZIHtaR3Ko0/Xku9B1 # System services services --disabled="chronyd" # System timezone timezone Asia/Shanghai --isUtc --nontp "anaconda-ks.cfg" 48L, 1421C 1,1 Top ##### E、此時咱們要先安裝圖像界面的文件,以下: [root@centos7 data]# yum install system-config-kickstart Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile base | 3.6 kB 00:00 epel | 4.7 kB 00:00 (1/2): epel/updateinfo | 954 kB 00:00 (2/2): epel/primary_db | 6.6 MB 00:01 Dependency Installed: gnome-python2.x86_64 0:2.28.1-14.el7 gnome-python2-canvas.x86_64 0:2.28.1-14.el7 libart_lgpl.x86_64 0:2.3.21-10.el7 libgnomecanvas.x86_64 0:2.30.3-8.el7 rarian.x86_64 0:0.8.1-11.el7 rarian-compat.x86_64 0:0.8.1-11.el7 system-config-date.noarch 0:1.10.6-3.el7.centos system-config-date-docs.noarch 0:1.0.11-4.el7 system-config-keyboard.noarch 0:1.4.0-5.el7 system-config-keyboard-base.noarch 0:1.4.0-5.el7 system-config-language.noarch 0:1.4.0-9.el7 usermode-gtk.x86_64 0:1.111-5.el7 Complete! ##### F、咱們能夠利用網絡,搭建一個網絡服務器,按照httpd的作法,
[root@centos7 ~]# rpm -ql httpd
/etc/httpd
/etc/httpd/conf
/etc/httpd/conf.d
/etc/httpd/conf.d/README
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-dav.conf
/etc/httpd/conf.modules.d/00-lua.conf
/etc/httpd/conf.modules.d/00-mpm.conf
/etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.modules.d/00-systemd.conf
/etc/httpd/conf.modules.d/01-cgi.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic
/var/www
/var/www/cgi-bin
/var/www/html
將httpd服務啓動起來:
[root@centos7 ~]# systemctl start httpd
[root@centos7 ~]# cd /var/www/html
[root@centos7 html]# mkdir centos/{6,7}/os/x86_64/ -pv
[root@centos7 html]# tree
.
├── app
│ ├── 6
│ │ └── x86_64
│ └── 7
│ └── x86_64
└── centos
├── 6
│ └── os
│ └── x86_64
└── 7
└── os
└── x86_64python
12 directories, 0 files
[root@centos7 html]# mount /dev/sr0 centos/7/os/x86_64/
mount: /dev/sr0 is write-protected, mounting read-onlylinux
##### G、此時,咱們能夠去互聯網訪問主機了,以下: http://192.168.58.254/centos/7/ Index of /centos/7 [ICO] Name Last modified Size Description [PARENTDIR] Parent Directory - [DIR] os/ 2019-01-05 14:39 - 咱們輸入以下命令: [root@centos7 ~]# system-config-kickstart 這是圖形界面,咱們能夠在彈出的頁面中設置文件 ##### H、咱們把centos7mini裏的文件拷貝到centos7 上 [root@centos7 ~]# cd /data [root@centos7 data]# ls anaconda-ks.cfg hallo.sh magedu.pubkey [root@centos7 data]# mkdir /var/www/html/ks/; cp anaconda-ks.cfg /var/www/html/ks/centos7-mini.cfg ##### L、咱們進入ks文件中查看 [root@centos7 data]# cd /var/www/html/ks [root@centos7 ks]# ls centos7-mini.cfg [root@centos7 ks]# ll total 4 -rw------- 1 root root 1421 Jan 30 22:10 centos7-mini.cfg [root@centos7 ks]# chmod a+r centos7-mini.cfg [root@centos7 ks]# ll total 4 -rw-r--r-- 1 root root 1421 Jan 30 22:10 centos7-mini.cfg 效果以下:
http://192.168.58.254/ks/centos7-mini.cfgredis
#version=DEVELcanvas
auth --enableshadow --passalgo=sha512vim
cdromcentos
graphical服務器
firstboot --enable
ignoredisk --only-use=sda網絡
keyboard --vckeymap=us --xlayouts='us'app
lang en_US.UTF-8
network --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate
network --hostname=localhost.localdomain
rootpw --iscrypted $6$V2eP8pESlfKIToP8$NVcSm0geeSV4X1cd1lccrs9FAdK1rbj6EczSviVmoz75Znj5GaI.qY7jA0H1dmbh.hsI2ZIHtaR3Ko0/Xku9B1
services --disabled="chronyd"
timezone Asia/Shanghai --isUtc --nontp
user --name=wang --password=$6$5MKCrWhZLuuC30QZ$X7fRD6I.5TrvmUNm4tDS6TmTZua/uer6Sn2EzXBv/Bk307pkanOOn9pyilJxT/cs9jxpXMBnAzHChvgPbb8Qe. --iscrypted --gecos="wang"
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
autopart --type=lvm
clearpart --none --initlabel
%packagesbr/>@^minimal
@core
kexec-tools
%end
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
##### H、接下來,咱們在字符界面中配置文件 [root@centos7 ~]# system-config-kickstart Xlib: extension "RANDR" missing on display "localhost:11.0". /usr/share/system-config-kickstart/kickstartGui.py:104: GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated xml = gtk.glade.XML ("/usr/share/system-config-kickstart/system-config-kickstart.glade", domain="system-config-kickstart") Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile 此時會出現字符界面,咱們進行配置, 一、輸入2次口令,reboot,perform,兩項打鉤, 二、perform打鉤,選擇http輸入路徑, 三、install,install(mbr)打鉤, 四、clear,remove all,initialize 打鉤,Add增長 / /boot 五、加ens33 六、八、默認 七、selinux 關閉 九、system base 打鉤, 會保存一個備份文件,設爲 ks7.cfg 而後在命令行中配置ks7.cfg ,以下: 可是我使用得是老師上課共享文件中的應答文件
#version=DEVEL
auth --enableshadow --passalgo=sha512
url --url=http://192.168.58.254/centos/7/os/x86_64/
text
firstboot --enable
ignoredisk --only-use=sda
keyboard --vckeymap=us --xlayouts='us'
lang en_US.UTF-8
network --bootproto=dhcp --device=ens33 --onboot=on --ipv6=auto --activate
network --hostname=centos7.localdomain
rootpw --iscrypted $6$VYubI8zpV4R/R1M7$.vVqobGDm7t9YAHH924tWzNjqrKGAt4JiBMBu2iWwpIuW2RuupH5OgA1JbEgmZgh8oOSFlY6FeQMVBhN4yM8E0
firewall --disabled
selinux --disabled
services --disabled="chronyd"
timezone Asia/Shanghai --isUtc --nontp
user --name=wang --password=$6$ARdL74KE4qW3tizz$wEQAlGOURNTQlbVBJ45LnQoZOelIHoUsfR/S9hJ0EEWzm1Gjs2tVEhBC0bOX0CF3ufsnWwgDXdE6D7pKZwc/p. --iscrypted --gecos="wang"
#xconfig --startxonboot
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
clearpart --all --initlabel
zerombr
reboot
part /boot --fstype="xfs" --ondisk=sda --size=1024
part swap --fstype="swap" --ondisk=sda --size=4096
part / --fstype="xfs" --ondisk=sda --size=51200
part /data --fstype="xfs" --ondisk=sda --size=30720
%packagesbr/>@core
%end`
咱們手動配置了zerombr 用來清空分區,part分區,yum源,ssh/authorized_keys,/etc/ssh/sshd_config等內容。 ##### L、咱們將新安裝好的centos7mini開機,在install 7 選項處按 esc 鍵,會彈出:boot:輸入:Linux ks=http://192.168.58.254/ks/ks7.cfg ip=192.168.58.123 netmask=255.255.255.0 此時咱們去ping192.168.58.123,若能ping通,就說明能夠了,按回車鍵,便可進行自動安裝,到此,此實驗完滿結束!!!