Trong các bài viết về chương trình Always Free Tier của Oracle Cloud trước đây, mình đã giới thiệu về cách thức thiết lập VPS miễn phí trọn đời mà bạn có thể sử dụng cho AdGuard Home, Pi-Hole hoặc WireGuard VPN. Bên cạnh đó, có một ưu đãi hấp dẫn khác mà ít người chú ý là Oracle Cloud còn cung cấp 200GB lưu trữ miễn phí.
Mặc định mỗi VPS tạo ra trên hệ thống Oracle Cloud sẽ dùng 1 Boot Volume có dung lượng 50GB. Nếu bạn chỉ sử dụng 1 VPS duy nhất, có thể tận dụng 150GB còn lại của chương trình miễn phí để lưu trữ dữ liệu.
Dưới đây là các thiết lập Block Volume và kết nối vào VPS để bạn có thể tận dụng toàn bộ 200GB lưu trữ miễn phí của Oracle Cloud.
Mục Lục
Tạo Block Volume
Đăng nhập vào tài khoản Oracle Cloud của bạn và truy cập vào Menu ở góc trái, chọn Storage -> Block Volumes
Bấm vào nút Create Block Volume để tạo phân vùng lưu trữ mới
Dung lượng mặc định của Block Volume là 50GB. Bạn có thể chọn Custom và nhập vào dung lượng (GB) theo ý muốn.
Nếu bạn nhập số quá lớn, vượt hạn mức miễn phí, hệ thống sẽ thông báo cần phải nâng cấp tài khoản trả phí.
Mình đang dùng 2 VPS trên hệ thống, nên chỉ còn có 100 GB miễn phí. Do đó, mình chọn kích thước là 100GB, đặt tên: Storage. Các mục còn lại để mặc định và bấm Create Block Volume.
Chờ vài phút, Block Volume đã sẵn sàng phục vụ.
Kết nối Block Volume vào VPS
Ngay trong trang Block Volume vừa tạo, kéo xuống duối và bấm vào mục Attached Instances
Chọn tiếp Attach to Instance.
Chọn các thông số như sau:
- Attachment type: Paravirtualized
- Access Type: Read/Write
- Instance: chọn VPS bạn muốn kết nối vào Block Volume này.
Bấm Attach để xác nhận.
Chờ vài phút, hệ thống sẽ thông báo kết nối thành công: mục State hiển thị Attached.
Tạo phân vùng ổ đĩa
Sau khi kết nối Block Volume thành công vào VPS, nó sẽ hiển thị như là 1 ổ đĩa cứng mới trên hệ thống.
Kiểm tra bằng lệnh lsblk
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 49M 1 loop /snap/core18/2252
loop1 7:1 0 60.7M 1 loop /snap/lxd/21843
loop2 7:2 0 57.5M 1 loop /snap/core20/1380
loop4 7:4 0 57.5M 1 loop /snap/core20/1360
loop5 7:5 0 61.2M 1 loop /snap/lxd/22530
loop6 7:6 0 20.7M 1 loop /snap/oracle-cloud-agent/32
loop8 7:8 0 49M 1 loop /snap/core18/2289
loop9 7:9 0 20.7M 1 loop /snap/oracle-cloud-agent/31
loop11 7:11 0 37.7M 1 loop /snap/snapd/14982
sda 8:0 0 46.6G 0 disk
├─sda1 8:1 0 46.5G 0 part /
└─sda15 8:15 0 99M 0 part /boot/efi
sdc 8:32 0 100G 0 disk
Code language: YAML (yaml)
Hệ thống xuất hiện thêm 1 ổ đĩa với mã sdc
.
Mình sẽ sử dụng gdisk
để tạo phân vùng cho ổ đĩa mới này
gdisk /dev/sdc
Code language: Nginx (nginx)
Sau đó lần lượt chọn các lệnh o
, n
, w
để tạo phân vùng Linux mới.
sudo gdisk /dev/sdc
GPT fdisk (gdisk) version 1.0.5
Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries in memory.
Command (? for help): ?
b back up GPT data to a file
c change a partition's name
d delete a partition
i show detailed information on a partition
l list known partition types
n add a new partition
o create a new empty GUID partition table (GPT)
p print the partition table
q quit without saving changes
r recovery and transformation options (experts only)
s sort partitions
t change a partition's type code
v verify disk
w write table to disk and exit
x extra functionality (experts only)
? print this menu
Command (? for help): o
This option deletes all partitions and creates a new protective MBR.
Proceed? (Y/N): Y
Command (? for help): n
Partition number (1-128, default 1): 1
First sector (34-209715166, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-209715166, default = 209715166) or {+-}size{KMGTP}:
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.
Code language: YAML (yaml)
Tiếp theo, format phân vùng thành chuẩn ext4
sudo mkfs -t ext4 /dev/sdc1
Code language: Nginx (nginx)
Đợi vài giây là xong
mke2fs 1.45.5 (07-Jan-2020)
Creating filesystem with 26214139 4k blocks and 6553600 inodes
Filesystem UUID: aca9ad65-3411-41da-8e9e-0006563a657b
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Allocating group tables: done
Writing inode tables: done
Creating journal (131072 blocks): done
Writing superblocks and filesystem accounting information: done
Code language: YAML (yaml)
Kiểm tra lại bằng lệnh lsblk
, giờ đã thấy xuất hiện phân vùng sdc1
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 49M 1 loop /snap/core18/2252
loop1 7:1 0 60.7M 1 loop /snap/lxd/21843
loop2 7:2 0 57.5M 1 loop /snap/core20/1380
loop4 7:4 0 57.5M 1 loop /snap/core20/1360
loop5 7:5 0 61.2M 1 loop /snap/lxd/22530
loop6 7:6 0 20.7M 1 loop /snap/oracle-cloud-agent/32
loop8 7:8 0 49M 1 loop /snap/core18/2289
loop9 7:9 0 20.7M 1 loop /snap/oracle-cloud-agent/31
loop11 7:11 0 37.7M 1 loop /snap/snapd/14982
sda 8:0 0 46.6G 0 disk
├─sda1 8:1 0 46.5G 0 part /
└─sda15 8:15 0 99M 0 part /boot/efi
sdc 8:32 0 100G 0 disk
└─sdc1 8:33 0 100G 0 part
Code language: YAML (yaml)
Mount phân vùng vào Linux
Tạo thư mục mới và mount phân vùng sdc1
vào thư mục này
sudo mkdir /media/storage
sudo mount /dev/sdc1 /media/storage
Code language: Nginx (nginx)
Check lại bằng lsblk
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 49M 1 loop /snap/core18/2252
loop1 7:1 0 60.7M 1 loop /snap/lxd/21843
loop2 7:2 0 57.5M 1 loop /snap/core20/1380
loop4 7:4 0 57.5M 1 loop /snap/core20/1360
loop5 7:5 0 61.2M 1 loop /snap/lxd/22530
loop6 7:6 0 20.7M 1 loop /snap/oracle-cloud-agent/32
loop8 7:8 0 49M 1 loop /snap/core18/2289
loop9 7:9 0 20.7M 1 loop /snap/oracle-cloud-agent/31
loop11 7:11 0 37.7M 1 loop /snap/snapd/14982
sda 8:0 0 46.6G 0 disk
├─sda1 8:1 0 46.5G 0 part /
└─sda15 8:15 0 99M 0 part /boot/efi
sdc 8:32 0 100G 0 disk
└─sdc1 8:33 0 100G 0 part /media/storage
Code language: YAML (yaml)
Để Linux tự động mount phân vùng mỗi khi khởi động lại, mình chỉnh sửa file fstab
sudo nano /etc/fstab
Code language: Nginx (nginx)
Thêm dòng sau vào dưới cùng và lưu lại. Chú ý cần phải thay đổi /dev/sdc1
thành mã phân vùng tương ứng trên VPS của bạn.
/dev/sdc1 /meida/storage ext4 defaults 0 0
Code language: YAML (yaml)
Vậy là xong. Giờ mình đã có thêm 100 GB miễn phí trên VPS cũng miễn phí của để lưu trữ dữ liệu.
Chú ý: bạn không nên lưu thông tin, dữ liệu quan trọng trên VPS miễn phí của Oracle Cloud. Vì là hàng miễn phí nên có thể bị khoá tài khoản, hư hỏng bất cứ lúc nào. Chỉ nên dùng để vọc vạch cho vui, mất không tiếc.
Ngoài ra oarcle còn miễn phí Buckets 20GB mà hỗ trợ direct link cũng tiện add hướng dẫn luôn
Mình không biết có cái vụ Buckets 20GB miễn phí này. Cám ơn bạn đã giới thiệu, để nghiên cứu thêm.
mình làm vầy bởi vì mình muốn làm ra 1 block riêng phải ko a, để cài lại OS mà ko mất dữ liệu?
Anh chia sẽ thêm lý do mình làm vậy ngoài lý do trên với ạ?
(vì mình có thể tạo 150gb ngay từ đầu)
Đúng rồi nhé. Tách riêng Boot Volume và Block Volume để không bị ảnh hưởng nều cần tạo lại VPS mới. Ngoài ra nó còn hữu dụng khi lúc đầu đã tạo VPS mà không chú ý chỉnh lại Volume, mặc định giữ 50GB. Giờ chỉ cần thêm vô, không phải xoá đi, tạo lại.
Còn có phương án mữa là resize boot volume
https://docs.oracle.com/en-us/iaas/Content/Block/Tasks/resizingavolume.htm#OnlineResize