Tản mạn 2025.001
Chuỗi tản mạn
Vài thứ hay ho
-
Nghiên cứu hiệu suất của LVM trong môi trường Linux:
- Cấu hình test hiệu suất: gồm công thức tính thời gian truy cập đối với trực tiếp filesystem và thời gian truy cập đối với lvm. Họ dùng PostMark (giả lập server mail), tạo pool lớn các file, sau đó ngẫu nhiên tạo, đọc, ghi file (và đảm bảo thứ tự thực hiện này ngẫu nhiên). Ổ cứng được chọn là WDC WD800BD-22MR-80GB, với layout của FS, LVM-1 (LVM với 1 PV), LVM-2 (LVM với 2 PV). Xây dựng dần các giả thuyết:
- Giả thuyết 1: non-LVM hơn LVM
- Giả thuyết 2:
T_LVM_AT = T_FSA + T_LVM_MO, tức là thời gian File Access Time của LVM sẽ luôn có thêm mapping overhead (LVM_MO) - Giả thuyết 3: mapping overhead phụ thuộc vào độ phức tạp của thiết kế LVM
- Giả thuyết 4: mapping overhead phụ thuộc vào workload (read/write/random/seq)
- Công thức tính thời gian truy cập:
T_FSA = T_DO + T_MO + T_FL + T_DFA + T_JT_FSA: File System Access TimeT_DO: Directory Operation TimeT_MO: Metadata Operation TimeT_FL: Free List Time (tổng thời gian thực hiện với free blocks và danh sách i-node (mở rộng file, gom file, tạo objects mới, xóa object cũ))T_DFA: Direct File Access TimeT_J: Journaling time
- Các bài test và kết quả:
- Test 1 (nặng
T_DFA):- lower number of files (4000), moderate number of create/delete operations, file size of 1 k ÷ 100 k, and solid amount of reads/writes (1.6GB-r/1.8GB-w): Direct file system realization without the use of LVM is about 63% faster than an LVM-1 realization with one physical volume, and it is 2,5 times faster than an LVM-2 realization with two physical volumes. LVM-1 realization with one physical volume is approximately 50 % faster than an LVM-2 realization with two physical volumes.
- Test 2 (nặng
T_DO + T_MO):- high number of files (30.000), high number of create/delete operations, ultra-small file sizes (1byte-1K), and low amount of reads/writes (13.61MB-r/31.35MB-w): Direct file system realization without the use of LVM is approximately 80 % faster than an LVM-1 realization with one physical volume and it is 6,5 times faster than a LVM-2 realization with two physical volumes. LVM-1 realization with one physical volume is significantly faster (3,5 times) than an LVM realization with two physical volumes.
- Bài test này LVM-2 nhiều mapping nên lâu hơn (nặng
T_MO).
- Test 3 (nặng
T_DFA):- lower number of files (4000), moderate number of create/delete operations, file size of 100 k ÷ 300 k, and solid amount of reads/writes (4.6GB-r/5.4GB-w): Native file system realization without the use of LVM is approximately 16 % faster than an LVM realization with one physical volume, and it is 3 times faster than an LVM realization with 2 physical volumes.
- Bài test này nâng cấp từ bài test 1, LVM-2 bị dính mapping nặng hơn nhiều. Trong khi đó LVM với 1 PV có thể giữ khoảng cách ổn với native file system
- Test 1 (nặng
- Cấu hình test hiệu suất: gồm công thức tính thời gian truy cập đối với trực tiếp filesystem và thời gian truy cập đối với lvm. Họ dùng PostMark (giả lập server mail), tạo pool lớn các file, sau đó ngẫu nhiên tạo, đọc, ghi file (và đảm bảo thứ tự thực hiện này ngẫu nhiên). Ổ cứng được chọn là WDC WD800BD-22MR-80GB, với layout của FS, LVM-1 (LVM với 1 PV), LVM-2 (LVM với 2 PV). Xây dựng dần các giả thuyết:
-
Tìm physical volumes chứa logical volume:
- dùng
pvs /dev/sdb1 --segments -o +lv_name,lv_sizeview được các mẩu của logical volume để ở đâu trên physical volume
- dùng
-
RAID và LVM: RAID trên LVM hay LVM trên RAID:
- có một góc nhìn dễ hiểu là LVM đem lại lợi ích ở lớp filesystem, RAID đem lại lợi ích ở lớp thiết bị, cứ thế từ dưới đi lên, dùng LVM trên RAID hơn là RAID trên LVM. RAID trên LVM có thể dẫn đến một ca bị freeze mdadm như dưới đây.
-
Ping một port nào đấy (?): check tcp với udp thì không dùng khái niệm ping được, có thể dùng nmap, nc, telnet, curl. Windows dùng psping trong bộ sysinternal.
-
scp copy recursively: kể cả có tag “-r” của scp, thì hầu hết mọi người comment dùng rsync hoặc đóng gói lại, rồi mới chuyển về để đảm bảo toàn vẹn, bao gồm ownership, permission.
-
Tự động đăng nhập ssh với password: dùng sshpass, hoặc tool passh, ngoài ra còn có biến
SSH_ASKPASS -
web 01: test hiểu biết cơ bản về PHP, session hijacking
Bandit đi theo từng level, cơ mà note lại một số level đáng kể:
- Bandit 7: hiểu biết dùng lệnh find
- Bandit 9: dùng sort trong linux utils
- Bandit 10: dùng strings lọc human-readable
- Bandit 13: chuyển từ hexdump về file gốc bằng xxd, kiểm tra loại file và thực thi lệnh
- Bandit 14: ssh từ ssh server
- Bandit 15: gửi rawstring đến port
Đọc:
- Kể chuyện Ubuntu: suck từ đoạn upgrade cho tới snap. Vụ upgrade của Ubuntu thì ngán thật, nhiều khi cài mới sẵn còn bị lỗi nữa là (cài xong reboot như thường lệ và báo system error). Tác giả có kể về flatpak như một giải pháp ổn thỏa hơn snap. Mình dùng package truyền thống, không dùng flatpak với snap, nên không bàn thêm.
- OpenWISP: cái này gần giống với platform của EnGenius mình từng dùng, nhưng thiết kế cho các thiết bị OpenWRT. Khai sinh ra trong bối cảnh giải quyết nhu cầu wifi số lượng lớn ở Rome và 120 thành phố khác, với 4.5 triệu người dùng, tiền thân cho tổ chức FreeItaliaWiFi.
- Giấy phép bản quyền của MP3 hết hiệu lực: giờ dùng các coding khác hết rồi.
- Assembly với 6502: mình từng học Assembly với MIPS, chưa từng trải nghiệm 6502, note lại để thử.
- SaaS trong thời AI: dẫn đến những nhu cầu khác khi không còn cần giao diện nữa, mà tương tác với agent, không còn tương tác trực tiếp với mớ phức tạp dữ liệu nữa. Điều này dẫn tới hợp nhất nhiều dịch vụ để đạt được nhu cầu thực sự của người dùng cần hiểu về khách hàng.
- Bản cập nhật Apple tự bật Apple Intelligence
- CAPTCHAs thực ra là ổ cookies