Liên hệProfile
Danh mục

Mục Lục

    Cách sử dụng lệnh mkdir trong Linux để quản lý thư mục hiệu quả

    Nguyễn Hưng

    Ngày đăng:

    14/01/2026

    Cập nhật lần cuối:

    14/01/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    14/01/2026

    Cập nhật lần cuối:

    14/01/2026

    Mục lục

    Lệnh mkdir là lệnh dùng để tạo thư mục mới trong hệ thống file trên Linux/Unix. Đây là công cụ cơ bản để xây dựng và tổ chức cấu trúc thư mục, đặc biệt quan trọng trong các script cài đặt, deploy và tự động hóa. Trong bài viết này, mình sẽ hướng dẫn cách sử dụng lệnh mkdir để tối ưu hóa quy trình vận hành và tự động hóa thao tác tạo thư mục hiệu quả.

    Những điểm chính

    • Khái niệm: Hiểu rõ mkdir là lệnh dùng để tạo thư mục mới.
    • Lợi ích: Nắm được các lợi ích chính như tối ưu hóa quy trình, đảm bảo tính ổn định cho script và tăng cường bảo mật.
    • Các tùy chọn của lệnh mkdir: Có được một bảng tra cứu nhanh các tùy chọn quan trọng, giúp bạn tùy chỉnh việc tạo thư mục một cách linh hoạt.
    • Cách tối ưu khi dùng trong script: Biết được tổ hợp lệnh mkdir -pv là giải pháp tối ưu để tạo thư mục trong các script tự động hóa.
    • Các ứng dụng thực tế: Thành thạo cách sử dụng lệnh mkdir trong các tình huống thực tế, từ tạo thư mục cơ bản, phân cấp, đến thiết lập quyền và tạo hàng loạt.
    • Hướng dẫn chuẩn hóa môi trường Deploy: Học cách sử dụng tổ hợp mkdir -pv -m để chuẩn hóa và bảo mật môi trường triển khai ứng dụng.
    • Lưu ý: Nắm được các lưu ý quan trọng để sử dụng mkdir một cách an toàn và hiệu quả, tránh các lỗi phổ biến liên quan đến quyền hạn và ký tự đặc biệt.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến lệnh mkdir trong Linux.

    Lệnh mkdir là gì?

    Lệnh mkdir (viết tắt của make directory) trong Linux được dùng để tạo mới một hoặc nhiều thư mục trong hệ thống file của hệ điều hành. Lệnh này hoạt động trong giao diện dòng lệnh và cho phép tạo các thư mục rỗng cũng như đặt quyền truy cập cho chúng ngay tại thời điểm tạo.

    Để sử dụng lệnh mkdir, người dùng phải có quyền tạo thư mục trong thư mục cha, nếu không sẽ nhận được thông báo lỗi “permission denied”. Cú pháp lệnh mkdir như sau:

    mkdir [TÙY_CHỌN] TÊN_THƯ_MỤC

    Trong đó:

    • mkdir: Là lệnh chính được sử dụng để tạo thư mục.
    • [TÙY_CHỌN]: Là các tùy chọn bổ sung để điều chỉnh hành động của lệnh.
    • TÊN_THƯ_MỤC: Là tên của thư mục bạn muốn tạo, có thể là một hoặc nhiều tên.
    Lệnh mkdir là một lệnh quan trọng trong Linux, viết tắt của make directory
    Lệnh mkdir là một lệnh quan trọng trong Linux, viết tắt của make directory

    Những lợi ích khi sử dụng lệnh mkdir

    Dưới đây là các lợi ích chính khi sử dụng lệnh mkdir trong quản trị hệ thống Linux:

    • Tối ưu hóa quy trình khởi tạo: Sử dụng tùy chọn -p cho phép bạn xây dựng toàn bộ cấu trúc thư mục phân cấp sâu nhanh chóng trong một câu lệnh duy nhất.
    • Đảm bảo tính ổn định cho Script: Các file lệnh tự động hóa hoạt động liên tục mà không bị lỗi gián đoạn do thư mục đích đã tồn tại trước đó.
    • Tăng cường bảo mật: Hệ thống cho phép bạn thiết lập chính xác quyền truy cập ngay tại thời điểm khởi tạo thông qua tham số -m, loại bỏ rủi ro bảo mật giữa các bước cấu hình.
    • Nâng cao hiệu suất thao tác: Bạn có thể tạo hàng loạt thư mục cùng cấp hoặc theo mẫu phức tạp một cách nhanh chóng bằng cách kết hợp với tính năng mở rộng của Shell.
    • Hỗ trợ giám sát và kiểm toán: Quy trình vận hành trở nên minh bạch hơn khi bạn sử dụng chế độ -v để ghi lại nhật ký chính xác các thư mục vừa được tạo thành công.
    Những lợi ích khi sử dụng lệnh mkdir
    Những lợi ích khi sử dụng lệnh mkdir

    Các tùy chọn của lệnh mkdir

    Tùy chọnChức năng kỹ thuậtVí dụ minh họa
    -pParents: Tạo thư mục đệ quy (nested), bao gồm cả thư mục cha nếu chưa có.mkdir -p /home/user/project/src
    -vVerbose: Hiển thị chi tiết quá trình tạo thư mục ra màn hình (stdout).mkdir -v logs
    -mMode: Thiết lập quyền truy cập (permissions) ngay thời điểm tạo (tương tự chmod).mkdir -m 755 backup
    –helpHiển thị tài liệu hướng dẫn nhanh.mkdir --help
    –versionKiểm tra phiên bản của tiện ích.mkdir --version

    Cách tối ưu khi dùng mkdir trong script

    Để đảm bảo tính ổn định cho các script cài đặt hoặc triển khai, bạn nên ưu tiên sử dụng tổ hợp tùy chọn thay vì gọi lệnh mkdir mặc định. Cú pháp như sau:

    mkdir -pv /path/to/new/folder

    Trong đó:

    • -p (Parents): Tự động tạo toàn bộ các thư mục cha còn thiếu trong đường dẫn và không báo lỗi nếu thư mục đích đã tồn tại, giúp script mang tính idempotent và không bị gián đoạn.
    • -v (Verbose): Hiển thị thông báo xác nhận cho từng thư mục được tạo, hỗ trợ quá trình debug và ghi log trong môi trường vận hành thực tế.

    1. Tạo thư mục cơ bản

    Để tạo một thư mục đơn lẻ, bạn thực hiện lệnh sau:

    mkdir my_folder
    Tạo thư mục cơ bản
    Tạo thư mục cơ bản

    Lưu ý

    Lệnh sẽ báo lỗi nếu tên thư mục đã được sử dụng.

    2. Tạo cấu trúc thư mục phân cấp

    Thay vì phải dùng lệnh cd để di chuyển và tạo từng cấp, bạn sử dụng tùy chọn -p để xây dựng đường dẫn trong một lệnh duy nhất. Cú pháp như sau:

    mkdir -p project/src/components
    Tạo cấu trúc thư mục phân cấp
    Tạo cấu trúc thư mục phân cấp

    3. Tạo thư mục và hiển thị tên

    Bạn sử dụng tùy chọn -v để nhận phản hồi trực quan, xác nhận rằng thư mục đã được tạo thành công. Cú pháp như sau:

    mkdir -v logs

    Kết quả sẽ hiển thị thông báo: mkdir: created directory 'logs'

    Giám sát quá trình thực thi
    Giám sát quá trình thực thi

    4. Thiết lập bảo mật ngay từ đầu

    Lệnh mkdir -m 750 private_data dùng để tạo thư mục private_data và đồng thời thiết lập quyền truy cập ngay tại thời điểm tạo. Bạn dùng lệnh sau để thực hiện:

    mkdir -m 750 private_data

    Ý nghĩa quyền 750:

    • Chủ sở hữu (owner): Có toàn quyền đọc, ghi, thực thi (7).​
    • Nhóm (group): Có quyền đọc và thực thi, không được ghi (5).​
    • Người khác (others): Không có bất kỳ quyền truy cập nào (0).​
    Tạo thư mục private_data và đồng thời thiết lập quyền truy cập
    Tạo thư mục private_data và đồng thời thiết lập quyền truy cập

    Lệnh trên sẽ đảm bảo thư mục chứa dữ liệu quan trọng được bảo vệ đúng quyền ngay từ đầu, không cần chạy chmod thêm bước sau đó.​ Ngoài ra, lệnh cũng giúp giảm rủi ro cấu hình sai permission trong các hệ thống lưu trữ như private_data, đặc biệt hữu ích trong môi trường Production.​

    5. Tạo hàng loạt thư mục

    Lệnh sau dùng để tạo hàng loạt thư mục con input, output, temp bên trong thư mục data:

    mkdir -p data/{input,output,temp}
    Tạo hàng loạt thư mục
    Tạo hàng loạt thư mục

    6. Tích hợp với date để tạo folder theo ngày

    Lệnh dưới đây dùng để tạo thư mục backup mới theo ngày hiện tại:

    mkdir -p backups/$(date +%Y-%m-%d)
    Tự động hóa Backup theo thời gian
    Tự động hóa Backup theo thời gian

    Cụ thể:

    • -p: Tự động tạo thư mục backups nếu chưa tồn tại và không báo lỗi nếu đã có.​
    • $(date +%Y-%m-%d): Sinh chuỗi ngày theo định dạng YYYY-MM-DD, dùng làm tên thư mục con.​

    Lệnh trên thường được ứng dụng cho các cron job backup tự động hằng ngày, giúp tổ chức dữ liệu sao lưu theo từng ngày, dễ quản lý và khôi phục.

    7. Kết hợp với lệnh find

    Để tìm tất cả các thư mục có tên bắt đầu bằng module rồi tự động tạo thư mục backup tương ứng cho mỗi thư mục đó, bạn thực thi lệnh sau:

    find . -type d -name "module*" -exec mkdir -p {}_backup \;
    Tìm tất cả các thư mục có tên bắt đầu bằng module
    Tìm tất cả các thư mục có tên bắt đầu bằng module

    Hướng dẫn chuẩn hóa môi trường deploy

    Để nâng cao tính ổn định và bảo mật cho các script triển khai ứng dụng, bạn thực thi lệnh sau:

    mkdir -pv -m 750 /var/www/project/{logs,tmp}

    Trong đó:

    • -p: Đảm bảo lệnh không bị thất bại khi /var/www/project chưa tồn tại hoặc các thư mục đích đã có sẵn, giúp script triển khai giữ được tính ổn định.​
    • -v: Ghi lại thông tin chi tiết về các thư mục được tạo, hỗ trợ việc kiểm tra và truy vết khi cần.​
    • -m 750: Thiết lập quyền chặt chẽ cho logs và tmp ngay từ thời điểm tạo, chỉ cho phép owner toàn quyền, group truy cập hạn chế và chặn hoàn toàn các user khác, tăng cường bảo mật cho môi trường deploy.​

    Những lưu ý khi sử dụng lệnh mkdir

    Dưới đây là các lưu ý quan trọng khi sử dụng lệnh mkdir trong quản trị hệ thống Linux:

    • Giới hạn tài nguyên Inode: Lệnh mkdir sẽ thất bại nếu phân vùng đĩa cứng đã cạn kiệt số lượng Inode cho phép, ngay cả khi dung lượng lưu trữ vẫn còn trống.
    • Kiểm soát quyền truy cập mặc định: Bạn cần lưu ý rằng quyền hạn của thư mục mới sẽ phụ thuộc vào giá trị umask hiện tại của hệ thống nếu không sử dụng tùy chọn -m để thiết lập cụ thể.
    • Xử lý xung đột định danh: Hệ thống sẽ báo lỗi và từ chối tạo thư mục nếu tại vị trí đích đã tồn tại một tập tin (file) thường có cùng tên gọi.
    • Tuân thủ quy tắc đặt tên: Các tập lệnh có thể gặp lỗi cú pháp nghiêm trọng nếu tên thư mục chứa khoảng trắng hoặc ký tự đặc biệt mà không được bao bọc bởi dấu ngoặc kép hoặc ký tự thoát (\).
    • Đảm bảo tính liên tục: Việc thiếu tùy chọn -p trong các script tự động hóa sẽ khiến quy trình bị ngắt quãng với lỗi “File exists” nếu thư mục đích đã được tạo từ lần chạy trước đó.
    Lệnh mkdir sẽ thất bại nếu phân vùng đĩa cứng đã cạn kiệt số lượng Inode cho phép
    Lệnh mkdir sẽ thất bại nếu phân vùng đĩa cứng đã cạn kiệt số lượng Inode cho phép (Nguồn: Internet)

    Câu hỏi thường gặp

    Khi sử dụng lệnh mkdir -p -m 777 project/logs, các thư mục cha có nhận quyền 777 không?

    Câu trả lời là không. Tùy chọn -m chỉ áp dụng quyền truy cập cho thư mục cuối cùng trong chuỗi đường dẫn. Các thư mục cha trung gian được tạo ra bởi tùy chọn -p sẽ nhận quyền mặc định dựa trên thiết lập umask của hệ thống (thường là 755 hoặc 775).

    Tại sao lệnh mkdir data lại báo lỗi “File exists” dù tôi kiểm tra chưa có thư mục nào tên là “data”?

    Trong hệ điều hành Linux, mọi tập tin, thư mục, thiết bị,… đều được quản lý dưới dạng file. Nếu trong thư mục hiện tại đã tồn tại một tập tin có tên là “data”, hệ thống sẽ ngăn chặn việc tạo một thư mục trùng tên để đảm bảo tính duy nhất của định danh.

    Làm thế nào để tạo một thư mục có tên chứa khoảng trắng bằng mkdir?

    Hệ thống Shell mặc định coi khoảng trắng là ký tự phân tách các đối số. Để tạo thư mục có tên chứa khoảng trắng, bạn cần đặt tên trong dấu ngoặc kép hoặc sử dụng ký tự thoát:
    Cách 1: mkdir “New Folder”
    Cách 2: mkdir New\ Folder

    Tóm lại, lệnh mkdir là công cụ nền tảng giúp bạn chủ động tạo và tổ chức cấu trúc thư mục một cách khoa học trên Linux. Khi nắm vững các tùy chọn như tạo nhiều thư mục cùng lúc, tạo thư mục lồng nhau hay gán quyền truy cập phù hợp, bạn sẽ quản lý dữ liệu gọn gàng hơn và hạn chế lỗi trong quá trình vận hành hệ thống. Hy vọng qua bài viết này, mình đã giúp bạn hiểu và áp dụng lệnh mkdir hiệu quả hơn trong công việc cũng như học tập hằng ngày.

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Các lệnh tìm file trong Linux mới tạo hoặc mới chỉnh sửa gần đây
    Các lệnh tìm file trong Linux mới tạo hoặc mới chỉnh sửa gần đây

    Các lệnh tìm file trong Linux sẽ liệt kê các file vừa được tạo hoặc thay đổi từ đầu ngày đến thời điểm hiện tại, thường được ứng dụng cho thao tác kiểm tra hoặc tự động hóa trên Linux. Trong bài viết này, mình sẽ giới thiệu hai phương pháp hiệu quả và phổ…

    16/01/2026

    Enterprise Cloud là gì? Những tính năng và lợi ích khi sử dụng Enterprise Cloud cho doanh nghiệp
    Enterprise Cloud là gì? Những tính năng và lợi ích khi sử dụng Enterprise Cloud cho doanh nghiệp

    Enterprise Cloud là mô hình hạ tầng điện toán đám mây được thiết kế riêng cho doanh nghiệp, kết hợp độ linh hoạt của đám mây công cộng với mức độ kiểm soát, bảo mật và tùy biến giống hạ tầng riêng. Trong bài viết dưới đây, mình sẽ cùng bạn tìm hiểu về khái…

    16/01/2026

    Tổng hợp thông tin về Amazon S3 và những lợi ích khi sử dụng
    Tổng hợp thông tin về Amazon S3 và những lợi ích khi sử dụng

    S3 là dịch vụ lưu trữ đối tượng trên đám mây của Amazon, có tên đầy đủ là Amazon Simple Storage Service (Amazon S3). Dịch vụ này cho phép lưu trữ, truy xuất dữ liệu qua Internet với khả năng mở rộng rất lớn, độ sẵn sàng và bảo mật cao. Trong bài viết này,…

    16/01/2026

    Cách sửa lỗi Sub-process /usr/bin/dpkg returned an error code hiệu quả trên Ubuntu/Debian
    Cách sửa lỗi Sub-process /usr/bin/dpkg returned an error code hiệu quả trên Ubuntu/Debian

    Lỗi Sub-process /usr/bin/dpkg returned an error code thường xuất hiện khi trình quản lý gói dpkg gặp sự cố trong quá trình cài đặt, gỡ bỏ hoặc cập nhật phần mềm. Trong bài viết này, mình sẽ cùng bạn tìm hiểu chi tiết về nguyên nhân, cách khắc phục lỗi Sub-process /usr/bin/dpkg returned an error…

    14/01/2026