【工作記錄】Linux Command Line 界面的顔色設置

工作緣由,必須常常需要在Linux CLI中操作,有的系統色系沒設置好,操作時只有一色就顯得很難辨識到底所看到的是文件夾還是文件。。。

通過設置界面顔色,可以更好的分辨個別的項目,而且還可以客制化想要的界面。

相關的設置文件

~/.bashrc~/.bash_aliases

設置代碼例子 (不斷行)

export PS1="\[\e[31m\]\u\[\e[m\]@\[\e[32m\]\h\[\e[m\]:\[\e[36m\]\W\[\e[m\]\\$ "
設置后的效果(root用戶)

設置完成后,需要執行指令 source ~/.bashrc ,讓新設置生效。


網上其實有不錯的工具可以用於創建代碼,然後直接抄寫進入設置文件即可。下面介紹的這個網頁,挺實用的。唯一的缺陷就只是所能使用的顔色有限,其餘的將近完美了。其實它也是被開源的網頁,有興趣的可以調整成自己要的形式,顔色方面也可以自己增設。

網址: https://ezprompt.net/

GitHub: https://github.com/jmatth/ezprompt

Linux内部無法解析域名

Linux cannot resolve domain name, public DNS resolvation failed.

網絡服務器,無論是用 ping 還是什麽工具,只要是域名就無法解析,會在久等后跳出超時錯誤。由於是遠端登錄,所以不必查網路是肯定不是問題源頭。

檢查了 /etc/resolv.conf ,裏面的 nameserver 設置沒錯誤。檢查了 /etc/nsswitch.conf, 解析的次序也沒問題。檢查了 route -n 結果也是沒問題。

最後發現,原來是防火墻把解析域名時,所需要的 udp 53 端口擋掉了。補上后就沒問題了。。。下面是 iptables 的相關指令記錄。

iptables -A INPUT -s 8.8.4.4 -p udp --sport 53 -j ACCEPT

指令解釋:

-A INPUT 針對防火墻入口規則
-p udp –sports 53流通 53 端口的 UDP 類數據包
-s 8.8.4.4 數據來源 IP 為 8.8.4.4
-j ACCEPT 允許運行
最後得到的會是這樣

重設MySQL root密碼

好久沒碰過更換root密碼的這爛事了,今天重溫了一遍。。。

一般上,伺服器一旦運行了,最好的情況是永遠無需碰它的設置。但有時候真的無可避免。這回,在使用了往常用的修復手法后,卻被系統直接KO,被系統提醒我 “請仔細詳讀用戶手冊中,Security這欄目。。。”

找了來看,一頭霧水。最後去問神了,結果還是一直被KO。直到最後在Stack Overflow的這篇文章内,才找到真正的答案。。。

是的,系統升級了,往常用的mysqld_safe已經不存在了。現在更方便的衹需設置好伺服器的運作環境常量,重啓即可。長話短說,流程轉載在下方:

1. Stop mysql:

> systemctl stop mysqld

2. Set the mySQL environment option

> systemctl set-environment MYSQLD_OPTS=”–skip-grant-tables”

3. Start mysql usig the options you just set

> systemctl start mysqld

4. Login as root

> mysql -u root

5. Update the root user password with these mysql commands:

mysql> UPDATE mysql.user SET authentication_string = PASSWORD(‘MyNewPassword’) -> WHERE User = ‘root’ AND Host = ‘localhost’;

mysql> FLUSH PRIVILEGES;

mysql> quit

(for 5.7.6 and later, you should use mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MyNewPass’;)

6. Stop mysql

> systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time

> systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:

> systemctl start mysqld

9. Try to login using your new password:

> mysql -u root -p

[Linux] logrotate — 日志文件的自動分頁備份工具

在Linux上,最重要的文件之一就是其日志文件,我想Linuxer都應該會同意這個説法。原因衹有一個:系統出現任何問題,都可以在這找到其出事原因!說實在,這比微軟的系統日志來得好多了。。。(至少看得懂啊!!!😅)

而管理好日志,就是一項非常沉悶,但又重要的工作。logrotate 就是用來解決這一切煩惱的好工具。

Continue reading “[Linux] logrotate — 日志文件的自動分頁備份工具”

Exim — 如何解讀它的記錄檔 (log file)

閱讀記錄檔,是每個伺服管理員的必修功課。一旦有問題,就需要埋頭在這些記錄中,尋找問題的源頭,再來才能夠找到解決的真正方法。

為了節省儲存空間,一般的記錄檔都會盡量用符號來取代文字。

下面是用於Exim的符號:

用戶插入圖片

一個例子:
用戶插入圖片

解讀:
列一:郵件處理的日期時間
列二:電郵編號
列三:就是上面說的符號啦~(紅色圈起的部份)
列四:郵件處理詳情