Tag: Fedora

Linux 複製檔案檔限及 Owner 到其他檔案

Linux 下的 chmod 指令可以修改檔案及目錄的權限, 而 chmod 指令則可以改變檔案的 Owner, 而它們其中一個功能是將一個檔案的權限及 Owner 複製到另一個檔案, 以下是具體做法。在 chmod 指令的 reference 參數, 便可以指令權限的來源檔案, 並將權限複製到另一個檔案內, 例如以下指令將檔案 old_file 的權限複製到 new_file: 要複製 Owner 跟 chmod 的做法差不多, 只要在 chown 指令使用 …

Shell Script 自動登入 FTP 上下傳檔案

在 Linux Server 上要用 ftp 傳送檔案,可以用 ftp 指令手動完成,但如果需要經常對特定檔案用 ftp 上傳及下傳,可以用 Shell Script 自動連接到 ftp 伺服器並傳送檔案。以下是用 Shell Script 登入 ftp 伺服器的例子:以上 Shell Script 會自動登入 ftp.yourftp.server,並會上傳 filename.txt 到 ftp 伺服器。上面的 Shell Script …

Linux 檢查 Meltdown 及 Spectre CPU 漏洞

Meltdown 及 Spectre 這兩個關於 CPU 的漏洞影響很大, 對大部份作業系統及裝置都構成安全威脅, 以下是在 Linux 檢查 Meltdown, Spectre 漏洞的方法.要檢查系統內的 Meltdown 及 Spectre 的狀態, 可以用 spectre-meltdown-checker.sh 這個 Shell Script 檢查, 它檢查 Intel, AMD 及 ARM CPU 以下幾個漏洞:Meltdown …

RHEL / CentOS Linux 新增新硬碟

在已經安裝好的系統安裝新硬碟,便需要手動設定,以下記錄在 Linux 加裝新硬碟的方法,並以 CentOS 7 作為安裝環境,及將新硬碟安裝連接好。首先看一看系統內硬碟的命名方法,可以用 df 指令查看目前的掛載情況: # df 然後用以下指令找出新硬碟,即並未掛載的硬碟,硬碟一般會是 /dev/sd* 或 /dev/vd*: # ls -1 /dev/d 現在假設新硬碟是 /dev/sdb, 用 mkfs.ext4 為新硬碟建立檔案系統,執行時要小心,如果錯誤輸入了舊硬碟的名稱,會刪除舊硬碟的資料: # mkfs.ext4 /dev/sdb 現在可以掛載新硬碟,以下會假設新掛載點是 /home2: # mkdir …

rsync 透過 SSH 傳送及備份檔案

rsync 是很常用的檔案傳送工具,以下會介紹用 rsync + SSH 傳送檔案,並以 CentOS 7 作為測試環境。第一步先在 Server 產生一組 public SSH keys, 該 Client 端可以不用輸入密碼登入 SSH:現在可以將 public.key 的內容複制起來,可以用 cat 指令:將以上 public.key 內容複製後,登入到 Client 端,並儲到到 ~/.ssh/authorized_keys, 如果 .ssh/ 目錄不存在,需要手動建立並建立正確權限: …

解決 sudo: sorry, you must have a tty to run sudo

在 Linux 很多時都會用 sudo 以 root 身份執行指令,一般情況下執行 sudo 後需要輸入使用者密碼確認,但有些情況不能輸入密碼,例如 Shell Script, 在這種情況下系統記錄檔會出現以下錯誤:sudo: sorry, you must have a tty to run sudo出現問題的原因,是多數 Linux 發行版,預設使用 sudo 開啟了 requiretty,要解決很容易,只要用 visudo 重新設定 sudo 的設定便可以。首先以 …

Linux 使用 dd 及 cat 進行硬碟複製

Linux 下有很多工具可以進行硬碟複製, 例如 Clonezilla 及 HDdrives等, 而 Linux 內建的 dd 及 cat, 同樣可以將整顆硬碟複製到另一顆硬碟, 除了硬碟外, 對其他儲存裝置同樣適用, 以下是 dd 及 cat 指令複製硬碟的方法。dd 指令差不多全部的 Linux 發行版已經內建了 dd 指令, 它可以很簡單地進行硬碟複製的動作, 但在進行複製時要格外小心, 如果不小心犯錯可能會損毀分割區。以下是將 sda1 複製到 …

ShellCheck — Shell Script 語法檢查工具

如果在使用一些指令 (例如 rm) 不小心, ShellCheck 是一個 Shell Script 分析及除錯工具, 之後要花很多時間修復, 可以在嘗試執行 Shell Script 前先找出 Warning 及一些建議。以下會紀錄安裝及使用 ShellCheck 的步驟。安裝 ShellCheck安裝 ShellCheck 可以用 yum 或 apt-get 直接安裝:RHEL, CentOS, Fedora:先要啟用 EPEL Repo 才可以用 …

Apache 安裝 mod_cband 限制 Virtual Host 連結速度

當 Apache 其中一個 Virtual Host 佔用資源過多時,會拖慢整台伺服器所有網站的速度,這時可以安裝 mod_cband 模組,限制個別虛擬主機可以儲用的連線數量及速度,以下會示範在 CentOS 7 安裝 mod_cband 模組:要安裝 mod_cband,需要先安裝 httpd-devel: # yum install httpd-devel 然後可以下載 mod_cband 及編譯安裝: # cd /usr/local/src # wget https://github.com/maiha/mod_cband/archive/master.zip # unzip …

vim 把 Tab 轉換為 4 Space

以前習慣用 Tab 來做縮排,在用 Sublime Text 沒什麼關係,Tab 跟 4 個空格的長度一致,但近年經常用 vim 直接在 CLI 寫程式,當程式需要多層判斷式或迴圈時,很多時在終端機會看得很辛苦,因為在 vim 顯示 Tab 會比 4 個空格的距離還長。所以還是用 4 個空格取代 Tab 較方便,以下是在 vim 及 Sublime Text 按下 Tab 鍵時,自動用 …