Linux面試必問題,想從事Linux工作這些你會了嗎?
職位描述:
1、 負責應用服務器的安裝、配置、優化與維護;
2、 負責應用系統的日誌信息備份、管理、維護與分析;
3、 負責應用系統的日常監測於維護、故障處理、性能分析與優化;
4、 負責應用部署系統、環境配置系統、監控系統的開發、部署、升級與維護,建設高性能的運維平臺。
崗位要求:
1、 熟悉Linux操作系統的基礎知識,熟練使用Linux常用操作命令;
2、 熟練配置Nginx、HAproxy 等應用相關軟件的部署、配置與優化維護;
3、 熟悉網絡基礎知識、熟悉TCP/IP的工作原理,會配交換機或路由器,能熟練的對網絡情況進行分析
4、 熟悉shell/perl/python中的一種或多種進行運維程序的開發;
5、 熟悉Nagios,Ganglia等監控軟件
看著上面的要求大家是不是覺得要求也不高啊,你要細看就會發現,這家公司要求的還挺多,不僅要會網絡知識(熟悉TCP/IP好像是每家單位的都會寫這樣的要求),還要會開發技能。相信很多做運維的兄弟在網絡這一塊是個頭疼的事情,都對交換機和路由器不怎麽會配置和管理。
關鍵點來了,就是和面試官溝通了,有筆試的公司會讓你做些面試題,沒有筆試就直接和面試官聊了,下面是我和面試官溝通完之後記住的一些問題,分享給大家看一下,筆者一共記住了7個問題,好像還有兩個問題實在想不起來了,如果大家有更恰當的回答一定要貼出來一起探討和進步:
1、介紹下自己?
(幾乎每家公司首先都會讓你做個自我介紹,好像是必修課一樣)
回答:此處省略筆者的自我介紹,筆者建議介紹自己的時間不宜過長,3-4分鐘為宜,說多了面試官會覺得你太啰嗦了。說太少了也不行,那樣會讓人感覺你的經歷太簡單了、太空了。
正常情況下,一般你在做自我介紹的同時,面試官這個時候在看你的簡歷,他需要一邊看簡歷、一邊聽你介紹自己,如果你說個幾句話就把自己介紹完了,他肯定還沒緩過神來,對你的映像會減分的。在介紹的同時思維要清晰,邏輯要清楚,最好是根據你簡歷上寫的經歷來介紹,這樣可以把面試官的思路帶到你這裏來,讓他思路跟著你走。不要東扯一句,西扯一句。
盡量少介紹自己的性格、愛好(最好能不說就不說),你可以簡單羅列幹過幾家公司(最多羅列3家公司/也包含目前所在的公司,註意順序不要亂),都在那幾家公司負責什麽工作,都用過什麽技術,在著重介紹一下你目前所在的公司是負責哪些工作的,可以稍微詳細一點介紹,不要讓面試官聽著暈頭轉向的感覺。
2、灰度發布如何實現?
回答:這個問題事後在知乎上看到了一位網友的建議覺得不錯,大家可以參考看一下 !
仔細考慮一下灰度發布系統要達到哪些目的,基本就能有答案了。需要註意的是,客戶端應用(無論PC端還是移動端)的灰度發布要比Web應用的灰度發布更為復雜,因為應用運行在用戶持有的終端上,數據采集和回滾都更為困難(但可采集的數據類型要更加豐富)。
註:本人缺乏移動客戶端產品的經驗,下述內容可能不適用於移動客戶端產品。
我所理解的灰度發布系統,主要任務是從產品用戶群中按照一定策略選取部分用戶,讓他們先行體驗新版本的應用,通過收集這部分用戶對新版本應用的顯式反饋(論壇、微博)或隱式反饋(應用自身統計數據),對新版本應用的功能、性能、穩定性等指標進行評判,進而決定繼續放大新版本投放範圍直至全量升級或回滾至老版本。
另外這個問題很重要CentOS 7 vs CentOS 6的不同
(1)桌面系統
[CentOS6] GNOME 2.x
[CentOS7] GNOME 3.x(GNOME Shell)
(2)文件系統
[CentOS6] ext4
[CentOS7] xfs
(3)內核版本
[CentOS6] 2.6.x-x
[CentOS7] 3.10.x-x
(4)啟動加載器
[CentOS6] GRUB Legacy (+efibootmgr)
[CentOS7] GRUB2
(5)防火墻
[CentOS6] iptables
[CentOS7] firewalld
(6)默認數據庫
[CentOS6] MySQL
[CentOS7] MariaDB
(7)文件結構
[CentOS6] /bin, /sbin, /lib, and /lib64在/下
[CentOS7] /bin, /sbin, /lib, and /lib64移到/usr下
(8)主機名
[CentOS6] /etc/sysconfig/network
[CentOS7] /etc/hostname
(9)時間同步
[CentOS6]
$ ntp
$ ntpq -p
[CentOS7]
$ chrony
$ chronyc sources
(10)修改時間
[CentOS6]
$ vim /etc/sysconfig/clock
ZONE="Asia/Tokyo"
UTC=fales
$ sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
[CentOS7]
$ timedatectl set-timezone Asia/Tokyo
$ timedatectl status
(11)修改地區
[CentOS6]
$ vim /etc/sysconfig/i18n
LANG="ja_JP.utf8"
$ /etc/sysconfig/i18n
$ locale
[CentOS7]
$ localectl set-locale LANG=ja_JP.utf8
$ localectl status
(12)服務相關
1)啟動停止
[CentOS6]
$ service service_name start
$ service service_name stop
$ service sshd restart/status/reload
[CentOS7]
$ systemctl start service_name
$ systemctl stop service_name
$ systemctl restart/status/reload sshd
自啟動
[CentOS6]
$ chkconfig service_name on/off
[CentOS7]
$ systemctl enable service_name
$ systemctl disable service_name
服務一覽
[CentOS6]
$ chkconfig --list
[CentOS7]
$ systemctl list-unit-files
$ systemctl --type service
強制停止
[CentOS6]
$ kill -9 <PID>
[CentOS7]
$ systemctl kill --signal=9 sshd
(13)網絡
1)網絡信息
[CentOS6]
$ netstat
$ netstat -I
$ netstat -n
[CentOS7]
$ ip n
$ ip -s l
$ ss
2)IP地址MAC地址
[CentOS6]
$ ifconfig -a
[CentOS7]
$ ip address show
3)路由
[CentOS6]
$ route -n
$ route -A inet6 -n
[CentOS7]
$ ip route show
$ ip -6 route show
(14)重啟關閉
1)關閉
[CentOS6]
$ shutdown -h now
[CentOS7]
$ poweroff
$ systemctl poweroff
2)重啟
[CentOS6]
$ reboot
$ shutdown -r now
[CentOS7]
$ reboot
$ systemctl reboot
3)單用戶模式
[CentOS6]
$ init S
[CentOS7]
$ systemctl rescue
4)啟動模式
[CentOS6]
[GUICUI]
$ vim /etc/inittab
id:3:initdefault:
[CUIGUI]
$ startx
[CentOS7]
[GUICUI]
$ systemctl isolate multi-user.target
[CUIGUI]
$systemctl isolate graphical.target
默認
$ systemctl set-default graphical.target
$ systemctl set-default multi-user.target
當前
$ systemctl get-default
Linux面試必問題,想從事Linux工作這些你會了嗎?