1. Trang chủ
  2. » Công Nghệ Thông Tin

Đề tài 10. Nghiên cứu tìm hiểu về Hệ thống tệp tin trong HĐH Linux.

19 1,2K 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 19
Dung lượng 357,46 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sau đây nhóm chúng em xin được trình bày về vấn đề: Quản lý hệ thống file trong hệ điều hành Linux.. Linux là một hệ điều hành mã nguồn mở Open Source và miễn phí dưới bản quyền của tổ c

Trang 1

ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

- -KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO BÀI TẬP LỚN MÔN HỌC:NGUYÊN LÝ HỆ ĐIỀU HÀNH

Đề tài: Nghiên cứu tìm hiểu về hệ thống tệp tin

trong HĐH LINUX

Giáo viên: Ths.Nguyễn Thanh Hải.

Nhóm: 10.

Lớp: ĐH Khoa Học Máy Tính 1- K10

Hà Nội, 2017.

Trang 2

ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

- -KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO BÀI TẬP LỚN MÔN: NGUYÊN LÝ HỆ ĐIỀU HÀNH

Đề tài: Nghiên cứu tìm hiểu về hệ thống tệp tin

trong HĐH LINUX Giảng viên hướng dẫn: ThS.Nguyễn Thanh Hải.

Nhóm thực hiện: Nhóm 10.

Lớp: KHMT1_K10.

Thành viên:

-Vũ Quang Dương.

-Nguyễn Đức Hiệp.

-Nguyễn Văn Quang Huy.

-Phùng Quang Vũ.

Hà Nội,2017.

Trang 3

MỤC LỤC

LỜI NÓI ĐẦU 2

CHƯƠNG 1 GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH LINUX VÀ HỆ THỐNG TỆP TIN 3 1.1 Sơ lược về hệ điều hành Linux 3

1.1.1 Linux là gì? 3

1.1.2 Những điểm ưu tú của Linux 4

1.1.3 Một vài nhược điểm của Linux 4

1.2 Hệ thống tệp tin 4

1.2.1 Khái niệm về hệ thống tệp tin 4

1.2.2 Các thao tác của hệ thống tệp tin 5

1.2.3 Quản lý tệp tin 6

CHƯƠNG 2 HỆ THỐNG QUẢN LÝ TỆP TIN TRONG LINUX 7

2.1 Hệ thống file EXT2 7

2.1.1 Giới thiệu 7

2.1.2 Các thành phần trong tệp tin 8

2.1.3 Cách tổ chức tập tin trên Linux 9

2.2 Hệ thống File EXT3 12

2.2.1.Giới thiệu 12

2.2.2.Journaling File 13

2.2.3 Cơ chế và khả năng chuyển đổi 14

2.3 Liên hệ so sánh với nguyên lý quản lý hệ tệp đã học 16

Trang 4

LỜI NÓI ĐẦU

Hệ điều hành là một chương trình quản lý phần cứng máy tính Nó cung cấp nền tảng cho các chương trình ứng dụng và đóng vai trò trung gian giao tiếp giữa người dùng máy tính và phần cứng của máy tính đó Nó giúp máy tính dễ sử dụng hơn, thuận lợi và hiệu quả hơn

Tài nguyên máy tính mà điển hình là hệ cơ sở dữ liệu (Database System) có ảnh hưởng rất nhiều tới tính hiệu quả của việc sử dụng máy tính Mà trong đó hệ thống các file là hệ thống chủ yếu Bởi vậy quản lí hệ thống file như thế nào có ảnh hưởng lớn và trực tiếp tới hiệu quả sử dụng máy tính Việc quản lí hệ thống file được xây dựng và tổ chức tùy thuộc vào từng hệ điều hành

Sau đây nhóm chúng em xin được trình bày về vấn đề: Quản lý hệ thống file trong

hệ điều hành Linux

Nhóm sinh viên thực hiện

Trang 5

CHƯƠNG 1: GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH

LINUXVÀ HỆ THỐNG TỆP TIN 1.1.Sơ lược về hệ điều hành Linux

1.1.1.Linux là gì?

Linux là một hệ điều hành mã nguồn mở (Open Source) và miễn phí dưới bản quyền của tổ chức GNU (Gnu’s Not Unix).Mặc dù các hệ thống này thường được gọi là Linux nhưng tên chính xác cho các hệ thống này là Hệ điều hành GNU/Linux

Linux đạt được những thành công một cách nhanh chóng là nhờ vào các đặc tính nổi bật so với các hệ thống khác: Chi phí phần cứng thấp, tốc độ cao (so với Unix)

và khả năng bảo mật tốt, độ tin cậy cao (so sánh với Windows) cũng như là các đặc điểm về giá thành rẻ, không bị phụ thuộc vào nhà cung cấp Một đặc tính nổi trội của

nó là được phát triển bởi một mô hình phát triển phần mềm mã nguồn mở hiệu quả Đó

là một thách thức đối với sự thống trị của Microsofft Windows trong một số lĩnh vực Khởi đầu, Linux được phát triển cho dòng vi xử lý 386 Intel với khả năng đa tác vụ Hiện tại tất cả các phiên bản của Linux đều có chung phần kernel (nhân) và các tính năng đặc trưng cùng với các ứng dụng mang tính chuyên dụng và phổ cập như:Open Office,Mozilla Firefox,Pidgin,Scim,Unikey,…

Tuy nhiên, hiện tại số lượng phần cứng được hỗ trợ bởi Linux vẫn còn rất khiêm tốn so với Windows vì các trình điều khiển thiết bị tương thích với Windows nhiều hơn là Linux Nhưng trong tương lai số lượng phần cứng được hỗ trợ cho Linux sẽ tăng lên

Cuối cùng, Linux là mở, có nghĩa là trên thực tế bất cứ ai cũng có thể xem và cải thiện dựa vào nguồn gốc của nó Tính mở này cũng giảm thiểu các cơ hội bị lợi dụng, tạo ra một nền tảng an toàn hơn Nhiều công ty đóng góp cho Linux, bảo đảm rằng nó sẽ tiếp tục giải quyết một loạt các mô hình sử dụng trong khi vẫn duy trì các đặc tính cốt lõi của mình

Trang 6

1.1.2.Những ưu điểm của Linux

-Linh hoạt và uyển chuyển:

Linux là một HĐH mã nguồn mở nên người dùng có thể tùy ý sửa chữa theo như mình thích.Người dùng có thể chỉnh sửa Linux và các ứng dụng trên đó sao cho phù hợp với mình nhất.Tính linh hoạt của Linux còn được thể hiện ở chỗ nó tương thích được với rất nhiều môi trường Hiện tại, ngoài Linux dành cho server,máy tính để bàn nhân Linux (Linux kernel) còn được nhúng vào các thiết bị điều khiển như máy tính palm, robot,

-Độ an toàn cao:

Trước hết, trong Linux có một cơ cấu phân quyền hết sức rõ ràng Chỉ có

"root"( người dùng tối cao) mới có quyền cài đặt và thay đổi hệ thống Ngoài ra Linux cũng có cơ chế để một người dùng bình thường có thể chuyển tạm thời chuyển sang quyền "root" để thực hiện một số thao tác

-Thích hợp cho quản trị mạng:

Được thiết kế ngay từ đầu cho chế độ đa người dùng, Linux được xem là một hệ điều hành mạng rất giá trị.Đó là do Linux có rất nhiều ưu điểm thỏa mãn đòi hỏi của một hệ điều hành mạng: tính bảo mật cao, chạy ổn định, các cơ chế chia sẻ tài nguyên tốt Giao thức TCP/IP mà chúng ta vẫn thấy ngày nay chính là một giao thức truyền tin của Linux (sau này mới được đưa vào Windows)

-Chạy thống nhất trên các hệ thống phần cứng:

Dù cho có rất nhiều phiên bản Linux được các nhà phân phối khác nhau ban hành nhưng nhìn chung đều chạy khá ổn định trên mọi thiết bị phần cứng, từ Intel 486 đến những máy Pentium mới nhất, từ những máy có dung lượng RAM chỉ 4MB đến những máy có cấu hình cực mạnh

1.1.3.Một vài nhược điểm của Linux

- Đòi hỏi người dùng phải thành thạo:

Trước kia việc sử dụng và cấu hình Linux được xem là một công việc chỉ dành cho những chuyên gia.Hầu như mọi công việc đều thực hiện trên các dòng lệnh và phải cấu hình nhờ sửa trực tiếp các file Mặc dù trong những phiên bản gần đây, các HĐH Linux đã có những cải tiến đáng kể, nhưng so với Windows tính thân thiện của Linux

Trang 7

vẫn còn là một vấn đề lớn Đây là một trong những nguyên nhân chủ yếu khiến Linux mặc dù có rất nhiều đặc tính kỹ thuật tốt nhưng vẫn chưa đến được với người dùng cuối

- Tính tiêu chuẩn hóa:

Linux được phát hành miễn phí nên bất cứ ai cũng có thể tự mình đóng gói, phân phối theo những cách riêng Hiện tại có khá nhiều bản Linux phát triển từ một nhân ban đầu cùng tồn tại như: RedHat, SuSE, Knoppix Người dùng phải tự so sánh xem bản nào

là phù hợp với mình Điều này có thể gây khó khăn cho người dùng, nhất là những người còn có kiến thức về tin học hạn chế

-Số lượng các ứng dụng chất lượng cao trên Linux còn hạn chế:

Mặc dù Windows có sản phẩm nào thì Linux cũng gần như có phần mềm tương tự (VD: OpenOffice trên Linux tương tự như MSOffice, hay GIMP tương tự như Photoshopv v ) Tuy nhiên chất lượng những sản phẩm này là chưa thể so sánh được với các sản phẩm viết cho Windows

-Một số nhà sản xuất phần cứng không có driver hỗ trợ Linux:

Do hiện nay Linux chưa phổ biến bằng Windows nên nhiều nhà sản xuất không hỗ trợ các driver chạy trên Linux

1.2.Hệ thống tệp tin

1.2.1.Khái niệm về hệ thống tệp tin

Dữ liệu máy tính được lưu trữ trên các thiết bị nhớ ngoài như : băng từ, đĩa từ,…

và được tập hợp một cách có tổ chức theo đơn vị lưu trữ gọi là hệ thống tệp tin Như vậy , hệ thống tệp tin là đơn vị logic để hệ điều hành quản lý thông tin trên đĩa Hệ thống tệp tin có thể là một chương trình của người sử dụng, một chương trình của một

hệ thống hoặc một tập hợp dữ liệu của người sử dụng

Trên phương diện người sử dụng , dữ liệu trong hệ thống tệp tin được tổ chức thành các bản ghi logic mà mỗi bản ghi logic có thể là một byte hoặc một cấu trúc dữ liệu nào đó Bản ghi logic chính là đơn vị dữ liệu mà các chương trình cần xử lý trong quá trình hoạt động của mình

1.2.2.Các thao tác của hệ thống tệp tin

Một hệ thống tệp tin dù phức tạp hay đơn giản cũng đều phải cung cấp cho người

sử dụng những công cụ đơn giản để thao tác với tệp tin Trong hệ thống tệp tin thường

có những thao tác sau:

-Tạo/Xóa tệp tin

Trang 8

-Đọc tệp tin.

-Bổ sung dữ liệu vào tệp tin

-Thay đổi thuộc tính tệp tin

Để truy nhập tới các tệp tin, hệ thống tệp tin sử dụng hai phương pháp :

-Truy nhập tuần tự: các bản ghi logic trong tệp tin được truy nhập lần lượt từ đầu đến cuối theo đúng trình tự sắp xếp trong tệp tin Với cách thức truy nhập này thì hoàn toàn có thể biết trước được bản ghi logic kế tiếp truy nhập sẽ là bản ghi nào vì vậy hệ điều hành biết được vị trí trên bộ nhớ ngoài của bản ghi logic kế tiếp cần xử lý Cách thức truy nhập tuần tự có mức độ tự động hóa cao tuy nhiên chỉ áp dụng được với các tệp tin được tổ chức theo kiểu tuần tự Mặt khác, để đảm bảo được mức độ tự động hóa cao thì hệ thống phải đảm bảo thực hiện mọi công việc chuẩn bị liên quan đến bản ghi cho trương trình của người sử dụng

-Truy nhập trực tiếp: theo cách thức này, hệ thống hoàn toàn không có trước thông tin về bản ghi nào là bản ghi kế tiếp cần xử lý Người lập trình cần phải tự xác định về bản ghi cần xử lý và để tìm được nó, mọi vấn đề đồng bộ hóa phải được đặt ra Tuy mức độ tự động hóa thấp nhưng cách thức truy nhập trực tiếp cho phép truy xuất các tệp tin hết sức mềm dẻo, linh hoạt, đạt được mức độ chủ động của chương trình người sử dụng đối với các tệp tin

1.2.3 Quản lý tệp tin

Quản lý tệp tin là tổ chức các thư mục thiết bị sao cho việc thao tác với các tệp tin là tối ưu nhất

Các hệ điều hành thực tế tồn tại một số kiểu tổ chức:

-Tổ chức thư mục một mức

-Tổ chức thư mục hai mức

-Tổ chức theo cấu trúc cây

Trang 9

-Tổ chức theo đồ thị không chu trình1.2.4 Bảo v tệp tin và đảm bảo tính toàn ệ vẹn dữ liệu

Bảo vệ tệp tin thông qua giới hạn quyền truy nhập của người sử đụng như: đọc, viết, xóa…

Một số phương pháp bảo vệ tệp tin được áp dụng là: đặt tên, đặt mật khẩu, liệt kê quyền truy nhâp…

Để đảm bảo tính toàn vẹn dữ liệu, các hệ điều hành thương áp dụng các biện pháp như: lưu trạng thái của tệp tin qua các quá trình sử dụng, lưu trạng thái qua các thời điểm…

Trang 10

CHƯƠNG 2: HỆ THỐNG QUẢN LÝ TỆP TIN

TRONG LINUX 2.1.Hệ thống file EXT2

2.1.1.Giới thiệu

Ext2 hay hệ thống tập tin mở rộng thứ hai là một hệ thống tập tin dành cho các hệ thống nhân Linux Lúc đầu nó được thiết kế để thay thế cho hệ thống tập tin mở

rộng.Nó đủ nhanh để dùng làm tiêu chuẩn để công năng của các loại hệ điều hành Linux Hạn chế chính của nó là không có hệ thống tập tin nhật ký.Hệ thống file ext2 được giới thiệu vào đầu năm 1993 và được thiết kế riêng cho Linux Nó có nhiều tính năng tăng cường để khắc phục các hạn chế của các hệ thống file khác

Kích thước file hệ

Kích thước file lớn

Chiều đa tối đa tên

Hình 2:Bảng so sánh tính năng các hệ thống file Minix, EXT, EXT2

Những đặc trưng của hệ thống tập tin Ext2 chuẩn:

-Hệ thống tập tin Ext2 hỗ trợ các kiểu tập tin Unix chuẩn: các tập tin thông thường, các tập tin thiết bị đặc biệt và các tập tin liên kết

-Hệ thống tập tin Ext2 có khả năng quản lý các hệ thống tập tin trên những phân vùng kích cỡ rất lớn Trong khi mã nhân (kernel) gốc giới hạn kích cỡ hệ thống tập tin lớn nhất là 2GB, nghiên cứu gần đây trong lớp VFS đã tăng lên đến giới hạn là

Trang 11

4TB.Vì vậy, ngày nay nó có thể sử dụng các đĩa dung lượng lớn mà không cần tạo nhiều phân vùng

-Hệ thống tập tin Ext2 cung cấp tên tập tin dài Đây là khả năng của Linux mà trên các hệ thống UNIX chuẩn không hề cung cấp Tối đa một tên tập tin là 255 ký tự và có thể có khoảng trắng.Hệ thống tập tin Ext2 dự trữ một vài block cho super user (root) Thông thường có khoảng 5% các block này được dự trữ Điều này cho phép người quản lý phục hồi dễ dàng từ quá trình người dùng làm đầy các hệ thống tập tin

2.1.2.Các thành phần trong tệp tin

Super Block:Là một cấu trúc được tạo tại vị trí bắt đầu hệ thống tập tin Nó lưu trữ thông tin về hệ thống tập tin như: Thông tin về block-size, free block, thời gian gắn kết(mount) cuối cùng của tập tin

Inode:Lưu những thông tin về những tập tin và thư mục được tạo ra trong hệ thống tập tin Nhưng chúng không lưu tên tập tin và thư mục thực sự Mỗi tập tin tạo ra sẽ được phân bổ một inode lưu thông tin sau:

- Loại tập tin và quyền hạn truy cập tập tin

- Người sở hữu tập tin

- Kích thước của tập tin và số hard link đến tập tin

- Ngày và thời gian chỉnh sửa tập tin lần cuối cùng

- Vị trí lưu nội dung tập tin trong hệ thống tập tin

Storageblock:Là vùng lưu dữ liệu thực sự của tập tin và thư mục Nó chia thành những Data Block Dữ liệu lưu trữ vào đĩa trong các data block Mỗi block thường chứa

1024 byte Ngay khi tập tin chỉ có 1 ký tự thì cũng phải cấp phát 1 block để lưu nó Không có ký tự kết thúc tập tin

2.1.3.Cách tổ chức tập tin trên Linux

Hệ thống tập tin của Linux và Unix được tổ chức theo một hệ thống phân bậc tương tự cấu trúc của một cây phân cấp Bậc cao nhất của hệ thống tập tin là thư mục gốc, được

ký hiệu bằng vạch chéo “/” (root directory) Đối với các hệ điều hành Unix và Linux tất các thiết bị kết nối vào máy tính đều được nhận dạng như các tập tin, kể cả những

Trang 12

linh kiện như ổ đĩa cứng, các phân vùng đĩa cứng và các ổ USB Điều này có nghĩa là tất cả các tập tin và thư mục đều nằm dưới thư mục gốc, ngay cả những tập tin biểu tượng cho các ổ đĩa cứng

Hình 3:Cách tổ chức tệp tin trên Linux.

2.1.31 / – Root

- Mỗi một file và thư mục điều bắt đầu từ root directory

- Chỉ có user root có quyền trên các thư mục ở cấp bên dưới

- Còn /root là home directory của user root

.1.3.2 /bin – User Binaries

- Chứa file thực thi dạng binary

Trang 13

- Các lệnh sử dụng thông thường trong linux được sử dụng single-user mode được đặt dưới cấu trúc thư mục này

- Các câu lệnh được sử dụng bởi user trong hệ thống sẽ được đặt trong đây

2.1.3.3 /sbin – System Binaries

- Giống như /bin, bên trong /sbin cũng chứa đựng các file thực thi dạng binary Các lệnh bên trong /sbin thường được sử dụng bởi system administrator và dùng cho các mục đích là duy trì quản trị hệ thống

2.1.3.4 /etc – Configuration Files

- Thông thường ở /etc sẽ chứa file cấu hình cho các chương trình hoạt động

- Ở /etc cũng thường chứa các scripts dùng để start, stop, kiểm tra status cho các chương trình

- Ví dụ /etc/resolv.conf (cấu hình dns-server ), hay /etc/network dùng để quản lý dịch

vụ network

2.1.3.5 /dev – Device Files

- Chứa các file device để đại diện các hardware

- Ví dụ /dev/tty1 hay /dev/sda

2.1.3.6 /proc – Process Information

- Chứa đựng thông tin về quá trình xử lý của hệ thống

- Đây là một pseudo filesystem chứa đựng các thông tin về các process đang chạy

- Đây là một virtual filesystem chứa đựng các thông tin tài nguyên hệ thống Ví dụ: /proc/cpuinfo cung cấp cho ta thông số kỹ thuật của CPU

2.1.3.7 /var – Variable Files

- Chứa đựng các file có sự thay đổi trong quá trình hoạt động của hệ điều hành

- Ví dụ system log sẽ được đặt tại vị trí này

+ System log file /var/log

+ database file /var/lib

+ email /var/mail

+ Các print queue /var/spool

+ lock file /var/lock

+ Các file tạm thời cần cho quá trình reboot /var/tmp

Ngày đăng: 13/06/2017, 13:34

HÌNH ẢNH LIÊN QUAN

Hình 3:Cách tổ chức tệp tin trên Linux. - Đề tài 10. Nghiên cứu tìm hiểu về Hệ thống tệp tin trong HĐH Linux.
Hình 3 Cách tổ chức tệp tin trên Linux (Trang 12)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w