我不想過只有聲音的人生。
  • Linux 的 Permission denied:包含 /dev/null 的 10 種情況

    Permission denied 是 Linux 中目前帳號沒有權限使用該檔案、資料夾或指令時出現的錯誤。先依錯誤行開頭的指令名稱與路徑判斷是哪種情況,再用 ls -l 確認權限與擁有者,接著以符合該情況的權限或帳號重新執行即可解決。以下輸出是在 AlmaLinux 9.8 伺服器的 root 帳號與 Debian 12 伺服器的一般帳號上執行的結果,帳號名稱、主機名稱以及 /dev/null 輸出中的時間都是範例值…

  • watch 指令:用法與 -n 間隔、-d 標示、輸出改變時結束

    watch 指令是每 2 秒重新執行指定的指令,並把輸出重新畫滿整個終端機畫面的 Linux 指令。在 AlmaLinux 9 伺服器上一邊從另一個視窗修改檔案、一邊用 watch 監看,結果 -d 選項標示出改變的字元,-g 選項則在輸出改變後結束 watch。以下輸出是在 AlmaLinux 9.8 伺服器(root 帳號)的工作資料夾中執行的結果,Debian 12 伺服器只確認了版本…

  • su 指令:su 與 su - 的差異、sudo su 與 sudo -i,以及切換帳號的方法

    在 Linux 上不登出目前的帳號、改用其他帳號執行指令時,就使用 su 指令。在 AlmaLinux 9 伺服器上從 root 帳號對無法登入的系統帳號 daemon 執行 su 並比較的結果,一個連字號就讓工作資料夾和 PATH 改變,而且要指定 shell 指令才會執行。下面的輸出是在 AlmaLinux 9.8 伺服器(root 帳號)和 Debian 12 伺服器(一般帳號)上執行的結果…

  • zip 指令:壓縮資料夾、用 unzip 解壓縮與壓縮選項

    zip 指令會在 Linux 上把檔案和資料夾打包成一個 zip 檔並壓縮,解壓縮時則搭配 unzip 使用。在 AlmaLinux 9 伺服器上用 zip -r 壓縮網站資料夾後,35,825 位元組縮小到 4,158 位元組,而在 Windows 建立的 zip 檔中變成亂碼的檔案名稱,用 unzip -O 就恢復正常。以下輸出是在 AlmaLinux 9.8 伺服器上以 root 帳號於工作資料夾內執行的結果,時間為 UTC…

  • nohup 指令:用法、nohup.out 與關閉終端機後繼續執行

    想讓工作在關閉終端機或 SSH 連線中斷後繼續執行,就用 nohup 指令來執行。nohup 會讓指令忽略終端機關閉時送來的斷線訊號 (SIGHUP) 再執行。在 AlmaLinux 9 伺服器上同時啟動加了 nohup 的 sleep 和沒加的 sleep 並關閉終端機後,只有用 nohup 啟動的那個留下來繼續執行。以下輸出是在 AlmaLinux 9.8 伺服器(root 帳號)和 Debian 12 伺服器(一般帳號)上執行的結果…

  • gzip:Linux 檔案壓縮與 gzip 解壓縮、gunzip 和 zcat 用法

    gzip 是在 Linux 上把一個檔案壓縮成 .gz 檔的指令,解壓縮時在同一個指令加上 -d,或改用 gunzip。在 AlmaLinux 9 伺服器上壓縮 31,878 位元組的存取記錄後縮小到 4,424 位元組,解壓縮後原本的大小和修改時間都原樣恢復。以下輸出是在 AlmaLinux 9.8 伺服器上以 root 帳號於測試資料夾執行的結果,時間以 UTC 為準…

  • ssh-keygen:建立 SSH 金鑰、登錄公開金鑰與 ssh-copy-id 用法

    ssh-keygen 是 OpenSSH 的指令,負責建立 SSH 連線用的私密金鑰與公開金鑰配對,也能確認指紋、變更密碼短語、整理 known_hosts。在 AlmaLinux 9 伺服器上建立 ed25519 和 rsa 金鑰、確認指紋、變更密碼短語和註解後,再用 ssh-copy-id 的 dry-run 確認,結果傳到伺服器的只有 .pub 檔案裡的一行公開金鑰。下方輸出中的帳號名稱和金鑰檔案路徑…

  • journalctl 指令:用法、各服務日誌與日誌容量整理

    journalctl 指令是從 systemd 日誌中挑出並閱讀服務與核心所留下日誌的工具。在使用 systemd 的 Linux 上,systemd-journald 會把這些日誌集中到日誌裡。在 AlmaLinux 9 伺服器與 Debian 12 伺服器上依服務、時間與優先等級挑選日誌來讀後發現,一般帳號只看得到自己的日誌,而把日誌放在記憶體中的伺服器無法選擇先前的開機。以下輸出來自兩台伺服器…

  • dig 指令:Linux DNS 查詢與 +short、+trace 輸出解讀

    想確認網域的 DNS 記錄,連 DNS 伺服器的回應標頭都原樣看到時,就用 dig 指令。在 AlmaLinux 9 與 Debian 12 伺服器上依類型查詢 example.com 的記錄,並更換所詢問的 DNS 伺服器後發現,只看回應標頭的 status 和 flags,就能分辨名稱不存在、DNS 伺服器無法給出答案,以及由管理記錄的伺服器直接回答這三種情況。以下輸出是在 AlmaLinux 9.8 伺服器(root 帳號)與 Debian 12 伺服器(一般帳號)上執行的結果…

  • ss 指令:查看 Linux 連接埠與程序,並與 netstat 比較

    在 Linux 伺服器上,哪些連接埠開著、誰正連線中,可以用 ss 指令查看。ss 是 iproute2 中取代 netstat 的通訊端查詢工具。在 Debian 12 伺服器上用 ss 查詢監聽中(LISTEN)的連接埠與連線後確認,使用一般帳號時,即使加上 -p,其他帳號啟動的程式名稱也不會出現在 Process 欄。以下輸出是在英文 locale 下執行的結果…

內容結束

內容結束