Làm quen với cấu trúc file của Linux
Nhìn “bề nổi” thì cấu trúc và cách tổ chức file của Linux cũng không khác DOS/Windows và các Hệ điều hành khác là mấy. Chỉ có một điểm khác biệt lớn mà bạn cần phải chú ý là cấu trúc thư mục của Linux KHÔNG phân chia thành các ổ đĩa. Cho dù bạn có bao nhiêu ổ đĩa thì tất cả đều bắt đầu từ một thư mục gốc có tên là /. Sau đó là đi vào các thư mục con, mỗi ổ đĩa của bạn sẽ được “map” (ánh xạ) vào một thư mục con riêng biệt (thư mục nào thì còn tuỳ vào phiên bản của Linux và cũng tuỳ bạn qui định).

Thêm 3 điểm khác biệt nhỏ nữa mà bạn cần phải để ý là
– trong đường dẫn của Linux, các thư mục được phân cách nhan bằng ký hiệu / (trong khi với DOS/Windows là ký hiệu \);
– và các tham số của lệnh trong Linux được bắt đầu bằng dấu trừ (-) (VD: ls -l) trong khi với DOS/Windows là ký hiệu / (VD: dir /a); các tham số của Linux có thể được dùng kết hợp với nhau (VD: ls -al, ls -ls…)
– cuối cùng, Linux khác với Windows ở chỗ Linux phân biệt chữ hoa và chữ thường, trong Linux abc và Abc là khác nhau.

Một số phím/tổ hợp phím bạn cần biết
Ctrl-C: bạn hãy nhớ kỹ tổ hợp phím này. Trong trường hợp bạn cảm thấy “có cái gì đó bất ổn” xảy ra, hay là chương trình bạn chạy không chịu dừng thì bạn hãy thử nhấn tổ hợp phím này. 99% chương trình của Linux chạy trên chế độ text đều có thể được/bị kết thúc bằng tổ hợp phím này.

Ctrl-Alt-Del: tương tự như trong DOS. Tổ hợp phím này sẽ khởi động lại máy tính.

Ctrl-D: khi một chương trình yêu cầu bạn nhập dữ liệu từ bàn phím, bạn có thể nhấn tổ hợp phín này để báo cho chương trình biết là quá trình nhập dữ liệu đã kết thúc. Tổ hợp phím này sẽ gởi tín hiệu EOF (End Of File) đến chương trình.. Nếu nhấn Ctrl-D mà không thấy “xi nhê”, bạn thử gõ vào EOF (ba chữ cái E, O và F) rồi nhấn Enter (phím Enter).

ESC: đây là phím Esc ở góc trái, phía trên của bàn phìm, trước khi nhấn Ctrl-C để kết thúc chương trình, bạn hãy thử nhấn ESC trước xem sao.

ENTER: đây là phím Enter trên bàn phím, chắc là tôi khỏi phải giới thiệu về chức năng của phím này nữa chứ nhỉ?

Một số lệnh căn bản của Linux
Các lệnh được trình bày sau đây tôi sẽ cố gắng so sánh nó với một lệnh tương tự trong DOS để nếu như bạn đã biết qua các lệnh của DOS rồi thì sẽ dễ hiểu hơn. Còn nếu bạn chưa từng biết qua các lệnh của DOS? Cũng không sao, bạn sẽ biết được thêm cùng 1 lúc các lệnh của Linux và DOS. Chú ý, đây là các lệnh trong chế độ text và được gõ từ bàn phím. Các lệnh phải được gõ chính xác (vì Linux phân biệt giữ chữ hoa và chữ thường!). Và dĩ nhiên là sau khi gõ xong một lệnh thì bạn đừng quên nhấn Enter để Linux bắt đầu thực hiện lệnh đó!🙂 Lưu ý thêm là những gì tôi ghi giữa 2 ngoặc nhọn (< và >) là bắt buộc phải có, giữa hai ngoặc vuông ([ và ]) là tuỳ chọn (không bắt buộc).
man đây có lẽ là lệnh mà bạn cần phải nhớ kỹ (đừng bao giờ quên!). Lệnh này tương tự như lệnh Help trong DOS. man sẽ hiển thị các thông tin chi tiết về cộng dụng, cách dùng và cú pháp của một lệnh khác (dĩ nhiên là các thông tin đều bằng tiếng Anh).
Cú pháp: man <tên_lệnh_khác>
Ví dụ: man ls

Và bạn hoàn toàn có thể gõ man man để hiển thị các thông tin giúp đỡ về chính lệnh man!

Lưu ý: để thoát (kết thúc) lệnh man, bạn hãy gõ vào ký tự hai chấm (Smiley sau đó gõ tiếp ký tự q. Nếu không thành công, bạn hãy nhấn phím ESC và thử lại lần nữa. Bạn cũng có thể nhấn Ctrl-C để thoát khỏi man.

ls lệnh này tương tự như lệnh dir trong DOS. ls sẽ liệt kê danh sách tất cả các file và thư mục nằm trong một thư mục mà bạn chỉ định.
Cú pháp chung: ls [tham_số] [thư_mục]
Nếu như bạn cung cấp phần thư_mục thì ls sẽ liệt kê các file trong thư mục hiện tại.
Ví dụ:
ls
ls -a
ls -al /usr

Một số tham số của ls như sau:

-a: liệt kê tất cả các file, kể cả file ẩn, là những file mà tên bắt đầu bằng dấu chấm (.)
-A: liệt kê tất cả các file, kể cả file ẩn, nhưng không liệt kê . và .., đây tên của thư mục hiện tại và thư mục cha trong Linux.
-l: liệt kê chi tiết về file (bao gồm các thông tin như thời gian tạo, kích thước, thuộc tính…).

Bạn hãy tự mình tìm hiểu thêm về các tham số khác của ls nhé! (dùng man ls). Và đừng quên dùng man cho các lệnh tiếp theo.

cd lệnh này tương tự như lệnh cd trong DOS. Dùng để  chuyển tới một thư mục khác.
Cú pháp: cd [tên_thư_mục]
Ví dụ: cd /home

Nếu bạn không cung cấp tên_thư_mục thì cd sẽ đưa bạn về thư mục “tổ ấm” (home directory) của bạn. Trong Linux, mỗi người sử dụng đều có một home directory. Nếu username của bạn là nbthanh thì home directory của bạn sẽ là /usr/nbthanh. Riêng account root sẽ có home directory là /root.
passwd lệnh này tương tự như lênh cd (không có tham số) trong DOS. Lệnh này sẽ hiển thị lên màn hình cho bạn biết là bạn hiện đang ở thư mục nào.
Cú pháp: pwd
mkdir tương tự như lệnh md của DOS. Lệnh này dùng để tạo một thư mục mới.
Cú pháp: mkdir <tên_thư_mục_muốn_tạo>
Ví dụ:
mkdir mydir
mkdir /tmp/mydir2
rmdir tương tự như lệnh rm trong DOS, dùng để xoá một thư mục.
Cú pháp: rmdir <thư_mục_muốn_xoá>
Ví dụ:
rmdir mydir
rmdir /tmp/mydir2
rmdir /tmp/*

Lưu ý: bạn chỉ có thể xoá được thư mục nếu như nó rỗng, nghĩa là nó không chứa một file hoặc thư mục con nào nữa (ngoài . và ..).
cp tương tự như lệnh copy của DOS, dùng để chép file hoặc thư mục từ nơi này đến nơi khác.
Cú pháp: cp [tham_số] <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích>
Ví dụ:
cp /tmp/myfile.txt myfile.text
cp /home/*.cgi ./
cp -r /usr/nbthanh1 /usr/nbthanh2

Mặc định thì cp chỉ chép các file, nếu bạn thêm tham số -r thì cp sẽ chép luôn các thư mục.

rm tương tự như lệnh del trong DOS, lệnh này dùng để xoá file.
Cú pháp: rm <tên_file_muốn_xoá>
Ví dụ:
rm myfile.txt
rm /usr/nbthanh/nbtfile.txt
rm /tmp/*

mv tương tự như lênh move (ngoại trú) của DOS. Lệnh này sẽ di chuyển/đổi tên file từ nơi này đến nơi khác.
Cú pháp: mv <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích>
Ví dụ về di chuyển:
mv /tmp/myfile.txt /usr/nbthanh
mv myfolder /tmp
mv /usr/* /tmp
Ví dụ về đổi tên, vừa di chuyển vừa đổi tên:
mv myfile1.txt myfile2.txt
mv /usr/oldfoler ./newfolder

cat tương tự như lệnh type của DOS. Lệnh này dùng để hiển thị nội dung của 1 file lên màn hình.
Cú pháp: cat <tên_file_cần_hiển_thị>
Ví dụ:
cat myfile.txt
cat /tmp/temp.text
Vậy là đã xong, tôi đã trình bày với bạn một số lệnh căn bản nhất của Linux. Bạn tự mình ra bài tập và thực hành nhé! Có thể bạn sẽ thắc mắc là tại sao không có lệnh nào tương tự như copy con trong DOS? Vâng đúng là như vậy, trong Linux, để tạo file thì bạn phải dùng một chương trình cụ thể (như một chương trình soạn thảo văn bản chẳng hạn) chứ không có lệnh tương tự nhu copy con của DOS.

Làm quen với Linux
Linux là hệ điều hành đa người dùng, nghĩa là nhiều người có thể truy cập và sử dụng 1 máy tính cài Linux. Mỗi người muốn sử dụng được máy tính cài Linux thì phải có 1 account đã được đăng ký. Một accout gồm có 1 username và 1 password. Hai người khác nhau sẽ có 2 username khác nhau (nhưng password thì có thể trùng nhau). Để có thể bắt đầu thao tác và sử dụng, người dùng phải thực hiện thao tác đăng nhập (login và hệ thống). Quá trình này tóm gọn lại là 2 thao tác nhập vào username và password. Username và password cũng phân biệt chữ hoa và chữ thường. Và khi nhập vào password, trên màn hình sẽ không hiển thị bất cứ ký tự nào.

Linux có 1 account đặc biệt là account root. Đây là user có cấp cao nhất, có toàn quyền “sinh sát” đối với toàn hệ thống.

Mỗi người dùng trên Linux được cấp một thư mục riêng (gọi là home directory), là một thư mục con của /usr. Có dạng /usr/username; nghĩa là nếu username bạn là nbthanh thì home directory của bạn là /usr/nbthanh. Riêng đối với accout root thì home directory là /root. Các user có thể cùng thuộc một nhóm (group) hoặc là khác nhóm; các user trong cùng một nhóm thì có quyền hạn như nhau. Thường thì tất cả các user đều thuộc vào nhóm User (trừ root và các account dành riêng cho hệ thống).

User chỉ có quyền thao tác trong home directory của mình (và những thư mục khác được phép của hệ thống) mà thôi. User này không thể truy cập vào home directory của user khác (trừ trường hợp được chính user đó hoặc root cho phép). Mỗi tập tin (file) và thư mục trên Linux đều được “đăng ký chủ quyền”, nghĩa là thuộc về một user và nhóm nào đó. Thường thì tập tin và thư mục được tạo bởi user nào thì sẽ thuộc về user đó. VD username của bạn là nbthanh, bạn thuộc nhóm user và bạn tạo ra 1 tập tin có tên là myfile.txt thì tập tin myfile.txt sẽ được đánh dấu là “người sử hữu: nbthanh; thuộc về nhóm: user”. Những user khác không thể truy cập được myfile.txt nếu không được phép của bạn. Bạn hoàn toàn có thể thay đổi “chủ sở hữu” của tập tin/thư mục bằng các lệnh của Linux. Bạn hoàn toàn có thể đặt myfile.txt thuộc về user nbthanh nhưng lại thuộc về nhóm guests (mặc dù user nbthanh không nằm trong nhóm guests).

Một số lệnh căn bản của Linux
Đây là các lệnh trong chế độ text và được gõ từ bàn phím. Các lệnh phải được gõ chính xác (vì Linux phân biệt giữ chữ hoa và chữ thường!). Sau khi gõ xong một lệnh bạn đừng quên nhấn Enter để Linux bắt đầu thực hiện lệnh đó!🙂 Lưu ý thêm là những gì tôi ghi giữa 2 ngoặc nhọn (< và >) là bắt buộc phải có, giữa hai ngoặc vuông ([ và ]) là tuỳ chọn (không bắt buộc). Và cuối cùng: đừng quên dùng lệnh man để xem thêm thông tin hướng dẫn về các lệnh
exit && logout trong text mode, Linux cung cấp cho bạn 6 desktop (tty1…tty6) để làm việc. Bạn có thể bật chuyển qua lại giữa các desktop bằng cách nhấn tổ hợp phím Alt-F1…Alt-F6. Hai lệnh exit và logout kết thúc phiên làm việc của desktop hiện tại và trở về màn hình login.
Cú pháp:
exit
logout
chown lệnh này dùng để thay đổi “chủ sở hữu” của 1 tập tin hay thư mục, tức là gán cho tập tin hoặc thư mục chỉ điịnh thuộc về quyền sở hữu của một user nào đó.
Cú pháp:
chown username[.groupname] <tên_file_hoặc_thư_mục>
chown .groupname <tên_file_hoặc_thư_mục>
Bạn cung cấp username thì file/thư mục sẽ được đặt là thuộc quyền sở hữu của username đó. Nếu bạn cung cấp groupname thì file/thư mục sẽ thuộc về nhóm groupname đó. Hai phần này độc lập với nhau, thay đổi quyền sở hữu user sẽ không làm thay đổi quyền sở hữu group và ngược lại.

Ví dụ: có file guestfile.txt thuộc về user abc thuộc về group guests, có một user nbthanh thuộc về nhóm moderators, file myfile.txt thuộc về quyền sở hữu của nbthanh và thuộc về nhóm moderator.
user              group
guetsFile.txt              abc              guests
Myfile.txt                 NTBINH         moderators

sau khi thực hiện lệnh chown nbthanh guestfile.txt
user              group
guetsFile.txt             NTBINH             guests
Myfile.txt                 NTBINH         moderators

sau khi thực hiện lệnh chown .guests myfile.txt
user              group
guetsFile.txt             NTBINH            guests
Myfile.txt                 NTBINH            guests
sau khi thực hiện lệnh chown abc.moderators *.txt
user              group
guetsFile.txt              abc             moderators
Myfile.txt                  abc             moderators

chmod lệnh này dùng để thay đổi thuộc tính của tập tin hoặc thư mục. Các thuộc tính đó là đọc (read), ghi (write) và thực thi (execute). Thuộc tính của tập tin/thư mục bao gồm 9bit, chia thành 3 phần như sau (r = read, w = write, x = execute):

Nếu các bit trong phần owner được bật (đặt bằng 1) thì user sở hữu tập tin/thư mục đó được quyền thao tác các lệnh tương ứng (đọc, ghi, thi hành) với tập tin/thư mục; nếu các bit trong phần group được bật thì tất cả các user nằm trong nhóm sở hữu tập tin/thư mục đó sẽ được quyền thao tác các lệnh tương ứng; và nếu các bit trong phần public được bật thì các user thuộc các nhóm khác cũng có quyền thao tác với tập tin/thư mục (nếu bạn muốn tập tin/thư mục của bạn được truy cập từ internet thì bác bit tương ứng trong phần public phải được bật).

Lưu ý: khi bạn thay đổi thuộc tính bằng lệnh chmod thì bạn có thể dùng các chữ cái r, w, x để chỉ thuộc tính hoặc mã hoá các thuộc tính thành số tương ứng. Chú ý là khi mã hoá các thuộc tính thành số thì bạn phải dùng hệ cơ số 8. Sau đây là một số ví dụ:

Cú pháp:
chmod thuộc_tính_dạng_chữ <tên_file_hoặc_thư_mục>
chmod thuộc_tính_dạng_số <tên_file_hoặc_thư_mục>
Ví dụ: dùng thuộc tính dạng số
chmod 755 cgi-bin
chmod 744 /user/nbthanh/images/*.gif

Với thuộc tính dạng chữ thì cách dùng có khác một tí, bạn phải chỉ rõ là bạn muốn thay đổi thuộc tính của phần nào (u = owner, g = group, o = public, a = all); bạn muôn bật (+) hay tắt(-) thuộc tính; và cuối cùng là bạn muốn thay đổi thuộc tính nào (r = read, w = write, x = execute).
Ví dụ: có tập tin myfile.txt lúc ban đầu có thuộc tính là rwxr–r–

useradd lệnh này dùng để thêm 1 account vào hệ thống.
Cú pháp: useradd username
Ví dụ: useradd nbthanh

Lưu ý:

Bạn phải login với account root mới có thể thực hiện lệnh này.
Sau khi tạo 1 account mới, bạn phải dùng mkdir để tạo home directory (dạng /usr/username) cho user mới tạo.
Và bạn phải làm thêm 1 bước tiếp theo là dùng lệnh passwd để đặt mật mã (password) cho account mới tạo.

userdel lệnh này dùng để xoá 1 account ra khỏi hệ thống.
Cú pháp: userdel username
Ví dụ: userdel nbthanh

passwd dùng để thay đổi mật mã của 1 account.
Cú pháp: passwd [username]
Ví dụ:
passwd
passwd nbthanh

Nếu bạn không cung cấp username, lệnh passwd sẽ đổi mật mã của user hiện tại (user đang chạy lệnh passwd). Và nếu bạn muốn thay đổi mật mã của một user khác thì bạn phải login với account root.

Lưu ý:

Sau khi chạy lệnh passwd, bạn sẽ phải nhập vào mật mã mới, nhấn Enter, và nhập lại mật mã mới một lần nữa, rồi Enter. Mật mã nhập vào sẽ không hiển thị BẤT CỨ ký tự nào lên màn hình.
Một số bản Linux bắt buộc bạn phải nhập vào mật mã cũ trước khi cho phép bạn thay đổi mật mã.

telnet lệnh này có trên cả Windows và Linux. Bạn dùng lệnh telnet để login vào một hệ thống chạy Linux (và có thể là Windows) từ xa thông qua mạng LAN hoặc internet.
Cú pháp: telnet <địa_chỉ_của_máy_tính_muốn_truy_câp>
Ví dụ:
telnet 192.168.0.1
telnet myname.mydomain.com

Sau khi telnet kết nối thành công, bạn sẽ được nhắc nhập vào username và password để login. Sau khi login thành công thì xem như là bạn đã ở trên một hệ thống Linux thự sự, bạn có thể thực hiện được tất cả các lệnh đã biết.

Lưu ý: vì lý do bảo mật, bạn không thể dùng telnet để login với account root.

su Nếu bạn đang login, bạn có dùng lệnh này để login với một account khác mà không cần phải logout trước. Thường thì lệnh su được dùng để login vào account root. qua đường telnet. Vì telnet không cho phép bạn login với account root, nên trước hết bạn phải login với 1 account khác, sau đó dùng lệnh su để login với account root.
Cú pháp: su

Sau khi thực hiện lệnh su (không có tham số), bạn sẽ phải nhập vào password của root. Nếu thành công, bạn đã truy cập được vào hệ thống với account root. Bạn dùng lệnh exit hoặc logout để thoát khỏi account root và trở về làm việc với account của bạn.