Tài Liu Thc Hành H Điu Hành – B môn HTMT&TT
Ths. Phan Thượng Cang - Ths. Bùi Quc Thái Trang 43
Bài thc hành s 5
QUN LÝ VÀO/RA – TP TIN – ĐỔI HƯỚNG
1 Ni dung thc hành
Tp tin: Các khái nim cơ bn v tp tin ca Unix, t chc ca các tp tin trên
đĩa, các thao tác vi tp tin.
Vào ra: Các lung d liu vào/ra chun và các thao tác đổi hướng chúng.
Chuyn d liu gia các tiến trình.
2 T chc tp tin
2.1 Các kiu tp tin
Unix có 3 kiu tp tin:
Tp tin bình thường: là mt tp hp thông tin (ASCII, text hoc binary)
Tp tin thư mc (tp tin danh mc- directory file): cha danh sách các tên có
th truy nhp ti. Ví d như: các tp tin bình thường, các tp tin đặc bit hoc
các thư mc con.
Tp tin đặc bit: là các tp tin liên quan đến các thiết b ngoi vi cng hoc cơ
chế truyn tin. Ví d như:
o Bàn phím là mt tp tin đầu vào (input file)
o Màn hình là mt tp tin đầu ra (output file)
o Máy in là mt tp tin đầu ra
2.2 T chc tp tin
Các tp tin ca Unix được t chc theo dng cây. Thư mc gc (root) ca cây được
biu din bng ký t /. Các tp tin và các đĩa khác ch là nhánh ca Root.
Cu trúc cây cơ s ca h Unix được b trí như sau:
/
+----+-----+----+----+-----+----+-----+-----+----+----+----+
bin boot dev etc home lib mnt proc sbin tmp usr var
| |
+---+---+ +---+---+
abc user1 xyz bin lib sbin
|
+-----+
notes labs
Tài Liu Thc Hành H Điu Hành – B môn HTMT&TT
Ths. Phan Thượng Cang - Ths. Bùi Quc Thái Trang 44
Trong đó:
1. / – Là thư mc gc (root) cha tt c các thư mc khác
2. /bin – cha các tp tin nh phân (chương trình) cn cho vic khi động h
thng hoc làm vic trong chế độ người dùng đơn để duy trì h thng
3. /boot – cha các kernel image và các tp tin cu hình khi khi động (boot
configuration files)
4. /dev – cha các tp tin đặc bit được s dng để tương tác vi các thiết b phn
cng
5. /etc – cha các tp tin cu hình h thng
6. /home – cha các thư mc home người dùng
7. /lib – cha các module thư vin được dùng bi các câu lnh
8. /mnt – cha các thư mc tr đến các thiết b lưu tr (mount point for other
storage devices)
9. /proc – mt h thng tp tin gi lp cho vic chuyn đổi d liu gia các tiến
trình
10. /sbin – cha các câu lnh cn thiết cho vic qun tr h thng
11. /tmp – cha các tp tin tm thi (temporary files)
12. /usr – cha các tp tin chương trình, các thư vin, các tài liu, … được dùng
bi nhng người dùng (normal users)
13. /var – cha các tp tin d liu thường xuyên thay đổi như: các tp tin log h
thng, mail và các tp tin ghi nhn in n…
3 Đường dn (path)
3.1 Đường dn tuyt đối
Mt đường dn tuyt đối s ch ra v trí chính xác ca mt tp tin hay thư mc đưc
bt đầu t thư mc gc (root).
#Ví d:
Đường dn tuyt đối ca thư mc notes/home/user1/notes. Mt đường dn tuyt
đối luôn bt đầu vi /
/
+-----+-----+------+-----+
bin etc home usr var
|
+---------+
abc user1
|
+------+
notes labs
Tài Liu Thc Hành H Điu Hành – B môn HTMT&TT
Ths. Phan Thượng Cang - Ths. Bùi Quc Thái Trang 45
3.2 Đường dn tương đối
Mt đường dn tương đối s ch ra v trí ca mt tp tin hay thư mc mà đường dn
được xác định bt đầu t thư mc hin hành
#Ví d :
Nếu như thư mc đang làm vic là /home thì đưng dn tương đối đến thư mc notes
s là : user1/notes
Mt s ký hiu đặc bit có th đưc s dng trong các đường dn tương đối:
. Thư mc hin hành
.. Thư mc cha
~ thư mc home ca người dùng hin đang login
#Ví d:
Nếu thư mc đang làm vic là /home/user1, thì ký hiu .. là mt đường dn tương đối
đến /home
4 Di chuyn gia các thư mc
Để di chuyn gia các thư muc trong cây ca Unix, ta dùng 2 lnh sau đây:
cd : chuyn đến thư mc cn đến (vic tương tác đến mt vài thư mc có
th b khóa tùy thuc vào quyn người dùng)
pwd : hin th tên thư mc đang làm vic
Ti thi đim bt đầu phiên làm vic, ta trong thư mc home. Mun xem tên thư
mc này, ta dùng lnh pwd.
#Ví d:
user1 có thư mc home là /home/user1
$pwd
/home/user1
Để di chuyn gia các thư mc ta dùng lnh cd vi tên thư mc cn chuyn đến
#Ví d:
$cd /usr/bin
$pwd
/usr/bin
$cd ..
$pwd
/usr
Để v thư mc home ca người dùng khi ta đang bt k đâu, dùng câu lnh:
#Ví d:
$cd
$pwd
/home/user1
Tài Liu Thc Hành H Điu Hành – B môn HTMT&TT
Ths. Phan Thượng Cang - Ths. Bùi Quc Thái Trang 46
5 Các thao tác cơ s vi thư mc
5.1 Xem ni dung thư mc
- Xem ni dung thư mc hin đang làm vic:
$ls
- Xem ni dung thư mc khác, ví d thư mc /bin:
$ls /bin
- Xem thêm thông tin ca các tp tin trong thư mc
$ls -l
Hoc:
$ll
Không có s hn chế dùng ký t nào khi đặt tên tp tin, tuy nhiên ta cn chú ý:
+ Không dùng các ký t đặc bit (tr du chm ‘.’ hoc du gch dưới ‘_’) vì
phn ln các ký t đó được dùng trong cú pháp ca lnh shell
+ Tp tin có tên bt đầu bng du chm ‘.’ Là tp tin n (hidden)
+ Phân bit ký t hoa và thường
Đặt tên tp tin bng cách dùng các metacharacter (? và “)
+ Ký t ‘ “ ‘ thay thế 1 chui ký t
+ Ký t ‘?’ thay thế 1 ký t
#Ví d:
$ll /bin/c”
$ll /bin/c?
5.2 Các trường cho mt mc t ca thư mc:
Khi xem mt thư mc trong Unix, chúng ta có th đọc được nhng thông tin như:
o Quyn người dùng (Permissions) :
Người dùng hay người qun tr cn phi cp quyn cho nhng người dùng
khác để cho phép h có th tương tác đến các tp tin hay thư mc. Mi tp tin
hay thư mc có các quyn đọc, viết, hoc thc thi (read, write and execute
permisssions) còn tùy thuc trên tng người dùng hay nhóm người dùng. Mc
định người dùng đã to ra tp tin hay thư mc (còn được gi là owner) s có tt
c các quyn trên nó.
o Liên kết (Link) :
Người dùng có th to ra các liên kết (link) đến các tp tin hin có. H thng
tp tin s theo dõi các liên kết này
o Owner và nhóm (Owner and group) :
Unix là mt h điu hành đa người dùng. Đối vi mi tp tin hay thư mc, h
thng tp tin s theo dõi người dùng đã to ra nó (owner) và nhóm người dùng
o Kích thước (Size)
Được tính theo byte
o Thi gian (Date)
Tài Liu Thc Hành H Điu Hành – B môn HTMT&TT
Ths. Phan Thượng Cang - Ths. Bùi Quc Thái Trang 47
#Ví d: Mt mc t ca thư mc:
$ls –l test
-rwxrw-r-- 1 xyz staff 12 Mar 7 12:35 test
o Đây là mt tp tin bình thường
o rwx : quyn ca owner (xyz): read, write, execute
o rw : quyn ca nhóm owner: read, write, not execute
o r-- : quyn cho nhóm người dùng khác: read, not write, not execute
o 1 : S liên kết đến tp tin
o 12 : Kích thước tp tin (bytes)
o Mar 7 12:35 : Thi gian tp tin được sa đổi sau cùng
o test : Tên ca tp tin
5.3 Các câu lnh khác có liên quan:
Các câu lnh tp tin và thư mc, sinh viên cn tham kho phn thc hành s 2
6 Bo v các tp tin người dùng
6.1 Mô t người dùng
6.1.1 Khái nim:
Mt người s dng được mô t bng các thông tin sau:
o Tên
o Mt khu (nếu có)
o S nhn dng (uid: user identify number)
o S ca nhóm (gid: group identify number)
o Chú thích (nếu có)
o Thư mc home ca người dùng (home directory)
o Tên chương trình cho chy lúc bt đầu phiên làm vic (nếu có): bash shell
script
Các thông tin trên được cha trong tp tin /etc/passwd
#Ví d:
$cat /etc/passwd | more
6.1.2 Lnh useradd:
Lnh này trong thư mc /etc, nó cho phép:
Hin th danh sách người dùng
Thêm người dùng mi (ch người qun tr h thng có quyn)