1. 程式人生 > >解決/var/log下沒有messages文件的問題?

解決/var/log下沒有messages文件的問題?

sta alsa str bit cti 發現 ask sys linux系統

fedora23和centos7+ 都是使用的 systemd 來代替sysv 管理系統啟動和服務了. 在systemd 中主要包含兩個方面的內容,

  • 一個是系統服務service, 像很多的 系統服務包括httpd.service等都是放在 systemd/system下的;

  • 另一個就是 系統的啟動管理.包括原來的 /etc/inittab, runlevels 等 都是由 systemd/system/下的target 來管理的了.

  • arget 被設計成層級結構,逐級包含和require. 比如: multi-user.target就類似於原來的 runlevel3 它包含 basic.target. 而graphical.target就類似於(analogous to)原來的runlevel5. 它又包含 multi-user.target.每個target都有對應的需求啟動項,包含在對應的 *.target.wants(wants 就是對應的目標所需要的內容...)

  • 在每個target中, 的內容是: 規定了前提條件: requisite, 先於當前target 啟動的服務Before=...,當前服務啟動後, 然後還要啟動的服務 After=... 

[foo@localhost system]$ ls *.wants  ## 查看各個目標需要的wants, 每個wants下列出了需要的哪些服務. systemd就是這樣來管理系統啟動的
anaconda.target.wants:
anaconda-nm-config.service  [email protected]

# basic.target.wants:
alsa-restore.service  alsa-state.service  fedora-autorelabel-mark.service  fedora-autorelabel.service  fedora-loadmodules.service

busnames.target.wants:
org.freedesktop.hostname1.busname  org.freedesktop.login1.busname    org.freedesktop.resolve1.busname
org.freedesktop.import1.busname    org.freedesktop.machine1.busname  org.freedesktop.systemd1.busname
org.freedesktop.locale1.busname    org.freedesktop.network1.busname  org.freedesktop.timedate1.busname

dbus.target.wants:

default.target.wants:

# graphic.target包含(requires multi-user.target, multi-user.target又requires basic.target)
graphical.target.wants:
systemd-update-utmp-runlevel.service

# multi-user.target需要的wants.
multi-user.target.wants:
dbus.service  plymouth-quit.service       systemd-ask-password-wall.path  systemd-update-utmp-runlevel.service
getty.target  plymouth-quit-wait.service  systemd-logind.service          systemd-user-sessions.service

在 markdown中, 如果有多個回車換行, 至少是可以認識一個 換行的, 即可以顯示 一個空行的, 但是多個空行(回車換行)無效

在 顯示/過濾 符合 條件的 多個目錄時, 可以使用 -d (--directory) 選項,將只顯示 目錄本身, 而不顯示內容. 這個將很有用. show directroies themselves not their contents.

在 /usr/lib/systemd/system下, default.target 是一個指向 默認啟動的target的 軟鏈接. 這個就是供 systemd的管理工具 systemctl 來獲得默認啟動 級別的 get-default.

在bash中, 要將多行字符串 重定向輸出到 文件中, 使用下面的格式

[foo@localhost ~]$ cat > 重定向文件名.txt   <<eof
> [daemon]
> autologinEnabled = true
> autologinUser = liveuser
> eof   (如果是在腳本中, 就沒有前面的大於符號)

但是在 /usr/lib/systemd/system 下的 basic.target.wants, multi-user.target.wants, graphical.target.wans中都沒有發現syslog, 它們裏面只有一些 需要的service服務. 而且在 /etc/rc.d中也沒用 什麽 S20syslog 文件?

在 /usr/include/中是一些linux系統要使用的 頭文件. 其中一些 數據結構本身的 定義 放在 /usr/include/bits 目錄中, 而 操作這些數據結構的同名文件 放在 /usr/include中, 比如: 存儲當前登錄用戶信息的文件 有: /var/log/btmp 和 存儲以往登錄過的用戶的信息文件 /var/log/wtmp (這兩個文件是數據庫文件, 非ascii文件,不可讀) . 這兩個文件使用的 基本的數據結構就是 一個結構體 struct utmp() .

解決/var/log下沒有messages文件的問題?