親自寫過shell指令碼後才發現,這玩意真是太方便了,當你想把一些瑣碎的、細節性的小指令一次性來完成時,指令碼無疑是最好的選擇,方便、快捷,關鍵是真是懶人必備啊。
由於安裝的centos6.5是最小化安裝,且是實驗環境,即安裝在vmware workstations上面,在首次安裝完成後,配置完ip位址的相關資訊後,就做了乙個初始的快照,以便下次實驗完後,可以通過快照快速還原系統。
但是由於實驗環境的要求,例如防火牆、selinux、光碟掛載、yum源配置等,都是最常需要修改的選項,並且由於最小化安裝,系統裡並沒有vim編譯工具和man手冊的查詢,所以導致每次還原快照後,還要處理這些瑣碎的問題。為此,我就專門寫了這麼乙個小指令碼,內容並不複雜,但是也是一種學習過程,發出來和大家一起分享一下,順便求指教......
#!/bin/bash
# config some ****** order when the system start
# create by phoenix
# specify the path
server=/etc/init.d
yum=/etc/yum.repos.d
mountdir=/media/cdrom
selinux=/etc/selinux/config
# stop the iptabes and set it can't start when the system start
$server/iptables stop &>/dev/null
if [ "$?" = "0" ]; then
chkconfig iptables off
chkconfig ip6tables off
echo "1# the iptables stop successfully"
else
echo "1# the iptables stop failed"
fi# shutdown the selinxu system
setenforce 0 && sed -e 's/^selinux=enforcing/selinux=disabled/g' $selinux >$selinux.bak
mv -f $selinux.bak $selinux
echo "2# the selinux system is disabled"
# mount the cd-rom
mount |grep sr0 &>/dev/null
if [ ! "$?" = "0" ]; then
if [ ! -e $mountdir ]; then
mkdir -p $mountdir &>/dev/null
else
mount /dev/cdrom $mountdir &>/dev/null
echo "3# the cd-rom is mounting successfully"
fi
else
echo "3# the cd-rom is already mounted"
fi# config the source of yum
if [ -e $yum/centos-base.repo ];then
mv -f $yum/centos-base.repo $yum/centos-base.repo.bak &>/dev/null
else
echo "4# starting config the source of yum"
sleep 3
fised -e 's/^enabled=0/enabled=1/g' $yum/centos-media.repo >$yum/centos-media.repo.bak
mv -f $yum/centos-media.repo.bak $yum/centos-media.repo>>/dev/null
yum clean all &>/dev/null &&echo "5# the source of yum configed successfully"
# modify the code of language
echo "#lang=zh_cn.utf-8" >/etc/sysconfig/i18n
echo "6# the language is modify successfully"
# install the tools "vim" and "man"
echo "7# starting install vim and man,please wait......"
sleep 3
yum install vim man -y &>/dev/null
# reboot the system when all the work is done
echo "######### all work is done ########"
sleep 2
echo "please wait the syatem restart......"
sleep 2
init 6
Linux虛擬機器shell學習。
shell是什麼?我認為shell其實是乙個命令直譯器,它的作用是解釋使用者輸入的命令和程式,相當於人和計算機的交流,一種互動方式。關於shell的一些命令與特殊字元。n 即執行第n 數字 條命令。字串 用來執行歷史中最近一次以某某字串開頭的指令。alias 別名,即可看到系統預設的別名。萬用字元,...
虛擬機器 KVM部分實驗
grep vmx proc cpuinfo lsmod grep kvm1 檢視ip ifconfig2 是否連線外網 三種都可以 ping www.baidu.com3 檢查selinux,將其設定為permissive 關閉selinux setenforce 0 將其設定為permissive...
Nginx實現虛擬機器
區分不同的 有三種方式 1 ip區分 方法一 使用標準的網路配置工具 比如ifconfig和 route 命令 新增 lp別名 當前ip配置情況 在eth0網絡卡再繫結乙個ip 方法二 1 將 etc sysconfig network scripts ifcfg eth0檔案複製乙份,命名為 if...