免費版的資源有限,如有需要請購買付費版~ 8塊8包郵
這個可以看一下,如果連基本指令都不知道https://fanyue.ee/posts/linuxbasic/
這個也可以看一下,但比較多進階用法,有些這裡用不到,年初寫的 https://www.notion.so/Linux-1-3257c9bf7ed38070aef0f0b409e206f6?source=copy_link
不知道就去問 AI 了,反正又沒限制
居咪咪 https://gemini.google.com/ 恰特居批踢 https://chatgpt.com 克勞德 HTTPS://CLAude.ai/new
我就按文件步驟來
0. 下載 iso
記得先下載,當天下載大概浪費一半時間了,學校破網
下載連結: https://mirror.twds.com.tw/ubuntu-releases/resolute/ubuntu-26.04-live-server-amd64.iso
1. 配置 VM 資源
配置應該不用說吧,至於安裝部分詳見 https://fanyue.ee/posts/linuxinstall/
但可能有稍微不太一樣的地方記得注意一下圖片跟畫面是否有類似或一致
內文 9. 安裝源測試的這邊記得注意一下,先確認網路有通也就是 passed tests 再改 Mirror Address 為了考試要 bypass Mirror 的安裝,正常部署不太會這樣搞。
改 http://127.0.0.1/ubuntu 然後再繼續,下圖這個位置
2. IP 設置、Hostname
IP 設置
網路設定檔位於 /etc/netplan 建議可以把以下的先設定檔案起來,vim dhcp 開檔案貼上 vim maual 開檔案貼上。到時候只要 cp dhcp 50xx 這樣就會從 dhcp 資料複製到系統生效的檔案內。
DHCP 的設定檔
network:
version: 2
ethernets:
enp0s3:
dhcp4: true
固定 IP 的設定檔
network:
ethernets:
enp0s3:
addresses:
- 192.168.50.你的IP/23
nameservers:
addresses:
- 1.1.1.1
search:
- ntcu.edu.tw
routes:
- to: default
via: 192.168.50.1
set-name: enp0s3
version: 2
Hostname
sudo hostnamectl set-hostname 你要的主機名稱
3. 設定時區
台灣時區就以下這個指令
timedatectl set-timezone Asia/Taipei
4. 允許 root 登入
設定 root 密碼
sudo passwd root
進入 root 帳號
sudo su
開放 root 從外部連線進來
編輯以下檔案,改不了沒權限就加 sudo
vim /etc/ssh/sshd_config
把
PermitRootLogin prohibit-password
改成
PermitRootLogin yes
然後也找一下,下面這行如果有#把#拿掉
#PasswordAuthentication yes
儲存後重啟 ssh
sudo systemctl restart ssh
不能的話試下面的
sudo systemctl restart sshd
然後理論就該可以用 root 登入了
ssh root@IP位址
修改提示符號
預設通常是
PS1="[\u@\h \w]\$ "
[fanyueee@ubuntu ~/project]$
我猜要求可能是
[fanyueee@ubuntu 你的名字與身分證 18:35 ~/CodeProject] $
PS1="[\u@\h 你的名字與身分證 \D{%H:%M} \w] \\$ "
以下是一些參考
| 代碼 | 說明 |
|---|---|
\u |
使用者名稱 |
\h |
主機名稱(短) |
\H |
主機名稱(完整 FQDN) |
\w |
完整路徑 |
\W |
只顯示目前資料夾名稱 |
\d |
日期 (Mon Jun 10) |
\t |
24 小時制時間 |
\T |
12 小時制時間 |
\A |
HH:MM |
\j |
目前背景工作數 |
\! |
歷史命令編號 |
\# |
本次 Shell 執行的命令編號 |
\$ |
$ 或 # |
\n |
換行 |
\r |
CR |
\s |
Shell 名稱 |
\v |
Bash 版本 |
\V |
Bash 完整版本 |
\@ |
12 小時制時間 AM/PM |
\D{} |
自訂時間格式 |
5. 安裝 net-tools、apache2、php、Samba
apt install net-tools apache2 php samba
6. 批次建立使用者(個人網頁及samba )
先介紹甚麼是 /etc/skel 就是新帳號系統會把 /etc/skel 內的所有資料複製一份到 /home/新帳號 內,所以就可以在裡面放一個 /public_html 資料夾預創網頁,記得啟用 Userdir 才有個人網頁功能,參考 7 的某一個連結,這個是之前就有教的。
連線位置為 http://IP/~user1
批次建立
以下部分都需要一個檔案 users.txt 並且是在打指令的同資料夾內,內容會是
user01
user02
user03
這樣就會批次建立 user01 的帳號 user02 的帳號…
密碼預設都是 ubuntu
批次建立 linux 帳號
#!/bin/bash
for user in $(cat users.txt)
do
useradd -m $user
echo "$user:ubuntu" | chpasswd
done
自己建一個檔案 ex vim a.bash 然後 sudo bash a.sh
批次建立 samba 帳號
#!/bin/bash
for user in $(cat users.txt)
do
(echo "ubuntu"; echo "ubuntu") | smbpasswd -s -a $user
done
自己建一個檔案 ex vim b.bash 然後 sudo bash b.sh
7. 顯示、設定網頁
這邊可以參考 https://fanyue.ee/posts/linuxexam/#8-%E5%AE%89%E8%A3%9D-apache2php-samba 應該有些是重複的我就不重打了
個人網頁的部分參考 https://fanyue.ee/posts/linuxexam/#%E5%80%8B%E4%BA%BA%E7%9A%84%E7%B6%B2%E9%A0%81%E5%8A%9F%E8%83%BD
8. 提供 samba 服務
一樣翻上面的網頁資料
9. LVM
PV = Physical Volume
VG = Volume Group
LV = Logical Volume
簡單解釋 實體磁碟加入 LVM 後就變成 PV。
把多顆硬碟集中成一個大空間,這個是 VG。
LV = 虛擬分割區,從 VG 切割出來這樣。
先加硬碟關機在 VitrualBox 內設定
可以透過指令 lsblk 看現有硬碟,目前我這邊有 sda sdb sdc 三個實體硬碟也就是
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 25G 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 23G 0 part
├─ubuntu--vg-ubuntu--lv 252:0 0 11.5G 0 lvm /
└─ubuntu--vg-lvhome 252:1 0 512M 0 lvm
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 2G 0 part
sdc 8:32 0 2G 0 disk
└─sdc1 8:33 0 1G 0 part
sr0 11:0 1 1024M 0 rom
假如 sdb硬碟是新的,先來設置硬碟
sudo gdisk /dev/sdb
以下指令意思是創建一個 /sdb1 並且是吃滿 sdb 的空間
sudo sgdisk -o /dev/sdb
sudo sgdisk -n 1:0:0 -t 1:8e00 /dev/sdb
然後
lsblk
應該可以看到
sdb
└─sdb1
建立 PV
sudo pvcreate /dev/sdb1
然後看一下
sudo pvs
應該可以看到
PV VG
/dev/sdb1
已經是 PV 但尚未加入 VG
然後 在 /dev/sdb 上建立第 1 個分割區,使用整顆硬碟空間,並把分割區類型設定為 Linux LVM。
sudo pvcreate /dev/sdb1
sudo vgextend ubuntu-vg /dev/sdb1
然後給主硬碟擴充空間就是把剛剛的硬碟擴充到當前主硬碟上
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
sudo sgdisk -o /dev/sdb
sudo sgdisk -n 1:0:0 -t 1:8e00 /dev/sdb
lsblk
sudo pvcreate /dev/sdb1
sudo pvs
sudo vgextend ubuntu-vg /dev/sdb1
sudo vgs
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
df -h
10. 資料庫安裝
安裝資料庫
apt install mariadb-server
安裝如果有問看下這個,這個我直接複製老師的
Enter current password for root (enter for none):輸入 enter。
Switch to unix_socket authentication [Y/n] Y
Change the root password? [Y/n] N
Remove anonymous users? [Y/n] 輸入 y。
禁止 root 遠端登入?:輸入 y。
移除 test 資料庫?:輸入 y。
重新載入權限表?:輸入 y。
安裝 phpmyadmin 就是網頁控制 db 的
apt install phpmyadmin
然後安裝有問 Choose web server: 選 apache2 然後 Configure database for phpmyadmin? 選 yes
登入連結 http://IP/phpmyadmin
改名我猜指的是把 /phpmydamin 改掉,這個之前也有教了就類似東西
去改 /etc/phpmyadmin/apache.conf 把 Alias /phpmyadmin /usr/share/phpmyadmin 改 Alias /你的原神UID /usr/share/phpmyadmin
之後重啟 systemctl restart apache2