Tác giả

Dec 19, 2022 • 7:25 AM

Tác giả: Linh osimi

Tổng quan về Linux và các câu lệnh.

Linux là gì?

LINUX là một hệ điều hành hoặc hạt nhân được phân phối theo giấy phép nguồn mở. Danh sách chức năng của nó khá giống UNIX. Kernel là một chương trình cốt lõi của hệ điều hành Linux, đảm nhiệm những công việc cơ bản, như cho phép phần cứng giao tiếp với phần mềm.

Chu trình DevOps
chu trình từ trên xuống

Tại sao bạn cần một hệ điều hành?

Mỗi khi bật máy tính, bạn sẽ thấy một màn hình nơi bạn có thể thực hiện các hoạt động khác nhau như viết, duyệt internet hoặc xem video. Điều gì khiến phần cứng máy tính hoạt động như vậy? Làm thế nào bộ xử lý trên máy tính của bạn biết rằng bạn đang yêu cầu nó chạy tệp mp3? Vâng, chính hệ điều hành hoặc kernel thực hiện công việc này. Vì vậy, để làm việc trên máy tính, bạn cần một OperaHệ thống ting (HĐH). Trên thực tế, bạn đang sử dụng một cái khi bạn đọc nó trên máy tính. Bây giờ, bạn có thể đã sử dụng các hệ điều hành phổ biến như Windows, Apple OS X, nhưng ở đây chúng ta sẽ tìm hiểu phần giới thiệu về hệ điều hành Linux, tổng quan về Linux và những lợi ích mà nó mang lại so với các lựa chọn hệ điều hành khác.

Ai đã tạo ra Linux?

Chu trình DevOps
Linus Torvalds

Linux là một hệ điều hành hoặc một hạt nhân nảy mầm như một ý tưởng trong tâm trí của những người trẻ tuổi và thông minh. Linus Torvalds khi anh còn là sinh viên khoa học máy tính. Anh ấy từng làm việc trên Hệ điều hành UNIX (phần mềm độc quyền) và nghĩ rằng nó cần được cải tiến. Tuy nhiên, khi đề xuất của ông bị các nhà thiết kế UNIX từ chối, ông đã nghĩ đến việc tung ra một hệ điều hành sẽ tiếp thu những thay đổi, sửa đổi do người dùng đề xuất.

Lịch sử của Linux

So Linus đã phát minh ra hạt nhân đặt tên là Linux vào năm 1991. Mặc dù anh ấy sẽ cần các chương trình như Trình quản lý tệp, Trình chỉnh sửa tài liệu, chương trình Âm thanh -Video để chạy trên nó. Điều gì đó giống như bạn có một chiếc nón nhưng lại không có kem ở trên. Thời gian trôi qua, anh cộng tác với những người khác lập trình viên ở những nơi như MIT và các ứng dụng dành cho Linux bắt đầu xuất hiện. Vì vậy, vào khoảng năm 1991, một hệ điều hành Linux với một số ứng dụng đã chính thức ra mắt và đây là sự khởi đầu của một trong những Các tùy chọn hệ điều hành nguồn mở và được yêu thích nhất hiện nay.

Các phiên bản trước của hệ điều hành Linux không thân thiện với người dùng như các lập trình viên máy tính và các nhà lập trình. Linus Torvalds chưa bao giờ có ý định thương mại hóa sản phẩm của anh ấy. Điều này chắc chắn đã hạn chế sự phổ biến của Linux như các hệ điều hành định hướng thương mại khác. Operahệ thống ting Windows đã nổi tiếng. Tuy nhiên, khía cạnh nguồn mở của hệ điều hành Linux đã khiến nó trở nên mạnh mẽ hơn.

Linux nhận được sự quan tâm đúng mức

Chu trình DevOps
Quan tâm hơn đi mà

Ưu điểm chính của Linux là các lập trình viên có thể sử dụng Linux Kernel để thiết kế hệ điều hành tùy chỉnh của riêng họ. Theo thời gian, một loạt hệ điều hành thân thiện với người dùng mới đã làm mưa làm gió trên thế giới máy tính. Hiện nay, Linux là một trong những Kernel phổ biến và được sử dụng rộng rãi nhất, và nó là xương sống của các hệ điều hành phổ biến như Debian, Knoppix, Ubuntu, và Fedora. Tuy nhiên, danh sách không kết thúc ở đây vì có sẵn hàng nghìn phiên bản Hệ điều hành Linux tốt nhất dựa trên Nhân Linux, cung cấp nhiều chức năng khác nhau cho người dùng.

Hạt nhân Linux thường được sử dụng kết hợp GNU dự án của Tiến sĩ Richard Stallman. Tất cả các bản phân phối hiện đại của Linux thực chất là các bản phân phối của Linux/GNU

Lợi ích của Linux

Hệ điều hành Linux hiện đang rất phổ biến và nó nổi tiếng với các lập trình viên cũng như người dùng máy tính thông thường trên khắp thế giới. Lợi ích chính của nó là - Nó cung cấp một hệ điều hành miễn phí. Bạn không cần phải bỏ ra hàng trăm đô la để có được hệ điều hành như thế nào Windows!

Chu trình DevOps
Oops

1.Là nguồn mở nên bất kỳ ai có kiến ​​thức lập trình đều có thể sửa đổi nó.

2.Thật dễ dàng để học Linux cho người mới bắt đầu

3.Các hệ điều hành Linux hiện nay cung cấp hàng triệu chương trình/ứng dụng và phần mềm Linux để lựa chọn, hầu hết chúng đều miễn phí!

4.Khi bạn đã cài đặt Linux, bạn không cần dùng phần mềm chống vi-rút nữa! Linux là một hệ thống có tính bảo mật cao. Hơn nữa, có một cộng đồng phát triển toàn cầu không ngừng tìm cách tăng cường tính bảo mật của mình. Với mỗi lần nâng cấp, hệ điều hành sẽ trở nên an toàn và mạnh mẽ hơn

5.Phần mềm miễn phí Linux là hệ điều hành được lựa chọn cho môi trường Máy chủ do tính ổn định và độ tin cậy của nó (Mega-các công ty như Amazon, Facebook và Google sử dụng Linux cho Máy chủ của họ). Một máy chủ dựa trên Linux có thể chạy không ngừng nghỉ mà không cần khởi động lại trong nhiều năm

Có phải cho bạn không?

Chu trình DevOps

Người dùng mới làm quen với Linux thường tránh xa nó bằng cách coi nó là một hệ điều hành kỹ thuật và khó vận hành, nhưng thành thật mà nói, trong vài năm gần đây, hệ điều hành Linux đã trở nên thân thiện với người dùng hơn rất nhiều so với các hệ điều hành của họ như Windows, vì vậy thử chúng là cách tốt nhất để biết Linux có phù hợp với bạn hay không. Có hàng ngàn Hệ điều hành Linux tốt nhất và các phần mềm Linux có sẵn dựa trên Linux Kernel; hầu hết trong số chúng cung cấp ứng dụng và bảo mật tiên tiến, tất cả đều miễn phí! Đây chính là nội dung của Linux và bây giờ chúng ta sẽ chuyển sang cách cài đặt Linux và bạn nên chọn phân phối nào.

Vậy thì tại sao lại là Linux?

UNIX được gọi là mẹ của các hệ điều hành đã đặt nền móng cho Linux. Unix được thiết kế chủ yếu cho máy tính lớn và trong các doanh nghiệp và trường đại học. Trong khi Linux đang nhanh chóng trở thành cái tên quen thuộc đối với người dùng máy tính, nhà phát triển và môi trường máy chủ. Bạn có thể phải trả tiền cho một hạt nhân Unix trong khi ở Linux thì nó miễn phí.

Nhưng các lệnh được sử dụng trên cả hai hệ điều hành thường giống nhau. Không có nhiều sự khác biệt giữa UNIX và Linux. Mặc dù chúng có vẻ khác nhau nhưng về cốt lõi thì chúng giống nhau. Từ Linux là một bản sao của UNIX. Vì vậy, học cái này cũng giống như học cái khác.

Hướng dẫn dòng lệnh Linux: Thao tác với Terminal bằng lệnh CD

Tại sao nên học Giao diện dòng lệnh?

Mặc dù thế giới đang chuyển sang các hệ thống dựa trên GUI, CLI vẫn có những cách sử dụng cụ thể và được sử dụng rộng rãi trong việc viết kịch bản và quản trị máy chủ. Chúng ta hãy xem xét một số công dụng hấp dẫn -

-Tương tự, Lệnh cung cấp nhiều tùy chọn hơn và linh hoạt hơn. Đường ống và stdin/stdout cực kỳ mạnh mẽ không có sẵn trong GUI

-Một số cấu hình trong GUI có độ sâu lên tới 5 màn hình trong khi ở CLI, đó chỉ là một lệnh duy nhất

-Việc di chuyển, đổi tên hàng nghìn file trong GUI sẽ rất tốn thời gian (Sử dụng Control /Shift để chọn nhiều tệp), trong khi ở CLI, sử dụng các biểu thức thông thường để có thể thực hiện cùng một tác vụ chỉ bằng một lệnh duy nhất.

-CLI tải nhanh và không tiêu tốn RAM so với GUI. Trong các tình huống khủng hoảng, điều này quan trọng.

Cả GUI và CLI đều có những cách sử dụng cụ thể. Ví dụ, trong GUI, biểu đồ giám sát hiệu suất cho phản hồi trực quan ngay lập tức về tình trạng hệ thống, trong khi việc nhìn thấy hàng trăm dòng nhật ký trong CLI thật chướng mắt

Bạn phải học cách sử dụng cả GUI (Trình quản lý tệp) và CLI (Thiết bị đầu cuối) GUI của một Hệ điều hành dựa trên Linux tương tự như bất kỳ hệ điều hành nào khác. Do đó, chúng ta sẽ tập trung vào CLI và tìm hiểu một số lệnh hữu íc

Khởi chạy CLI trên Ubuntu

Có 2 cách để khởi chạy terminal.

1, Đi tới Dash và gõ terminal

Chu trình DevOps

2, Hoặc bạn có thể nhấn CTRL + Alt + T để khởi chạy Terminal

Sau khi khởi chạy CLI (Terminal), bạn sẽ tìm thấy thứ gì đó có tên guru99@VirtualBox(xem hình ảnh) được viết trên đó.

Chu trình DevOps

1, Phần đầu tiên của dòng này là tên của người sử dụng (bob, tom, Ubuntu, nhà…)

2, Phần thứ hai là tên máy tính hoặc tên máy chủ. Tên máy chủ giúp xác định máy tính qua mạng. Trong môi trường máy chủ, tên máy chủ trở nên quan trọng.

3,':' là một dấu phân cách đơn giản

4, Dấu ngã '~' cho biết người dùng đang làm việc trong thư mục chính. Nếu bạn thay đổi thư mục, dấu hiệu này sẽ biến mất.

Chu trình DevOps

Trong hình minh họa ở trên, chúng tôi đã chuyển từ thư mục /home sang /bin bằng cách sử dụng lệnh lệnh 'cd'. Dấu ~ không hiển thị khi làm việc trong thư mục /bin. Nó xuất hiện trong khi di chuyển trở lại thư mục chính.

5, Dấu '$' gợi ý rằng bạn đang làm việc như một người dùng thông thường trên Linux. Khi làm việc với tư cách người dùng root, '#' được hiển thị.

Chu trình DevOps

Thư mục làm việc hiện tại

Thư mục mà bạn hiện đang duyệt được gọi là thư mục làm việc Hiện tại. Bạn đăng nhập vào thư mục chính khi khởi động PC. Nếu bạn muốn xác định thư mục bạn đang làm việc, hãy sử dụng lệnh –pwd

Chu trình DevOps

lệnh pwd là viết tắt của print wOrking dlời giảng Hình trên cho thấy /home/guru99 là thư mục chúng ta đang làm việc.

Thay đổi thư mục

Nếu bạn muốn thay đổi thư mục hiện tại của mình, hãy sử dụng 'cd' yêu cầu.

Hãy xem xét ví dụ sau.

Chu trình DevOps

Ở đây, chúng ta đã chuyển từ thư mục /tmp sang /bin sang /usr rồi quay lại /tmp.

Điều hướng đến thư mục chính

Nếu bạn muốn điều hướng đến thư mục chính, hãy gõ cd.

Chu trình DevOps

Bạn cũng có thể sử dụng cd ~ chỉ huy.

Chu trình DevOps

Di chuyển đến thư mục gốc

Thư mục gốc của hệ thống tệp trong Linux được ký hiệu là '/'. Tương tự như 'c:\' trong Windows. Lưu ý: Trong Windows, bạn sử dụng dấu gạch chéo ngược “\” trong khi ở UNIX/Linux, dấu gạch chéo lên được sử dụng “/” Gõ “cd/” để di chuyển tới thư mục gốc.

Chu trình DevOps

Điều hướng qua nhiều thư mục

Bạn có thể điều hướng qua nhiều thư mục cùng lúc bằng cách chỉ định đường dẫn đầy đủ của nó. Ví dụ: Nếu bạn muốn di chuyển /cpu thư mục dưới /dev, bạn không cần phải chia hoạt động thành hai phần. Thay vào đó, chúng ta có thể gõ '/dev/cpu' để truy cập trực tiếp vào thư mục.

Di chuyển lên một cấp thư mục

Để điều hướng lên một cấp thư mục, hãy thử "cd .."

Chu trình DevOps

Ở đây bằng cách sử dụng lệnh 'cd ..', chúng tôi đã di chuyển một thư mục từ '/dev/cpu' lên '/dev'. Sau đó, bằng cách sử dụng lại lệnh tương tự, chúng ta đã chuyển từ thư mục gốc '/dev' sang '/'.

Đường dẫn tương đối và tuyệt đối

Đường dẫn trong máy tính là địa chỉ của một tập tin hoặc thư mục. Thí dụ -

In Windows : C:\documentsandsettings\user\downloads

Trong Linux :/home/user/downloads

Có hai loại đường dẫn:

1. Đường dẫn tuyệt đối:

Giả sử bạn phải duyệt các hình ảnh được lưu trong thư mục Pictures của thư mục chính 'guru99'. Đường dẫn file tuyệt đối của thư mục Pictures /home/guru99/Hình ảnh

Để điều hướng đến thư mục này, bạn có thể sử dụng lệnh.

Chu trình DevOps

Đây được gọi là đường dẫn tuyệt đối vì bạn đang chỉ định đường dẫn đầy đủ để truy cập tệp.

2. Đường dẫn tương đối:

Đường dẫn tương đối có ích khi bạn phải duyệt thư mục con khác trong một thư mục nhất định. Nó giúp bạn không phải mất công gõ các đường dẫn đầy đủ mọi lúc. Giả sử bạn hiện đang ở trong thư mục Home của mình. Bạn muốn điều hướng đến thư mục Tải xuống. Bạn không cần gõ đường dẫn tuyệt đối

Chu trình DevOps

Thay vào đó, bạn có thể chỉ cần gõ 'Tải xuống cd' và bạn sẽ điều hướng đến thư mục Tải xuống vì bạn đã có mặt trong '/home/guru99' thư mục

Chu trình DevOps

Bằng cách này, bạn không cần phải chỉ định đường dẫn đầy đủ để đến một vị trí cụ thể trong cùng thư mục trong hệ thống tệp.

Các Lệnh cơ bản Linux

ls command

ls

Liệt kê nội dung thư mục

ls -l
cd command

cd

Chuyển đổi thư mục

cd /home/user
pwd command

pwd

In đường dẫn thư mục hiện tại

pwd
mkdir command

mkdir

Tạo thư mục mới

mkdir new_folder
rm command

rm

Xóa tệp hoặc thư mục

rm file.txt
cp command

cp

Sao chép tệp/thư mục

cp file1.txt file2.txt
mv command

mv

Di chuyển hoặc đổi tên tệp

mv old.txt new.txt
cat command

cat

Xem nội dung tệp

cat file.txt
man command

man

Xem hướng dẫn sử dụng lệnh

man ls
chmod command

chmod

Thay đổi quyền truy cập tệp

chmod 755 script.sh

Các lệnh Linux nâng cao

1. rsync – Đồng bộ hóa tệp/thư mục hiệu quả

rsync command

rsync là công cụ mạnh mẽ để sao chép và đồng bộ hóa tệp/thư mục giữa các hệ thống, hỗ trợ nén, tiếp tục khi gián đoạn và chỉ truyền phần thay đổi.

Ví dụ:

rsync -avz /home/user/docs/ user@remote:/backup/docs/
  • -a: chế độ archive (giữ nguyên quyền, thời gian, symlink...)
  • -v: hiển thị chi tiết
  • -z: nén dữ liệu khi truyền

2. awk – Xử lý văn bản theo cột

awk command

awk là ngôn ngữ lập trình nhỏ gọn dùng để trích xuất và xử lý dữ liệu dạng bảng (ví dụ: file log, CSV) dựa trên dấu phân cách (mặc định là khoảng trắng).

Ví dụ:

awk '{print $1, $3}' data.txt

In cột thứ 1 và thứ 3 của mỗi dòng trong data.txt.

Ví dụ nâng cao: đếm số dòng có chứa "ERROR":

awk '/ERROR/ {count++} END {print count+0}' logfile.log

3. sed – Chỉnh sửa văn bản theo luồng (stream editor)

sed command

sed cho phép tìm kiếm, thay thế, xóa hoặc chèn văn bản mà không cần mở file — rất hữu ích trong shell script.

Ví dụ:

sed 's/foo/bar/g' file.txt

Thay thế mọi từ foo bằng bar trong file.txt (không ghi lại file).

Ghi kết quả trực tiếp vào file:

sed -i 's/foo/bar/g' file.txt

4. tar – Nén và giải nén thư mục

tar command

tar không nén theo mặc định, nhưng thường kết hợp với gzip (.tar.gz) hoặc bzip2 (.tar.bz2) để tạo file lưu trữ.

Ví dụ nén:

tar -czvf archive.tar.gz /path/to/folder

Ví dụ giải nén:

tar -xzvf archive.tar.gz
  • c: tạo archive
  • x: giải nén
  • z: dùng gzip
  • v: hiển thị chi tiết
  • f: chỉ định tên file

5. ssh – Truy cập từ xa an toàn

ssh command

ssh cho phép đăng nhập và chạy lệnh trên máy chủ từ xa qua kết nối mã hóa.

Ví dụ cơ bản:

ssh user@192.168.1.10

Để không phải nhập mật khẩu, dùng SSH key:

ssh-keygen -t ed25519
ssh-copy-id user@server

Sau đó, bạn có thể đăng nhập mà không cần mật khẩu.

6. cron – Lên lịch tác vụ tự động

cron command

cron là trình lập lịch chạy lệnh/script định kỳ (hàng phút, giờ, ngày...).

Mở trình soạn lịch:

crontab -e

Ví dụ: chạy backup mỗi ngày lúc 2h sáng:

0 2 * * * /home/user/backup.sh

Cú pháp: phút giờ ngày tháng thứ

Tổng kết về Linux và các lệnh

Linux là một hệ điều hành mã nguồn mở, mạnh mẽ và linh hoạt, được sử dụng rộng rãi từ máy chủ, thiết bị nhúng đến máy tính cá nhân. Một trong những điểm mạnh nổi bật của Linux chính là khả năng điều khiển và tự động hóa thông qua dòng lệnh (terminal). Các lệnh Linux — từ cơ bản như ls, cd, cp đến nâng cao như awk, rsync, ssh hay cron — không chỉ giúp người dùng thao tác nhanh chóng với hệ thống mà còn mở ra khả năng xây dựng script, quản trị mạng, xử lý dữ liệu hàng loạt và vận hành hệ thống ở quy mô lớn. Làm chủ các lệnh này đồng nghĩa với việc bạn có thể khai thác tối đa sức mạnh của Linux: hiệu quả, ổn định, bảo mật và hoàn toàn tự do tùy biến theo nhu cầu. Dù bạn là lập trình viên, quản trị viên hệ thống hay người đam mê công nghệ, hành trình làm quen với Linux chính là bước đệm quan trọng để làm chủ thế giới máy tính hiện đại.