發表文章

目前顯示的是有「ubuntu」標籤的文章

學習案例:首次登入的系統巡檢任務 (V2.0 增強版)

 # 學習案例:首次登入的系統巡檢任務 (V2.0 增強版) ## 情境介紹 (The Core Problem) 您是一位新上任的系統管理員,今天第一次登入公司的一台重要伺服器。您的首要任務不是修改任何東西,而是進行一次**非侵入式的系統巡檢**,全面了解這台主機的作業系統版本、帳號與網路配置、以及當前的運行狀態,並將結果彙整成一份結構化的報告。 ## 你的任務是: 1.  在你的家目錄下,建立一個用於存放本次巡檢報告的工作區。 2.  全面收集系統的**版本、帳號、網路、磁碟、登入及程序**等核心資訊。 3.  將收集到的原始數據,分門別類地儲存到一份報告檔案中。 4.  分析這份報告檔案,從中過濾並找出關鍵資訊。 5.  完成報告後,整理工作區。 --- ### 階段一:【建立工作區】為你的任務做好準備 * **問題:** 在開始收集資訊前,我需要一個乾淨的地方來存放我的報告。 * **操作與解說:**     ```bash     # 確認當前位置     pwd     # 建立名為 system_check 的資料夾     mkdir system_check     # 進入該資料夾     cd system_check     # 建立一個名為 report.txt 的空白報告檔     touch report.txt     # 確認工作區與檔案已就緒     ls -l     ```     * **階段成果:** 您已成功建立 `~/system_check/` 工作區及 `report.txt` 報告檔。 --- ### 階段二:【數據採集】將系統狀態輸出到報告中 * **問題:** 如何依序執行一系列檢查指令,並將它們的結果有條理地全部存入 `report.txt` 中? * **操作與解說:** 我們將使用 `>` (覆蓋) 來寫入第一筆資料,然後統一使用 `>>` (附加) 來新增後續所有資訊區塊...

學習案例:設定多人共用的安全 Web 目錄

# 實戰案例:設定多人共用的安全 Web 目錄 ## 情境介紹 (The Core Problem) 您是公司的系統管理員,目前正在管理一台 Web 伺服器。有兩位網頁開發者,`alice` 和 `bob`,他們需要共同開發一個位於 `/var/www/project_alpha` 的新網站。 **您的核心挑戰是:** 1.  `alice` 和 `bob` 都必須能夠在 `/var/www/project_alpha` 目錄中新增、編輯和刪除檔案。 2.  為了解決協作問題,`alice` 建立的檔案,`bob` 必須能夠編輯,反之亦然。 3.  系統上其他的無關使用者,絕對不能對此目錄有寫入權限。 4.  最終,網站伺服器軟體(例如 Nginx,通常以 `www-data` 使用者身份運行)需要能夠讀取這些檔案,以便將網頁呈現給訪客。 --- ## 階段一:【建立協作團隊與成員】 * **問題:** 「首先,我需要為開發者 `alice` 和 `bob` 建立系統帳號,並將他們納入一個名為 `webdevs` 的共同開發群組中。」 * **操作與解說 (以 `root` 或具備 `sudo` 權限的使用者執行):**     1.  **建立 `webdevs` 群組:**         ```bash         sudo groupadd webdevs         ```         * **`groupadd`**: 用於建立一個新的使用者群組。     2.  **建立使用者 `alice`,並將其主要群組設為 `webdevs`:**         ```bash         sudo useradd -m -s /bin/bash -g webdevs alice         ```         * **`us...

學習案例:設定 Ubuntu 伺服器的 SSH 金鑰安全認證

# 實戰情境:設定 Ubuntu 伺服器 (172.30.0.199) 的 SSH 金鑰安全認證 ## 概述 本教學模擬一個常見的內部訓練情境。指導者已備妥一台全新的 Ubuntu 伺服器,學員需從自己的 Ubuntu 電腦,透過私有網路連線至該伺服器,並完成從密碼登入到金鑰認證的安全升級。 ### **情境設定** * **指導者提供資訊:**     * 伺服器 IP 位址:`172.30.0.199`     * 初始登入帳號:`ubuntu`     * 初始登入密碼:(指導者提供) * **學員端 (您的電腦):**     * 作業系統:Ubuntu Linux     * 角色:跟隨本指南操作,連線至伺服器。 --- ## 步驟一:【前置作業】網路環境確認 在嘗試連線之前,必須先確認您自己的電腦與目標伺服器在網路上是「可溝通」的。 ### **1.1 檢查自身網路座標** * **問題:** 「在連線到別台電腦前,我得先知道我自己的 IP 位址是什麼,以及我所在的網路環境為何?」 * **操作 (在您的 Ubuntu 電腦上執行):**     ```bash     ip a     ```     * **解說:** 找出您電腦的網路卡(如 `ens18`, `eth0`),記下其 `inet` 後面的 IPv4 位址。 ### **1.2 確認與目標伺服器的連線** * **問題:** 「我知道我的位置了,那目標伺服器在網路上『活著』嗎?它的 SSH 服務有在聽嗎?」 * **操作 (在您的 Ubuntu 電腦上執行):**     1.  **測試網路是否通暢 (Ping):**         ```bash         ping -c 4 172.30.0.199         ```     2.  **測試 SSH 服務端口是否開啟 (Netcat):**   ...

Ubuntu 19.10 LTS Mini. install 調整Linux內部預設時區

圖片
Ubuntu 19.10  LTS Mini. install 調整Linux內部預設時區 最小安裝 ubuntu 的時候,預設都是設定 UTC +0 的時區,有時候真的很難對時間。 Ubuntu 只要透過安裝 tzdata 就可以設定預設時間了  sudo apt-get install tzdata 如果你已經設定過了,可以透過 sudo dpkg-reconfigure tzdata 重新設定。 詳細過程如下: jangmt@instance-1-tokyo:/usr/share$ sudo apt-get install tzdata Reading package lists... Done Building dependency tree      Reading state information... Done The following NEW packages will be installed:   tzdata 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 208 kB of archives. After this operation, 3534 kB of additional disk space will be used. Get:1 http://asia-northeast1.gce.archive.ubuntu.com/ubuntu eoan/main amd64 tzdata all 2019c-3 [208 kB] Fetched 208 kB in 1s (171 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package tzdata. (Reading database ... 63700 files and directories currently installed.) Preparing to unpack .../tzdata_20...

How disable the touchpad in Linux MINT (暫時關掉觸控板的功能)

圖片
用了 NB 最麻煩的就是手滑,不小心摸到觸控板。 找了一下,暫時關閉的方式。 使用 root 權限 , 執行 xinput lst 觀看目前系統上的輸入裝置 id 值 BarkleyMT ~ # xinput list ⎡ Virtual core pointer                     id=2 [master pointer  (3)] ⎜   ↳ Virtual core XTEST pointer               id=4 [slave  pointer  (2)] ⎜   ↳ PixArt USB Optical Mouse                 id=11 [slave  pointer  (2)] ⎜   ↳ ETPS/2 Elantech Touchpad                 id=14 [slave  pointer  (2)] ⎣ Virtual core keyboard                   id=3 [master keyboard (2)]     ↳ Virtual core XTEST keyboard             id=5 [slave  keyboard (3)]     ↳ Power Button                           ...

Linux ubuntu 的 soft raid 1 及 LVM 磁區的資料救援

圖片
圖不相關於此文 這幾天停電,發生剛好有一台老 server power 卦掉了。 想說就順便把資料轉移到新的機器上面, 他在還沒死掉前使用的是 ubuntu linux 系統 硬碟使用 soft raid 1 的架構。 硬碟我使用 usb 硬碟外接座,把裝置接到系統上面。可以使用 blkid 看看裝置代號。 epost mnt # blkid  /dev/sda1: UUID="96d81952-2c1b-4963-98e7-b203f0197686" TYPE="ext4"  /dev/sda5: UUID="8987b099-e672-4486-ae9c-7ccb12264b7f" TYPE="swap"  /dev/sdb1: UUID="08cd466a-fdd1-43ea-9f4d-97d12fbed8ae" TYPE="ext4"  /dev/sde1: UUID="6f575859-37a1-ff61-530b-09d8a1b789b6" UUID_SUB="c601821d-4bf7-0728-83ae-682c29864775" LABEL="bm:0" TYPE="linux_raid_member"  * 可以看到 type 為 linux_raid_member 的 type 型態,可以使用 mdadm 指令,把這裝置賦予到一個 raid 裝置。 mdadm --assemble --run /dev/md3 /dev/sde1 * 然後再用 mount 將它掛載到目錄就可以存取。 * 但是發現檔案系統竟然是 LVM2_member 的檔案架構, 所以需要用 LVM 的方式操作它。 epost mnt # mount /dev/md3 /mnt/sde mount: unknown filesystem type 'LVM2_member' * 看看這個系統的分割區, 是不是有其他裝置。結果竟然全部都沒有合法的分割表。 epost mnt # fdisk /dev/md3 ...

使用 SNMPD 的 TRAP(異常情況) 功能來觸發管理機制,以 UPS 不斷電系統的自動關機為範例

圖片
使用 SNMPD 的 TRAP(異常情況) 功能來觸發管理機制,以 UPS 不斷電系統的自動關機為範例 這篇文章主要說明,當你的 UPS 如果發現 AC(市電)斷電了,我該如何呼叫機器關機勒? 在各 UPS 的管理工具理,都有提供管理工具讓你設定在斷電後快快關閉電腦,但是如果一次要對大量的機器可能就需要付點費用,或是使用其他的方式達成。此文提供透過 UPS 的 SNMPTRAPD 在符合條件的 MIB 資訊被觸發時,就透過接收到的資訊傳遞給負責處理的程序。 介紹 SNMP  ------------ 首先我們需要先了解何謂 SNMP 通訊協定,可以參考底下這篇文章 http://www.netadmin.com.tw/article_content.aspx?sn=1209100018 安裝軟體 ------------ # Linux mint or ubuntu 的安裝 apt-get install snmp snmpd libsnmp-base libsnmp-dev snmp-mibs-downloader -y # Linux CentOS 的安裝 yum install net-snmp net-snmp-agent-libs net-snmp-utils -y systemctl enable snmptrapd.service  在 /etc/snmp/snmptrapd.conf  可以看到預設的設定檔 這個設定可以在 'snmptrapd.conf(5)' 有詳細的說明如何設定 snmptrapd 設定 SNMPTRAPD 可以接收觸發的封包 ------------------------------------ 可以參考官方網站的說明 http://www.net-snmp.org/wiki/index.php/TUT:Configuring_snmptrapd # ----------------- # 修改設定檔 /etc/snmp/snmptrapd.conf # ----------------- # 這個是我參考官方網站後改寫的 /etc/snmp/snmptrapd.conf 範例 mint snmp # cat /etc/snm...

linux 文字命令列的 youtube-dl

WALALA.....為何有這個指令被收錄在 ubuntu 和 rhel EPEL 的套件內勒!!! 安裝 youtube-dl 工具 mtchang@ ~$ sudo apt-get install youtube-dl [sudo] password for mtchang: Reading package lists... Done Building dependency tree       Reading state information... Done The following extra packages will be installed:   libav-tools libavdevice53 libavfilter3 libbs2b0 libgif4 libquvi-scripts libquvi7 libvdpau1   mplayer2 rtmpdump Suggested packages:   frei0r-plugins nvidia-vdpau-driver vdpau-driver ffmpeg mplayer The following NEW packages will be installed:   libav-tools libavdevice53 libavfilter3 libbs2b0 libgif4 libquvi-scripts libquvi7 libvdpau1   mplayer2 rtmpdump youtube-dl 0 upgraded, 11 newly installed, 0 to remove and 36 not upgraded. Need to get 4,766 kB of archives. After this operation, 14.3 MB of additional disk space will be used. Do you want to continue? [Y/n] y 執行擷取某個影音檔 mtchang@~/Videos$ youtube-dl http://www.youtube.com/watch?v=iV8JDbtXZm4 [...

macbuntu 快速將你的ubuntu 更換為 mac 的佈景

圖片
macbuntu 快速將你的ubuntu 更換為 mac 的佈景 昨夜再睡夢中,不小找到了這個東西....可以直接把 ubuntu 變成 MAC 的桌面環境 http://sourceforge.net/projects/macbuntu/ 本來要測試安裝完成後要發文的,但是發現他在 2.0 版有 bug 且有中文使用者去抱怨... 然後在 2.1 他有針對中文介面做調整.... 下載 macubuntu * 請將壓縮檔解開後執行 install.sh 檔案 mtchang@cccm-laptop:~/Downloads/Macbuntu-10.04$ ./install.sh Macbuntu - Mac OS X Transformation Pack The Macbuntu installation script automatically installs and configures all necessary system components to mimic Mac OS X appearance on Ubuntu Linux Macbuntu-10.04 v2.1 Include * Macbuntu-10.04 theme based on GTK Leopard * Macbuntu-10.04-Icons based on Mac4Lin_Icons_v1.0 * Macbuntu-10.04-Cursors based on Mac4Lin_Cursors_v1.0 * Mac OS X backgrounds * Mac OS X fonts Installation * Compiz Extras * Global Menu * Docky * Ubuntu-Tweak Configuration * Login screen * Metacity * Compiz effects * Window theme * Backgrounds * Cursors * Icons * Top panel Attention! Script significantly changes the desktop. If a p...

把 Ubuntu 改裝成為 Windows7 樣式佈景

圖片
剛發現一個超強大的 Windows 7 Gnome 樣板,他幾乎把 windows7 的全部icon 都 copy 過來了 並且也把很多應用程式的佈景也都更改為 windows 7 的佈景,沒仔細看根本看不出來 http://www.omgubuntu.co.uk/2010/04/windows-7-theme-for-ubuntu.html 包含了這些項目都有被改到 The main element of the pack comprises: - Windows 7 style icon themes Windows 7 style GTK, Metacity & Emerald themes Windows 7 sound theme Wallpapers Added into this are: - Emesene theme Terminal theme GNOMenu themes Pidgin tweaks OpenOffice splash screen Fonts Emoticons DockBar theme 下載請從 Gnome-Look.org 下載 http://gnome-look.org/content/show.php/Win2-7+Pack?content=113264&PHPSESSID=6b4d386702c5aa9851736766665d7f74 下載 連結 下載完成後會是一個 .lzma 的壓縮檔,按滑鼠右鍵解開後 執行檔案內的  GUIInstall.sh 他會出現圖形介面引導你安裝 基本上只要下一步,下一步就可以完成安裝的動作. 算是非常簡單的安裝方式。因為我的 Ubuntu 是安裝英文版,所以更是感覺不出來他是ubuntu.

googlecl (Google 命令列工具) , 這實在太威了....

官網: http://code.google.com/p/googlecl/ 安裝python相關工具: $ sudo apt-get install python-gdata; 下載網頁 http://code.google.com/p/googlecl/downloads/list 抓取打包好的程式,以 ubuntu 為例 wget http://googlecl.googlecode.com/files/googlecl_0.9.7-1_all.deb $ dpkg -i googlecl_0.9.7-1_all.deb 這時候就有 google 這個 command line 的指令了,可以先 man 看看用法 $ man google 待續....

Ubuntu 10.04 LTS 選單及語言語系的問題

圖片
因為工作關係,為了要國際化......所以我強迫自己習慣英文的介面. windows 如此 ubuntu 也如此,但發現ubuntu 的語言切換,切的不是很乾脆,使用者可以透過 * 系統->管理->語言支援 可以將語言切換到不同的語系, 但是切換過去後原本的語言的選單竟然沒有跟著變過去. 從這個討論串,看來有很多人都有一樣的困擾.... http://ubuntuforums.org/showthread.php?t=1472193 你必須要手動透過 /etc/default/locale 的設定檔,改變設定才可以變更. root@mtchang-desktop:/etc/default# vim /etc/default/locale  LANG="en_US.utf8" LANGUAGE="en_US:en" 這真是稍微有點遺憾的地方..... 如果想要知道關於本機有安裝哪些語言的支援可以執行 locale -a 配合對照修改就可以切換成為自己要得語言。 mtchang@mtchang-desktop:~$ locale -a C en_AG en_AU.utf8 en_BW.utf8 en_CA.utf8 en_DK.utf8 en_GB.utf8 en_HK.utf8 en_IE.utf8 en_IN en_NG en_NZ.utf8 en_PH.utf8 en_SG.utf8 en_US.utf8 en_ZA.utf8 en_ZW.utf8 POSIX zh_CN.utf8 zh_HK.utf8 zh_SG.utf8 zh_TW.utf8 忘了說,記得登出後在登入即可生效。