CentOS7和6版本有什麼不同
Centos7與6之間最大的差別就是初始化技術的不同,7採用的初始化技術是Systemd
,並行的執行方式,除了這一點之外,服務啟動、開機啟動檔案、網路命令方面等等,都說6有所不同。讓我們先來了解一下系統初始化技術的演變過程。
1.系統初始化技術
Sysvinit技術、Upstart技術、Systemd技術
Sysvinit 技術
特點: 1.系統第1個程序為init; 2.init程序是所有程序的父程序,不可kill; 3.大多數Linux發行版的init系統是和SystemV相相容的,被稱為sysvinit 4.代表系統:CentOS5 CentOS6 優點: sysvinit執行非常良好,概念簡單清晰。它主要依賴於shell指令碼。 缺點: 1.按照一定順序執行——>啟動太慢。 2.很容易hang住,fstab與nfs掛載問題
Upstart 技術
CentOS6 採用了 upstart 技術代替 sysVinit 進行引導,
Upstart 對 rc.sysinit 指令碼做了大量的優化,縮短了系統初始化的啟動時間。
但是 CentOS6 為了簡便管理員的操作,upstart 的很多特性並沒有凸顯或直接不支援。
Upstart 技術 代表系統:CentOS6, Ubuntu14。
從CentOS7, Ubuntu15開始使用 systemd
Systemd 技術
新系統都會採用的技術(RedHat7,CentOS7,Ubuntu15等); 設計目標是克服sysvinit固有的缺點,提高系統的啟動速度; 和Sysvinit相容,降低遷移成本; 最主要優點:並行啟動 Pid為1的程序
2.在yum源上的優化
在centos6的時候,預設是從官方源下載rpm包的,由於是國外的yum源很慢不能用,CentOS7在這裡做了優化,當我們使用 yum
安裝軟體的時候,預設不會再從官方下載,而是自動尋找離自己地理位置最近的 yum源開始下載。
3.命令
如果在安裝系統的時候選擇 minimal,會比之前6的時候以更小的包來安裝,比如:vim、ifconfig、route、setup、netstat等等很多命令都沒有了。在安裝系統後可加入以下軟體包:
yum install lrzsz tree net-tools nmap vim bash-completion lsof dos2unix nc telnet ntp wget rng-tools psmisc screen -y
比如,ifconfig
是檢視網絡卡資訊的,centos7 中沒有,那麼我們使用yum 安裝 net-tools
來提供一些網路的命令。
bash-completion # 自動命令補全的工具
psmisc # 這個包含有killall命令。
screen # 可以新建一個視窗,把任務放在後臺執行。
rng-tools # 生成隨機數嫡池的一個工具,有了這個工具tomcat 啟動會變得非常快
lrzsz # 支援windowns平臺的上傳下載linux。在windowns遠端連線工具上可以使用。
4.字符集修改
centos6 的時候修改字符集:
vim /etc/locale.conf # 字符集配置檔案
localectl set-locale LANG=zh_CN.UTF-8
而 centos7 只需要一行命令搞定
localectl set-locale LANG=zh_CN.UTF-8
localectl status
5.開機啟動管理
centos6 依靠 /etc/rc.local
對開機啟動進行管理的,但是這個檔案的許可權是開放的。
而centos7
/etc/rc.local # 這個檔案還是存在,不過如果我們還想繼續使用這種方式需要給它加執行許可權chmod +x /etc/rc.d/rc.local
# system一統天下 snapshot(支援快照)
systemctl status cron.service #檢視定時任務狀態
systemctl stop cron.service #關閉定時任務
systemctl status cron.service #檢視操作情況
systemctl list-unit-files|grep enable #檢視當前正在執行的服務
systemctl disable postfix.service #關閉郵件服務
systemctl list-unit-files|grep postfix #檢視郵件服務是否開啟
systemctl stop firewalld.service #關閉防火牆
systemctl is-enable #開啟的服務
systemctl disable #關閉的服務
centos7 通過/etc/rc.d/rc.local/
開機自啟動
centos7 中 /etc/rc.d/rc.local # 需要執行如下命令賦予可執行許可權
chmod +x /etc/rc.d/rc.local
6.執行級別runlevel
centos6 /etc/inittab
在 centos7 中是無效的。
centos7 system target
替代 了inittab
## 永久生效下次登入生效
systemctl get-default graphical.target 切換到5
systemctl get-default multi-user.target 切換到3
##臨時生效的話
init3
#檢視執行級別
ls -lh /usr/lib/systemd/system/runlevel*.target
執行級別(Runlevel)指的是Unix或者Linux等類Unix作業系統下不同的執行模式。執行級別通常分為7等,分別是從0到6,但如果必要的話也可以更多。
例如在大多數linux作業系統下一共有如下6個典型的執行級別:
0 停機
1 單使用者,Does not configure network interfaces, start daemons, or allow non-root logins
2 多使用者,無網路連線 Does not configure network interfaces or start daemons
3 多使用者,啟動網路連線 Starts the system normally.
4 使用者自定義
5 多使用者帶圖形介面
6 重啟
ssh進行訪問
windows下安裝 xshell 來進行可以遠端訪問。
而mac 是用 ssh 命令
ssh 使用者名稱@ip地址:埠號
預設的埠號22可以不寫
ssh [email protected]
首先我們先下載 net-tools
,這樣可以使用 ifconfig
檢視網絡卡資訊,它的作用和DOS命令 ipconfig
一樣。
下載完成以後輸入:ifconfig
然後可以找到你的ip地址
如果,ssh 連結被拒絕:
1.驗證openssh-server
首先,要確保CentOS7安裝了 openssh-server,在終端中輸入
yum list installed | grep openssh-server
如果出現了結果那麼表示已經安裝
沒有安裝輸入
yum install openssh-server -y
2.配置你的ssh檔案
找到了 /etc/ssh/ 目錄下的sshd服務配置檔案 sshd_config,用Vim編輯器開啟
如果沒有vim編輯器那麼執行:
yum install vim -y
vim編輯器比vi編輯器增加了顏色識別
vim /etc/ssh/sshd_config
直接輸入/Port
可以看見:
================
1.將檔案中,關於監聽埠、監聽地址前的 # 號去除
Port 22
#AddressFamily any
ListenAddress 0.0.0.0 #任意地址
ListenAddress ::
================
去上面3行的註釋
要想編輯的話需要按鍵盤i,代表insert,取消輸入按esc
================
2.然後開啟允許遠端登入
PermitRootLogin yes
================
================
3.開啟使用使用者名稱密碼來作為連線驗證
PasswordAuthentication yes
================
最後保證在取消輸入的狀態下
輸入
================
:wq!
================
代表強制儲存退出
配置完成後需要重新啟動一下sshd服務
開啟 sshd 服務,輸入 sudo service sshd start
檢查 sshd 服務是否已經開啟,輸入ps -e | grep sshd
或者輸入netstat -an | grep 22 檢查 22 號埠是否開啟監聽