Download as pdf or txt
Download as pdf or txt
You are on page 1of 39

TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.

KHOA CÔNG NGHỆ THÔNG TIN.


MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 1: KHẢO SÁT HỆ ĐIỀU HÀNH WINDOWS


(SV thực hiện tại lớp)
***
1. Khảo sát & thực hiện các chức năng quản lý đĩa, phân tích thông tin & chống phân
mảnh bằng công cụ “Disk Management” và “Disk Defragmenter” (click phải chuột
vào “My Computer” và chọn “Manage”)
- Thay đổi ký tự ổ đĩa của đĩa chứa Data
Ví dụ: đổi tên ổ đĩa D: thành E: (hoặc letter bất kỳ)

Thực hành: Hệ điều hành Trang 1


2. Khảo sát & thực hiện các thiết đặt với hệ thống các thiết bị bằng công cụ “Device
Manager” (click phải chuột vào “My Computer” và chọn “Manage”)

3. Khảo sát các thông tin/chức năng trong mục “Event Viewer” và “Services” trong
công cụ “Computer Management” (click phải chuột vào “My Computer” và chọn
“Manage”).

Thực hành: Hệ điều hành Trang 2


Alerter: Dịch vụ này giúp thông báo cho các máy tính và người dùng được chọn
những sự cảnh báo mang tính chất hành chính. Bạn để nó nếu bạn cảm thấy nó cần
thiết với bạn. Nếu không thì hãy tắt nó đi.
Application Layer Gateway: Cần thiết nếu bạn muốn dùng Firewall trong
Windows (Internet Connection Firewall) hoặc Chia sẻ thông tin mạng của Windows
(Windows Internet Connection Sharing). Sẽ rất vô dụng nếu như bạn không dùng 2
ứng dụng trên.
Application Management: Bạn không dùng chung 1 mạng với ai đó ? Bạn không
không có ý định điều khiển 1 trình nào đó thông qua mạng ? Nếu không hãy vô tư
mà Disable nó.
Automatic Updates: Bạn muốn máy tự động cập nhật Windows. 1 số trường hợp
quay số kết nối để cập nhật mà chủ nhân không biết. Trả tiền cước hàng triệu
đồng… Nếu cập nhật mà không mấy hiệu quả thì không cần cập nhật, ngọai trừ các
lổ hổng bảo mật lớn thì tự vào website Microsoft cập nhật thôi.

Thực hành: Hệ điều hành Trang 3


Background Intelligent Transfer: Hỗ trợ Windows Update, nếu bạn tắt
Automatic Update ở trên thì vô hiệu hóa dịch vụ này nhằm giảm sức nặng hệ
thống phần nào.
Clipbook: Cho phép bạn xem những gì lưu trữ trong Clipboard, sắp xếp chúng có trật
tự để có thể thi hành tác vụ những gì trong Clipbard. Bạn có thể không cần làm quan
trọng mọi việc đến như vậy. Tắt nó đi sẽ giúp các lệnh Copy-Paste-Cut nhanh hơn. Bạn
có thể xem nó họat động như thế nào qua cách đánh clipbrd.exe vào lệnh Run trong
Start Menu.
COM+: Cả hai Event System và System Application Services giúp quản lý và nắm
quyền Microsoft’s Compoment Object Model. Nếu như bạn cần tìm hiểu về vấn đề
này, chỉ Microsoft mới có câu trả lời tốt nhất tuy là bằng tiếng anh. Nói chung, có
thể một phần mềm nào đó sẽ cần đến dịch vụ này để chạy, tốt nhất bạn thiết lập nó
ở chế độ Manual
Computer Browser: Không hề liên quan gì đến trình duyệt web thân yêu của
bạn. Ý nghĩa dịch vụ này là theo dõi những hệ thống khác kết nối vào máy bạn qua
1 mạng chia sẻ.…Quyết định tùy bạn
Cryptographic services: Dịch vụ chứng nhận - đánh giá trong WinXP. Cho dù bạn
cảm thấy không cần thiết với nó, nhưng khuyên bạn nên để nó chạy vì vài tính
năng khác của nó khá hữu ích như kiểm tra chứng nhận trình điều khiển các thiết
bị của winxp.
DHCP Client: Khi bạn lên mạng hoặc không, dịch vụ này sẽ lấy 1 địa chỉ IP cho bạn.
Bạn có thể thử tắt nó. Nhưng nếu bạn bắt đầu gặp những vấn đề lỗi, hiệu hóa nó lại.
(Ý kiền cá nhân: Nên tắt nó đi nếu bạn không dùng mạng hoặc bạn dùng mạng nhưng
lại đặt IP tĩnh.)
Distributed Link Tracking Client: Quản lý các Shortcut đến tập tin trên Server nào đó
. Nếu bạn đã vô hiệu hóa 2 dịch vụ trên thì cũng nên bỏ luôn cái này.
DNS Client: Dịch vụ này giải đáp và thiết lập một bộ đệm về tên miền để hỗ trợ cho
máy tính bạn đang sử dụng. Nếu bạn không sử dụng Internet thì nên tắt dịch vụ này
đi.
Error Reporting: Tự động thông báo lỗi có thể là 1 tính năng khá tốt nhưng đôi khi
lại quá làm phiền và vô dụng.
Event Log: Bỏ. Nhiệm vụ của nó chỉ là ghi lại những báo cáo đôi khi khó hiểu. (Ý
kiền cá nhân: Không nên tắt dịch vụ này vì nếu tắt không những không làm cho
máy khởi động nhanh hơn mà còn làm cho máy khởi động cực chầm.)
Fast User Switching Compatibility: Nếu bạn không dùng máy chung với nhiều
người thì vô hiệu hóa cái này tăng năng lực cho máy rất nhiều.
Help and Support: Sự trợ giúp là 1 điều quý báu nhất là khi ta gặp khó khăn.
Nhưng nếu bạn không rành Tiếng anh và không biết nó nói cái gì…. vậy thì nên tắt
nó đi thì hơn.
HTTP SSL: Kết nối từ client đến server được thực hiện bằng giao thức HTTPS
(HTTP + SSL). Chỉ sử dụng dịch vụ này khi bạn chạy Web Server.
Human Interface Device Access Service: Mở rộng và điều khiển những phím nóng

Thực hành: Hệ điều hành Trang 4


trên các thiết bị nhập. Ví dụ những nút bấm trên bàn phím Play-Next-Internet-Search.
Nếu bạn không thường dùng nó, tắt dịch vụ này đi và tận hưởng 0.85% hệ thống
nhanh hơn.
IIS Admin: Cho phép bạn quản lý dịch vụ Web và FTP thông qua dịch vụ Internet
Information Services (IIS). Nếu bạn không dùng đến những dịch vụ trên thì hãy tắt
nó.
IMAPI CD-Burning COM Service: Thật sự ra dùng Nero ghi đĩa trực quan hơn dịch
vụ có sẵn trong WinXP này.
Indexing services: Tự động tra soát thông tin trên ổ cứng nhằm giúp các ứng
dụng như Search của windows, Office XP chạy nhanh hơn. Tuy nhiên nó chiếm
nhiều tài nguyên và thật sự không xứng đáng với tính năng nó họat động.
IPSEC services: Nếu như máy tính của bạn thuộc vào lọai viễn thông và kết nối
với máy khác bởi VPN thì Internet Protocol Security (IPSEC) có thể cần thiết. Tuy
nhiên tôi không dám mơ tưởng máy mình dữ dội đến vậy. Tạm thời tắt nó đi.
Logical Disk Manager: Nếu như bạn muốn quản lý đĩa cứng của mình (bấm phải
trên biểu tượng My Computer, chọn Manage rồi đến Disk Management), thì dịch vụ
này không thể bị vô hiệu hóa. Vì trình Disk Management phụ thuộc dịch vụ này để
chạy. Tuy nhiên, có lẽ bạn không sài đến thường xuyên Disk Management , thiết lập
nó sang Manual sẽ là tốt nhất.
Messenger: Vào năm trước , những kẻ Spammer đã nhận ra 1 cách có thể gửi
hàng triệu Spam đến người dùng WinXP thông qua Messenger này. Lọai bỏ dịch
vụ này là lựa chọn sáng suốt.
MS Software Shadow Copy Provider/Volume Shadow Copy: Hỗ trợ Microsoft
Backup hay các trình sao lưu ảnh đĩa khác. Một lần nữa, bạn có thể thử qua việc
tắt nó, nếu có sai sót nào trong việc sao lưu thì khởi động lại nó sẽ giải quyết vấn
đề.
Net Logon: Hỗ trợ việc chứng thực để đăng nhập vào một máy tình thuộc miền.
NetMeeting Remote Desktop Sharing: Không muốn chia sẻ với ai bất cứ cái gì
trên máy bạn thông qua NetMeeting? Không = Disable
Network Connections: Quản lý những đối tượng trong kết nối mạng và kết nối
mạng quay số, trong đó bạn có thể thấy được cả mạng cục bộ và những kết nối từ
xa.
Network DDE: Cung cấp việc truyền tải và an toàn mạng cho sự trao đổi dữ liệu
động (Dynamic Data Exchange(DDE)). Cho những chương trình chạy trên cùng
một máy tính hoặc trên những máy tính khác nhau.
Network Location Awareness (NLA): Tập hợp và lưu trữ thông tin về cấu hình
và vị trí mạng. Đưa ra thông báo khi những thông tin này thay đổi.
Network Provisioning Service: Quản lý cấu hình của file XML trên một miền cơ sở
cho mạng được cung cấp tự động. (XML được thiết kế để thực hiện lưu trữ dữ liệu và
phát hành trên các Web site không chỉ dễ dàng quản lý hơn, mà còn có thể trình bày
đẹp mắt hơn. XML cho phép những người phát triển Web định nghĩa nội dung của
các tài liệu bằng cách tạo đuôi mở rộng theo ý người sử dụng)
Plug and Play: Bạn cần dịch vụ này để nhận biết các thiết bị mới gắn vào Pc, bên

Thực hành: Hệ điều hành Trang 5


trong hay bên ngòai, PCI hay USB, Fire wire
đều sẽ cần đến nó, hay chỉ đơn giản là WinXP cần giao tiếp tìm kiếm lại phần cứng
nào đó trong 1 số lý do.
Print Spooler: Nếu bạn không dùng máy in thì hãy tắt nó đi thì hơn.
Remote Desktop Help Session Manager: Đừng để ai đó điều khiển máy bạn nếu
bạn không muốn bị vậy.
Remote Procedure Call: Trong winXP, các ứng dụng được phân chia trong công
thức Cá thể tiến trình. Không 1 trình nào ảnh hưởng đến trình nào. Khi 1 phần mềm
bị đứng, treo hay không trả lời, nó sẽ không ảnh hưởng đến tòan bộ máy như
Win98. Để quản lý hết tất cả những phần mềm này 1 cách thuận tiện, RPC là dịch vụ
cần thiết sắp xếp phân vùng bộ nhớ phát cho từng ứng dụng. Nếu tắt nó sẽ gây ra lỗi
hệ thống rất nghiêm trọng. Vì vậy bạn đừng làm điều đó.
Remote Registry: Bạn có thích cho người dùng khác trên 1 mạng máy tính thay đỗi
các thiết lập trong Registry, trái tim của hệ điều hành trên máy bạn ? Bạn sẽ không
tìm ra được nguyên nhiên ngày nào đó WinXP bị..vỡ tim đâu. Dịch vụ này là 1 dạng
của sự bất bảo mật cho máy.
Security Accounts Manager: Dịch vụ Lưu trữ những thông tin bảo mật cho tài
khoản của người dùng tại chỗ.
Security Center: Theo dõi và quản lý những thiết lập và những cấu hình an toàn
của hệ thống.
Server: Hỗ trợ file, máy in và tên dùng để chia sẻ thông tin qua mạng cho máy
tính bạn đang sử dụng. Nếu bạn không dùng chung mạng với ai đó thì nên tắt nó
đi.
Smart Card và Smart Card Helper: Nếu bạn không dùng các thẻ nhớ thì bạn biết
phải làm gì với dịch vụ này.
SSDP Discovery: một thành phần của Universinal Plug and Play sắp nói đến. Cho
dù bạn tắt hay mở nó, bạn cũng sẽ làm cùng chung 1 việc cho SSDP Discovery.
System Restore: Mừng hết lớn khi có thể bay về quá khứ trước khi bạn cài đặt 1
driver lỗi hay phần mềm làm hại hệ thống là ví dụ thực tiễn cho bạn gợi ý nên tắt ứng
dụng này hay không. Tuy nhiên vô hiệu hóa nó sẽ tiết kiệm cho bạn rất nhiều dung
lượng đĩa. Lưu ý là nếu bạn đã chọn tắt nó thì tất cả những thiết lập sao lưu sẽ bị xóa
hết.
Task scheduler: Đôi khi không mấy hữu dụng đối với bạn, Có thể bạn sẽ không cần
phải lập lịch dồn đĩa trong đêm, nhưng Task Scheduler có thể cần thiết với và người
khác. Tắt nó hay không tùy vào yêu cầu của bạn có cần hoặc không.
TCP/IP NetBIOS Helper: Là 1 đòi hỏi bình thường nếu hệ thống mạng nội bộ của
bạn dùng NetBIOS bởi TCP/IP. Tắt nó nếu bạn cảm thấy không cần thiết. Tuy nhiên
khởi động lại nếu như mạng nội bộ của bạn (thậm chí mạng Internet) có trục trặc
liên quan đến việc tắt dịch vụ này.
Telephony: Bạn vô cùng cần - nói cách khác không thể thiếu nó nếu bạn muốn vào
Internet thông qua phương thức quay số = Modem. Nhưng nếu là kết nối ADSL, bạn
thử thiết lập nó qua Manual để xem nếu có lỗi nào xảy ra vì có thể nó vẫn đòi hỏi
dịch vụ này. Nếu không bạn đã giúp máy có thể tài nguyên hệ thống khá là không ít…

Thực hành: Hệ điều hành Trang 6


Telnet: Cho phép người dùng máy khác dang nhập vào máy bạn và chạy các
chương trình. Nếu như bạn có bao giờ nghe đến việc tấn công qua IP thì Telnet là 1
trong những kẻ 2 mặt tiếp tay cho giặc quậy phá thành của bạn. Tắt nó đi, trừ khi
bạn cần nó cho 1 lý do nào đó
Uninterruptible Power Supply: An tòan để vô hiệu hóa. Trừ khi bạn có cục UPS
cho máy tính mình.
Universinal Plug and Play: Tự hỏi bạn có muốn máy mình kiểm tra và tìm hiểu các
thiết bị có trên máy người khác trong 1 mạng máy tính nội bộ ? Có thể nó cần thiết
nếu như bạn xài Internet Connection Sharing và cho phép người ngòai hiệu chỉnh
kết nối cho máy bạn. Dù sao đi nữa, nếu như thật sự không biết gì, bạn có thể tắt nó
cũng được.
Web client: Theo sự mô tả, dịch vụ này cho phép bạn duyệt qua “Network Places” ,
thực chất đó là mạng Internet. Nó cho phép các chương trình Windows tạo, xâm nhập
và thiết lập tập tin trên nền Internet. Theo như 1 số thử nghiệm, nếu như bạn không
có kết nối Internet, dịch vụ có thể làm chậm lại máy và cách bạn duyệt web. Vô hiệu
hóa để nhận ra và xem xét những sai sót có thể gây phiền cho bạn, nếu không thì bạn
đã tiếp tục giảm gánh nặng cho hệ thống.
Windows Audio: Bạn muốn nghe tiếng - âm thanh thỏ thẻ của Pc phát ra từ 2 giàn
loa 480 Watts của bạn thì nên để cho dịch vụ này khởi động bình thường. Đối với
nó, bạn chỉ nên vô hiệu hóa khi máy không có sound card hoặc chip sound trên bo
mạch.
Windows Image Acquisition: Nếu như đơn giản là bạn không có Webcam hay máy
Scan hình thì tắt dịch vụ này đi. Tuy nhiên cho dù bạn có, tắt ứng dụng này chắc
cũng không ảnh hưởng, vì vậy hãy tắt nó đi cũng được. (Hay thay nó thành Manual
để thử nghiệm trước khi bạn thật sự tắt nó.
Windows Installer: Trợ giúp cho các trình cài đặt .MSI có thể phân phối dữ liệu
trong nó cho máy bạn. Nhưng thật chất không phải lúc nào bạn cũng cài-cài-cài
phần mềm vào máy mình liên tục. Thay cách khởi động của nó vào Manual sẽ giảm
tối thiếu dung lượng Ram bị chiếm.
Windows Management Instrumentation: Dịch vụ này cho phép sự giao tiếp các
phần mềm có thể xâm nhập và dùng những tính năng trong Windows có thể diễn ra
trọn vẹn. Bản thân windows cũng dùng đến Windows Management
Instrumentation, như những trình khác làm, tốt nhất bạn để nó họat động.
Windows Time: Đồng ý là thời gian là vàng là bạc là hàng lọat thứ một đi không
quay lại. Nhưng nếu như bạn không muốn Windows phải chú trọng đến điều đó
cho bạn, nếu như bạn không có 1 máy tính luôn kết nối mạng thì không đồng bộ
hóa giờ giấc không có nghĩa là bạn có tội.
Wireless Zero Configuration: Bạn dùng mạng không dây? Nếu không, nên vô hiệu
tính năng này.
WMI Performance Adapter: Windows Management Instumentation (WMI) là 1
ứng dụng rất có ích nhưng nó có thể làm chậm máy. Nếu như bạn không phải là 1
nhà thiết kế chương trình thì không cần quan tâm đến việc này. Ngòai ra bây giờ
bạn có thể tắt nó đi.

4. Quan sát và phân tích các tiến trình (Procsess), các tiểu trình (Thread) và bộ nhớ
(Memory) thông qua công cụ Performance.

Thực hành: Hệ điều hành Trang 7


 Khởi động công cụ Performance từ “Control Panel  Administrative
Tools  Performance.”

Thực hành: Hệ điều hành Trang 8


5. Dùng công cụ Task Manager để quan sát Applications (chương trình ứng dụng
đang mở), Processes (các tiến hình hiện hành), Performance (hiệu năng CPU,
Memory). Khởi động bằng Ctrl+Alt+Del  Task Manager
6. Dùng công cụ xem nội dung sector (chẳng hạn DiskEdit, WinHex, HexWorkShop, …)
để xem nội dung Boot sector của đĩa mềm, đĩa ảo hoặc đĩa cứng dưới dạng Hex và
xác định các tham số của đĩa.

Thực hành: Hệ điều hành Trang 9


TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.
KHOA CÔNG NGHỆ THÔNG TIN.
MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 2: TIẾP CẬN HỆ ĐIỀU HÀNH LINUX


(SV thực hiện tại lớp)
***
Chuẩn đầu ra:
- Tiếp cận thao tác trên Hệ điều hành Linux tren giao diện dòng lênh và đồ họa.
- Làm quen với lệnh của Linux.
- Khảo sát Hệ điều hành Linux băng cách dùng lệnh.

Chuẩn bị:
- Máy tính có cài đặt VMware và máy ảo “CentOS 6.5”
- Khởi động máy ảo “CentOS 6.5” bằng click vào “Power on this virtual machine”

Tóm tắt lý thuyết tổng quan về Linux:

 Hệ điều hành Linux thường được quản trị và điều khiển bằng lệnh.
 Các lệnh dùng trong Linux có cú pháp chung:
Lệnh [options] [argument]
o Option: các tùy chọn của lệnh. Option dùng cụ thể hơn cách thức thực thi của
lệnh.
o Argument: đối tượng mà lệnh sẽ tác động đến.
o Ví dụ:
$ ls –la /etc (option là -l, argument là /etc)
$ cd /tmp (no option)
$ whoami (no option and argument)

o Option thường bắt đầu bằng dấu trừ (-). Khi nhập lệnh có nhiều option, có thể
gộp các option lại. Ví dụ:
$ ls –lFa /etc (option là -l, -F và -a)
 Hệ thống Linux phân biệt chữ hoa, chữ thường, kể cả lệnh, option, argument…
 Linux có nhiều cấp độ hoạt động (run-level). Lựa chọn cấp độ làm việc mặc định của
Linux mỗi khi khởi động bằng cách hiệu chỉnh nội dung tập tin: /etc/inittab.
o runlevel 0: Halt mode - Đây là chế độ dừng hoạt động của Hệ điều hành Linux.
o runlevel 1: Single user mode - chế độ đơn người dùng, dùng khi muốn khắc phục
sự cố.
o runlevel 2: multiuser, without NFS - The same as 3, if you do not have networking
o runlevel 3: full multiuser mode – Chế độ đa người dùng, giao diện text (Text
mode)
o runlevel 4: unused – Không sử dụng chế độ này
o runlevel 5: X11 - Đây là chế độ đa người dùng, giao diện đồ hoạ (Graphic mode)
o runlevel 6: reboot– Chế độ khởi động lại máy tính (Do NOT set init default to this)

Thực hành: Hệ điều hành Trang 1


 Một số lệnh liên quan hệ thống Linux:
o Lệnh: init 3 – chuyển từ Graphic mode sang Text mode.
o Lệnh: init 5 (hoặc startx) – chuyển từ Text mode sang Graphic mode
o Lệnh: reboot (hoặc init 6 hoặc shutdown –r now) – khởi động lại máy Linux
ngay
o Lệnh: poweroff (hoặc init 0 hoặc shutdown –h now) – tắt máy Linux ngay bây
giờ.
o Lệnh: uname -a hiển thị các thông tin về kernel
o Lệnh: cat /proc/version hiển thị phiên bản phân phối (distribution hay distro)
của kernel
o Lệnh: cat /etc/redhat-release hiển thị phiên bản phân phối phát triển từ Red
Hat của Hệ điều hành đang dùng (Red Hat Enterprise Linux / Fedora / CentOS /
Oracle Linux /…
o Lệnh: cat /proc/cpuinfo : hiển thị thông tin CPU
o Lệnh: cat /proc/meminfo : hiển thị thông tin về RAM đang sử dụng
o Lệnh: free -m : hiển thị lượng RAM còn trống
o Lệnh: df -h : (disk & file system space) hiển thị thông tin dung lượng ổ cứng đã sử
dụng và còn trống. Xem thông tin các partition được mount vào thư mục
o Lệnh: du -sh : (disk / directory usage) xem dung lượng của thư mục
o Lệnh: du : xem chi tiết dung lượng của các thư mục bên trong nó.
o Lệnh: du -sh * : xem dung lượng chi tiết của tất cả các file trong thư mục hiện
hành
o Lệnh: exit (hoặc logoff) thoát khỏi cửa sổ dòng lệnh
 Trong Linux, để được hỗ trợ cách dùng câu lệnh nào đó:
o Cách 1: dùng lệnh man <câu lệnh>
o Cách 2: dùng <câu lệnh> --help
 Có 2 phương thức đăng nhập vào máy Linux:
o Đăng nhập cục bộ tại máy Linux
 Tại dấu nhắc của hệ thống, gõ username và password
o Đăng nhập từ máy Windows hoặc máy Linux khác (đăng nhập từ xa)
 Dùng ssh (hoặc telnet) để kết nối đến máy chủ Linux từ xa qua giao thức
TCP/IP

Yêu cầu thực hành:


1. Đăng nhập trực tiếp vào máy Linux bằng tài khoản root (password mặc định: 123456)
2. Chuyển giao diện của Linux từ Graphic mode sang Text mode.
3. Xem thông tin phiên bản kernel của Linux đang dùng.
4. Cho biết tên của bản phân phối Linux đang dùng (Redhat, Debian, SUSE…)
5. Nếu là Redhat: cho biết phiên bản (version) chính xác (RHEL, Fedora, CentOS…)?
6. Hẹn giờ tắt máy Linux sau 10 phút (dùng lệnh shutdown --help để xem hướng dẫn
cách dùng lệnh shutdown)
7. Hủy bỏ tiến trình hẹn giờ tắt máy đã thực hiện ở trên.
8. Xem thông tin CPU của máy Linux.

Thực hành: Hệ điều hành Trang 2


9. Xem thông tin bộ nhớ của máy Linux. Cho biết:
o Tổng dung lượng RAM?
o Lượng RAM còn trống (free)?
10. Cho biết:
o Máy Linux hiện tại có bao nhiêu phân vùng đĩa cứng (HDD)?
o Bao nhiêu phân vùng (partition)?
o Mỗi phân vùng được gắn kết (mount) vào thư mục nào?
11. Cho biết dung lượng của thư mục /bin ?
12. Dùng lệnh cat /etc/inittab để cho biết loại giao diện mặc định khi Linux khởi động?
13. Trong giao diện Graphic: dùng công cụ gedit để hiệu chỉnh lại file /etc/inittab sao cho
Linux luôn khởi động vào giao diện Text
Hướng dẫn:
- Tìm đến dòng “id:5:initdefault:”
- Chỉnh dòng trên thành “id:3:initdefault:”
- Save lại file.
(Lệnh reboot để khởi động lại Linux để xem kết quả)
Đối với CentOS 7:
systemctl set-default multi-user.target
14. Trong giao diện Text: dùng công cụ vi để hiệu chỉnh lại file /etc/inittab sao cho Linux
luôn khởi động vào giao diện Graphic
Hướng dẫn:
- Dùng lệnh vi /etc/inittab để chạy công cụ soạn thảo file.
- Trong chế độ lệnh của vi, nhấn phím [Insert] để vào chế độ soạn thảo.
- Tìm đến dòng “id:3:initdefault:”
- Chỉnh dòng trên thành “id:5:initdefault:”
- Nhấn phím [ESC] để thoát khỏi chế độ soạn thảo của vi (trở về chế độ lệnh)
- Nhập lệnh: :wq hoặc :x để lưu (write) nội dung đã sửa.
- Nhập lệnh: :q để thoát (quit) khỏi vi.
(Lệnh reboot để khởi động lại máy để xem giao diện mặc định khi Linux khởi động)
Đối với CentOS 7:
systemctl set-default graphical.target
15. Đăng nhập Linux từ xa bằng giao thức SSH:
- Kết nối Network Adaptor của máy ảo Linux với switch ảo VMNet-8.
- Trên máy Linux:
o Dùng lệnh: ifconfig để xem địa chỉ IP của máy Linux
o Dùng lệnh service sshd start để chạy dịch vụ SSH (dịch vụ hỗ trợ kết nối từ xa)
- Trên máy Windows:
o Kiểm tra kết nối từ máy Windows vào máy Linux bằng lệnh PING <IP address
Linux>
o Truy cập trang www.putty.org để tải công cụ Putty.exe
o Chạy Putty: nhập vào IP address của máy Linux và chọn Connection type là SSH
o Nhập user / password để đăng nhập vào máy Linux từ xa.

Thực hành: Hệ điều hành Trang 3


TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.
KHOA CÔNG NGHỆ THÔNG TIN.
MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 3: Các lệnh File và Directory trên Linux


(SV thực hiện tại lớp)
***
Chuẩn bị:
– Khởi động máy tính có cài đặt VMware.
– Chạy VMware.
o Mở máy ảo “CentOS 6.5”
o Khởi động máy ảo bằng click vào “Power on this virtual machine”
Tóm tắt các lệnh về file và thư mục trên Linux

 Nhóm lệnh xem nội dung File / Directory:


o ls – (list) liệt kê danh sách file / thư mục.
o cat FILE1 – hiện nội dung tập tin FILE1 trên màn hình
o more FILE1 – hiện nội dung tập tin FILE1 theo từng trang màn hình.
 Nhóm lệnh thay đổi File / Directory:
o cd – (change directory) chuyển từ thư mục hiện tại về thư mục riêng.
o cd DIR1 – (change directory) chuyển từ thư mục hiện tại sang DIR1
o mv FILE1 FILE2 – (move) đổi tên hoặc di chuyển tập tin FILE1 thành FILE2; nếu FILE2 là
một thư mục có sẵn sẽ di chuyển FILE1 vào thư mục FILE2.
o pwd – (print name of current/working directory) hiện đường dẫn thư mục hiện tại
 Nhóm lệnh tạo mới File / Directory:
o mkdir DIR1 – (make directory) tạo thư mục DIR1
o mkdir –p DIR1/DIR2/DIR3 – tạo cấu trúc thư mục DIR1/DIR2/DIR3
o touch FILE1 – tạo tập tin FILE1 (chỉ tạo file, không có nội dung)
o ln -s FILE1 LINK1 – (link) tạo liên kết biểu tượng LINK1 đến tập tin FILE1
 Nhóm lệnh sao chép File / Directory:
o cp FILE1 FILE2 – (copy) chép tập tin FILE1 sang FILE2 (FILE2 có thể là path)
o cp -r DIR1 DIR2 – chép thư mục DIR1 (cả files bên trong) sang DIR2; tạo DIR2 nếu chưa
tồn tại.
 Nhóm lệnh xóa File / Directory:
o rm FILE1 – (remove) xóa tập tin file FILE1
o rm -r DIR1 – (-r: recursive) xóa thư mục DIR1và tất cả file trong thư mục đó.
o rm -f FILE1 – (-f: force) xóa không yêu cần xác nhận.
 Nhóm lệnh tìm kiếm File / Directory:
o find DIR1 –name FILE1 – tìm kiếm file FILE1 trong thư mục DIR1 (cả thư mục con)
o grep ‘string’ FILE1 – tìm kiếm chuỗi ‘string’ trong file FILE1
o which command – hiển thị nơi chứa tập tin thi hành lệnh command.
Một số lưu ý:
- Đường dẫn tuyệt đối của một tệp tin hay thư mục luôn bắt đầu bởi / (root directory – thư mục
gốc) và tiếp theo sau đó là chuỗi các thư mục mà nó đi xuyên qua cho đến khi tới đích.
- Ví dụ:
1. Khi bạn đang đứng trong thư mục tuantub, thư mục con của home hay còn có thể nói home là
thư mục mẹ của tuantub thì đường dẫn tuyệt đối của của thư mục tuantub sẽ là
/home/tuantub.
2. Đường dẫn tuyệt đối của tệp tin abc là: /home/tuantub/Desktop/abc

- Đường dẫn tương đối Đối với đường dẫn tương đối thì người sử dụng không đòi hỏi phải bắt
đầu từ / mà có thể tiếp cận được với các thư mục hay tệp tin bên trong thư mục hiện hành
(working directory). Một đường dẫn tương đối thường bắt đầu với :
 Tên của một thư mục hoặc tệp tin
 Một dấu . (dấu chấm) biểu thị cho thư mục hiện hành (working directory)
 Một dấu .. (hai chấm) biểu thị cho thư mục mẹ của thư mục hiện thời.

1. Giả sử là bạn đang đứng trong thư mục /home/tuantub trong cây thư mục, từ đây thì đường
dẫn Desktop/abc sẽ là đường dẫn tương đối của tệp tin abc.
2. Từ /home/tuantub thì đường dẫn tương đối đến thư mục /lib sẽ là ../../lib (thư mục lib là thư
mục con của thư mục mẹ của thư mục mẹ của /home/tuantub)
3. Từ /home/tuantub, nếu muốn di chuyển đến /lib thì ta dùng lệnh cd với :
Đường dẫn tuyệt đối: cd /lib
Đường dẫn tương đối: cd ../../lib

2
Thực hiện một yêu cầu sau trên Linux
Sử dung command line để thực hiện các lệnh cơ bản về file-folder.
1. Cho biết thư mục Home của user hiện hành.

2. Liệt kê danh sách file, folder trong thư mục hiện hành

3. Tạo cấu trúc cây thư mục như sau:

4. Delete folder ncd2

3
5. Copy 3 file bất kỳ trong folder /etc vào folder ncd1

6. Copy toàn bộ folder ncd1 vào cb

7. Dùng cơ chế chuyển hướng xuất để tạo file vi.txt chứa nội dung hướng dẫn dùng lệnh vi
Lệnh: vi --help > vi.txt
8. Di chuyển file vi.txt (yêu cầu 7) vào thư mục cd

9. Chuyển vị trí thư mục hiện hành về cd

10. Chuyển vị trí thư mục hiện hành về /root

11. Hiển thị nội dung file vi.txt sử dụng lệnh more, less, cat

4
12. Tạo file log_time rỗng trong thư mục cd

13. Hiển thị ngày giờ tạo file log_time nói trên.

14. Đổi tên file log_time thành log_time.txt và chứa trong tc2

15. Tạo file my_friend.txt trong thư mục tc1 chứa danh sách tên 2 sinh viên ngồi cạnh trong
lớp. (sử dụng lệnh cat tên_file, bấm Ctrl+D để kết thúc )

16. Log out. Bấm <Ctrl-D> để thoát.


Gợi ý:
Thường xuyên sử dụng lệnh pwd và ls để kiểm tra.
Có thể sử dụng nhiều tham số trong quá trình tạo thư mục.

5
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.
KHOA CÔNG NGHỆ THÔNG TIN.
MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 4: Quản trị User và phân quyền File


(SV thực hiện tại lớp)
***
Mô tả bài lab:
– Thực hiện các lệnh quản trị tài khoản user và group.
– Hiệu chỉnh user và group.
– Thực hiện phân quyền truy cập file/folder cho user sở hữu, group chính, user khác.
Chuẩn bị:
– Khởi động máy tính có cài đặt VMware.
– Chạy VMware.
o Mở máy ảo “CentOS 6.5”
o Khởi động máy ảo bằng click vào “Power on this virtual machine”

Tóm tắt về quản lý tài khoản User và Group trên Linux:

 Linux là Hệ điều hành đa người dùng (multi-users). Mỗi người dùng sử dụng một tài khoản
user để đăng nhập vào hệ thống Linux.
 User tên root (UID=0) là tài khoản có quyền cao nhất với hệ thống Linux.
 Group là một danh sách chứa tên các user hoặc Group khác làm thành viên (member). Khi
phân quyền cho một Group, tất cả user / group thành viên của nó sẽ thừa hưởng theo
 Mỗi tài khoản user trên Linux cơ bản gồm có:
o Một mã định danh (UID)
o Một tên user (username) và mật khẩu (password)
o Một thư mục riêng (home directory / working directory)
o Một quyền thực thi trên thư mục chứa tập lệnh shell (/bin/bash)
 Tương tự User, mỗi tài khoản group trên Linux gồm có:
o Một mã định danh group (GID)
o Mã định danh (hoặc tên) các User / Group khác là thành viên của nó.
 Danh sách user và thông tin cơ bản của user được lưu trữ trong file /etc/passwd
 Danh sách group và thông tin cơ bản được lưu trữ trong file /etc/group
 Mật khẩu của users được mã hóa và lưu trữ trong file /etc/shadow
 Trong Linux, một tài khoản user mặc nhiên sẽ sở hữu một group trùng tên user đó – gọi là
nhóm “chính” (Primary group).
 Tài khoản user (hoặc group) có thể tham gia làm thành viên của group khác - gọi là nhóm bổ
sung (Supplement group) để thừa hưởng những quyền mà group đó có.
 Tạo user bằng lệnh useradd (hoặc adduser):
o Lệnh: useradd Teo – tạo tài khoản Teo với các giá trị mặc định.
o Lệnh: useradd -g root Teo – tạo tài khoản Teo, đặt nhóm root làm nhóm chính của Teo.
o Lệnh: useradd -G root Teo – tạo tài khoản Teo, cho Teo tham gia bổ sung vào nhóm root.
o Lệnh: useradd -d /home/Teo Teo – tạo tài khoản Teo, gán thư mục /home/Teo làm thư
mục riêng cho tài khoản này.
o Lệnh: useradd -p 123 Teo – tạo tài khoản Teo, đặt mật khẩu là 123.
 Đặt mật khẩu cho user bằng lệnh passwd:
o Lệnh: passwd Teo – đặt lại mật khẩu cho tài khoản Teo.
o Lệnh: passwd – đặt lại mật khẩu cho tài khoản hiện hành (đang logon).
 Lệnh usermod – hiệu chỉnh tài khoản user hiện có. Các option tương tự useradd.
 Lệnh userdel – xóa tài khoản user hiện có.
 Lệnh groupadd, groupmod, groupdel – dùng tạo, sửa, xóa group
 Lệnh groupmems -g sshd -a Teo – thêm (add) user Teo vao nhóm sshd.
 Lệnh groupmems -g sshd -d Teo – loại bỏ (delete) user Teo vao nhóm sshd.
 Lệnh id USER1 - Hiển thị thông tin về UID, GID, các sup. group của người dùng USER1.
 Lệnh whoami - Hiển thị username của người dùng hiện hành.
 Lệnh who am i – tương tự whoami nhưng hiển thị đầy đủ thông tin.
 Lệnh who - Hiển thị thông tin tất cả người dùng đang đăng nhập hệ thống Linux.
 Lệnh su <ten_user1> - Tạm thời chuyển qua <user1> (switch user). Các lệnh sau đó sẽ được
thực thi bằng quyền của <user1>

1. Quản trị tài khoản trên Linux


1.1. Thực hiện một số thao tác tạo tài khoản user trên Linux
1.1.1. Tạo mới các tài khoản An, Binh, Cong, Dung, Em. Sử dụng các thông số mặc định.
1.1.2. Đặt password cho các tài khoản trên.
1.1.3. Dùng lệnh cat /etc/passwd để xem lại thông tin các tài khoản vừa tạo. Đọc hiểu các thông
tin đó. Ví dụ:

Giải thích:
 An: tên user
 502:502: UID của user và GID của Primary group
 /home/An: thư mục riêng của user An
 /bin/bash: cho phép user quyền thực thi các bash shell trong thư mục /bin.
2
1.1.4. Dùng lệnh cat /etc/group để xem thông tin các group hệ thống tạo cùng với user.
1.2. Thực hiện các thao tác hiệu chỉnh tài khoản:
1.2.1. Hiệu chỉnh tài khoản An:
– Chọn thư mục /var/www/An làm home directory của tài khoản này.
– Cho phép tham gia thêm (bổ sung) vào nhóm sshd.
– Dùng lệnh cat /etc/passwd và cat /etc/group để xem kết quả.
1.2.2. Hiệu chỉnh tài khoản Binh:
– Chọn nhóm root làm nhóm chính của tài khoản này.
1.2.3. Tạo group “P.KeToan”
– Ghi danh các tài khoản tạo ở trên vào thành viên của nhóm này (supplement group).
– Dùng lệnh cat /etc/group để xem kết quả
1.3. Kiểm tra quyền tài khoản:
1.3.1. Khởi động dịch vụ sshd trên máy Linux (lệnh: service sshd start)
1.3.2. Từ máy khác, dùng Putty kết nối vào máy Linux lần lượt bằng các tài khoản An, Binh,
Cong, Dung, Em.
1.3.3. Dùng lệnh whoami để kiểm tra tên tài khoản hiện tại.
1.3.4. Nếu không phải là tài khoản root”
1.3.4.1. Thử tạo thư mục, file trên thu mục root (/)
1.3.4.2. Thử tạo thư mục, file trên thu mục home(~)
1.3.5. Dùng lệnh su root để chuyển qua quyền dùng lệnh của tài khoản root.
1.4. Thực hiện thay đổi shell của Dung và Em thành nologin.
Kiểm tra khi login vào Linux với tài khoản Dung và Em.

3
Tóm tắt về Phân quyền truy cập File/Folder trong Linux

 Linux cho phép phân quyền truy cập trên mọi đối tượng: file, directory, link, dev file…
 Có 3 quyền truy cập lên File/ directory:
Quyền Ký hiệu Đối với directory Đối với file
Xem (đọc) tên của thư mục
Xem / đọc nội dung bên trong
Read r (không cho liệt kê danh sách
tập tin.
file/folder bên trong thư mục)
Write w Sửa tên, xóa thư mục. Sửa tên, ghi đè, xóa file.
Xem (truy cập) danh sách Cho phép nạp (loading) và
eXecutive x
file/folder bên trong thư mục thực thi file (processing)
 Có 3 loại đối tượng được phân quyền trên File/Folder:
o owner (ký hiệu: u): tài khoản user sở hữu đối tượng – mặc định là user tạo ra đối tượng đó.
o group (ký hiệu: g): tài khoản primary group của user sở hữu. Các user / group khác là
thành viên của Primary group sẽ thừa hưởng quyền truy cập.
o others (ký hiệu: o): tất cả các user / group không thuộc hai loại trên.
 Biểu diễn quyền truy cập:
o Cách 1: biểu diễn bằng 10 ký tự. Ví dụ: lệnh $ ls -l
drwxr-xr-x 2 root root 4096 2011-07-07 15:29 Desktop
-rw-r--r-- 1 root root 68 2011-07-07 15:16 main.c
Ký tự đầu thể hiện loại file:
- : Tệp tin thông thường
d : directory (Thư mục)
l : link (Liên kết)
c : character Special file
s : Socket
p : Named pipe
b : Block special device
 3 ký tự kế (2-4) là quyền của owner.
 3 ký tự kế (5-7) là quyền của group.
 3 ký tự kế (8-10) là quyền của other.
o Cách 2: biểu diễn bằng 3 số hệ bát phân (Oct).
 Thứ tự biểu diễn của 3 số Oct trên file/folder: owner - group - other.
 Mỗi số Oct gồm 3 số Bin thể hiện các quyền: read - write - executive (0=cấm, 1=cho)
0 (000): cấm tất cả các quyền
1 (001): cho execute
2 (010): cho write
3 (011): cho write + execute
4 (100): cho read
5 (101): cho read + execute
6 (110): cho read + write
7 (111): cho read + write + execute (full)
 Lệnh chmod dùng thay đổi quyền truy cập trên file/folder (change file mode bits). Lệnh này
được thực hiện bởi owner hoặc user quyền root.
4
o Cách 1: gán quyền bằng số Oct:
 Ví dụ: $ chmod 744 main.c # tập main.c sẽ có thuộc tính là: -rwxr–r–
o Cách 2: gán quyền bằng cách sử dụng ký tự đại diện (u, g, o, a) kết hợp với các toán tử +, -,
= (thêm, bớt, gán)
 Ví dụ: $ chmod +x demo.sh # mặc định là u nên ở đây không cần đại diện
 Ví dụ: $ chmod u+rwx,go-rwx demo.sh # thêm quyền r,w,x cho owner, bỏ quyền
w,r,x cho group và other.
 Lệnh chown dùng thay đổi sở hữu (change owner) cho file/folder. Lệnh này thực hiện với
quyền root:
 $ chown User_Name File_Name
 Lệnh chgrp dùng thay đổi group (change group) cho file/folder. Lệnh này thực hiện với quyền
root chủ sở hữu (owner) và là thành viên của Group_Name trong lệnh.
 $ chgrp Group_Name File_Name
 Lệnh id dùng kiểm tra user thuộc group nào.

2. Phân quyền truy cập File / Folder


Chuẩn bị trên máy Linux:
– Tạo 3 tài khoản user: An, Binh, Cong với tham số mặc định.
– Mở 4 của sổ Terminal, mỗi cửa sổ đăng nhập user tương ứng: root, An, Binh, Cong. (dùng
lệnh su tên_user).
– Dùng user root hoặc user sở hữu file/folder khi thực hiện các lệnh phân quyền.
2.1. Kiểm nghiệm vai trò, chức năng phân quyền truy cập:
2.1.1. Dùng quyền root:
– Tạo thư mục /data (lệnh: mkdir /data).
– Phân quyền cho tất cả user toàn quyền truy cập thư mục /data (lệnh chmod 777 /data)
2.1.2. User An:
– Tạo mới file văn bản an.txt trong thư mục /data
– Phân quyền truy cập file an.txt cho:
 user An: đủ quyền (w,r,x)
 nhóm của An: chỉ cho read
 nhóm khác: không cấp quyền.
2.1.3. User Bình và Công:
– Thử đọc file an.txt trong thư mục /data
2.1.4. Dùng quyền root: bổ sung user Bình vào nhóm An.
2.1.5. User Bình và Công:
– Thử đọc file an.txt trong thư mục /data
2.2. Thực hiện các yêu cầu sau:
2.2.1. Tạo 3 group G1, G2 và G3.
Tạo 3 user u1, u2, u3 dùng Primary Group tương ứng G1, G2, G3.
2.2.2. Thay đổi group chính của user u2 từ G2 thành G3.
5
2.2.3. Thiết lập để u1 thuộc thêm 2 group G2, G3,
u2 thuộc thêm group G1.
Dùng lệnh gì để kiểm tra từng tài khoản u1, u2, u3 đúng các group đã thiết lập?
2.2.4. Tạo folder /test. Trong folder này có 2 folder con: tets1, test2. Trong mỗi folder có
1 file: test1.txt và test2.txt.
Phân quyền để test1.txt có sở hữu là u1 và G2. Phân quyền để test2.txt có sở hữu là
u2 và G1.
Kiểm tra kết quả từng file dùng lệnh gì?
2.2.5. Kiểm tra thư mục test có sở hữu hiện tại là user nào và group nào?
Thay đổi chủ sở hữu của thư mục test và tất cả file-thư mục trong nó là u2 và G1.
Kiểm tra lại thay đổi này.
2.3. Thực hiện các lệnh dưới đây và kiểm tra ý nghĩa:
TT Lệnh Ý nghĩa
1 groupadd Group1
2 groupadd Group2
3 useradd -g Group1 -G Group2 User1
4 id User1
5 cat /etc/passwd
6 cat /etc/group
7 mkdir /thumuc
8 man chmod > /thumuc/hd.txt
9 chown -R User1 /thumuc/hd.txt
10 chgrp -R Group1 /thumuc/hd.txt
11 chmod -R 775 /thumuc
12 chmod o-rx /thumuc/hd.txt
13 chmod a+r /thumuc/hd.txt
14 chmod a=r /thumuc/hd.txt
15 ls -l /thumuc/hd.txt

6
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.
KHOA CÔNG NGHỆ THÔNG TIN.
MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 5: Quản lý tiến trình


(SV thực hiện tại lớp)
***
Mô tả bài lab:
– Thực thi và theo dõi các tiến trình trong Linux.
– Quản lý các tiến trình đang thực thi: xem, tạm dừng, hủy…
– Thực hiện phân quyền truy cập file/folder cho user sở hữu, group chính, user khác.
Chuẩn bị:
– Khởi động máy tính có cài đặt VMware.
– Chạy VMware.
o Mở máy ảo “CentOS 6.5”
o Khởi động máy ảo bằng click vào “Power on this virtual machine”

Tóm tắt về quản lý tiến trình trên Linux:

 Tiến trình (Process) là một chương trình đang được thực thi trên hệ thống Linux.
 Mỗi tiến trình sẽ được Linux gán cho mộ mã định danh PID (Process ID)
 Tiến trình Foreground (tiến trình tiền cảnh): tiến trình được thực thi và được kiểm soát
bởi người dùng. Ví dụ: lệnh ls –R /
 Tiến trình Background (tiến trình hậu cảnh / tiến trình nền): tiến trình đang hoạt động
trong hệ thống Linux nhưng không chiếm quyền điều khiển dấu nhắc lệnh của người
dùng. Ví dụ: sshd, httpd…
 Các tiến trình thường trực thường được bắt đầu bằng tiến trình init khi khởi động. Cấu
hình chọn tiến trình chạy ngay khi khởi động bằng cách hiệu chỉnh kịch bản của init.
 Các loại tiến trình còn lại sẽ được chạy thông qua Linux shell.
 Khi người sử dụng vào tên chương trình hợp lệ trên dòng lệnh, shell sẽ tự tạo một bản
copy như một tiến trình mới và thay thế tiến trình mới với chương trình được đặt tên
trên dòng lệnh. Nói một cách khác shell sẽ chạy chương trình được đặt tên như một tiến
trình khác.

Phần 1: Giám sát – theo dõi các tiến trình:

 Để lấy thông tin về tất cả các tiến trình đang chạy trên hệ thống dùng các lệnh: ps,
pstree, top, htop…
 Một số Option của lệnh ps:
Tùy Chọn Miêu tả

a Hiển thị các tiến trình của tất cả những người sử dụng

f Hiển thị các process dưới dạng tree

l Hiển thị kết quả đầy đủ

u Hiển thị tên người sử dụng và thời gian bắt đầu tiến trình

Hiển thị kết quả theo định dạng rộng. Bình thường, kết quả kết xuất bị cắt
w nếu nó không vừa một dòng. Sử dụng tùy chọn này bạn có thể ngăn chặn
được điều đó

t XX Hiển thị các tiến trình được kết hợp với vùng làm việc xx

x Hiển thị các tiến trình không có điều khiển vùng làm việc

Ví dụ:

 Các trường thông tin của lệnh ps:


Trường Giải Thích Trường Giải Thích
WCHAN Tên của hàm nhân khi tiến trình
USER Tên người dùng thực thi tiến
ngủ được lấy từ file
hoặc UID trình
/boot/System.map
PID ID (định danh) của tiến trình COMMAND Câu lệnh được thực hiện

%CPU % CPU sử dụng của tiến trình PRI Mức ưu tiên của tiến trình

%MEM % bộ nhớ tiến trình sử dụng PPID ID của tiến trình cha
Kích thước bộ nhớ ảo tiến
SIZE FLAGS Số cờ được kết hợp với tiến trình
trình sử dụng
Kích thước của bộ nhớ thực Thời gian hay ngày bắt đầu của
RSS START
sử dụng bởi tiến trình tiến trình
TTY Vùng làm việc của tiến trình TIME Tổng thời gian sử dụng CPU

STAT Trạng thái của tiến trình


Các yêu cầu thực hành:
1. Xem danh sách tất cả các process dang chạy trên hệ thống bằng ps
Lệnh: ps -aux
2. Xem danh sách các process dang chạy trên hệ thống bằng pstree
Lệnh: pstree -p
3. Xem danh sách các process dang chạy trên hệ thống bằng top
Lệnh: top
4. Lưu các kết quả của lệnh top vào file /root/top.txt
Lệnh: top > /root/top.txt
5. Xem tỉ lệ CPU, RAM hệ thống đang sử dụng của từng process dang chạy
Lệnh: ps -aux
6. In thông tin process dang sử dụng nhiều CPU nhất
Lệnh: top
Phần 2: Giao tiếp giữa các tiến trình

 Linux cho phép người dùng thực thi nhiều tiến trình cùng lúc và cho các tiến trình đó
tương tác nhau. Dùng dấu “|” (pipe-sign)
o Ví dụ: ls –R / | more tiến trình ls (liệt kê nội dung thư mục) tương tác với tiến
trình more (hiển thị theo từng trang màn hình)
o Ví dụ: ps –af | grep ‘[bash]’ tiến trình ps (xem danh sách tiến trình) tương tác
với tiến trình grep (lựa chọn dòng có chuỗi ‘[bash]’)
 Các lệnh thường dùng cho giao tiếp giữa các tiến trình:
o Lệnh: more hiển thị theo từng trang màn hình.
o Lệnh: grep ‘chuỗi’ tìm ‘chuỗi’ trong file hoặc trên màn hình.
o Lệnh: wc đếm số dòng (-l) hoặc số từ (word) trong file.
o Lệnh: echo ‘chuỗi’ xuất chuỗi ra màn hình.
 Lệnh: ps -C <lệnh> : sử dụng ps để gọi một tiến trình (lệnh) khác.

7. Đếm số process đang thực thi bởi người dùng hiện tại:
Lệnh: ps –C ps | wc -l
8. Đếm số process của user root đang thực thi trên máy:
Lệnh: ps –C ps U root | wc -l
9. Hiển thị các process có từ “gnome” của user root dang thực thi trên máy
Lệnh: ps –aux | grep ‘gnome’

Phần 3: Quản lý tiến trình:

 Ngừng một tiến trình foreground: phím Ctrl_C


 Tạm dùng và đưa một tiến trình foreground sang background: phím Ctrl_Z
 Lệnh: jobs – xem các tiến trình đang chạy background
 Kích hoạt lại tiến trình đang stopped trong hàng đợi (đánh thức tiến trình)::
Lệnh: bg 3 (số 3 là thứ tự của tiến trình trong hàng đợi)
 Đưa một tiến trình background sang foreground
Lệnh: fg 3 (số 3 là thứ tự của tiến trình trong hàng đợi)
 Thay đổi thông số Priority (độ ưu tiên khi thực thị tiến trình – còn gọi nice number)
o Lệnh: nice [–n number] [command] - thay đổi nice number của các process tại thời
điểm start time.
o Lệnh: renice priority PID [[-g] group] [[-u] user]
o Ví dụ: # renice -2 203 - đặ lại nice number là -2 cho PID=203
 Hủy một tiến trình bằng lệnh kill hoặc killall
o kill PID : hủy tiến trình có PID như trong câu lệnh
o killall signal_demo.pl – hủy tiến trình có tên như trong câu lệnh

10. Thực thi lệnh in thông tin tất cả các tập tin, thư mục của hệ thống. Lưu vào root/lietke.txt .
Lệnh: ls -R / > /root/lietke.txt
11. Tạm ngừng và chuyển lệnh trên vào chế độ background
(dùng Ctrl-Z).
12. Thực thi lệnh: man ls (xem manual của lệnh ls)  đưa tiến trình này vào background.
13. Xem các tiến trình chạy background:
Lệnh: jobs
14. Cho phép thực thi lại lệnh ở câu 10:
Lệnh: bg <ID của process>
15. Mở 2 của sổ console (terminal). Thực thi cùng lệnh “ls –lR /” với độ ưu tiên lần lượt là -
19 và +19, kiểm nghiệm xem lệnh nào sẽ thực thi xong trước.
Lệnh: nice -19 ls –lR /
Lệnh: nice +19 ls –lR /
16. Thực thi câu lệnh tìm kiếm tất cả các file có kích thước > 1MB và < 10MB, với độ ưu tiên -5
Lệnh: nice -5 find / -size +100K -size -1000K
17. Tăng độ ưu tiên của câu lệnh trên:
Mở một cửa sổ Terminal khác
Lệnh: ps –u root - xem các tiến trình của user root. Ghi nhận PID của tiến trình “find”
Lệnh: renice -2 <PID của find>
18. Ngắt câu lệnh trên
Phần 4: Lập lịch cho Hệ điều hành thực thi tiến trình:

 Các lệnh liên quan thời gian của Linux:


o hwclock -r xem thời gian của BIOS (thời gian của máy tính)
o hwclock -w lấy thời gian của BIOS đặt cho Linux.
o hwclock -s lấy thời gian của Linux đặt cho BIOS.
o Điều chỉnh múi giờ (time-zone) theo GMT+7 (Ho_Chi_Minh)
 rm -f /etc/localtime xóa file cấu hình time-zone.
 ln -f -s /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtime tạo file cấu
hình time-zone mới liên kết (link) vào file Ho_Chi_Minh.
 Lập lịch cho tiến trình bằng lệnh at:
o Cú pháp: at [TIME]
at> nhập một hay nhiều lệnh sẽ thực thi vào thời điểm TIME
o Kết thúc lệnh at bằng tổ hợp phím Ctrl-D.
o Ví dụ: at 22:30
at> du –h /home/teo > /root/teo.log xem dung lượng thư mục riêng của user Teo
at> ps -aux | grep ‘teo’ xem các tiến trình thực thi bởi user Teo
at> nhấn Ctrl-D để kết thúc lệnh at.
 Lập lịch cho tiến trình bằng lệnh crontab:
o Một crontab schedule là một text file. Mỗi dòng là thông tin của thời điểm, công việc được
thực hiện. Mỗi người dùng có một crontab schedule riêng
o Các lệnh tương tác crontab:
 crontab -e: tạo hoặc chỉnh sửa file crontab
 crontab -l: hiển thị file crontab
 crontab -r: xóa file crontab
o Cấu trúc của crontab:

 Mỗi giá trị cách nhau bằng khoảng trắng (spacebar).


 Giá trị dấu * tương ứng với tất cả (all)
 Ví dụ: 30 1 * * 0 cp /home/teo/data.txt /backup (vào lúc 1:30 của ngày
Chủ nhật hàng tuần, thực hiện copy fie data.txt vào /backup).

19. Ngắt câu lệnh trên


TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.
KHOA CÔNG NGHỆ THÔNG TIN.
MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 6: LẬP TRÌNH SHELL TRONG LINUX


(SV thực hiện tại lớp)

***

Lập trình shell trong Linux


Shell: môi trường thực thi lệnh / ứng dụng của Hệ điều hành.
Linux (hay Unix like) hỗ trợ 3 loại shell:
- C shell: thực thi lệnh theo ngôn ngữ C.
- Bourne shell: ngôn ngữ lệnh thông dụng của Unix like.
- Korn shell: cải tiến từ Bourne shell
Khái niệm lập trình Shell:
- Là tập hợp các dòng lệnh Linux shell được viết trong một text file (thường là *.sh) để
thực hiện một hay nhiều công việc nào đó.
- Ngoải các lệnh Linux, lập trình Shell cho phép dùng các cấu trúc rẽ nhánh (IF, CAES…),
cấu trúc lặp (FOR, DO, WHILE…) cũng như các toán tử, biến, biểu thức…
Một tập tin Linux Shell phải thỏa mãn các điều điện:
- Là một Text file (soan thảo bằng các công cụ như: vi, nano, vim…
- Dòng đầu tiên của file phải là từ khóa: “#!/bin/sh” cho Linux nhận dạng là Bourne shell.
- File phải được gán quyền eXecutive cho người dùng thực thi.
Tập tin shell được gọi thực thi bằng đường dẫn tuyệt đối hoặc đường dẫn tương đối.
Ví dụ:
- Tập foo.sh lưu trong thư mục: /root/Desktop.
- Gán quyền thực thi cho tập tin bằng lệnh: chmod +x /root/Desktop/foo.sh
- Gọi thực thi tập này bằng lệnh: /root/Desktop/foo.sh
- Nếu thư mục hiện hành là /root/Desktop gọi bằng lệnh: ./foo.sh

Bài tập 1: Làm quen với lập trình shell


- Dùng vi để tạo file /root/Desktop/hello.sh
o Lệnh: vi /root/Desktop/hello.sh
- Soạn thảo nội dung: (nhấn phím <Insert>)
#!/bin/sh
echo “Chao mot ngay moi !”
echo “Hom nay là: “ $(date +”%d-%m-%y”)
o Nhấn phím ESC thoát chế độ soạn thảo
o Nhấn lệnh :wq để write và quit khỏi vi.
- Cấp quyền executive cho file hello.sh
o Lệnh: chmod +x /root/Desktop/hello.sh
- Thực thi file hello.sh:
o Lệnh: /root/Desktop/hello.sh
o Hoặc: ./hello.sh (nếu thư mục hiện hành là /root/Desktop
- Kết quả:

- Nếu sai thì dùng vi để hiệu chỉnh lại.

Bài tập 2: Sử dụng biến (variable)


Viết chương trình in ra màn hình các thông tin sau:
- Thư mục hiện hành
- Tập tin và thư mục, kể cả các thư mục ẩn trong thư mục hiện hành
- Ngày và giờ hiện tại

Các lệnh của chương trinh Ý nghĩa


#!/bin/sh
thumuchienhanh=’pwd’ # đặt biến bằng chuỗi-bao gồm dấu
echo "Thu muc hien hanh:" $thumuchienhanh nháy đơn
hienthitatca=`ls -A` # dấu $var – lấy giá trị của biến (var)
echo "Hien thi tat ca tap tin: "$hienthitatca
Ngaygiohientai=$(date +"%H:%M:%S %d-%m-%Y")
echo "Ngay gio hien tai:" $Ngaygiohientai

Kết quả:

Bài tập 3: Nhập giá trị và cấu trúc if…then…else…fi


Viết chương trình
- Yêu cầu nhập họ
- Yêu cầu nhập tên
- So sánh họ và tên nhập vào với họ và tên của bạn. Nếu trùng khớp sẽ thông báo ra màn hình

Các lệnh của chương trinh Ý nghĩa


#!/bin/sh
echo "Nhap ho cua toi:" # var “ho” = giá trị nhập từ bàn phím.
read ho
echo "Nhap ten cua toi:" # var “ten” = giá trị nhập từ bàn phím.
read ten
myfirstname="Nguyen"
mylastname="Thanh"
if [ $ho = $myfirstname ] && [ $ten = $mylastname ] # điều kiện đặt trong cặp móc […]
then # cặp && là phép AND
echo "ban da nhap dung ten toi"
else echo "ban da nhap ko dung ten toi"
fi

Bài tập 4: Cấu trúc while…do…done và các toán tử so sánh.


Bộ toán tử so sánh
-lt < -le <= -eq ==

-gt > -ge >= -ne !=

Yêu cầu: Viết chương trình tính tổng từ 1 đến n. Lưu file tinhtong.sh
- Thực thi file theo cú pháp: ./tinhtong.sh [số n]
- Nếu khi thực thi, người dùng không nhập tham số n thì yêu cầu nhập trong chương trình

Các lệnh của chương trinh Ý nghĩa


#!/bin/sh
if [ -z "$1" ] # Nếu tham số thứ 1 là rỗng (zero) thì:
then yêu cầu nhập số n.
echo "Day la chuong trinh tinh tong tu 1 den n" Ghi số nhập vào biến n
echo "Nhap so n:" # nếu không rỗng thi chọn n bằng giá
read n trị tham số 1 ($1)
else
n=$1
fi
echo “Chuong trinh tinh tong 1- $n” # $1 là giá trị
của tham số thứ nhất khi gõ lệnh
index=0
tong=0
while [ $index -lt $n ]
do
index=$(($index + 1))
tong=$(($tong + $index))
done # -lt (less than) so sánh nhỏ hơn
echo "Tong 1-$n= $tong"
exit 0

Kiểm tra kết quả:


- Thực thi file tinhtong.sh không tham số:
o Lệnh: ./tinhtong.sh
- Thực thi file tinhtong.sh có tham số:
o Lênh: ./tinhtong.sh 5 (giá trị 5 sẽ truyền vào biến $1)

Bài tập 5: Chương trình tính giai thừa của một số


Yêu cầu: Viết chương trình tính giai thùa của một số n. Lưu file giaithua.sh
- Thực thi file theo cú pháp: ./giaithua.sh [số n]
- Nếu khi thực thi, người dùng không nhập tham số n thì yêu cầu nhập trong chương trình
Các lệnh của chương trinh Ý nghĩa
#!/bin/sh
if [ -z "$1" ] # Nếu tham số thứ 1 là rỗng (zero) thì:
then yêu cầu nhập số n.
echo "Day la chuong trinh tinh giai thừa số n" Ghi số nhập vào biến n
echo "Nhap so n:" # nếu không rỗng thi chọn n bằng giá
read n trị tham số 1 ($1)
else
n=$1
fi
index=0
gt=1
while [ $index -lt $n ] # Thực hiện các phép toán (do) khi
do $index < $n
index=$(($index + 1))
gt=$(($gt * $index))
done
echo "$n!= $gt"
exit 0

Bài tập 6: Chương trình đếm số dòng của một tệp tin
Yêu cầu: Viết chương trình đếm số dòng của một tệp tin. Lưu file demdong.sh
- Thực thi file theo cú pháp: ./demdong.sh <ten file>
- Nếu khi thực thi, người dùng không nhập “tên file” thì đưa ra hướng dẫn sử dụng trước khi kết
thúc chương trình.

Các lệnh của chương trinh Ý nghĩa


#!/bin/sh
if [ -z "$1" ] # Nếu tham số thứ 1 là rỗng (zero) thì:
then thông báo lỗi.
echo "Chuong trinh tinh dem so dong cua tap tin" Thoát chương trình.
echo "Ban phải chi ten tap tin trong cau lenh"
echo "Cú pháp: ./demdong.sh <ten FILE>"
exit
fi
echo “Chuong trinh dem so dong cua tap tin $1”
{ # bộ lệnh trong cặp {…} được thực thi
n=0 với dữ liệu đầu vào là $1
while read line # đọc 1 dòng trong file
do
n=$(( $n + 1 ))
done
echo “So dong cua tap tin $1 la : $n”
}<$1
exit 0
Bài tập 7: Chương trình đếm số từ của một tập tin
Yêu cầu: Viết chương trình đếm số dòng của một tệp tin. Lưu file demtu.sh
- Thực thi file theo cú pháp: ./demtu.sh <ten file>
- Nếu khi thực thi, người dùng không nhập “tên file” thì đưa ra hướng dẫn sử dụng trước khi kết
thúc chương trình.

Các lệnh của chương trinh Ý nghĩa


#!/bin/sh
if [ -z "$1" ] # Nếu tham số thứ 1 là rỗng (zero) thì:
then thông báo lỗi.
echo "Chuong trinh tinh dem so dong cua tap tin" Thoát chương trình.
echo "Ban phải chi ten tap tin trong cau lenh"
echo "Cú pháp: ./demtu.sh <ten FILE>"
exit
fi
echo “Chuong trinh dem so tu cua tap tin $1”
{ # bộ lệnh trong cặp {…} được thực thi
n=0 với dữ liệu đầu vào là $1
while read line # đọc 1 dòng trong file
do
for wd in $line # đọc 1 word trong line.
do
n=$(($n + 1))
done
done
echo “Tong so tu cua tap tin $1 la : $n”
}<$1
exit 0

Bài tập 8: Chương trình tìm dòng có độ dài lớn nhất trong một tập tin
#!/bin/sh
echo “Chuong trinh tim dong dai nhat trong tap tin $1”
{
n=0
max=0
dong=””
while read line
do
n=`expr length “$line”`
if [ $n –gt $max ]
then
dong=”$line”

max=$n
fi
done
echo “Dong trong tap tin $1 co do dai max = $max la : $dong”
}<$1
exit 0

Bài tập 9: Chương trình tìm một xâu trong một tập tin
#!/bin/sh
echo “Chuong trinh tim xau $1 trong tap tin $2”
{
wordlen=`expr length “$1”` # Do dai tu can tim
while read textline
do
textlen=`expr length “$textline”` # Do dai cua dong vua doc
end=$(($textlen – wordlen + 1”
index=1
while [ $index –le $end ]
do
temp=`expr substr “$textline” $index $wordlen
if [ “$temp” = $1 ]
then
echo “Tim thay $1 tai dong $textline”
break
fi
index=$(($index + 1))
done
done
}<$2
exit 0

Bài tập 10: Tìm số lớn nhất trong dãy số nhập vào
#/bin/bash
# input an array of elements
function input()
{
echo -n "n= "
read n

for ((i=0; i<n; i++))


do
echo -n "a[$i] " =
read a[$i]
done
}
#max of two numbers
function max2nums()
{
if [ "$1" -gt "$2" ]; then
max1=$1
echo $1
else
max1=$2
echo $2
fi
return $max1
}
#max of an array
function maxs()
{
max=${a[0]}
for ((i=1; i<n; i++))
do
max=$(max2nums ${a[$i]} $max)
done
echo "max = $max"
}
input
maxs
exit $?

Viết 1 chương trình Shell đọc từng dòng trong 1 file văn bản. Giữa mỗi lần hiển thị dòng text thì
có 1 câu hỏi từ Shell: “bạn có muốn đọc dòng kế tiếp ko ? y/n” nếu trả lời là “y” hoặc “Y” thì in
dòng kế tiếp,trong trường hợp ngược lại thì kết thúc chương trình
#!/bin/sh
echo – e “ nhap ten file:”
read filename
if [ ! –f “$filename” ]; then
echo “ $filename not exists”
exit 1
fi
answer=””
count=0
numlines=`wc –l $filename|sed ‘s/^ *//’|cut –d “ “ –f 1`
echo “ so dong: $numlines”
while [ “$answer”!=”n”]
do
echo –e “tiep tuc(y/n)?”
read answer
if [ “answer” = “y” ]; then
echo “doc het file rui”
exit 0
fi
count=$(($count+1))
sed –n ${count}p $filename
done
exit 0

Viết 1 chương trình trong Shell sao cho với tham số thứ nhất là tên file
text và nó sẽ in ra màn hình nội dung file này, nhưng với tất cả ký tự đều viết
hoa
#!/bin/sh
echo – e “ nhap ten file:”
read filename
if [ ! –f “$filename” ]; then
echo “ $filename not exists”
exit 1
fi
echo “file sau khi chuyen doi:”
tr ‘[a-z]’ ‘[A-Z]’ <$filename
exit 0

Bài 10. Viêt́ chương triǹ h shell giaỉ phương triǹ h bâc ̣ hai : ax2 + bx +c =0 với các tham số a,b,c
nhập từ bàn phiḿ va ̀ cać kêt́ qua chińh xać đêń hai chữ số.
#!/bin/bash
echo -n "a= " Phương trình bậc 2 có dạng
aX^2 + bX + c = 0 ( a khác 0)
read a
Delta = D = b^2 - 4ac
echo -n "b= "
D < 0: pt vô nghiệm.
read b D = 0: pt có nghiệm kép: X1= X2= - b / 2a
echo -n "c= " D > 0: pt có 2 nghiệm phân biệt.
X1= ( -b + \/ D) / 2a
read c X2= ( -b - \/ D) / 2a
delta=$(echo "$b^2 - 4*$a*$c" | bc) scale cho biết số lượng số sau dấu chấm.
if [ $delta -lt 0 ] bc có thể nhận dạng và xử lý:
-các số (cả integer và float)
then -biến
echo "pt vo nghiem" -comment dùng để diễn giải đoạn code( /* */)
-Expression-các biểu thức
elif [ "$delta" -eq 0 ] -Các statement (ví dụ if -then)
then -Các hàm

echo -n "pt co nghiem kep x= " Doc a, b,c


x=$(echo "scale=2; -$b/(2*$a)" | bc) delta=$(echo "$b^2 - 4*$a*$c" | bc)
neu [ delta < 0]
echo "$x" thi
else xuat “pt VN”
echo "phuong trinh co 2 nghiem" elif [delta = 0]
thi
x1=$(echo "scale=2; -($b + sqrt($delta))/(2*$a)" | bc) xuat : pt co nghiem kep
echo "x1= $x1" x=$(echo "scale=2; -$b/(2*$a)" | bc)
xuat x
x2=$(echo "scale=2; -($b - sqrt($delta))/(2*$a)" | bc) nguoc lai
echo "x2= $x2" xuat : pt co 2 N
x1=$(echo "scale=2; -($b + sqrt($delta))/(2*$a)" | bc)
fi xuat x1
exit 0 x2=$(echo "scale=2; -($b - sqrt($delta))/(2*$a)" | bc)
xuat x2
fi
exit 0
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH.
KHOA CÔNG NGHỆ THÔNG TIN.
MÔN HỌC: HỆ ĐIỀU HÀNH.

LAB 7: CÀI ĐẶT PHẦN MỀM TRONG LINUX


(SV thực hiện tại lớp)

***
Gắn kết ổ đĩa vào hệ thống quản lý file của Linux:
- Tạo 1 thư mục rỗng.
 Ví dụ: mkdir /mnt/crd
- Gắn kết tập tin thiết bị ổ đĩa vào thư mục rỗng bằng lệnh mount
 Ví dụ: mount /dev/cdrom /mnt/cdr
Gỡ bỏ ổ đĩa đã gắn kết:
- Gỡ bỏ ổ đĩa đã gắn kết bằng lệnh umount
 Ví dụ: umount /dev/cdrom
 Hoặc: umount /mnt/cdr
Nén và giải nén file / folder trong Linux bằng gzip / gunzip:
- Nén file /folder thành file *.gz
 #gzip [tên file]
- Giải nén file *.gz
 #gunzip [tên file.gz]
Nén và giải nén file / folder trong Linux bằng zip / unzip:
- Nén file / folder thành file *.zip:
 Lệnh: zip -r [tênfile.zip] [file1 / folder]
- Giải nén file *.zip
 #unzip [tên file.zip]
Nén và giải nén file / folder trong Linux bằng tar:
- Gom nhiều file / folder thành một file duy nhất (*.tar):
 Lệnh: tar -cvf [tênfile.tar] [file1] [file2] ...
- Gom nhiều file / folder thành một file duy nhất – nén file này (*.tar.gz):
 Lệnh: tar -zcvf [tênfile.tar] [file1] [file2] ...
- Bung file *.tar vào thư mục hiện tại:
 Lệnh: tar -xvf [tênfile.tar]
- Bung file *.tar vào thư mục khác:
 Lệnh: tar -xvf [tênfile.tar] -C [destination]
- Giài nén và bung file *.tar.gz vào thư mục hiện tại:
 Lệnh: tar -zxvf [tênfile.tar.gz]
- Giài nén và bung file *.tar.gz vào thư mục khác:
 Lệnh: tar -zxvf [tênfile.tar.gz] -C [destination]
Cài đặt phần mềm trong Linux:
1. Cài đặt từ gói phần mềm (*.rpm) có sẵn trong CD hoặc USB drive bằng lệnh: rpm
- Kiểm tra các gói phần mềm đã / chưa được cài đặt:
 Lệnh: rpm -qa
 Hoặc: rpm -qa <tên gói>
- Cài đặt gói phần mềm:
 Lệnh: rpm -ivh <tên gói>
- Gỡ bỏ gói phần mềm đã cài đặt:
 Lệnh: rpm -e <tên gói>
- Cập nhật gói phần mềm đã cài đặt:
 Lệnh: rpm -U <tên gói>
2. Cài đặt từ source phần mềm (*. tar.gz hoặc *.tar.bz2) tải về từ web.
- [root@ln ~]# ./configure # Kiểm tra các điều kiện và tạo Makefile
- [root@ln ~]# make # Biên dịch
- [root@ln ~]# make install # Tiến hành cài đặt phần mềm.
3. Cài đặt phần mềm trực tiếp từ nhà cung cấp:
- Lệnh yum (Yellowdog Updater Modified) cài đặt phần mềm từ những nhà cung cấp
đã được định danh sẵn trong Linux
- Cài đặt gói phần mềm:
 Lệnh: yum install <tên gói>
 Hoặc: yum install -y <tên gói> #cài đặt không cần hỏi lại
- Gỡ bỏ gói phần mềm đã cài đặt:
 Lệnh: yum remove <tên gói>
- Cập nhật gói phần mềm đã cài đặt:
 Lệnh: yum update <tên gói>

Bài tập 1: Gắn kết (mount) đĩa CD vào Linux

Ghi chú trước khi thực hành:


- Dùng lệnh: init 3 để CentOS Linux trở về giao diện text.
- Khi muốn con trỏ mouse trở về Hệ điều hành máy thật: dùng tổ hợp phím Ctrl-Alt
1. Cho đĩa CD “Centos 6.5…DVD” vào ổ CD
- Thao tác trên máy ảo VMWare:
o Nhấp phải trên máy ảo “CentOS”  chọn menu “Setting”
o Trong cửa sổ “Virtual Machine Settings”: chọn mục “CD/DVD”  chọn “Use ISO
image file”  nút “Browse” để chỉ tới file “Centos…DVD.ISO”
o Đảm bảo đã check mục “Connected” trước khi nhấn “OK” để xác nhận.
2. Tạo mới 1 thư mục rỗng dùng để mount ổ CD vào.
- Lệnh: mkdir /mnt/cdr
3. Mount CD vào thư mục rỗng đã tạo (/dev/cdrom là tên file thiết bị cdrom)
- Lệnh: mount /dev/cdrom /mnt/cdr
4. Kiểm tra kết quả:
o Dùng lệnhL ls –l /mnt/cdr để xem danh sách các tập tin / thư mục trong đĩa CD
Bài tập 2: Cài đặt phần mềm trên Linux

Ghi chú trước khi thực hành:


- Dùng lệnh: init 3 để CentOS Linux trở về giao diện text.
- Khi muốn con trỏ mouse trở về Hệ điều hành máy thật: dùng tổ hợp phím Ctrl-Alt
1. Cài đặt gói phần mềm vsftpd từ đĩa DVD “Centos”
- Đưa đĩa DVD “Centos” vào ổ.
- Mount đĩa DVD vào một thư mục rỗng (lưu ý: file thiết bị: /dev/dvd)
- Chuyển đến thư mục chứa các gói cài đặt trên DVD (thư mục Packages)
- Tiến hành cài đặt vsftp bằng lệnh: rpm -ivh vsftpd-2.2.2-11.el6_4.1.x86_64.rpm
- Kiểm tra kết quả bằng:
o Lệnh: rpm -qa vsftpd
o Hoặc thử khởi động dịch vụ vsftpd: service vsftpd start
2. Cài đặt gói phần mềm samba bằng lệnh yum:
- Kết nối mạng máy “Centos” với internet:
o Cho card mạng máy ảo kết nối vào VMNet8 (NAT).
- Kiểm tra kết nối internet bằng lệnh: ping 8.8.8.8
- Tiến hành cài đặt samba bằng lệnh: yum install samba
- Kiểm tra kết quả bằng:
o Lệnh: yum list samba
o Hoặc thử khởi động dịch vụ vsftpd: service smb start
3. Cài đặt gói phần mềm Open Office cho CentoS dạng đồ họa:
- Kết nối mạng máy “Centos” với internet:
o Cho card mạng máy ảo kết nối vào VMNet8 (NAT).
- Kiểm tra kết nối internet bằng lệnh: ping 8.8.8.8
- Dùng lệnh: init 5 để trở về giao diện đồ họa.
- Sử dụng trình duyệt Firefox để tìm và tải gói phần mềm Open Office – tiếng Việt từ website
Source-forge. (Lưu ý: CentOS là phân hệ của RedHat, gói phần mềm dạng RPM. Ubuntu là
phân hệ Debian, gói phần mềm dạng DEB)
- Dùng lệnh rpm để cài gói Open Office – tiếng Việt vào máy CentOS.

You might also like