Professional Documents
Culture Documents
1|Page
2|Page
LỜI NÓI ĐẦU
Kính gửi thầy,
Em xin gửi đến thầy bản báo cáo bài tập lớn về chủ đề "Tìm hiểu về hệ
điều hành Linux " mà nhóm em đã hoàn thành. Báo cáo này là sản phẩm của sự
nỗ lực và cống hiến của các thành viên trong nhóm, trong quá trình hợp tác và
cùng nhau nghiên cứu chủ đề này.
Nhóm được hình thành trong môn học hệ điều hành và đã nhận được sự hỗ trợ
và hướng dẫn từ thầy để thực hiện bài tập lớn này. Chúng em đã cùng nhau thảo
luận, chia sẻ ý tưởng và đề xuất các giải pháp để thực hiện bài tập lớn . Mỗi thành
viên trong nhóm đã đóng góp công sức và kỹ năng của mình để đạt được kết quả tốt
nhất.Trong quá trình làm việc, nhóm đã đối mặt với nhiều thách thức và khó khăn.
Tuy nhiên, nhờ sự kiên nhẫn, sáng tạo và tinh thần hợp tác của toàn bộ thành viên,
chúng em đã vượt qua được những trở ngại và hoàn thành bài tập.
Hệ điều hành Linux, một trong những hệ điều hành mã nguồn mở phổ biến và
ảnh hưởng nhất trên thế giới, đã là nguồn động viên và nguồn cảm hứng không chỉ
cho các nhà phát triển và chuyên gia công nghệ mà còn cho toàn bộ cộng đồng toàn
cầu. Báo cáo này được tạo ra với mục tiêu khám phá và trình bày về hệ điều hành
Linux, một hệ thống mở, đa dạng, và mạnh mẽ, cung cấp cho người đọc cái nhìn
tổng quan và sâu sắc về nó.
Nhóm chúng em hiểu rằng báo cáo này chỉ có ý nghĩa thực sự khi nó được
nhận xét và đánh giá bởi thầy. Chúng em rất mong muốn nhận được sự phản
hồi, nhận xét, và hướng dẫn từ thầy để chúng em có thể phát triển và hoàn thiện
kiến thức của mình.
Chúng em xin chân thành cảm ơn thầy vì sự tận tâm và động viên trong suốt
quá trình thực hiện bài tập lớn này. Chúng em hy vọng rằng báo cáo này sẽ mang
lại giá trị và hữu ích cho thầy.
Trân trọng.
3|Page
LỜI NÓI ĐẦU ...................................................................................3
1. Tổng quan kiến thức về hệ điều hành Linux .. Error! Bookmark not defined.
1.1. Linux là gì? ............................................... Error! Bookmark not defined.
1.2. Lịch sử ra đời .............................................................................................. 8
1.3. Cấu trúc quan trọng của hệ điều hành Linux .............................................. 9
1.4. Lợi ích của Linux mang lại ....................................................................... 11
2. Ưu và nhược điểm của hệ điều hành Linux ............................................... 12
2.1. Ưu điểm của hệ điều hành Linux .............................................................. 12
2.2. Nhược điểm của hệ điều hành Linux ........................................................ 13
3. Tại sao nên sử dụng hệ điều hành Linux .................................................... 13
3.1. Tính ổn định tốt......................................................................................... 13
3.2. Độ bảo mật cao ......................................................................................... 13
3.3. Tính linh hoạt ............................................................................................ 13
3.4. Lựa chọn thoải mái ................................................................................... 13
3.5. Phần mềm miễn phí .................................................................................. 14
4. So sánh giữa 2 hệ điều hành Windows và Linux ....................................... 14
5. Tổng hợp các phiên bản của hệ điều hành Linux ...................................... 16
5.1. Ubuntu....................................................................................................... 16
5.2. Linux Mint ................................................................................................ 17
5.3. Debian ....................................................................................................... 19
5.4. Fedora ....................................................................................................... 20
5.5 CentOS Linux ............................................................................................ 21
5.6. OpenSUSE/SUSE Linux Enterprise ......................................................... 21
5.7. Mageia Linux ............................................................................................ 22
5.8. Slackware Linux ....................................................................................... 23
5.9. Puppy Linux .............................................................................................. 23
6. Phiên bản nào của hệ điều hành Linux là tốt nhất ? ................................. 24
7. Một số câu hỏi liên quan đến hệ điều hành Linux ..................................... 24
7.1. Unix Linux là gì? ...................................................................................... 24
4|Page
7.2. VPS Linux là gì? ....................................................................................... 25
8. Các chức năng của Linux ............................................................................. 25
8.1. Quản trị Linux ........................................................................................... 25
8.3. User’s account........................................................................................... 26
8.4. Login ......................................................................................................... 27
8.5. Shell .......................................................................................................... 27
8.6. Thư mục cá nhân....................................................................................... 28
8.7. Làm việc với Linux ................................................................................... 28
8.8. Hướng dẫn................................................................................................. 29
8.9. Logout ....................................................................................................... 29
8.10. Hệ thống tệp (file system)....................................................................... 30
8.11. Shell – Thông dịch lệnh .......................................................................... 30
8.12. Biến môi trường ...................................................................................... 31
8.13. Lệnh nội & ngoại .................................................................................... 31
8.14 Hệ thống tệp ............................................................................................. 33
8.15. Tệp /etc/fstab........................................................................................... 35
8.16. Các phần tử của FS ................................................................................. 35
8.17. Tệp thường(dữ liệu) ................................................................................ 35
8.18. Thư mục .................................................................................................. 36
8.19. Ngoại vi ký tự ......................................................................................... 38
8.20 Driver cho ngoại vi .................................................................................. 38
8.21. Ngoại vi giả ............................................................................................. 39
8.22. I/O chuẩn................................................................................................. 39
8.23. Chuyển hướng I/O .................................................................................. 40
8.24. Định hướng kép ...................................................................................... 40
8.25. Liên kết ................................................................................................... 40
8.26. Liên kết tượng trưng ............................................................................... 41
8.27 Truy nhập tệp ........................................................................................... 41
8.28. Kiểm soát truy nhập ................................................................................ 42
5|Page
8.29 Lệnh cho quyền truy nhập ....................................................................... 43
9. Tổng kết ......................................................................................................... 44
10. Tham Khảo .................................................................................................. 44
6|Page
1. Tổng quan kiến thức về hệ điều hành Linux
7|Page
Linux sẽ luôn được cải thiện và cập nhật liên tục các phiên bản mới nhất
và thực hiện vá lỗi ngay lập tức.
8|Page
1.3. Cấu trúc quan trọng của hệ điều hành Linux
Hình 1.3: Mô hình phân cấp các thành phần quan trong trong hệ điều hành Linux.
Nhân hay còn biết đến là (Kernel): Đây là phần vô cùng quan trọng, có
thể nói là đây là phần cốt lõi của hệ điều hành Linux. Phần nhân sẽ là nhiệm vụ
chính là quản lý những tài nguyên cứng và cung cấp các dịch vụ khác. Cụ thể,
Kernel giúp quản lý bộ nhớ, quản lý các tiến trình giúp giao tiếp với phần cứng
và hỗ trợ các tính năng cơ bản của hệ thống.
Shell: Tiếp đến, cấu trúc của hệ điều hành Linux sẽ bao gồm Shell. Có
thể hiểu rằng Shell chính là giao diện của người dùng trong dòng lệnh của hệ
điều hành.
Shell cho phép người dùng được tương tác với các hệ thống bằng cách
nhập các dòng lệnh và nhận những kết quả từ hệ thống. Nói một cách đơn giản
shell chính là môi trường dòng lệnh để người dùng giao tiếp với Linux.
Một số Shell phổ biến như Bash, Zsh, Fish và nhiều Shell khác.
9|Page
Hình 1.4: Shell in Linux
Hệ thống File (File System): Là hệ thống lúc này sẽ quản lý các dữ liệu
được lưu trữ, được tổ chức trên đĩa cứng hoặc các thiết bị lưu trữ khác.Linux hỗ
trợ rất nhiều loại hệ thống tệp, trong đó bao gồm: Ext4, Btrfs, XFS, và NTFS.
Tiến trình hay còn được gọi là (Process): Tiếp đến chính là phần tiến
trình, Linux sẽ quản lý toàn bộ những tiến trình có sử dụng bảng tiến trình để có
thể theo dõi và quản lý sự thay đổi của trạng thái của tiến trình. Cụ thể sẽ quản
lý những tài nguyên, các lập lịch thực thi và quản lý bộ nhớ.
10 | P a g e
Giao diện người dùng đồ họa (Graphical User Interface – GUI):Linux
cung cấp một số môi trường đồ họa như GNOME, KDE, Xfce và LXDE. GUI
cung cấp một giao diện đồ họa dễ sử dụng cho người dùng và cho phép họ tương
tác với các ứng dụng. Ngoài ra, người dùng còn có thể sử dụng hệ thống thông
qua các phần tử đồ họa như cửa sổ, biểu tượng và menu.
Các tiện ích và ứng dụng: Ngoài ra, hệ điều hành Linux sẽ đi kèm với
nhiều các tiện ích và tất cả các ứng dụng như: Trình duyệt web, chương trình trò
chơi, bộ văn phòng, trình chơi đa phương tiện, trình chỉnh sửa ảnh,…
Bảo mật mạnh mẽ: Linux có tính bảo mật cao. Với cộng đồng nguồn mở
rộng lớn, các lỗ hổng bảo mật thường được phát hiện và khắc phục nhanh chóng.
Hơn nữa, hệ điều hành này cung cấp các công cụ và cơ chế bảo mật mạnh mẽ như
hệ thống quyền hạn và phân quyền, giúp ngăn chặn các mối đe dọa từ phía bên
ngoài.
Tùy chỉnh và linh hoạt: Linux cho phép người dùng tùy chỉnh và điều
chỉnh hệ thống theo nhu cầu riêng. Bạn có thể thay đổi giao diện người dùng, cấu
hình hệ thống, và lựa chọn các thành phần phần mềm khác nhau để tạo ra một trải
nghiệm độc đáo và phù hợp với yêu cầu cá nhân.
Hiệu suất cao: Linux thường cho hiệu suất tốt hơn so với các hệ điều hành
khác. Nó sử dụng tài nguyên phần cứng một cách hiệu quả và có khả năng tối ưu
hóa hiệu năng hệ thống. Điều này đặc biệt hữu ích đối với các máy tính có cấu
hình thấp hoặc máy chủ đòi hỏi xử lý tải cao. Linux hỗ trợ nhiều nhiệm vụ chạy
đồng thời, cho phép người dùng thực hiện nhiều công việc mà không gặp tình
trạng chậm máy hoặc treo máy. Linux rất gọn nhẹ, yêu cầu tài nguyên phần cứng
cho việc chạy Linux nhẹ hơn so với những hệ điều hành khác hầu hết các phiên
bản Linux đều yêu cầu 128 MB ram cho cùng một dung lượng ổ đĩa.
Hỗ trợ phong phú từ cộng đồng: Linux có một cộng đồng nguồn mở lớn
và nhiệt tình. Người dùng Linux có thể tận dụng sự hỗ trợ đa dạng từ cộng đồng,
11 | P a g e
gồm các diễn đàn, mailing list, trang web hướng dẫn, và tài liệu phong phú. Điều
này giúp người dùng giải quyết vấn đề, tìm kiếm thông tin và chia sẻ kinh nghiệm.
Chi phí thấp hoặc miễn phí: Linux là một hệ điều hành mã nguồn mở,
nghĩa là bạn có thể tải về, cài đặt và sử dụng miễn phí. Điều này giúp tiết kiệm
chi phí phần mềm và giúp các tổ chức và cá nhân có thể tiết kiệm tài nguyên và
tập trung vào các mục tiêu khác.
Đa nền tảng: Linux có khả năng chạy trên nhiều nền tảng phần cứng khác
nhau, từ máy tính cá nhân, máy chủ đến thiết bị di động và nhúng. Điều này mang
lại sự linh hoạt và tương thích rộng rãi cho người dùng.
Hỗ trợ dài hạn: Một số phiên bản Linux, như các phiên bản dựa trên
RHEL (Red Hat Enterprise Linux) hoặc LTS (Long term Support) của Unbutu,
cung cấp hỗ trợ dài hạn, giúp duy trì hệ thống ổn định trong thời gian dài.
12 | P a g e
2.2. Nhược điểm của hệ điều hành Linux
Chính vì hệ điều hành chưa được sử dụng phổ biến nên vẫn chưa được các
nhà sản xuất thực hiện các tiến trình phát triển phần mềm có thể khai thác
Linux. Số lượng phần mềm mà hệ thống đang hỗ trợ còn nhiều hạn chế, ngay cả
Driver cũng không hỗ trợ trên hệ điều hành Linux.
13 | P a g e
3.5. Phần mềm miễn phí
Linux là một hệ điều hành mã nguồn mở, nghĩa là bạn có thể tải về, cài
đặt và sử dụng miễn phí. Điều này giúp tiết kiệm chi phí phần mềm và giúp các
tổ chức và cá nhân tiết kiệm tài nguyên và tập trung vào các mục tiêu khác.
Linux Windows
Linux được xây dựng dạng Được xây dựng dưới dạng
Cấu trúc tệp cây dữ liệu Forder
Registry Không Có
Trình quản các lý Quản lý theo gói là
gói (Package manager) *.exe
Giao diện hệ điều Giao diện tách rời với hệ Giao diện hiện tại đang
hành thống gắn liền với hệ thống
Tài khoản Rugular, Administrator
và quyền của (root), Administrator, Standard, Child
người dùng service và Guest
Đáp ứng được tất cả các nhu
Tham khảo một cầu:
số nhiệm Đáp ứng các nhu cầu như: lướt web, chat, chơi game, giải
vụ khác Lướt web, chat, email,… trí,…
Windows có sự tích hợp Linux cho phép tùy chỉnh cao
mạnh mẽ đối với
với các sản phẩm và dịch hệ thống và ứng dụng. Bạn có
vụ của thể tạo
Microsoft. Tùy chỉnh hạn ra một hệ thống theo ý muốn
Tích hợp và tùy chế so với các
chỉnh với Linux. thành phần mã nguồn mở và
14 | P a g e
phiên bản
tùy chỉnh.
15 | P a g e
5. Tổng hợp các phiên bản của hệ điều hành Linux
5.1. Ubuntu
So với các phiên bản khác của hệ điều hành Linux, thì phiên bản Ubuntu
được xem là phiên bản phổ biến nhất! Đây là phiên bản có những cải thiện đáng
kể giúp mang đến những trải nghiệm tốt nhất cho người dùng.
Ubuntu là một bản phân phối của Linux dự trên nền tảng Debian và bao gồm
phần lớn các phần mềm miễn phí và Open source. Ubuntu được phát hành dưới
3 phiên bản là Desktop,Server và IOT.
Ubuntu được phát hành 6 tháng 1 lần, còn thông thường khoảng 2 năm sẽ có
1 phiên bản được hỗ trợ lâu dài gọi là LTS (Long-Term Support).
Ubuntu hiện tại đang được phát triển bởi 1 công ty của anh tên là Canonical
và cộng đồng các developer.
+ Kubuntu: Bản phân phối Ubuntu sử dụng môi trường làm việc KDE.
+ Lubuntu : Phiên bản gọn nhẹ, sử dụng LXDE, được khuyên dùng cho các
máy tính cũ, cấu hình thấp.
+ Myth ubuntu là bản phân phối dành cho hệ thống kênh truyền hình
MythTV, thích hợp cho giải trí tại gia đình.
+ Ubuntu Studio phục vụ cho việc chỉnh sửa video và âm thanh chuyên
nghiệp, bao gồm nhiều phần mềm chỉnh sửa đa phương tiện.
16 | P a g e
Thư mục home – Trình quản lý File
Là một bản phân phối Linux được phát triển dựa vào Ubuntu LTS
Giao diện của Linux Mint được thiết kế để đem lại trải nghiệm thân thiện và
dễ sử dụng cho người dùng. Nó kết hợp các yếu tố của Windows 7 và macOS X
để tạo ra một giao diện hấp dẫn và quen thuộc.
17 | P a g e
Linux Mint được phát hành chính thức vào năm 2006 và được xây dựng nên
bởi cộng đồng những cộng tác viên trên toàn cầu và developer. Nó cung cấp
những chức năng, quy trình và hoạt động giống như Ubuntu, điểm khác biệt của
nó đó chính là tính dễ tương tác và giao diện của người dùng.
Hiện tại nó đang cung cấp cho người dùng ba tùy chọn để có thể lựa chọn
gồm có Xfce, MATE và Cinnamon. Cụ thể:
MATE desktop: Là máy tính để bàn theo dạng truyền thống tương tự như
thời GNOME 2.
Cinnamon desktop: 1 nét hiện đại của máy tính để bàn theo dạng truyền
thống.
Xfce desktop: 1 môi trường của máy tính để bàn nhẹ và phổ biến.
18 | P a g e
Themes, Applets và Desklets linh hoạt
5.3. Debian
Phiên bản Debian là một hệ điều hành Linux với sự ổn định cao và được xây
dựng dựa trên triết lý tự do và mã nguồn mở. Debian được phát triển bởi cộng
đồng và sử dụng mô hình phát triển bất kỳ ai có thể tham gia.
Debian có một loạt các phiên bản khác nhau, gọi là “bản phân phối”
(distributions). Mỗi phiên bản có mục tiêu và mục đích sử dụng riêng, từ các
phiên bản ổn định (stable) đến các phiên bản thử nghiệm (testing) và phiên bản
không ổn định (unstable).
Phiên bản ổn định của Debian được khuyến nghị cho việc triển khai sản
xuất và đòi hỏi sự ổn định cao nhất.
19 | P a g e
5.4. Fedora
Phiên bản Fedora của hệ điều hành Linux là một lựa chọn tuyệt vời cho
những người muốn tự do phát triển và tùy chỉnh máy tính của mình theo ý muốn.
Fedora thúc đẩy sự tự do và mã nguồn mở, mang đến cho người dùng quyền
kiểm soát và điều chỉnh mọi khía cạnh của hệ thống.
Với sự hỗ trợ sẵn có cho các công cụ và nền tảng lập trình, Fedora là một
lựa chọn tuyệt vời cho lập trình viên. Nó cung cấp môi trường phát triển phong
phú với các công cụ như GCC (GNU Compiler Collection), Python, Java và
nhiều công cụ khác.
Fedora cũng hỗ trợ sẵn các thư viện và framework phổ biến, giúp lập trình
viên tiết kiệm thời gian và công sức trong việc phát triển ứng dụng.
20 | P a g e
5.5 CentOS Linux
Phiên bản CentOS của hệ điều hành Linux là một bản phân phối Linux
miễn phí và mã nguồn mở dựa trên mã nguồn của Red Hat Enterprise Linux
(RHEL).
CentOS được thiết kế để cung cấp một phiên bản tương đương với RHEL
với mục tiêu cung cấp sự ổn định, bảo mật và hỗ trợ lâu dài. CentOS không chứa
các thương hiệu hoặc logo của Red Hat và không có sự hỗ trợ chính thức từ Red
Hat.
Tuy nhiên, nó cung cấp các gói phần mềm và bản vá bảo mật tương tự như
RHEL và có thể được sử dụng như một sự thay thế miễn phí cho RHEL trong
môi trường doanh nghiệp.
21 | P a g e
Có thể khẳng định rằng Open SUSE đáp ứng được tất cả các nhu cầu của
bạn vì có thể cập nhật liên tục tất cả các phần mềm nhưng vẫn đảm bảo được
tính ổn định nhất!
Mageia chú trọng vào việc cung cấp một hệ điều hành dễ sử dụng, ổn định
và đa chức năng cho các máy tính cá nhân và máy chủ. Nó được xây dựng trên
nền tảng công nghệ như RPM (Red Hat Package Manager) và urpmi, cung cấp
quản lý gói mạnh mẽ và dễ dùng.Quye
Các phiên bản của Mageia được đánh số theo hệ thống số hiệu, ví dụ như
Mageia 7, Mageia 8 và tiếp tục. Mỗi phiên bản đi kèm với các bản vá bảo mật,
cải tiến và phiên bản mới nhất của các phần mềm quan trọng.
Mageia cũng có một chu kỳ phát hành định kỳ để đảm bảo tính ổn định và
hỗ trợ cho người dùng.
22 | P a g e
5.8. Slackware Linux
Phiên bản Mageia của hệ điều hành Linux là một bản phân phối Linux độc
lập và mã nguồn mở. Nó được phát triển bởi cộng đồng người dùng và được tạo
ra như là một sự tiếp nối từ Mandriva Linux, một bản phân phối Linux khác.
Mageia chú trọng vào việc cung cấp một hệ điều hành dễ sử dụng, ổn định
và đa chức năng cho các máy tính cá nhân và máy chủ. Nó được xây dựng trên
nền tảng công nghệ như RPM (Red Hat Package Manager) và urpmi, cung cấp
quản lý gói mạnh mẽ và dễ dùng.
Các phiên bản của Mageia được đánh số theo hệ thống số hiệu, ví dụ như
Mageia 7, Mageia 8 và tiếp tục. Mỗi phiên bản đi kèm với các bản vá bảo mật,
cải tiến và phiên bản mới nhất của các phần mềm quan trọng.
Mageia cũng có một chu kỳ phát hành định kỳ để đảm bảo tính ổn định và
hỗ trợ cho người dùng.
Điểm đặc biệt của Puppy Linux là kích thước nhỏ, thường chỉ khoảng vài
trăm megabyte, và khả năng chạy trực tiếp từ ổ đĩa CD, USB hoặc cài đặt trên ổ
cứng.
Bạn có thể khởi động máy tính từ một đĩa Puppy Linux mà không cần cài
đặt nó lên hệ thống. Điều này giúp tiết kiệm không gian lưu trữ và cho phép bạn
sử dụng Puppy Linux trên nhiều máy tính khác nhau.
23 | P a g e
6. Phiên bản nào của hệ điều hành Linux là tốt nhất ?
Theo như chia sẻ của Linux thì phiên bản Linux Mint đang chính là phiên
bản mới nhất, cũng như là phiên bản tốt nhất và đang được xây dựng để cạnh
tranh trực tiếp với Windows và MacOs.
Có thể khẳng định rằng đây chính là bản phân phối mã nguồn mở miễn phí
hỗ trợ cài đặt nhanh chóng và dễ dàng nhất! Người dùng hoàn toàn có thể sử
dụng bằng cách sở hữu một chiếc USB hoặc DVD trắng.
Hiện tại, Linux đang cung cấp và hỗ trợ đa phương tiện có thể dễ dàng kết
nối và hoàn tất cài đặt.
Một số những lý do mà bạn nên sử dụng phiên bản mới nhất của hệ điều
hành Linux là:
● Nhanh chóng khởi động ngay sau khi cài đặt
● Kho phần mềm sẽ nhẹ hơn giúp bạn sử dụng nhanh chóng hơn
● Sử dụng bộ nhớ tiết kiệm
● Có thể tùy chỉnh giao diện với bất kỳ những phiên bản khác
● Cung cấp được đa dạng các ứng dụng
● Có thể tích hợp Flash, Codecs và nhiều những ứng dụng mặc định khác.
Unix cung cấp một sự hỗ trợ tuyệt vời cho việc phát triển ứng dụng mạng
và lập trình.
Unix có thể được coi là một hệ điều hành tiên phong trong việc mang lại
tính đa nền tảng và độ ổn định cao. Với cấu trúc module, Unix cho phép người
dùng tùy chỉnh hệ thống theo nhu cầu cụ thể của họ.
24 | P a g e
Các công cụ trong Unix được thiết kế để thực hiện một nhiệm vụ cụ thể và
có khả năng tương tác với nhau thông qua giao diện chuẩn.
25 | P a g e
○ Một số tác vụ cơ bản
○ Shell, tập lệnh
● Cấu hình hệ thống, thiết bị
● Quản trị Linux trên LAN
● Cài đặt ứng dụng
8.2. User
26 | P a g e
8.4. Login
● Mở một phiên làm việc
○ Nhập tên NSD + mật khẩu
○ Nếu OK => shell
■ Thực hiện một số lệnh ngầm định (.bashrc, .bash_profile)
■ Khởi tạo một số biến môi trường ($PATH, $HOME…)
■ Vào thư mục ngầm định (home directory)
○ Một số lệnh đầu tiên:
■ whoami: hiển thị tên login
■ id: hiển thị UID, GID, groups
■ pwd: hiển thị thư mục hiện thời
■ passwd: đổi mật khẩu
8.5. Shell
● Chương trình hệ thống = giao diện người-máy
○ Bourne shell (sh): Steven Bourne, AT&T
○ Korn Shell (ksh): David G. Bourne, AT&T
27 | P a g e
○ C_Shell (csh): Bill Joy, UC Berkeley • Tenex Shell (tcsh): mở rộng
csh
○ Bourne Again Shell (bash): Brian Fox, FSF(Linux)
● 3 vai trò
○ Thông dịch lệnh
○ Xác định chủ nhân cho session làm việc
○ Ngôn ngữ lập trình
28 | P a g e
○ Đồ họa
■ GNOME, KDE/ X-Window (XFree86)
■ Khá giống giao diện MS Window
8.9. Logout
• Dòng lệnh
29 | P a g e
o Lệnh ‘exit’
▪ Kết thúc shell của NSD hiện thời
▪ Cho phép đăng nhập NSD mới (hiển thị ‘login:’)
• Đồ họa
o Lệnh ‘exit’ trong một cửa sổ dòng lệnh
o Đóng cửa sổ (sub-shell)
• Chọn ‘End Session’ trong menu chính
o Kết thúc NSD hiện thời (đóng tất cả các ứng dụng đang mở)
o Cho phép đăng nhập NSD mới
30 | P a g e
o hiển thị dấu nhắc ($) và chờ bàn phím
o đọc dòng lệnh (RETURN)
o phân tích cú pháp (chặt thành các từ)
o thay thế ký tự đặc biệt
o thực hiện lệnh
• Thoát khỏi vòng lặp (disconnect/logout)
o exit, hoặc CTRLD (nên tránh)
31 | P a g e
o Không phát sinh tiến trình mới
o Xem manual help <cmd> hoặc man bash
cp thisfile.txt
Copies files copy cp
/home/thisdirectory
mv thisfile.txt
Move files move mv
/home/thisdirectory
List files dir ls ls
Clears screen cls clear Clear
Close prompt
exit exit exit
window
Displays or sets
date date date
date
Deletes files del rm rm thisfile.txt
“Echoes” output
echo echo echo this message
on the screen
Edits files with
simple text edit pico(a) pico thisfile.txt
editor
Compares the
fe diff diff file1 file2
contents of files
32 | P a g e
Finds a string of grep this word or
find grep
text in a file phrase thisfile.txt
format a: mke2fs
/sbin/mke2fs /dev/fd0
Formats a (if or
(/dev/fd0 is the Linux
diskette diskette mformat
equivalent of A:)
is in A:) (s)
Displays comman
man(c) man command
command help d /?
Creates a
mkdir mkdir mkdir directory
directory
View a file more less(4) less thisfile.txt
mv this file.txt
Renames a file ren mv
thatfile.txt(e)
Displays your
location in the chdir pwd pwd
file system
Changes
directories with cd cd
a specified path pathnam pathnam cd /directory/directory
(absolute e e
path)
Changes
directories with cd .. cd .. cd ..
a relative path
Displays the
time date date
time
Shows amount
mem free free
of RAM and use
33 | P a g e
o = lệnh mount/umount
people local
jdoe dsmith
34 | P a g e
8.15. Tệp /etc/fstab
• Lệnh df
o Thông báo về hiện trạng các sub-filesystem
o Các HTT đang được sử dụng (mounted)
35 | P a g e
o “ưu ái” các tệp nhỏ (chiếm đa số)
36 | P a g e
• Tạo thư mục : mkdir <dir_name>
o 2 thư mục con mặc định : ..= cha, .= chính mình
o Lệnh cd.. = về thư mục cha
• Xóa thư mục: rmdir <dir_name>
o Thư mục phải rỗng
• Liệt kê thư mục : ls<dir_name>
o Tùy chọn –a, -l
• Tên tệp
o Không phân loại tệp theo đuôi (‘.’ là kí tự bình thường)
o Qui ước: tên tệp bắt đầu bằng ‘.’ : tệp bị che (tệp cấu hình)
37 | P a g e
8.19. Ngoại vi ký tự
38 | P a g e
8.21. Ngoại vi giả
● Phần tử được quản lý như những ngoại vi (có driver) song không gắn
với một phần tử vật lý
● Ngoại vi ảo:
● Sau khi đăng nhập, shell có 3 kênh giao tiếp định trước:
o Ống nối (cmd1|cmd2) nối stdout của cmd1 với stdin của cmd2
39 | P a g e
8.23. Chuyển hướng I/O
● Cả stdout(1) và stderr(2)
o Một redirection chỉ có giá trị trong thời gian chạy lệnh command
o Nếu tệp filename đã tồn tại thì việc định hướng lại sẽ ghi đè lên nội
dung cũ
● Redirection kép xóa bỏ hạn chế này. Output được nối vào đuôi
(append) filename
o Nếu filename chưa tồn tại thì nó sẽ được tạo lập (như với
redirection đơn)
● Hạn chế
● Không thể link giữa 2 FS (hardlink)
● Đọc r (read)
● Ghi w (write)
● Chạy x (execute)
41 | P a g e
● Còn lại (others)
● Ví dụ: rwxr-xr--
● Nếu không, so sánh GID của tiến trình với GID của tệp
o Nếu bằng, kiểm tra quyền đọc r của group
● Chú ý:
● Phân biệt 2 UID:
● UID đăng nhập NSD và UID thực (tiến trình)
● Thông thường UID tiến trình UID đăng nhập (default)
o Có thể khác trong một vài ngoại lệ
● Quyền x
● Với danh cho phép vào và đi qua mục,cho phép vào và đi qua
● Không có ý nghĩa với một tệp đặc biệt (special)
42 | P a g e
● Mọi xử lý trên một tệp đều được kiểm soát từ 3 quyền r, w và x của tệp
● Tạo mới một tệp, đổi tên (mv) và xóa tệp (rm)
o Kiểm soát qua quyền w của thư mục
● Xóa tệp phụ thuộc vào quyền của tiến trình trên thư mục chứ
không phải trên bản thân tệp bị xóa
o Nếu NSD có quyền w trên thư mục thì anh ta có thể xóa
mọi tệp trong đó, kể cả tệp không có quyền đọc.
Một số quyền khác
● Chỉ áp dụng cho các tệp nhị phân (binary)
● Bit SUID (S) chạy chương trình với UID của chủ nhân chương
trình
o Cho phép tăng quyền cho NSD một cách an toàn trong
khuôn khổ
chương trình đang chạy
o Ví dụ: tiện ích mail có bit SUIB root để có quyền ghi vào
hộp thư của
người khác.
● Bit SGID (s): chạy chương trình với GID của group của chủ nhân
chương trình
● Sticky bit(t): giữ lại ảnh trong RAM sau khi kết thúc
o Chương trình được gọi thường xuyên
43 | P a g e
9. Tổng kết
Hệ điều hành Linux, một trong những hệ điều hành mã nguồn mở phổ biến và
ảnh hưởng nhất trên thế giới, đã là nguồn động viên và nguồn cảm hứng không chỉ
cho các nhà phát triển và chuyên gia công nghệ mà còn cho toàn bộ cộng đồng toàn
cầu.
44 | P a g e
45 | P a g e
46 | P a g e
47 | P a g e