tutorial-string

Tìm hiểu về cách quản lý file trong Unix/Linux

Banner bottom

Khi sử dụng hệ điều hành Unix/Linux, việc quản lý file là một kỹ năng quan trọng mà mọi lập trình viên cần nắm vững. Hệ điều hành này không chỉ nổi bật bởi tính ổn định và hiệu suất mà còn bởi cấu trúc quản lý file và thư mục logic. Bài viết này sẽ hướng dẫn chi tiết cách quản lý file trong môi trường Unix/Linux, từ cấu trúc thư mục đến các lệnh quan trọng mà bạn cần nắm được. 

1. Cấu trúc thư mục trong Unix/Linux

Cấu trúc thư mục trong Unix/Linux được tổ chức theo một cấu trúc cây gọi là hệ thống file.

Khi làm việc với Unix, người dùng thường tương tác chủ yếu với các file. Dưới đây là một số thư mục quan trọng mà bạn cần chú ý:

/bin: Chứa các lệnh cơ bản được sử dụng bởi tất cả người dùng.

/etc: Nơi lưu trữ các file cấu hình hệ thống.

/home: Thư mục cá nhân của người dùng.

/var: Chứa dữ liệu thay đổi thường xuyên.

Mỗi thư mục đều đóng vai trò quan trọng trong việc duy trì và quản lý hệ thống. Việc hiểu rõ cấu trúc thư mục này sẽ giúp người dùng và quản trị viên hệ thống tương tác một cách hiệu quả.

>>> Xem thêm các bài viết về Unix/Linux

Hướng dẫn cài đặt Unix/Linux

Quản lý tiến trình trong Unix/Linux

Điều khiển vòng lặp trong Unix/Linux

2. Các lệnh cơ bản quản lý file trong Unix/Linux

2.1. Hiển thị danh sách file và thư mục

Lệnh ls là một trong những lệnh đơn giản nhất nhưng cực kỳ hữu ích. Nó được sử dụng để liệt kê nội dung của thư mục hiện tại hoặc một thư mục cụ thể. 

Cú pháp:

$ ls [tùy chọn] [đường dẫn]

Tùy chọn

Miêu tả

File thường chẳng hạn như một file văn bản ASCII, nhị phân hoặc đường link cứng.

b

Nhóm file đặc biệt. nhóm file thiết bị đầu vào/đầu ra ví dụ như một đĩa cứng vật lý.

c

File ký tự đặc biệt. File thiết bị đầu vào/đầu ra thô ví dụ như một đĩa cứng vật lý.

d

Là thư mục mà chứa một danh sách các file và thư mục khác.

l

File liên kết ký tự. Kết nối trên bất kỳ một file thường nào.

p

Pipe được đặt tên. Một cơ cấu để giao tiếp liên tiến trình.

s

Socket được sử dụng cho giao tiếp liên tiến trình.

Ví dụ: 

$ ls -l

Hiển thị thông tin chi tiết về file và thư mục bao gồm quyền truy cập, số liên kết, tên chủ sở hữu, tên nhóm, kích thước, ngày sửa đổi và tên.

$ ls -d

Hiển thị thông tin về thư mục chứa, không hiển thị nội dung của thư mục.

2.2. Sao chép file hoặc thư mục

Lệnh cp dùng để sao chép file hoặc thư mục từ một vị trí đến vị trí khác.

Cú pháp:

$ cp [tùy chọn] nguồn đích

Ví dụ:

$ cp file.txt /đường/dẫn/mục-đích

2.3. Di chuyển/Đổi tên file hoặc thư mục

Lệnh mv được sử dụng để di chuyển file hoặc thư mục từ một vị trí đến vị trí khác hoặc đổi tên chúng.

Cú pháp:

$ mv [tùy chọn] nguồn đích

Ví dụ:

$ mv file.txt /đường/dẫn/mục-đích

2.4. Xóa file hoặc thư mục

Lệnh rm được sử dụng để xóa file hoặc thư mục. Lưu ý rằng nó là một lệnh mạnh mẽ và không có tính năng khôi phục.

Cú pháp:

$ rm [tùy chọn] tên-file-thư-mục

Ví dụ:

$ rm file.txt

3. Quyền truy cập và thay đổi quyền trong Unix/Linux

Trong hệ điều hành Unix/Linux, quyền truy cập (permissions) đóng một vai trò quan trọng trong việc bảo vệ dữ liệu và hệ thống. Các quyền truy cập xác định ai có quyền thực hiện các hành động như đọc, ghi, hoặc thực thi trên file hoặc thư mục.

3.1. Quyền truy cập cơ bản

Trong Unix/Linux, có 3 loại quyền truy cập cơ bản cho mỗi file hoặc thư mục:

Read (r): Cho phép đọc nội dung của file hoặc xem danh sách các file trong thư mục.

Write (w): Cho phép sửa đổi, thêm mới hoặc xóa file trong trường hợp thư mục.

Execute (x): Cho phép chạy file (đối với file thực thi) hoặc truy cập vào thư mục.

3.2. Chủ sở hữu, nhóm và người dùng khác

Mỗi file và thư mục có quyền truy cập riêng cho chủ sở hữu (owner), nhóm (group), và người dùng khác (others).

Chủ sở hữu (owner): Người sở hữu file hoặc thư mục, người tạo ra chúng.

Nhóm (group): Nhóm mà file hoặc thư mục thuộc về. Nhiều người dùng có thể thuộc cùng một nhóm.

Người dùng khác (others): Tất cả những người dùng khác không thuộc chủ sở hữu hoặc nhóm.

3.3. Thay đổi quyền truy cập

Bằng cách sử dụng lệnh chmod sẽ giúp bạn thay đổi quyền truy cập của file hoặc thư mục mà bạn mong muốn.

Cú pháp:

$ chmod [quyền] [tên-file-thư-mục]

Trong đó, quyền có thể được biểu diễn theo dạng số hoặc biểu diễn mô tả. 

Ví dụ:

Biểu diễn theo dạng số: $ chmod 755 file.txt (7 = rwx, 5 = r-x, 5 = r-x)

Biểu diễn mô tả: $ chmod u=rwx,g=rx,o=rx file.txt

Biểu diễn số thường được sử dụng để thay đổi quyền truy cập bằng cách sử dụng ba chữ số. Mỗi chữ số đại diện cho quyền của một nhóm (owner, group, others) theo thứ tự: read (4), write (2), execute (1). Các quyền cộng lại để tạo ra một số từ 0 đến 7.

Ví dụ:

$ chmod 764 file.txt

Chủ sở hữu có quyền rwx (4+2+1), nhóm có quyền rw- (4+2), người dùng khác có quyền r– (4)

4. Một số lệnh hữu ích giúp quản lý file trong Unix/Linux

4.1. Tìm kiếm file và thư mục

Lệnh find giúp bạn tìm kiếm file và thư mục dựa trên các tiêu chí nhất định như tên file, loại file, kích thước, v.v.

Cú pháp:

$ find [đường-dẫn] -name [tên-file]

Ví dụ:

$ find /home/user -name "file.txt"

4.2. Tìm kiếm nội dung trong file

Lệnh grep tìm kiếm các dòng trong file có nội dung khớp với một chuỗi cụ thể.

Cú pháp:

$ grep "chuỗi-tìm-kiếm" [tên-file]

Ví dụ:

$ grep "error" log.txt

4.3. Hiển thị nội dung của một file

Lệnh cat có thể giúp bạn quan sát nội dung của file.

Cú pháp:

$ cat [tùy chọn] [tên-file]

Ví dụ:

$ cat file.txt

Bạn có thể thêm tùy chọn -b để hiển thị thêm số dòng của file.

Ví dụ:

$ cat -b file.txt

4.4. Tạo một file hoặc một thư mục

Lệnh mkdir giúp tạo một file hoặc một thư mục mà bạn muốn.

Cú pháp:

$ mkdir tên-thư-mục

Ví dụ:

$ mkdir documents

Tổng kết

Trên đây là tổng quan về cách quản lý file trong Unix/Linux và các lệnh cơ bản giúp bạn dễ dàng thao tác và quản lý chúng trong hệ điều hành của mình. Hãy lưu ý về cách quản lý quyền truy cập của các thư mục vì việc hiểu rõ về nó sẽ giúp bảo vệ dữ liệu và duy trì an toàn cho hệ thống của bạn.

>>> Xem thêm các bài tại đây:

DNS là gì? Các loại DNS phổ biến và cách sử dụng

Hướng dẫn cài đặt k8s Kubernetes Cluster

Cài đặt cấu hình cân bằng tải với HaProxy và Docker


Cộng Đồng Linux là giải pháp cung cấp các tính năng giao tiếp như gọi thoại, gọi video, tin nhắn chat, SMS hay tổng đài CSKH cho phép tích hợp trực tiếp vào ứng dụng/website của doanh nghiệp nhanh chóng. Nhờ đó giúp tiết kiệm đến 80% thời gian và chi phí cho doanh nghiệp bởi thông thường nếu tự phát triển các tính năng này có thể mất từ 1 – 3 năm.

Bộ API giao tiếp của hiện đang được tin dùng bởi các doanh nghiệp ở mọi quy mô, lĩnh vực ngành nghề như TPBank, VOVBacsi24, VNDirect, Shinhan Finance, Ahamove, Logivan, Homedy, Adavigo, bTaskee…

Quý bạn đọc quan tâm xin mời đăng ký bài viết mới:

Banner bottom

Đăng ký liền tay Nhận Ngay Bài Mới

Subscribe ngay

Cám ơn bạn đã đăng ký !

Lỗi đăng ký !

Add Comment

Click here to post a comment

Đăng ký liền tay
Nhận Ngay Bài Mới

Subscribe ngay

Cám ơn bạn đã đăng ký !

Lỗi đăng ký !