- Đây là bài viết cuối cùng tổng hợp lại tất cả các kiến thức mà các bạn đã được học và thực hành.
- Tôi sẽ tổng hợp thành sơ đồ mindmap theo hình tree
và bài tập tổng hợp kiến thức mà chúng ta đã đi qua từ những những ngày đầu tiên.
Mục lục:
- Chuẩn bị.
- Tổng hợp kiến thức thông qua minmap và bài tập tổng hợp
- Lời kết.
1. Chuẩn bị
- Đã cài đặt máy ảo Ubuntu trên Oracle VM VirtualBox
- Đã thực hiện thiết lập SSH tới máy chủ Ubuntu, sẵn sàng nhập lệnh
2. Tổng hợp kiến thức bằng mindmap và bài tập tổng hợp
2.1: Tổng hợp kiến thức bằng mindmap:
Link tổng hợp: https://mm.tt/app/map/2983859597?t=qjBElDhCau
2.1: Bài tập tổng hợp:
-
Tạo thư mục:
- Hãy thiết lập kết nối
SSH
từ máy chủ cá nhân bạn đến máy chủServer Ubuntu
.
- Hãy thiết lập kết nối
-
Tạo thư mục:
- Sử dụng lệnh
mkdir
để tạo một thư mục mới với tên "Documents". - Tiếp theo, tạo một thư mục con bên trong "Documents" với tên "Projects".
- Sử dụng lệnh
-
Tạo tệp tin:
- Sử dụng lệnh
touch
để tạo một tệp tin mới với tên "notes.txt" trong thư mục "Documents". - Sau đó, sử dụng lệnh
echo
để viết một vài nội dung vào tệp tin "notes.txt".
- Sử dụng lệnh
-
Di chuyển và đổi tên:
- Sử dụng lệnh
mv
để di chuyển tệp tin "notes.txt" từ thư mục "Documents" vào thư mục "Projects". - Đồng thời, đổi tên tệp tin từ "notes.txt" thành "important_notes.txt" trong quá trình di chuyển.
- Sử dụng lệnh
-
Xóa thư mục và tệp tin:
- Sử dụng lệnh
rm
để xóa thư mục con "Projects" và tất cả các tệp tin bên trong. - Tiếp theo, sử dụng lệnh
rm
để xóa thư mục "Documents" và tất cả nội dung bên trong, bao gồm cả thư mục con "Projects".
- Sử dụng lệnh
-
Tạo liên kết (Symbolic Link):
- Sử dụng lệnh
ln -s
để tạo một liên kết symbolic từ một tệp tin hoặc thư mục gốc đến một vị trí khác trên hệ thống tệp tin. - Ví dụ: Tạo một liên kết symbolic từ tệp tin "important_notes.txt" trong thư mục "Projects" đến thư mục người dùng của bạn.
- Sử dụng lệnh
-
Tạo liên kết cứng (Hard Link):
- Sử dụng lệnh
ln
để tạo một liên kết hard từ một tệp tin hoặc thư mục gốc đến một vị trí khác trên hệ thống tệp tin. - Ví dụ: Tạo một liên kết hard từ tệp tin "important_notes.txt" trong thư mục "Projects" đến thư mục người dùng của bạn.
- Sử dụng lệnh
-
Đồng bộ hóa tệp tin/thư mục:
- Sử dụng lệnh
rsync
để sao chép và đồng bộ hóa tệp tin hoặc thư mục từ một vị trí đến vị trí khác trên hệ thống. - Ví dụ: Sao chép toàn bộ thư mục "Documents" vào thư mục "Backup" trên cùng một ổ đĩa hoặc ổ đĩa khác.
- Sử dụng lệnh
-
Nén và giải nén tệp tin/thư mục:
- Sử dụng lệnh
tar
để nén tệp tin và thư mục thành một tập tin nén. - Sử dụng lệnh
tar -czvf
để nén một thư mục hoặc tập tin thành tập tin .tar.gz. - Sử dụng lệnh
tar -xzvf
để giải nén một tập tin .tar.gz. - Ví dụ: Nén thư mục "Documents" thành một tập tin .tar.gz và giải nén nó trong thư mục "Backup".
- Sử dụng lệnh
-
Sử dụng lệnh
find
:- Tìm tất cả các tệp tin có tên là "important_notes.txt" trên toàn bộ hệ thống.
- Tìm tất cả các tệp tin có phần mở rộng là ".log" trong thư mục "/var/log".
-
Sử dụng lệnh
locate
:- Cập nhật cơ sở dữ liệu của
locate
bằng lệnhsudo updatedb
(chỉ cần thực hiện một lần). - Tìm tất cả các tệp tin có tên chứa chuỗi "report" trong tên của chúng.
- Cập nhật cơ sở dữ liệu của
-
Sử dụng lệnh
which
:- Tìm đường dẫn của lệnh
ls
, hiển thị vị trí của nó trong hệ thống.
- Tìm đường dẫn của lệnh
-
Kết hợp các lệnh với lệnh đường ống (
|
):- Sử dụng lệnh
find
để tìm tất cả các tệp tin có phần mở rộng ".txt" trong thư mục hiện tại và chuyển kết quả sang lệnhgrep
để lọc ra những tệp tin có chứa từ khóa "important".
- Sử dụng lệnh
-
Sử dụng biến và wildcards:
- Tìm tất cả các tệp tin có phần mở rộng là ".conf" trong thư mục "/etc" và các thư mục con của nó.
- Tìm tất cả các tệp tin có tên bắt đầu bằng "backup_" trong thư mục người dùng của bạn.
-
Tạo người dùng mới:
- Sử dụng lệnh
sudo adduser
để tạo một người dùng mới trên hệ thống. - Chọn tên người dùng và cung cấp các thông tin cần thiết như mật khẩu và thông tin cá nhân khi được yêu cầu.
- Sử dụng lệnh
-
Xóa người dùng:
- Sử dụng lệnh
sudo deluser
để xóa một người dùng khỏi hệ thống. - Đảm bảo rằng bạn đã chắc chắn về việc xóa người dùng, vì tất cả các dữ liệu của họ sẽ bị xóa.
- Sử dụng lệnh
-
Sửa đổi thông tin người dùng:
- Sử dụng lệnh
sudo usermod
để sửa đổi thông tin của một người dùng hiện có. - Bạn có thể sửa đổi các thông tin như tên đầy đủ, thư mục người dùng, shell mặc định và nhiều hơn nữa.
- Sử dụng lệnh
-
Đặt lại mật khẩu người dùng:
- Sử dụng lệnh
sudo passwd
để đặt lại mật khẩu cho một người dùng. - Bạn sẽ được yêu cầu nhập mật khẩu mới và xác nhận nó.
- Sử dụng lệnh
-
Kiểm tra danh sách người dùng:
- Sử dụng lệnh
cat /etc/passwd
hoặcgetent passwd
để hiển thị danh sách tất cả các người dùng trên hệ thống.
- Sử dụng lệnh
-
Kiểm tra thông tin người dùng cụ thể:
- Sử dụng lệnh
id
hoặcfinger
để hiển thị thông tin chi tiết về một người dùng cụ thể.
- Sử dụng lệnh
-
Phân quyền người dùng:
- Sử dụng lệnh
sudo usermod -aG
để thêm một người dùng vào một nhóm người dùng cụ thể.
- Sử dụng lệnh
-
Tạo nhóm và thêm người dùng:
- Tạo một nhóm mới có tên là "classmates" bằng lệnh
sudo groupadd classmates
. - Thêm hai người dùng mới vào nhóm này, họ có thể là "student1" và "student2", bằng cách sử dụng lệnh
sudo usermod -aG classmates username
.
- Tạo một nhóm mới có tên là "classmates" bằng lệnh
-
Liệt kê các nhóm và người dùng:
- Sử dụng lệnh
getent group
để liệt kê tất cả các nhóm người dùng trên hệ thống và đảm bảo nhóm "classmates" đã được tạo. - Sử dụng lệnh
getent passwd
để liệt kê tất cả các người dùng trên hệ thống và đảm bảo rằng "student1" và "student2" đã được thêm vào nhóm "classmates".
- Sử dụng lệnh
-
Xóa người dùng khỏi nhóm:
- Xóa người dùng "student1" khỏi nhóm "classmates" bằng lệnh
sudo deluser student1 classmates
. - Kiểm tra lại bằng cách sử dụng lệnh
getent group classmates
để đảm bảo rằng người dùng "student1" đã không còn thuộc nhóm "classmates" nữa.
- Xóa người dùng "student1" khỏi nhóm "classmates" bằng lệnh
-
Xóa nhóm:
- Xóa nhóm "classmates" khỏi hệ thống bằng lệnh
sudo groupdel classmates
. - Sử dụng lệnh
getent group
để đảm bảo rằng nhóm "classmates" đã được xóa khỏi hệ thống.
- Xóa nhóm "classmates" khỏi hệ thống bằng lệnh
-
Tạo thêm nhóm và thêm người dùng:
- Tạo một nhóm mới có tên là "study_group" bằng lệnh
sudo groupadd study_group
. - Thêm người dùng "student3" vào nhóm "study_group" bằng lệnh
sudo usermod -aG study_group student3
. - Liệt kê các nhóm và người dùng để xác nhận rằng nhóm và người dùng đã được thêm thành công.
- Tạo một nhóm mới có tên là "study_group" bằng lệnh
-
Tạo một thư mục và một tệp tin:
- Sử dụng lệnh
mkdir
để tạo một thư mục mới có tên là "exercise". - Sử dụng lệnh
touch
để tạo một tệp tin mới có tên là "example.txt" trong thư mục "exercise".
- Sử dụng lệnh
-
Xác định quyền sở hữu ban đầu:
- Sử dụng lệnh
ls -l
để xem quyền sở hữu và quyền truy cập của tệp tin và thư mục "exercise" và "example.txt".
- Sử dụng lệnh
-
Thay đổi quyền sở hữu:
- Sử dụng lệnh
chown
để thay đổi quyền sở hữu của thư mục "exercise" và tệp tin "example.txt" cho một người dùng khác. - Ví dụ:
sudo chown newowner exercise
để chuyển quyền sở hữu của thư mục "exercise" cho người dùng "newowner".
- Sử dụng lệnh
-
Thay đổi quyền truy cập:
- Sử dụng lệnh
chmod
để thay đổi quyền truy cập của tệp tin và thư mục. - Ví dụ:
sudo chmod 755 example.txt
để thiết lập quyền truy cập cho tệp tin "example.txt" là 755 (rwxr-xr-x).
- Sử dụng lệnh
-
Kiểm tra lại quyền sở hữu và quyền truy cập:
- Sử dụng lại lệnh
ls -l
để kiểm tra lại quyền sở hữu và quyền truy cập của thư mục và tệp tin sau khi đã thay đổi.
- Sử dụng lại lệnh
-
Thực hiện một số thao tác:
- Thử thực hiện các thao tác như đọc, ghi và thực thi trên tệp tin và thư mục sau khi đã thay đổi quyền truy cập.
- Lập lịch sao lưu dữ liệu hàng ngày bằng crontab
- Thử thực hiện sao lưu dữ liệu database như mysql mỗi 12h giờ đêm mỗi ngày
3. Lời kết
- Vậy là chúng ta đã hoàn thành chuỗi bài về quản trị hệ điều hành nhân linux
.
- Tôi hy vọng các bạn học chuỗi bài này sẽ có giúp ích cho các bạn trong các dự án thực tế trong công ty của các bạn.
Tác giả: Đỗ Thiên Giang
Chú ý: Tất cả các bài viết trên TEDU.COM.VN đều thuộc bản quyền TEDU, yêu cầu dẫn nguồn khi trích lại trên website khác.