中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統怎么啟動與登錄故障排查

發布時間:2022-01-21 11:32:05 來源:億速云 閱讀:423 作者:柒染 欄目:開發技術

這篇文章主要為大家分析了Linux系統怎么啟動與登錄故障排查的相關知識點,內容詳細易懂,操作細節合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學習“Linux系統怎么啟動與登錄故障排查”的知識吧。

系統啟動異常:

1,部分centos啟動黑屏,無異常報錯的場景,可以fsck一下系統盤

2,根分區空間滿,以及inode耗盡

3,升級內核或者從老的共享實例遷移到獨享規格導致的啟動異常
3.1 手動注入驅動 (mkinitrd virtio相關驅動 )
3.2 修改grub 的啟動順序,優先嘗試使用老內核啟動
3.3 boot目錄下面內核的關聯文件是否全(下面僅為demo,不同系統內核版本文件不一致,部分內核版本boot下的i386目錄也是有用的)

config-4.9.0-7-amd64 
initrd.img-4.9.0-7-amd64  
System.map-4.9.0-7-amd64 
vmlinuz-4.9.0-7-amd64

3.4 /boot/grub/device.map里面的hda改成vda

4,fstab/grub中的 uuid不對,可以直接修改為/dev/vda1這種形式嘗試
數據盤分區異常加載起不來的場景,可以去注釋ftab所有的行,添加類似下面的啟動項嘗試,也適用用系統盤快照創建云盤掛載后,uuid一致導致的啟動異常,改成非UUID的掛載即可

/dev/vda1 / ext4 defaults 1 1

5,根目錄777(部分目錄777)也會導致啟動異常,或者ssh登陸異常

6,常見的關鍵目錄缺失,有的是軟鏈,也可以看看對應目錄下面的文件數量(文件數量要跟同內核版本或者相差不大的版本對比),簡單判斷

/bin  /sbin /lib  /lib32 /lib64 /etc /boot /usr/bin /usr/sbin /usr/lib /usr/lib64等目錄或文件缺失for i in /bin  /sbin /lib  /lib32 /lib64 /etc /boot /usr/bin /usr/sbin /usr/lib /usr/lib64 ;do ls -l $i |wc -l ;done

7,影響啟動的參數
如果參數設置不當,是會導致啟動異常的,如/etc/sysctl.conf以及檢查rc.local的配置,profile的檢查

vm.nr_hugepages vm.min_free_kbytes

8,centos的需要selinux需要關閉,走

# cat /etc/selinux/config   # This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:#     enforcing - SELinux security policy is enforced.#     permissive - SELinux prints warnings instead of enforcing.#     disabled - No SELinux policy is loaded.SELINUX=disabled 把這一行改成disabled# SELINUXTYPE= can take one of three values:#     targeted - Targeted processes are protected,#     minimum - Modification of targeted policy. Only selected processes are protected.#     mls - Multi Level Security protection.SELINUXTYPE=targeted
實戰案例1–grub修復
背景信息:/boot/grub/grub.conf被誤操作清空,系統啟動就進入grub狀態(centos 6.8)

1,find /boot/grub/stage1
顯示為 (hd0,0)
2,確認一下內核的具體版本ls -l /boot去看
Linux系統怎么啟動與登錄故障排查

3,手動設置grub,具體步驟
grub> root (hd0,0) #是說跟分區在第一塊硬盤的第1個分區 實際對于前面的find出來的那個文件
grub> kernel /boot/vmlinuz-2.6.32-696.3.2.el6.x86_64 ro root=/dev/vda1 #指明內核路徑和根分區,注意ro是只讀
grub> initrd /boot/initramfs-2.6.32-696.3.2.el6.x86_64.img #指明initramfs路徑啟動系統加載驅動
grub> boot #啟動上面指定的系統,如果是reboot就等于重啟整個系統了,剛才的設置就失效了
如果沒有報錯的話,即可成功啟動,進入到系統內部后需要繼續執行下面的操作
4,mount -e remount,rw / 重新掛載分區為讀寫
5,service network restart
如果提示eth0 eth2失敗,ifconfig看不到網卡的話
6,lsmod |grep net
看下virtio_net 這個驅動有沒有,如果沒有的話(網卡報錯基本都不會有)
7,

insmod /lib/modules/2.6.32-696.3.2.el6.x86_64/kernel/drivers/net/virtio_net.ko


8, 重啟網絡服務,嗨~網通了
9,登陸ssh,找個同版本系統的grub.conf, 拷貝一份過來,不然重啟之后又進grub了

實戰案例2–文件丟失類異常處理

背景信息:客戶反饋系統無法遠程登陸,實際系統啟動本身就有問題
Linux系統怎么啟動與登錄故障排查

根據報錯信息來看,是系統內讀取user有問題,需要掛盤查看
1,掛盤后chroot如下 ihave no name,這里本身就是有問題了,說明系統內缺少了什么文件導致異常
Linux系統怎么啟動與登錄故障排查

2,strace跟蹤一下chroot的過程,看下丟失的文件

strace -F -ff -t -tt -s 256 -o ch.out chroot /mnt
grep -i "no such" ch.out.pid |grep "so"

Linux系統怎么啟動與登錄故障排查

3,查看對應文件的關系(測試機補圖)
Linux系統怎么啟動與登錄故障排查

4,確認系統上丟了最終的libnss_files-2.12.so,嘗試拷貝一個

ifconfig eth2 ip netmask maskroute add default gw gwip

Linux系統怎么啟動與登錄故障排查

5,此時已經可以上網了,去拷貝一個同版本的文件試試吧

root登錄異常類:

1,/etc/passwd /etc/shadow (用戶名 root polikt dbus等關鍵用戶存在與否,文件為空,格式亂(dos2unix)

2,/etc/pam.d 目錄下是否有為空的文件及參數設置是否正常,如常見的 system-auth passwd

3,/etc/pam.d 下面所有文件里面涉及的so文件,看看文件是否存在,是否為空 /usr/lib64/security

4,查/etc /lib64 /bin /sbin /usr/bin /usr/sbin等目錄有沒有size為0的文件

5,/etc/profile /etc/profile.d(打印列表) /etc/bashrc /root/.bash_profile /root/.bashrc 等涉及登陸環境設置的文件是否異常

6,注意內核版本,是否存在新老內核,多更換幾個內核試下

7,系統日志也是一個比較重要的檢查項(后面介紹下無法登陸怎么檢查)

9,ubuntu1204登陸異常 在/etc/login.defs 里面配置了錯誤的ERASECHAR導致,恢復默認0177即可

configuration error - cannot parse erasechar value

10,輸入root后直接login失敗三連,日志如下
找個同內核版本的機器對比發現沒有/etc/pam.d/login 有一個login.defs
rpm包校驗一下,確認login沒了,手動創建一個,內容拷貝過來,好了

[root@iZbp1cabe6lyx26ikmjie2Z pam.d]# rpm -V util-linuxmissing   c /etc/pam.d/login
[root@iZbp1cabe6lyx26ikmjie2Z pam.d]# rpm -ql util-linux|egrep -vi "gz|mo|share"/etc/mtab/etc/pam.d/chfn/etc/pam.d/chsh/etc/pam.d/login/etc/pam.d/runuser/etc/pam.d/runuser-l/etc/pam.d/su/etc/pam.d/su-l

12,/etc/ssh/sshd_config 相關參數如 LoginGraceTime/Allowusers/PermitRootLogin

13,問題不好確認的時候,可以將shadow密碼字段清空,看看登陸是否正常,可以判斷是否到密碼驗證階段了

實戰案例3–ssh可以登陸root,但是管理終端無法登陸root用戶
ssh可以登陸,管理終端無法登陸root,
提示 login in…

cat /var/log/secure
Jun  2 09:26:48 iZbp1begsz1x269nxhtip4Z login: FAILED LOGIN 1 FROM tty1 FOR root, Authentication failure

看日志是login驗證模塊的問題,檢查相關模塊的設置

# cat /etc/pam.d/login #%PAM-1.0auth required pam_succeed_if.so user != root quiet
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth       substack     system-auth
auth       include      postlogin
account    required     pam_nologin.so
account    include      system-authpassword   include      system-auth
# pam_selinux.so close should be the first session rulesession    required     pam_selinux.so closesession    required     pam_loginuid.sosession    optional     pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user contextsession    required     pam_selinux.so opensession    required     pam_namespace.sosession    optional     pam_keyinit.so force revokesession    include      system-authsession    include      postlogin
-session   optional     pam_ck_connector.so

這一行比較關鍵

auth required pam_succeed_if.so user != root quiet

禁止本地登陸了,注釋掉即可

實戰案例4–centos 登陸“卡住”

背景:登陸卡住,需要ctrl +c 才能進去,如圖
Linux系統怎么啟動與登錄故障排查

如果一直等的話,會提示
Linux系統怎么啟動與登錄故障排查

原因:
/etc/profile 里面有 source /etc/profile 引起死循環,注釋即可
Linux系統怎么啟動與登錄故障排查

系統登陸不進去了,不掛盤的情況下怎么操作?

阿里云新推出的卸載系統盤功能,可以把系統盤卸載掉,作為數據盤掛載到一個新的機器,這樣就可以執行上面的檢查了
詳見:云服務器ECS卸載和掛載系統盤

場景覆蓋:
Linux系統常見問題診斷服務覆蓋以下場景:
Linux系統怎么啟動與登錄故障排查
Linux系統常見啟動問題修復覆蓋以下場景:
Linux系統怎么啟動與登錄故障排查

關于“Linux系統怎么啟動與登錄故障排查”就介紹到這了,更多相關內容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網站!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

潮州市| 江都市| 忻州市| 庆云县| 平远县| 来凤县| 赣榆县| 舟曲县| 高碑店市| 中卫市| 英山县| 新泰市| 陇西县| 徐州市| 威信县| 拉萨市| 成安县| 辽宁省| 长葛市| 孝昌县| 花垣县| 绥德县| 怀仁县| 东辽县| 建平县| 连南| 永平县| 合水县| 舞钢市| 宜州市| 南汇区| 玉屏| 喜德县| 太和县| 军事| 翁源县| 大宁县| 江孜县| 建平县| 越西县| 贵德县|