<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[GiaoSuVui's notes]]></title><description><![CDATA[GiaoSuVui's notes]]></description><link>https://giaosuvui.eu.org</link><image><url>https://cdn.hashnode.com/res/hashnode/image/upload/v1757068027958/5aef37ec-d1f1-4708-99ae-4a2b5d4dabe2.png</url><title>GiaoSuVui&apos;s notes</title><link>https://giaosuvui.eu.org</link></image><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Apr 2026 07:48:55 GMT</lastBuildDate><atom:link href="https://giaosuvui.eu.org/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Tại sao AI hay con người không thể dự đoán chính xác giá cổ phiếu?]]></title><description><![CDATA[🎬 Mở màn: Chứng khoán không phải “trò chơi đoán số”
Bạn có bao giờ thấy ai nói: “Ngày mai cổ phiếu này chắc chắn tăng!” chưa? Nghe thì ngầu, nhưng thực tế thì… đoán giá cổ phiếu còn khó hơn đoán mẹ bạn hôm nay nấu món gì cho bữa tối.

🤖 AI và con n...]]></description><link>https://giaosuvui.eu.org/tai-sao-ai-hay-con-nguoi-khong-the-du-doan-chinh-xac-gia-co-phieu</link><guid isPermaLink="true">https://giaosuvui.eu.org/tai-sao-ai-hay-con-nguoi-khong-the-du-doan-chinh-xac-gia-co-phieu</guid><category><![CDATA[funfact]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Tue, 11 Nov 2025 07:09:24 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/2Q3Ivd-HsaM/upload/b30b29ce3a947eab4ea0f1019a7cd2ea.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h4 id="heading-mo-man-chung-khoan-khong-phai-tro-choi-doan-so">🎬 Mở màn: Chứng khoán không phải “trò chơi đoán số”</h4>
<p>Bạn có bao giờ thấy ai nói: <em>“Ngày mai cổ phiếu này chắc chắn tăng!”</em> chưa? Nghe thì ngầu, nhưng thực tế thì… đoán giá cổ phiếu còn khó hơn đoán mẹ bạn hôm nay nấu món gì cho bữa tối.</p>
<hr />
<h4 id="heading-ai-va-con-nguoi-cung-chung-mot-cai-bay">🤖 AI và con người: cùng chung một “cái bẫy”</h4>
<p>AI học từ dữ liệu quá khứ, con người thì dựa vào kinh nghiệm. Nhưng cả hai đều mắc lỗi giống nhau: <strong>dùng chuyện đã xảy ra để đoán chuyện chưa xảy ra</strong>.</p>
<p>Ví dụ dễ hiểu:</p>
<ul>
<li><p>Bạn xem lại kết quả thi đấu bóng đá tuần trước rồi đoán trận tuần sau. Nhưng đội bóng có thể đổi cầu thủ, trời mưa, hay trọng tài “hơi lạ” → kết quả khác ngay.</p>
</li>
<li><p>AI cũng vậy, nó chỉ biết những gì đã xảy ra, còn “plot twist” thì không ai lường trước được.</p>
</li>
</ul>
<hr />
<h4 id="heading-qua-khu-de-tuong-lai-kho">📊 Quá khứ dễ, tương lai khó</h4>
<ul>
<li><p><strong>Quá khứ</strong>: Nhìn lại thì dễ như xem lại điểm kiểm tra – rõ ràng, chính xác.</p>
</li>
<li><p><strong>Tương lai</strong>: Giống như đi thi mà đề có câu mới chưa từng gặp → bí ngay.</p>
</li>
</ul>
<hr />
<h4 id="heading-nhung-cu-bat-ngo-kieu-troi-mua-giua-trua-nang">⚡ Những cú bất ngờ kiểu “trời mưa giữa trưa nắng”</h4>
<p>Thị trường chứng khoán cũng vậy, luôn có những cú bất ngờ:</p>
<ul>
<li>Đang yên đang lành thì có tin tức mới, giống như đang đi picnic thì trời đổ mưa.</li>
</ul>
<p>Công thức vui:</p>
<p>5+x=y5 + x = y</p>
<ul>
<li><p><strong>5</strong>: những gì ta biết (quá khứ, dữ liệu, kinh nghiệm).</p>
</li>
<li><p><strong>x</strong>: biến số mới, chưa từng gặp (bất ngờ như trời mưa giữa trưa nắng).</p>
</li>
<li><p><strong>y</strong>: kết quả cuối cùng.</p>
</li>
</ul>
<p>Nếu biết <strong>x</strong>, ta đoán được <strong>y</strong>. Nhưng đời thì luôn có “x” bất ngờ.</p>
<hr />
<h4 id="heading-ket-luan-dung-mo-thanh-thay-boi-chung-khoan">😂 Kết luận: Đừng mơ thành “thầy bói chứng khoán”</h4>
<p>Thay vì cố đoán chính xác, hãy:</p>
<ul>
<li><p><strong>Đa dạng hóa đầu tư</strong>: giống như ăn buffet, đừng chỉ ăn một món.</p>
</li>
<li><p><strong>Chuẩn bị tâm lý</strong>: thị trường chứng khoán bất ngờ như thời tiết Sài Gòn – sáng nắng, chiều mưa, tối giông.</p>
</li>
<li><p><strong>Quản trị rủi ro</strong>: coi dự đoán như chơi trò chơi, vui thì được, nhưng đừng đặt cược tất cả.</p>
</li>
</ul>
<hr />
<p>👉 Tóm lại: <strong>dự đoán giá cổ phiếu giống như đoán hôm nay crush có nhắn tin không – có thể có, có thể không, và thường thì… không.</strong></p>
]]></content:encoded></item><item><title><![CDATA[MacOS và Unix]]></title><description><![CDATA[MacOS thực sự thuộc họ hệ điều hành Unix; nhân hiện tại (XNU) tích hợp Mach và thành phần BSD, và nhiều phiên bản macOS được chứng nhận theo Single UNIX Specification của The Open Group.

Nguồn gốc lịch sử của Unix và BSD
Unix bắt nguồn từ Bell Labs ...]]></description><link>https://giaosuvui.eu.org/macos-va-unix</link><guid isPermaLink="true">https://giaosuvui.eu.org/macos-va-unix</guid><category><![CDATA[history]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Thu, 23 Oct 2025 02:10:03 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/BOADhrSdAF0/upload/4721d6ddaf978b3e6c83257b3568b918.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>MacOS thực sự thuộc họ hệ điều hành Unix; nhân hiện tại (XNU) tích hợp Mach và thành phần BSD, và nhiều phiên bản macOS được chứng nhận theo Single UNIX Specification của The Open Group.</p>
<hr />
<h3 id="heading-nguon-goc-lich-su-cua-unix-va-bsd">Nguồn gốc lịch sử của Unix và BSD</h3>
<p>Unix bắt nguồn từ Bell Labs thuộc AT&amp;T, do Ken Thompson và Dennis Ritchie khởi xướng vào cuối những năm 1960; từ mã Unix ban đầu phát sinh nhiều nhánh, trong đó BSD do Đại học California, Berkeley phát triển dựa trên mã Unix được phân phối cho học thuật.</p>
<hr />
<h3 id="heading-nextstep-su-tro-lai-cua-steve-jobs-va-xuat-phat-diem-ky-thuat-cua-macos">NeXTSTEP, sự trở lại của Steve Jobs và xuất phát điểm kỹ thuật của macOS</h3>
<p>NeXTSTEP là hệ điều hành do NeXT (Steve Jobs) phát triển, sử dụng nhân Mach kết hợp với các thành phần từ 4.3BSD và một userland theo triết lý Unix; NeXTSTEP là nền tảng kỹ thuật trực tiếp dẫn đến Darwin và sau đó là Mac OS X/macOS. XNU, nhân hiện dùng trong macOS, cũng bắt nguồn từ XNU của NeXT và tiếp tục được Apple phát triển, mã nguồn XNU được công khai trong kho Darwin của Apple.</p>
<hr />
<h3 id="heading-quyen-thuong-hieu-unix-va-vai-tro-cua-the-open-group">Quyền thương hiệu UNIX và vai trò của The Open Group</h3>
<p>Quyền sử dụng tên thương hiệu "UNIX" và tiêu chuẩn Single UNIX Specification hiện do The Open Group quản lý; chỉ những hệ được kiểm định theo tiêu chuẩn này mới được phép sử dụng nhãn hiệu UNIX đã đăng ký. The Open Group duy trì một danh sách các sản phẩm được chứng nhận trong "Register of UNIX Certified Products".</p>
<hr />
<h3 id="heading-macos-duoc-chung-nhan-la-unix-theo-tieu-chuan-nganh">macOS được chứng nhận là UNIX theo tiêu chuẩn ngành</h3>
<p>Apple đã nộp và nhận chứng nhận Single UNIX Specification cho nhiều phiên bản Mac OS X/macOS, cho phép Apple chính thức quảng bá macOS là UNIX theo nghĩa thương hiệu và tiêu chuẩn công nghiệp. Về mặt kỹ thuật, XNU + BSD userland khiến macOS tương thích POSIX và đáp ứng các yêu cầu để đạt chứng nhận.</p>
<hr />
<h3 id="heading-tai-sao-linux-va-freebsd-thuong-duoc-goi-unix-like-thay-vi-unix-da-dang-ky">Tại sao Linux và FreeBSD thường được gọi Unix-like thay vì UNIX đã đăng ký</h3>
<p>FreeBSD phát triển trực tiếp từ BSD và có nhiều đặc tính Unix; Linux là nhân mô phỏng hành vi Unix và tuân thủ rộng rãi các API POSIX nhưng không phát sinh trực tiếp từ mã Unix lịch sử. Nhiều bản phân phối Linux và các hệ BSD hiếm khi tham gia quy trình chứng nhận vì chi phí, tính phân mảnh của các bản phân phối và chi phí vận hành quy trình chứng nhận cho từng cấu hình cụ thể; một vài bản Linux thương mại (ví dụ một số distro doanh nghiệp tại Trung Quốc) có chứng nhận, nhưng đại đa số thì không.</p>
<hr />
<h3 id="heading-ket-luan">Kết luận</h3>
<p>macOS có nguồn gốc kỹ thuật rõ ràng từ NeXTSTEP và BSD, nhân XNU kết hợp Mach và các thành phần BSD tạo môi trường tương thích Unix, và Apple đã chủ động đưa macOS vào quy trình chứng nhận của The Open Group nên gọi macOS là "UNIX" theo tiêu chuẩn công nghiệp là chính xác. Tuy nhiên, khi so sánh mức "thành công", cần xác định tiêu chí đo lường vì Linux thống trị nhiều mặt của hạ tầng mặc dù thường không mang nhãn hiệu UNIX đã đăng ký.</p>
<h3 id="heading-tai-lieu-tham-khao">Tài liệu tham khảo</h3>
<ul>
<li><p>The Open Group — Single UNIX Specification and Register of UNIX Certified Products<br />  https://www.opengroup.org/unix</p>
</li>
<li><p>The Open Group — What is UNIX? (chương trình chứng nhận)<br />  https://www.opengroup.org/unix/what-is-unix</p>
</li>
<li><p>Apple Open Source — Darwin và mã nguồn XNU (Apple)<br />  https://opensource.apple.com</p>
</li>
<li><p>GitHub — xnu (Apple kernel mirror)<br />  https://github.com/apple/darwin-xnu</p>
</li>
<li><p>NeXTSTEP — Wikipedia (lịch sử và kiến trúc)<br />  https://en.wikipedia.org/wiki/NeXTSTEP</p>
</li>
<li><p>Mac OS X / macOS — Wikipedia (lịch sử phát triển từ NeXTSTEP tới macOS)<br />  https://en.wikipedia.org/wiki/MacOS</p>
</li>
<li><p>XNU kernel — tài liệu kỹ thuật và tham khảo (Apple Developer)<br />  https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/KernelProgramming.pdf</p>
</li>
<li><p>Unix (hệ điều hành) — Wikipedia (nguồn gốc Bell Labs, AT&amp;T)<br />  https://en.wikipedia.org/wiki/Unix</p>
</li>
<li><p>History of UNIX — Bell Labs (Ken Thompson, Dennis Ritchie)<br />  https://www.bell-labs.com/usr/dmr/www/hist.html</p>
</li>
<li><p>BSD (Berkeley Software Distribution) — Wikipedia (sự phát triển từ Unix)<br />  https://en.wikipedia.org/wiki/Berkeley_Software_Distribution</p>
</li>
<li><p>FreeBSD Project — trang chính thức (dòng BSD hiện đại)<br />  https://www.freebsd.org</p>
</li>
<li><p>Linux Foundation — thông tin chung về Linux và vị thế trong hạ tầng hiện đại<br />  https://www.linuxfoundation.org</p>
</li>
<li><p>"The Design of the UNIX Operating System" — Maurice J. Bach (sách tham khảo kinh điển)<br />  https://www.pearson.com/store/p/the-design-of-the-unix-operating-system/P100000187978</p>
</li>
<li><p>Lịch sử pháp lý và thương mại của Unix (bài phân tích) — “A History of UNIX” (sưu khảo)<br />  https://www.softwarepreservation.org/projects/UNIX/</p>
</li>
<li><p>Thảo luận về chứng nhận UNIX và Linux/FreeBSD (phân tích chi phí/chiến lược) — LWN.net (bài phân tích, ví dụ)<br />  https://lwn.net</p>
</li>
<li><p>Tài liệu tham khảo POSIX và tương thích (IEEE)<br />  https://standards.ieee.org/standard/1003_1-2017.html</p>
</li>
</ul>
<p>(Ghi chú: Nội dung bài viết được tạo bằng AI)</p>
<hr />
]]></content:encoded></item><item><title><![CDATA[🍫 Lindt Home of Chocolate: Thiên đường ngọt ngào giữa lòng Thụy Sĩ]]></title><description><![CDATA[Nếu bạn từng mơ về một thế giới nơi sôcôla tuôn chảy như dòng suối thần tiên, thì Lindt Home of Chocolate chính là nơi biến giấc mơ ấy thành hiện thực. Tọa lạc tại Kilchberg, ngoại ô Zurich, Thụy Sĩ – quê hương của những thanh sôcôla thượng hạng – tr...]]></description><link>https://giaosuvui.eu.org/lindt-home-of-chocolate-thien-duong-ngot-ngao-giua-long-thuy-si</link><guid isPermaLink="true">https://giaosuvui.eu.org/lindt-home-of-chocolate-thien-duong-ngot-ngao-giua-long-thuy-si</guid><category><![CDATA[Travel]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Wed, 15 Oct 2025 05:03:25 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/gNm9YigxOCI/upload/7aa374e1cd71fe715735caf9ca4a7648.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Nếu bạn từng mơ về một thế giới nơi sôcôla tuôn chảy như dòng suối thần tiên, thì Lindt Home of Chocolate chính là nơi biến giấc mơ ấy thành hiện thực. Tọa lạc tại Kilchberg, ngoại ô Zurich, Thụy Sĩ – quê hương của những thanh sôcôla thượng hạng – trung tâm trải nghiệm này là điểm đến không thể bỏ qua với bất kỳ ai yêu thích hương vị ngọt ngào.</p>
<h2 id="heading-kien-truc-hien-dai-trai-nghiem-dam-chat-co-tich">🏛️ Kiến trúc hiện đại, trải nghiệm đậm chất cổ tích</h2>
<p>Ngay từ khi bước vào, du khách sẽ bị choáng ngợp bởi thiết kế kiến trúc hiện đại, tinh tế và không gian mở rộng lớn. Trung tâm được xây dựng bởi Lindt &amp; Sprüngli – thương hiệu sôcôla danh tiếng thế giới – nhằm tôn vinh lịch sử, nghệ thuật và quy trình tạo ra những viên sôcôla hoàn hảo.</p>
<h2 id="heading-dai-phun-socola-khong-lo-bieu-tuong-cua-su-ky-dieu">🌊 Đài phun sôcôla khổng lồ – Biểu tượng của sự kỳ diệu</h2>
<p>Điểm nhấn nổi bật nhất chính là <strong>đài phun sôcôla cao 9 mét</strong>, nơi dòng sôcôla sánh mịn tuôn chảy không ngừng từ trên cao xuống một quả Lindt khổng lồ. Đây không chỉ là công trình nghệ thuật mà còn là biểu tượng của niềm đam mê và sự sáng tạo trong ngành sôcôla.</p>
<p>Du khách thường ví nơi đây như phiên bản đời thực của nhà máy sôcôla trong phim <em>Charlie and the Chocolate Factory</em> – đầy mê hoặc và kỳ ảo.</p>
<h2 id="heading-bao-tang-tuong-tac-hanh-trinh-kham-pha-tu-hat-cacao-den-thanh-socola">🧠 Bảo tàng tương tác – Hành trình khám phá từ hạt cacao đến thanh sôcôla</h2>
<p>Bên trong Lindt Home of Chocolate là một bảo tàng tương tác hiện đại, nơi bạn có thể:</p>
<ul>
<li><p>Tìm hiểu lịch sử sôcôla từ thời Maya và Aztec.</p>
</li>
<li><p>Khám phá quy trình sản xuất sôcôla từ hạt cacao đến thành phẩm.</p>
</li>
<li><p>Trải nghiệm công nghệ sản xuất tiên tiến và các bí mật nghề thủ công của Lindt.</p>
</li>
</ul>
<h2 id="heading-trai-nghiem-lam-socola-va-nem-thu-khong-gioi-han">🍬 Trải nghiệm làm sôcôla và nếm thử không giới hạn</h2>
<p>Bạn có thể tham gia lớp học làm sôcôla cùng các chuyên gia Lindt, tự tay tạo ra những viên kẹo mang dấu ấn cá nhân. Và tất nhiên, <strong>nếm thử sôcôla là phần không thể thiếu</strong> – từ sôcôla sữa, đen, trắng đến các hương vị đặc biệt.</p>
<h2 id="heading-cua-hang-lindt-lon-nhat-the-gioi">🎁 Cửa hàng Lindt lớn nhất thế giới</h2>
<p>Trước khi rời đi, đừng quên ghé thăm cửa hàng Lindt lớn nhất thế giới ngay trong khuôn viên. Bạn sẽ tìm thấy hàng trăm loại sôcôla, quà tặng và sản phẩm độc quyền chỉ có tại đây.</p>
<hr />
<h3 id="heading-ket-luan">✨ Kết luận</h3>
<p>Lindt Home of Chocolate không chỉ là một điểm tham quan, mà là một hành trình cảm xúc – nơi bạn được sống trong thế giới ngọt ngào, sáng tạo và đầy cảm hứng. Nếu bạn có dịp đến Thụy Sĩ, đừng bỏ lỡ cơ hội ghé thăm nơi này. Và nếu bạn đang lên kế hoạch cho một chuyến du lịch theo chủ đề sôcôla, mình có thể giúp bạn lên lịch trình chi tiết!</p>
]]></content:encoded></item><item><title><![CDATA[Chạy Linux từ VHD trên UEFI và cách boot từ USB hoặc ổ nội bộ]]></title><description><![CDATA[Chạy Linux từ VHD trên UEFI và cách boot từ USB hoặc ổ nội bộ
Bài viết này hướng dẫn từng bước cách tạo VHD trên Windows, cài Linux vào VHD bằng VM UEFI, làm cho VHD boot được bằng Ventoy, và hai phương án để boot Linux VHD trên máy thực: qua USB với...]]></description><link>https://giaosuvui.eu.org/chay-linux-tu-vhd-tren-uefi-va-cach-boot-tu-usb-hoac-o-noi-bo</link><guid isPermaLink="true">https://giaosuvui.eu.org/chay-linux-tu-vhd-tren-uefi-va-cach-boot-tu-usb-hoac-o-noi-bo</guid><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Thu, 02 Oct 2025 03:33:26 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/4Mw7nkQDByk/upload/722287c455ec4f25436fdd8c3d89d142.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="heading-chay-linux-tu-vhd-tren-uefi-va-cach-boot-tu-usb-hoac-o-noi-bo">Chạy Linux từ VHD trên UEFI và cách boot từ USB hoặc ổ nội bộ</h3>
<p>Bài viết này hướng dẫn từng bước cách tạo VHD trên Windows, cài Linux vào VHD bằng VM UEFI, làm cho VHD boot được bằng Ventoy, và hai phương án để boot Linux VHD trên máy thực: qua USB với Ventoy hoặc boot trực tiếp từ ổ nội bộ bằng Grub2Win. Thực hiện trên máy dự phòng hoặc sao lưu trước khi thao tác trên hệ thật.</p>
<hr />
<h3 id="heading-chuan-bi-va-yeu-cau">Chuẩn bị và yêu cầu</h3>
<ul>
<li><p><strong>Hệ điều hành chủ</strong>: Windows với quyền quản trị.</p>
</li>
<li><p><strong>Phần mềm ảo hóa</strong>: VMware hoặc VirtualBox hỗ trợ UEFI.</p>
</li>
<li><p><strong>Bộ cài Linux</strong>: ISO của bản phân phối Linux tương thích với UEFI.</p>
</li>
<li><p><strong>Công cụ</strong>: Ventoy, script Ventoy để đăng ký VHD; Grub2Win; VLink hoặc công cụ tương đương để tạo file .vlink; các gói grub cần thiết.</p>
</li>
<li><p><strong>Lưu trữ</strong>: không gian trống cho file VHD và USB để cài Ventoy.</p>
</li>
<li><p><strong>Sao lưu</strong>: sao lưu dữ liệu quan trọng trước khi thay đổi phân vùng hoặc EFI.</p>
</li>
</ul>
<hr />
<h3 id="heading-tao-vhd-tren-windows">Tạo VHD trên Windows</h3>
<ol>
<li><p>Mở <strong>Disk Management</strong> bằng quyền Administrator.</p>
</li>
<li><p>Chọn <strong>Action &gt; Create VHD</strong> và cấu hình: VHDX hoặc VHD, dung lượng (ví dụ 40G), kiểu cố định hoặc động, đường dẫn lưu.</p>
</li>
<li><p>Sau khi tạo, <strong>Initialize Disk</strong>, tạo bảng phân vùng GPT và tạo phân vùng EFI + phân vùng root Linux nếu muốn.</p>
</li>
<li><p>Nếu cần, <strong>detach</strong> VHD để VM có thể gắn file VHD trực tiếp.</p>
</li>
</ol>
<hr />
<h3 id="heading-gan-vhd-vao-vm-va-cai-linux-qua-uefi">Gắn VHD vào VM và cài Linux qua UEFI</h3>
<ol>
<li><p>Tạo VM mới với firmware <strong>UEFI</strong> bật.</p>
</li>
<li><p>Gắn ISO cài đặt Linux vào CD-ROM và gắn file VHD làm ổ đĩa mục tiêu.</p>
</li>
<li><p>Boot VM từ ISO ở chế độ UEFI và chạy trình cài đặt.</p>
</li>
<li><p>Khi phân vùng, chọn đúng thiết bị VHD và tạo ESP (EFI System Partition) trên VHD nếu trình cài đặt không tự tạo.</p>
</li>
</ol>
<hr />
<h3 id="heading-cai-linux-vao-vhd-va-toi-uu">Cài Linux vào VHD và tối ưu</h3>
<ul>
<li><p><strong>Không tạo phân vùng swap</strong> trên VHD nếu muốn di động hoặc dùng swap của host.</p>
</li>
<li><p><strong>Tắt atime</strong> để giảm ghi: thêm mount option noatime trong /etc/fstab cho root.</p>
</li>
<li><p>Đảm bảo <strong>GRUB-EFI</strong> được cài lên phân vùng EFI của VHD, không để hệ cài đặt ghi đè EFI của host. Nếu cần chroot sau cài để cài grub-efi vào VHD.</p>
</li>
</ul>
<p>Ví dụ /etc/fstab:</p>
<pre><code class="lang-plaintext">LABEL=root  /  ext4  defaults,noatime  0 1
</code></pre>
<hr />
<h3 id="heading-chuan-bi-de-vhd-boot-bang-ventoy-va-ho-tro-mbr">Chuẩn bị để VHD boot bằng Ventoy và hỗ trợ MBR</h3>
<ol>
<li><p>Trên hệ Linux trong VM, chạy <strong>script Ventoy VHD helper</strong> lên file VHD để tạo file .vlink metadata cho Ventoy.</p>
</li>
<li><p>Cài các gói cần thiết tạo GRUB cho hệ MBR nếu cần hỗ trợ MBR: ví dụ grub-pc-bin hoặc các gói grub-mkimage.</p>
</li>
<li><p>Tạo ảnh GRUB cho MBR nếu cần:</p>
</li>
</ol>
<pre><code class="lang-plaintext">grub-mkstandalone -O i386-pc -o /boot/grub/grub-mbr.img "boot/grub/grub.cfg=/boot/grub/grub.cfg"
</code></pre>
<ol start="4">
<li>Sao chép file VHD và file .vlink tương ứng vào USB Ventoy hoặc đặt .vlink trên USB trỏ tới VHD nằm trên ổ nội bộ.</li>
</ol>
<hr />
<h3 id="heading-linux-vhd-tren-o-noi-bo-nhung-boot-tu-usb-ventoy">Linux VHD trên ổ nội bộ nhưng boot từ USB Ventoy</h3>
<ul>
<li><p><strong>Cài VLink</strong> trong Linux nếu VHD để trên ổ nội bộ và bạn muốn boot bằng Ventoy USB. VLink tạo file .vlink mô tả vị trí VHD để Ventoy có thể khởi động.</p>
</li>
<li><p><strong>Chuẩn bị USB</strong>: cài Ventoy lên USB, đặt file .vlink lên thư mục gốc USB hoặc copy VHD sang USB tùy chọn.</p>
</li>
<li><p><strong>Boot</strong>: khởi động máy từ USB Ventoy, chọn mục VHD đã cấu hình trên menu Ventoy để nạp Linux từ VHD trên ổ nội bộ.</p>
</li>
</ul>
<hr />
<h3 id="heading-linux-vhd-tren-o-noi-bo-va-boot-truc-tiep-tu-o-noi-bo-bang-grub2win">Linux VHD trên ổ nội bộ và boot trực tiếp từ ổ nội bộ bằng Grub2Win</h3>
<ol>
<li><p><strong>Cài Grub2Win</strong> trên Windows để quản lý menu boot.</p>
</li>
<li><p>Grub2Win không chainload file .vlink trực tiếp, cần cấu hình để chainload file .vhd hoặc chainload GRUB EFI nằm trên phân vùng EFI.</p>
</li>
<li><p>Dùng chế độ debug của GRUB để kiểm tra: nhấn <code>c</code> vào prompt để vào command line, dùng <code>ls</code> để liệt kê phân vùng và xác định đường dẫn tới file VHD.</p>
</li>
<li><p>Ví dụ thao tác debug và loopback trong GRUB:</p>
</li>
</ol>
<pre><code class="lang-plaintext"># vào command line GRUB
ls
set root=(hd0,gpt2)
loopback loop (hd0,gpt2)/linux.vhd
ls (loop)/
</code></pre>
<ol start="5">
<li>Tạo entry chainload trong Grub2Win trỏ tới file VHD hoặc tới GRUB-EFI bên trong VHD. Nếu cần truyền parameter vlink, dùng phương pháp chainload tới EFI/GRUB trong VHD rồi cho GRUB bên trong xử lý.</li>
</ol>
<p>Ví dụ entry mẫu trong grub khi loopback:</p>
<pre><code class="lang-plaintext">menuentry "Linux VHD" {
  set root=(hd0,gpt2)
  loopback loop (hd0,gpt2)/linux.vhd
  set root=(loop)
  linux /vmlinuz root=/dev/mapper/cryptroot ro
  initrd /initrd.img
  boot
}
</code></pre>
<hr />
<h3 id="heading-go-loi-va-kiem-tra">Gỡ lỗi và kiểm tra</h3>
<ul>
<li><p>Dùng các lệnh GRUB <code>ls</code>, <code>set</code>, <code>insmod</code>, <code>loopback</code> để xác minh phân vùng, đường dẫn và nội dung VHD.</p>
</li>
<li><p>Kiểm tra tồn tại của EFI loader trong VHD: <code>/EFI/BOOT/BOOTX64.EFI</code> hoặc <code>/EFI/&lt;distro&gt;/shimx64.efi</code>.</p>
</li>
<li><p>Nếu kernel dừng sớm, kiểm tra kernel cmdline và initramfs, bổ sung driver cần thiết cho nhiều bộ điều khiển phần cứng nếu định chạy trên nhiều máy.</p>
</li>
</ul>
<hr />
<h3 id="heading-bao-mat-va-tinh-di-dong">Bảo mật và tính di động</h3>
<ul>
<li><p>Mã hóa VHD bằng LUKS nếu chứa dữ liệu nhạy cảm.</p>
</li>
<li><p>Đảm bảo initramfs của Linux chứa driver cho nhiều trình điều khiển để tăng khả năng boot trên phần cứng khác nhau.</p>
</li>
<li><p>Kiểm tra checksum khi di chuyển VHD giữa các thiết bị.</p>
</li>
</ul>
<hr />
<h3 id="heading-ket-luan">Kết luận</h3>
<p>Tạo Linux trên VHD và boot ở chế độ UEFI thực hiện được khi bạn cài Linux vào VHD có phân vùng EFI và cấu hình GRUB đúng. Giải pháp tiện nhất để di động là dùng Ventoy + .vlink trên USB. Boot trực tiếp từ ổ nội bộ yêu cầu Grub2Win và thao tác loopback/chainload cẩn thận để đảm bảo khởi động ổn định.</p>
]]></content:encoded></item><item><title><![CDATA[🛠️ Cách Đổi Tên Tệp Hệ Thống Trong Windows Bằng takeown, icacls, và rename]]></title><description><![CDATA[Việc đổi tên các tệp trong thư mục System32 của Windows không đơn giản như nhấp chuột phải rồi chọn “Đổi tên”. Những tệp này được hệ điều hành bảo vệ để tránh bị thay đổi ngoài ý muốn hoặc do phần mềm độc hại. Tuy nhiên, nếu bạn là người dùng nâng ca...]]></description><link>https://giaosuvui.eu.org/cach-doi-ten-tep-he-thong-trong-windows-bang-takeown-icacls-va-rename</link><guid isPermaLink="true">https://giaosuvui.eu.org/cach-doi-ten-tep-he-thong-trong-windows-bang-takeown-icacls-va-rename</guid><category><![CDATA[tips]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Tue, 23 Sep 2025 08:46:55 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/hXrPSgGFpqQ/upload/92bceab422bdb328d008f10cddcd6df2.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Việc đổi tên các tệp trong thư mục <code>System32</code> của Windows không đơn giản như nhấp chuột phải rồi chọn “Đổi tên”. Những tệp này được hệ điều hành bảo vệ để tránh bị thay đổi ngoài ý muốn hoặc do phần mềm độc hại. Tuy nhiên, nếu bạn là người dùng nâng cao và biết rõ mình đang làm gì, bạn có thể vượt qua các lớp bảo vệ này bằng các công cụ dòng lệnh tích hợp sẵn.</p>
<p>Trong bài viết này, mình sẽ hướng dẫn bạn cách đổi tên một tệp hệ thống—ví dụ như <code>file.exe</code>—trong thư mục <code>System32</code> bằng ba lệnh mạnh mẽ: <code>takeown</code>, <code>icacls</code>, và <code>rename</code>.</p>
<h3 id="heading-canh-bao-truoc-khi-thuc-hien">⚠️ Cảnh Báo Trước Khi Thực Hiện</h3>
<p>Việc chỉnh sửa tệp hệ thống có thể khiến máy tính hoạt động không ổn định hoặc không khởi động được. Hãy đảm bảo bạn đã sao lưu hoặc tạo điểm khôi phục trước khi thực hiện.</p>
<h3 id="heading-huong-dan-tung-buoc">🔧 Hướng Dẫn Từng Bước</h3>
<p>Giả sử bạn muốn đổi tên <code>file.exe</code> trong <code>D:\Windows\System32</code> thành <code>file.exe.bck</code>. Đây là cách thực hiện:</p>
<h4 id="heading-1-mo-command-prompt-voi-quyen-quan-tri">1. <strong>Mở Command Prompt với quyền Quản trị</strong></h4>
<ul>
<li>Nhấn <code>Win + X</code> và chọn <strong>Command Prompt (Admin)</strong> hoặc <strong>Windows Terminal (Admin)</strong>.</li>
</ul>
<h4 id="heading-2-chiem-quyen-so-huu-tep">2. <strong>Chiếm quyền sở hữu tệp</strong></h4>
<pre><code class="lang-plaintext">takeown /f D:\Windows\System32\file.exe
</code></pre>
<p>Lệnh này sẽ chuyển quyền sở hữu tệp sang tài khoản người dùng hiện tại của bạn.</p>
<h4 id="heading-3-cap-quyen-truy-cap-day-du-cho-nhom-administrators">3. <strong>Cấp quyền truy cập đầy đủ cho nhóm Administrators</strong></h4>
<pre><code class="lang-plaintext">icacls D:\Windows\System32\file.exe /grant administrators:F
</code></pre>
<p>Lệnh này cho phép nhóm Quản trị viên toàn quyền chỉnh sửa tệp.</p>
<ol start="4">
<li><strong>Đổi tên tệp</strong></li>
</ol>
<pre><code class="lang-plaintext">rename D:\Windows\System32\file.exe file.exe.bck
</code></pre>
<p>Lệnh này đổi tên tệp thành <code>file.exe.bck</code>, giúp bạn sao lưu hoặc vô hiệu hóa tạm thời.</p>
<h3 id="heading-vi-sao-nhung-lenh-nay-hieu-qua">🧠 Vì Sao Những Lệnh Này Hiệu Quả</h3>
<ul>
<li><p><code>takeown</code> giúp bạn chiếm quyền sở hữu tệp.</p>
</li>
<li><p><code>icacls</code> cho phép bạn chỉnh sửa quyền truy cập.</p>
</li>
<li><p><code>rename</code> là bước cuối cùng để đổi tên tệp.</p>
</li>
</ul>
<h3 id="heading-mot-so-truong-hop-ung-dung">✅ Một Số Trường Hợp Ứng Dụng</h3>
<ul>
<li><p>Thay thế tiện ích hệ thống</p>
</li>
<li><p>Sao lưu các tệp thực thi quan trọng trước khi chỉnh sửa</p>
</li>
<li><p>Vô hiệu hóa tạm thời các thành phần hệ thống không mong muốn (cần thận trọng)</p>
</li>
</ul>
<h3 id="heading-meo-khac-phuc-su-co">🧩 Mẹo Khắc Phục Sự Cố</h3>
<ul>
<li><p>Nếu gặp lỗi “Access Denied”, hãy kiểm tra lại xem bạn đã mở Command Prompt với quyền Admin chưa.</p>
</li>
<li><p>Đảm bảo tệp không đang được sử dụng. Có thể cần khởi động vào Chế độ An toàn hoặc môi trường khôi phục.</p>
</li>
</ul>
]]></content:encoded></item><item><title><![CDATA[Tài liệu học từ Google]]></title><description><![CDATA[Một số tài liệu học hay từ Google:
Kỹ nghệ phần mềm: https://abseil.io/resources/swe-book/html/toc.html
An ninh mạng: https://google.github.io/building-secure-and-reliable-systems/raw/toc.html
Vận hành hệ thống: https://sre.google/sre-book/table-of-c...]]></description><link>https://giaosuvui.eu.org/tai-lieu-hoc-tu-google</link><guid isPermaLink="true">https://giaosuvui.eu.org/tai-lieu-hoc-tu-google</guid><category><![CDATA[Collections]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Fri, 12 Sep 2025 09:24:29 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/eMemmpUojlw/upload/d00a3748425c50d38fa265f854197995.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Một số tài liệu học hay từ Google:</p>
<p>Kỹ nghệ phần mềm: <a target="_blank" href="https://abseil.io/resources/swe-book/html/toc.html">https://abseil.io/resources/swe-book/html/toc.html</a></p>
<p>An ninh mạng: <a target="_blank" href="https://google.github.io/building-secure-and-reliable-systems/raw/toc.html">https://google.github.io/building-secure-and-reliable-systems/raw/toc.html</a></p>
<p>Vận hành hệ thống: <a target="_blank" href="https://sre.google/sre-book/table-of-contents/">https://sre.google/sre-book/table-of-contents/</a></p>
<p>(Nguồn: Thai Duong)</p>
]]></content:encoded></item><item><title><![CDATA[Khi nghĩ rằng bạn biết, nhưng vẫn chưa biết đủ, vậy bạn có biết về 5 mức của việc biết ?]]></title><description><![CDATA[Theo phân loại “năm mức ngu dốt” của anh Ngô Quang Hưng dẫn lại từ Phillip G. Armour (OI viết tắt của Order of Ignorance):

4OI - siêu dốt: chữ này tôi dịch bừa từ chữ meta-ignorance, vì meta-physics người ta dịch là siêu hình (học). Ở mức dốt này th...]]></description><link>https://giaosuvui.eu.org/khi-nghi-rang-ban-biet-nhung-van-chua-biet-du-vay-ban-co-biet-ve-5-muc-cua-viec-biet</link><guid isPermaLink="true">https://giaosuvui.eu.org/khi-nghi-rang-ban-biet-nhung-van-chua-biet-du-vay-ban-co-biet-ve-5-muc-cua-viec-biet</guid><category><![CDATA[Collections]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Fri, 12 Sep 2025 09:18:52 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/82TpEld0_e4/upload/b99a7e2fe35160bbe81a9c915300e2ef.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Theo phân loại “<a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">năm mức ngu dốt</a>” <a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">của anh Ngô Qu</a>ang Hưng dẫn lại từ Phillip G. Armour (OI viết tắt của Order of Ignorance):</p>
<blockquote>
<p><strong>4OI - siêu dốt</strong>: chữ này tôi <a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">dịch bừa từ ch</a>ữ meta-ignorance, vì meta-physics người ta dịch là siêu hình (học). Ở mức dốt này thì ta không biết gì về năm mức ngu dốt.</p>
<p><strong>3OI - thiếu quá trình</strong>: ở mứ<a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">c dốt này thì t</a>a thiếu một quá trình cụ thể để khám phá ra rằng mình đang không biết rằng mình đang không biết về X. Nói cách khác, ở mức dốt này thì ta không biết cách nào để tìm ra các thứ mà ta không biết rằng ta không biết :-).</p>
<p><strong>2OI - thiếu nhận thức</strong>: ở mứ<a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">c dốt này thì t</a>a không biết là ta không biết gì về X. Hiển nhiên là ta không thể cho ví dụ về 2OI nào! Tuy nhiên, thỉnh thoảng đọc sách đọc báo, đọc blog KHMT (!), tôi có thể tìm ra được nhiều thứ chưa bao giờ biết là mình không biết, và như thế tôi chuyển các thứ đó lên 1OI. Dù rằng với cơ học lượng tử nói chung thì tôi ở mức 1OI, chắc chắn là có các đối tượng cụ thể nào đó trong cơ học lượng tử mà tôi ở mức 2OI.</p>
<p><strong>1OI - thiếu kiến thức</strong>: để … <a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">đạt được mức d</a>ốt này thì ta phải biết là ta thiếu kiến thức về X. Ví dụ: tôi biết là tôi không biết gì về cơ học lượng tử. Đạt được mức dốt này cũng đã tốt, vì nếu có nhu cầu tôi có thể đi tìm sách vở tài liệu về cơ học lượng tử để học thêm.</p>
<p><strong>0OI - không dốt</strong>: để đạt mức <a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">này ta phải bi</a>ết X và chứng minh được rằng ta biết X. Ví dụ: tôi biết viết blog!</p>
</blockquote>
<p>Các mô hình GPT khiến ai cũng tưởng <a target="_blank" href="https://vnhacker.substack.com/p/i-am-that-stupid">mình ở mức 0OI</a>: chuyện gì cũng có lời giải, đọc rất xuôi tai. Ai cũng ngỡ đã hiểu, hóa ra chỉ mới đọc hiểu.</p>
<p>(Nguồn: trích đoạn Thai Duong)</p>
]]></content:encoded></item><item><title><![CDATA[Hướng dẫn sử dụng Microsoft Dev Tunnel - Azure]]></title><description><![CDATA[Giới thiệu Microsoft Dev Tunnel - Azure
Microsoft Dev Tunnel là giải pháp mở một đường hầm (tunnel) an toàn từ máy local lên Internet, giúp ban giám khảo hoặc khán giả truy cập trực tiếp vào ứng dụng hoặc API mà bạn đang chạy, không cần cấu hình rout...]]></description><link>https://giaosuvui.eu.org/huong-dan-su-dung-microsoft-dev-tunnel-azure</link><guid isPermaLink="true">https://giaosuvui.eu.org/huong-dan-su-dung-microsoft-dev-tunnel-azure</guid><category><![CDATA[tips]]></category><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Fri, 05 Sep 2025 10:19:28 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1757067427682/a660cfe1-465d-4564-908d-7c4e95c3f20f.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-gioi-thieu-microsoft-dev-tunnel-azure">Giới thiệu Microsoft Dev Tunnel - Azure</h2>
<p>Microsoft Dev Tunnel là giải pháp mở một đường hầm (tunnel) an toàn từ máy local lên Internet, giúp ban giám khảo hoặc khán giả truy cập trực tiếp vào ứng dụng hoặc API mà bạn đang chạy, không cần cấu hình router hay VPN phức tạp.</p>
<h3 id="heading-loi-ich-chinh">Lợi ích chính</h3>
<ul>
<li><p>Cấp truy cập từ xa an toàn, không phải mở port trực tiếp trên router.</p>
</li>
<li><p>Loại bỏ bước NAT/port forwarding.</p>
</li>
<li><p>Tương thích với mọi loại ứng dụng: .NET, Node.js, Python…</p>
</li>
</ul>
<h2 id="heading-yeu-cau-amp-chuan-bi-moi-truong">Yêu cầu &amp; chuẩn bị môi trường</h2>
<h3 id="heading-yeu-cau-he-thong">Yêu cầu hệ thống</h3>
<ul>
<li><p>Hệ điều hành: Windows, macOS hoặc Linux.</p>
</li>
<li><p>.NET SDK 6.0+ (dùng chung cho CLI và thư viện Dev Tunnel).</p>
</li>
<li><p>Tài khoản Azure (miễn phí hoặc trả phí).</p>
</li>
<li><p>Kết nối Internet ổn định.</p>
</li>
</ul>
<h3 id="heading-cai-dat-cong-cu">Cài đặt công cụ</h3>
<ol>
<li><p><strong>Azure CLI</strong></p>
<ul>
<li><p>Windows: tải về và chạy installer từ <a target="_blank" href="http://docs.microsoft.com">docs.microsoft.com</a>.</p>
</li>
<li><p>macOS/Linux:</p>
<pre><code class="lang-bash">  curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
</code></pre>
</li>
</ul>
</li>
<li><p><strong>Visual Studio Code</strong> + extension <strong>Dev Tunnel</strong></p>
<ul>
<li>Mở VS Code → Marketplace → tìm “Dev Tunnel” → Install.</li>
</ul>
</li>
</ol>
<h2 id="heading-huong-dan-su-dung-chi-tiet">Hướng dẫn sử dụng chi tiết</h2>
<h3 id="heading-buoc-1-dang-nhap-azure-tren-cli">Bước 1: Đăng nhập Azure trên CLI</h3>
<pre><code class="lang-bash">az login
</code></pre>
<p>Lệnh này sẽ mở trình duyệt để bạn xác thực, sau đó CLI ghi nhớ thông tin đăng nhập.</p>
<h3 id="heading-buoc-2-tao-dev-tunnel">Bước 2: Tạo Dev Tunnel</h3>
<pre><code class="lang-bash">az network dev-tunnel create \
  --name my-demo-tunnel \
  --port 3000 \
  --resource-group DemoRG \
  --location eastus \
  --auth-type aad
</code></pre>
<p>Trong đó:</p>
<ul>
<li><p><code>--name</code>: tên định danh cho tunnel.</p>
</li>
<li><p><code>--port</code>: cổng local ứng dụng đang listen.</p>
</li>
<li><p><code>--resource-group</code>: nhóm tài nguyên Azure chứa tunnel.</p>
</li>
<li><p><code>--location</code>: vùng (region) Azure dùng hosting tunnel.</p>
</li>
<li><p><code>--auth-type</code>: phương thức xác thực (aad, none).</p>
</li>
</ul>
<h3 id="heading-buoc-3-khoi-dong-va-chia-se-url">Bước 3: Khởi động và chia sẻ URL</h3>
<p>Sau khi chạy lệnh, CLI trả về URL công khai:</p>
<pre><code class="lang-plaintext">https://my-demo-tunnel.eastus.dev.azure.com
</code></pre>
<p>Copy URL và gửi cho ban giám khảo hoặc khán giả để truy cập trực tiếp nội dung demo.</p>
<h3 id="heading-buoc-4-dung-va-xoa-dev-tunnel">Bước 4: Dừng và xóa Dev Tunnel</h3>
<pre><code class="lang-bash">az network dev-tunnel delete --name my-demo-tunnel --resource-group DemoRG
</code></pre>
<p>Lệnh này giúp bạn đóng kết nối và giải phóng tài nguyên, đảm bảo tính bảo mật.</p>
<h2 id="heading-giai-thich-cac-tham-so-can-chu-y">Giải thích các tham số cần chú ý</h2>
<div class="hn-table">
<table>
<thead>
<tr>
<td>Tham số</td><td>Mô tả</td><td>Giá trị mẫu</td></tr>
</thead>
<tbody>
<tr>
<td><code>--name</code></td><td>Tên định danh duy nhất cho tunnel</td><td><code>my-demo-tunnel</code></td></tr>
<tr>
<td><code>--port</code></td><td>Cổng trên máy local mà ứng dụng lắng nghe</td><td><code>3000</code></td></tr>
<tr>
<td><code>--resource-group</code></td><td>Nhóm tài nguyên Azure chứa tunnel</td><td><code>DemoRG</code></td></tr>
<tr>
<td><code>--location</code></td><td>Vùng Azure nơi tunnel được host</td><td><code>eastus</code></td></tr>
<tr>
<td><code>--auth-type</code></td><td>Phương thức xác thực: <code>aad</code> (Azure AD), <code>none</code> (không yêu cầu đăng nhập)</td><td><code>aad</code></td></tr>
<tr>
<td><code>--ttl</code></td><td>Thời gian tồn tại của tunnel (giờ), sau đó tunnel tự hết hạn</td><td><code>24</code></td></tr>
<tr>
<td><code>--tags</code></td><td>Gắn metadata cho tunnel, tiện quản lý và lọc</td><td><code>env=demo</code></td></tr>
<tr>
<td><code>--subscription</code></td><td>ID hoặc tên subscription Azure để tạo tunnel</td><td><code>MySubID</code></td></tr>
<tr>
<td><code>--public-port</code></td><td>Cổng công khai nếu cần map khác cổng ngoài Internet</td><td><code>443</code></td></tr>
<tr>
<td><code>--protocol</code></td><td>Giao thức: <code>http</code> hoặc <code>tcp</code></td><td><code>http</code></td></tr>
</tbody>
</table>
</div><blockquote>
<p>Lưu ý: Điều chỉnh các giá trị cho phù hợp với môi trường và nhu cầu demo.</p>
</blockquote>
<h2 id="heading-cac-luu-y-khi-demo-san-pham">Các lưu ý khi demo sản phẩm</h2>
<ul>
<li><p>Chỉ chia sẻ URL với người cần xem, tránh công khai trên kênh công cộng.</p>
</li>
<li><p>Đảm bảo máy local đủ tài nguyên (RAM/CPU) để chịu tải khi nhiều người truy cập.</p>
</li>
<li><p>Chuẩn bị sẵn phương án dự phòng (ví dụ: ngrok) nếu gặp sự cố kết nối.</p>
</li>
</ul>
<h2 id="heading-ket-luan">Kết luận</h2>
<p>Với Microsoft Dev Tunnel, bạn chỉ cần vài lệnh đơn giản để chia sẻ ứng dụng đang chạy local một cách an toàn và chuyên nghiệp. Hãy thực hành trước, kiểm tra mọi tham số kỹ lưỡng và chúc bạn thành công trong cuộc thi cũng như buổi thuyết trình sản phẩm!</p>
]]></content:encoded></item><item><title><![CDATA[Welcome to Our New Website]]></title><description><![CDATA[Introduction]]></description><link>https://giaosuvui.eu.org/welcome-to-our-new-website</link><guid isPermaLink="true">https://giaosuvui.eu.org/welcome-to-our-new-website</guid><dc:creator><![CDATA[GSV]]></dc:creator><pubDate>Sat, 12 Jul 2025 09:33:24 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/MNd-Rka1o0Q/upload/d257527294265d5e1e89d264097fcdc9.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-introduction">Introduction</h2>
]]></content:encoded></item></channel></rss>