安裝 Ubuntu

筱崋發表於2024-05-07

安裝

(01)獲取 Ubuntu 24.04

Ubuntu 24.04(Noble Numbat):下載


[1] 從以下網站下載 Ubuntu 24.04(2024 年 4 月 25 日釋出,支援至 2034 年 4 月底)。

https://releases.ubuntu.com/24.04/

為 Ubuntu 24.04(隨身碟)建立安裝介質


  將 ISO 映像寫入 隨身碟,為 Ubuntu 24.04 建立安裝介質。

  如果您在 Windows 上建立它,請參閱以下內容。

[2] 從以下站點下載並安裝 [Fedora Media Writer]。

https://github.com/FedoraQt/MediaWriter/releases

[3] 將 U 盤連線到計算機。

  接下來,執行 Fedora Media Writer 並選擇 [select .iso file] 選項。

安裝 Ubuntu

[4] 對於 USB 驅動器部分,選擇您要編寫 ISO 映像的 隨身碟。對於檔案部分,選擇您下載的 ISO 映像。如果可以,請點選 [Write] 按鈕開始寫入。寫入完成後,彈出 隨身碟並繼續安裝步驟。

安裝 Ubuntu

為 Ubuntu 24.04(DVD)建立安裝介質


  將 ISO 映像寫入 DVD 以建立 Ubuntu 24.04 的安裝介質。

  如果您使用 Windows 10/11 的功能建立它,請參閱以下內容。

[5] 將空 DVD 插入光碟機。接下來,右鍵單擊 Fedora 的 ISO 映像,並在選單中選擇 [Burn Disk image]。

安裝 Ubuntu

[6] 點選 [Burn] 按鈕,開始書寫。

  寫入完成後,彈出磁碟並繼續安裝步驟。

安裝 Ubuntu

(02)安裝 Ubuntu 24.04

Ubuntu 24.04 LTS:安裝


  安裝 Ubuntu 24.04 伺服器。

[1] 插入用於安裝 Ubuntu 24.04 的磁碟並重新啟動計算機。接下來,選擇您的語言並繼續下一步。

安裝 Ubuntu

[2] 選擇鍵盤佈局。使用 Tab 鍵移動到下一個欄位、使用 Enter 鍵檢視列表、使用游標鍵選擇專案。

安裝 Ubuntu

[3] 選擇要安裝的 Ubuntu 伺服器基礎。

安裝 Ubuntu

[4] 這是網路配置部分。如果本地網路中存在DHCP伺服器,則會自動分配IP地址。

安裝 Ubuntu

[5] 如果需要,請設定代理伺服器 URL。如果不需要,可以繼續清空。

安裝 Ubuntu

[6] 輸入映象伺服器 URL 從中獲取包。通常,它透過檢測您的位置自動配置最近的一個。

安裝 Ubuntu

[7] 這是儲存配置部分。配置分割槽佈局等。如果您沒有特定要求,可以繼續使用預設設定。

安裝 Ubuntu

[8] 這是儲存配置摘要。如果全部確定,請選擇[完成]並繼續下一步。

安裝 Ubuntu

[9] 需要確認,因為所選儲存中的現有資料已全部格式化。如果確定,選擇 [Continue]。

安裝 Ubuntu

[10] 設定管理使用者帳戶。輸入您喜歡的任何使用者名稱和密碼。

安裝 Ubuntu

[11] 選擇是否升級到 Ubuntu Pro。
  Ubuntu Pro 提供 10 年的付費支援。
  但是,最多可以免費使用 5 臺裝置供個人使用。(需要 Ubuntu One 帳戶)

安裝 Ubuntu

[12] 在此安裝過程中選擇是否安裝 SSH 伺服器。

安裝 Ubuntu

[13] 選擇它們經常用於伺服器使用的應用程式或軟體環境。如果您沒有特定要求,可以在不檢查任何專案的情況下繼續操作。

安裝 Ubuntu

[14] 安裝過程完成後,選擇 [Reboot Now] 以重新啟動計算機。

安裝 Ubuntu

[15] 重新啟動計算機後,使用您在安裝過程中設定的使用者和密碼登入。 如果正常登入,則您的 Ubuntu Server 安裝成功完成。

Ubuntu 24.04 LTS ubuntu ttyS0

ubuntu login: ubuntu
Password:
Welcome to Ubuntu 24.04 LTS (GNU/Linux 6.8.0-31-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Fri Apr 26 01:09:32 UTC 2024

  System load:  0.2                Processes:               143
  Usage of /:   21.9% of 27.39GB   Users logged in:         0
  Memory usage: 5%                 IPv4 address for enp1s0: 10.0.0.213
  Swap usage:   0%

Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status



The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

ubuntu@ubuntu:~$

初始設定

(01)新增使用者

初始設定:新增使用者賬戶


  安裝 Ubuntu 系統後,除了系統帳戶之外,在安裝過程中只配置了一個使用者,並且該使用者是管理使用者。

  如果要在系統上新增更多常用使用者帳戶,請按如下方式進行配置。

[1] 例如,新增 [noble] 使用者。

ubuntu@localhost:~$ sudo adduser noble
ubuntu@localhost:~$
[sudo] password for ubuntu:  # input your password
info: Adding user `noble' ...
info: Selecting UID/GID from range 1000 to 59999 ...
info: Adding new group `noble' (1001) ...
info: Adding new user `noble' (1001) with group `noble (1001)' ...
info: Creating home directory `/home/noble' ...
info: Copying files from `/etc/skel' ...
New password:           # set user password
Retype new password:    # confirm
passwd: password updated successfully
Changing the user information for noble
Enter the new value, or press ENTER for the default
        Full Name []:   # input user info (OK with empty all if you do not need)
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y
info: Adding new user `noble' to supplemental / extra groups `users' ...
info: Adding user `noble' to group `users' ...

[2] 如果要向新使用者授予許可權,請按如下方式進行配置。

ubuntu@localhost:~$ sudo usermod -aG sudo noble
ubuntu@localhost:~$ su - noble
Password:
# try to run a command which requires root privilege
noble@localhost:~$ sudo ls -la /root
[sudo] password for noble:     # input self password
total 28
drwx------  4 root root 4096 Apr 26 01:43 .
drwxr-xr-x 23 root root 4096 Apr 26 01:07 ..
-rw-------  1 root root   21 Apr 26 01:43 .bash_history
-rw-r--r--  1 root root 3106 Apr 22 13:04 .bashrc
drwx------  2 root root 4096 Apr 26 01:43 .cache
-rw-r--r--  1 root root  161 Apr 22 13:04 .profile
drwx------  2 root root 4096 Apr 26 01:09 .ssh

[3] 如果要刪除使用者帳戶,請按如下方式進行配置。

# remove a user [noble] (only removed user account)
ubuntu@localhost:~$ sudo deluser noble
# remove a user [noble] (removed user account and his home directory)
ubuntu@localhost:~$ sudo deluser noble --remove-home

(02)啟用root使用者

初始設定:啟用root使用者帳戶


  預設情況下,Ubuntu 中的 root 帳戶是禁用的,因為他的密碼沒有設定。 要使用 root 許可權,基本上最好將 sudo 命令用於管理帳戶。 但是,如果您出於某種原因想使用root帳戶本身,則可以使用如下所示。

[1] 安裝過程中新增的使用者帳戶是使用 Sudo 設定的管理帳戶,因此很容易獲得 root 帳戶的 shell,如下所示。

ubuntu@localhost:~$ sudo -s
[sudo] password for ubuntu:   # input self password
root@localhost:/home/ubuntu#  # just switched

[2] 或者可以使用標準 su 命令切換到 root 帳戶來設定 root 帳戶的密碼。

ubuntu@localhost:~$ sudo passwd root
ubuntu@localhost:~$ su -
[sudo] password for ubuntu:   # input self password
New password:                 # set root password
Retype new password:          # confirm
passwd: password updated successfully


Password:                     # input root password
root@localhost:~#             # just switched

 * 此站點上的示例按 root 使用者帳戶顯示。如果您使用 sudo,請在命令的頭部新增 [sudo]。

  如果啟用 root 帳戶,最好將可以 [su] 的使用者限制為 root,如下所示。對於Sudo的使用, 可以在 sudoers 配置中限制為禁止 shell,請參閱有關 Sudo 設定的詳細資訊。

[3] 對於 [su] 命令限制,請按如下方式設定。

root@localhost:~# vi /etc/pam.d/su
# line 15 : uncomment and add a group which is allow to run [su] command
# add an user you allowed to run [su] to the group you set above
root@localhost:~# usermod -aG adm ubuntu
auth       required   pam_wheel.so  group=adm

(03)網路設定

初始設定:網路設定


  如果使用 Ubuntu 作為伺服器,請更改為靜態 IP 地址。

[1] 介面名稱 [enp1s0] 在每個環境中都不同,請將其替換為您自己的介面名稱。

# rename to disable default setting
root@localhost:~# mv /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.yaml.org
root@localhost:~# vi /etc/netplan/01-netcfg.yaml
# create new
network:
  ethernets:
    # interface name
    enp1s0:
      dhcp4: false
      # IP address/subnet mask
      addresses: [10.0.0.30/24]
      # default gateway
      # [metric] : set priority (specify it if multiple NICs are set)
      # lower value is higher priority
      routes:
        - to: default
          via: 10.0.0.1
          metric: 100
      nameservers:
        # name server to bind
        addresses: [10.0.0.10,10.0.0.11]
        # DNS search base
        search: [srv.world,server.education]
      dhcp6: false
  version: 2

# apply changes
root@localhost:~# chmod 600 /etc/netplan/01-netcfg.yaml
root@localhost:~# netplan apply
root@localhost:~# ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:3c:1c:70 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.30/24 brd 10.0.0.255 scope global enp1s0
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe3c:1c70/64 scope link
       valid_lft forever preferred_lft forever

[2] 如果您不需要 IPv6,可以按如下方式禁用它。

root@localhost:~# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
root@localhost:~# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
root@localhost:~# ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:3c:1c:70 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.30/24 brd 10.0.0.255 scope global enp1s0
       valid_lft forever preferred_lft forever

(04)配置服務

初始設定:服務設定


  要檢視服務狀態或啟用/禁用服務,請按如下方式進行配置。

[1] 顯示服務。

# display services which are running
# to add [--all], display all included inactive servises
# to add [--no-pager], do not use pagers like [less/more]
root@localhost:~# systemctl -t service
# display list of all services' setting
root@localhost:~# systemctl list-unit-files -t service
  UNIT                       
  apparmor.service           
  apport.service             
  blk-availability.service   
  console-setup.service      
  cron.service               

.....
.....

  upower.service                 
  user-runtime-dir@1000.service  
  user@1000.service              

Legend: LOAD   → Reflects whether the unit definition was properly loaded.
        ACTIVE → The high-level unit activation state, i.e. generalization of S>
        SUB    → The low-level unit activation state, values depend on unit typ>

49 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.


UNIT FILE                                    STATE           PRESET
apparmor.service                             enabled         enabled
apport-autoreport.service                    static          -
apport-coredump-hook@.service                static          -
apport-forward@.service                      static          -
apport.service                               enabled         enabled
apt-daily-upgrade.service                    static          -
apt-daily.service                            static          -
apt-news.service                             static          -
autovt@.service                              alias           -
blk-availability.service                     enabled         enabled

.....
.....

xfs_scrub@.service                           static          -
xfs_scrub_all.service                        static          -
xfs_scrub_fail@.service                      static          -

239 unit files listed.

[2] 如果有一些不必要的服務,可以停止並關閉自動啟動設定,如下所示。(可以省略 [.service] 字)

root@localhost:~# systemctl stop apparmor
root@localhost:~# systemctl disable apparmor

(05)更新系統

初始設定:更新系統


  在它成為生產系統之後,也許很難更新系統,但是,至少在安裝後,將Ubuntu Server更新到最新版本。

[1] 更新您的 Ubuntu 伺服器。

# update List first
root@localhost:~# apt update
# update System
root@localhost:~# apt -y upgrade
Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
Get:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease [89.7 kB]
Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Fetched 89.7 kB in 2s (39.0 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

(06)配置Vim

初始設定 : Vim 設定


(07)配置Sudo