Centos6與7的區別

#如有雷同純屬巧合不盛榮幸

upstart


1,CentOS6和ubntu14採用的是upstart技術代替了sysvinit進行引導,upstart對rc.sysinit做了大量的優化,縮短了系統初始化的啓動時間。upstart的很多特性並沒有凸顯或直接支持

 

systemd


systemd是linux下的一種init軟件,由Lennarrt Poettering帶頭開發。其開發的目標是提供更優秀的框架以表示系統服務見的依賴關係,並依此實現系統初始化時服務器並行啓動同時降低了shell系統的開銷效果,最終代替在常用的system V與BSD風格的init程序。


主要克服sysvinit的缺點


SystemD的很多概念來源於蘋果的launchd。目標是儘可能啓動更少進程;儘可能將更多進程並行啓動(這是性能優於SysVinit的理念基礎)。SystemD儘可能減少對Shell腳本的依賴。傳統SysVinit使用inittab來決定運行哪些Shell腳本,大量使用Shell腳本被認爲是效率低下無法並行的原因。SystemD使用了Linux專屬技術,不再顧及POSIX兼容,只要能滿足社會變革的需要,突破一些可能過時的技術約束,這也是當今創信理念的需要,相信市場會給出評判。
與多數發行版使用的System V風格init相比,SystemD採用了以下新技術:
   採用Socket激活式與總線激活式服務,以提高相互依賴的各服務的並行運行性能;
   用cgroups代替PID來追蹤進程,因此即使是兩次fork之後生成的守護進程也不會脫離systemd的控制。
從設計構思上說,由於SystemD使用了cgroup與fanotify等組件以實現其特性,所以只適用於Linux。有鑑於此,基於kFreeBSD分支的軟件源無法納入SystemD。


1. SystemD服務管理
systemctl is-enabled .service                  #查詢服務是否開機啓動
sudo systemctl enable .service                  #開機運行服務
sudo systemctl disable .service                #取消開機運行
sudo systemctl start .service                  #啓動服務
sudo systemctl stop .service                    #停止服務
sudo systemctl restart .service                #重啓服務
sudo systemctl reload .service                  #重新加載服務配置文件
systemctl status .service                      #查詢服務運行狀態
systemctl –failed 

                             #顯示啓動失敗的服務 
2. 開機模塊加載
/etc/modules-load.d/.conf,相當於原rc.conf中的MODULES變量
模塊黑名單仍在/etc/modprobe.d/下,如blacklist.conf: 
3. Locale
/etc/locale.conf,相當於原rc.conf中的LOCALE 
4. 日誌服務
systemd自帶日誌服務,參考systemd Journal
可以刪除syslog-ng了 
5. 主機名
/etc/hostname,相當於原來rc.conf中的HOSTNAME變量 
6. 網絡


3. 運行級別 
SystemD用target替代了runlevel的概念,提供了更大的靈活性,如可以繼承一個已有的target,並添加其它服務,來創建自己的target。 
sudo systemctl list-units –type=target              #查詢當前target 
sudo systemctl isolate graphical.target              #改變當前target,重啓無效 
sudo systemctl enable multi-user.target              #改變啓動時默認target 
sudo systemctl enable kdm.service                    #graphical是默認target,指定使用的display manager


單位處理

1. 單位的處理
創建單位用的系統配置文件位於/lib/systemd/system/,但/etc/systemd/system目錄下的同名文件會優先於前者。
單位文件的定義通常比傳統的SysVinit腳本要短得多。例如,用於通過NTP來同步網絡時間的服務只有短短几行:
1  [Unit]
2  Description=Network Time Service
3
4  [Service]
5  ExecStart=/usr/bin/ntpd -n -u ntp:ntp -g
6
7  [Install]
8  WantedBy=multi-user.target
所有的單位文件都包含由[Unit]開頭的一節,其中包含一般設置與簡短介紹。
[Service]一節含有針對該服務要進行的任務的指定設置。
[Install]一節包含了SystemD在(反)安裝時要解釋的說明。 

yum源上的優化


以前我們在Centos7以前的版本默認是通過官方 下載的rpm包,由於是國外的yum源所以下載時候很慢導致不能用,Centos7裏做了優化,採用就近原則通過dns找到最近yum源開始進行下載


時間同步 Centos6 ntp

           ntpq -p

      Centos7 chrony 

           chrony sources


ü 時間修改

[CentOS-6.x]:

# vim /etc/sysconfig/clock

   ZONE="Asia/Tokyo"

   UTC=fales

# ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

[CentOS-7.x]:

# timedatectl set-timezone Asia/Tokyo

# timedatectl status

 

ü 默認數據庫

[CentOS-6.x]:MySQL

[CentOS-7.x]:MariaDB

 

ü 服務管理

 

任務

[CentOS-6.x]

[CentOS-7.x]

服務自動啓動

chkconfig –level 3 httpd on

systemctl enable httpd.service

服務不自動啓動

chkconfig –level 3 httpd off

systemctl disable httpd.service

檢查服務狀態

service httpd status

systemctl status httpd.service 

顯示所有服務

chkconfig –list

systemctl list-units –type=service

啓動某服務

service httpd start

systemctl start httpd.service

停止某服務

service httpd stop

systemctl stop httpd.service

重啓某服務

service httpd restart

systemctl restart httpd.service

 

ü 防火牆

[CentOS-6.x]:iptables

[CentOS-7.x]:firewalld

安裝yum install firewalld

開啓systemctl start firewalld.service

關閉systemctl stop firewalld.service

自啓systemctl enable firewalld.service

設置


允許某ip訪問某服務

#firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4"  source address="192.168.88.10/24" service name="http" accept"

wKioL1kxRUrQF87wAABBGvSQwVw737.png-wh_50 

刪除上面設置的規則:

#firewall-cmd --permanent --zone=public --remove-rich-rule="rule family="ipv4"  source address="192.168.88.10/24" service name="http" accept"

 

轉發 tcp 22 端口至 3753

# firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=3753

 

轉發 22 端口數據至另一個 ip 的相同端口上

# firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toaddr=192.168.1.100

 

轉發 22 端口數據至另一 ip 的 2055 端口上

# firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=2055:toaddr=192.168.1.100

 

防火牆預定義的服務配置文件是xml文件 目錄在 /usr/lib/firewalld/services/網絡命令

區域

網絡區域定義了網絡連接的可信等級。這是一個一對多的關係,這意味着一次連接可以僅僅是一個區域的一部分,而一個區域可以用於很多連接。

 

 

ü 網絡命令

[CentOS-6.x]:

# netstat

# netstat -I

# netstat –n

# ifconfig –a

# route -n

[CentOS-7.x]:

# ip n

# ip -s l

# ss

# ip address show

# ip route show

 

ü 默認運行級別

systemctl set-default runlevel3.target

配置文件位置:/lib/systemd/system/runlevel*.target

ü 


   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章