Linux與命令列基礎

在使用 systemd 的 Linux 上,對服務 license.service 執行「systemctl start license.service」與「systemctl enable license.service」的差異是下列何者?

  1. Astart 設定成從下次電腦開機起自動執行,enable 則立即啟動服務
  2. Bstart 立即啟動服務,enable 則設定成在電腦開機時自動啟動
  3. Cstart 以只有 root 能使用的服務啟動,enable 則允許一般使用者也能操作該服務
查看答案與解析

正確答案:B. start 立即啟動服務,enable 則設定成在電腦開機時自動啟動

systemctl start 會立即啟動該服務,但啟動的狀態不會延續到重新開機之後。systemctl enable 是設定成在系統開機時自動啟動該服務,只執行 enable 並不會立即啟動。要一次完成兩者可用 systemctl enable --now,停止用 stop,取消自動啟動用 disable。服務是否在執行以及最近的日誌,可以用 systemctl status 確認。

  • A. start 與 enable 的作用顛倒了。start 是立即啟動,enable 是設定開機時自動啟動。
  • B. 正確。start 是立即啟動,enable 是設定開機時自動啟動。
  • C. start 與 enable 並不是決定誰能操作服務的指令。
練習這個領域 前往領域頁面

Linux與命令列基礎的其他題目

  1. 在 cron 中登錄了「30 2 * * 1 /home/alice/backup.sh」。backup.sh 執行的時間是下列何者?
  2. Linux 伺服器出現「磁碟空間不足」的警告。查詢各檔案系統的使用量與剩餘容量的指令,以及加總查詢目錄中檔案所用容量的指令,下列哪一個組合正確?
  3. 在自己的 PC 上用 ssh-keygen 建立公開金鑰認證的金鑰對,想不用密碼就以 ssh 連線到伺服器 server1。金鑰的放置方式何者正確?
  4. 執行「tar -czf proj.tar.gz proj/」時的動作是下列何者?
  5. 編輯以 Git 管理的檔案 main.c 後,只執行了「git commit -m "fix"」,結果顯示「no changes added to commit」而沒有提交。理由是下列何者?