BÀI TẬP SỐ 4
Môn: Hệ Điều Hành Linux
GV: Võ Tấn Dũng
1) Bài tập về soft link (symbol link):
a) Tạo đường dẫn và tập tin như sau: /grandfather/father/son/rootfile.txt. Phải
nhập nội dung cho rootfile.txt
b) Xây dựng đường dẫn /grandmother/mother/daughter/softfile.txt (trong đó
softfile là symbol link đến rootfile.txt). Kiểm tra xem nội dung của softfile.txt
có giống rootfile.txt không?
c) Dùng lệnh tee –a để nhập thêm nội dung cho softfile.txt. Kiểm tra xem
rootfile.txt có thay đổi nội dung không?
d) Dùng lệnh tee –a để nhập thêm nội dung cho rootfile.txt. Kiểm tra xem
softfile.txt có thay đổi nội dung không?
e) Dùng lệnh ls với option thích hợp để kiểm tra tập tin rootfile.txt và softfile.txt
có bao nhiêu link, có những permission gì và thuộc quyền sở hữu của user nào.
Dùng lệnh diff để so sánh hai tập tin rootfile.txt và softfile.txt, cho nhận xét.
f) Trong thư mục daughter, tạo thêm một file softfile2.txt là soft link đến
rootfile.txt. Tiến hành xóa file softfile.txt. Sau đó kiểm tra sự tồn tại và nội
dung của rootfile.txt, softfile.txt, softfile2.txt. Cho nhận xét.
g) Tiến hành xóa file rootfile.txt. Sau đó kiểm tra sự tồn tại và nội dung của
rootfile.txt, softfile.txt, softfile2.txt. Cho nhận xét.
h) Trong linux có bao nhiêu lệnh cho tạo symbol link?
2) Bài tập về hard link (physical link)
a) Trong thư mục /abc tạo tập tin rootdoc.txt có nhập nội dung. Trong thư mục
/def tạo tập tin harddoc.txt là hard link tới rootdoc.txt. Trong thư mục /hgi tạo
tập tin harddoc2.txt là hard link đến rootdoc.txt.
b) Thực hiện các công việc tương tự như bài 1 ở trên. Cho nhận xét từng phần
như bài 1.
3) Bài tập về lệnh head và lệnh tail và wc.
a) Dùng lệnh cat xem /etc/passwd rồi copy tập tin passwd sang
/mydir/mypasswords.txt
b) Dùng lệnh head cho biết thông tin về 3 user đầu trong mypasswords.txt
c) Dùng lệnh tail cho biết thông tin về 3 user cuối trong mypasswords.txt
d) Lệnh nào trong ba lệnh trên cho ta biết thông tin từ user thứ 4 cho đến hết.
e) Sử dụng lệnh wc cho thích hợp để cho biết tổng số user trong mypassword.txt
f) Dùng lệnh vi xóa bớt vài dòng trong mypasswords.txt, thoát lệnh vi có lưu, rồi
dùng lệnh diff và cmp so sánh hai tập tin /etc/passwd và
/mydir/mypasswords.txt
4) Bài tập về lệnh cat, touch, more, less.
Lệnh touch dùng để làm gì. Lệnh cat có mấy công dụng. Thực hiện các chức năng của
chúng. (xem trang 72 và 78 trong sách “Fundamentals of Linux”).
Thực hiện các ví dụ của lệnh more và less, xem trong sách “Fundamentals of Linux”
và các sách tham khảo khác.
5) Kiểu file:
Có bao nhiêu cách để xem kiểu file của các tập tin và thư mục con trong một thư mục
của linux. Thực hiện các cách đó.
6) Tùy chọn –i:
Tùy chọn (option) –i trong các lệnh cp, mv, rm có ý nghĩa là gì? Thực hiện một số ví
dụ để chứng minh các ý nghĩa đó.
7) So sánh và giải thích kết quả khi thực hiện:
cat taptinkhongco && mkdir -p /a1/b1/c1 ; ls / | grep a1
cat taptinkhongco ; mkdir -p /a2/b1/c1 ; ls / | grep a2
8) So sánh và giải thích kết quả khi thực hiện:
echo "line1"
echo "line1">abc.txt
"line3">abc.txt
;
echo "line1">abc.txt
"line3">>abc.txt
;
echo
echo
"line2">abc.txt
;
echo
"line2">>abc.txt
;
echo
9) So sánh và giải thích kết quả khi thực hiện:
cat
taptinkhongco > abc1.txt
cat
taptinkhongco 2> abc1.txt
10) Không chạy lệnh sau, hãy dự đoán kết quả rồi mới thực hiện lệnh:
ls ~ | tee home.txt | cat
11) Bài tập về quyền sở hữu tập tin:
a) Tạo một user aaa không có quyền quản trị hệ thống.
b) Phải bảo đảm đang đứng tại user root và thư mục /root. Dùng lệnh su để
chuyển sang user aaa rồi thực hiện lệnh
cat > ttt.txt
giải thích thông báo lỗi của lệnh trên, tại sao có thông báo lỗi đó. Làm thế nào để
chuyển dòng thông báo đó vào một tập tin?
c) Chuyển sang thư mục home-directory của aaa bằng lệnh gì?
Đang đứng tại home-directory của user aaa, thực hiện lại lệnh tạo tập tin ttt.txt nói
trên. Có tạo được tập tin ttt.txt hay không? Tại sao?
d) Thực hiện lệnh ls -la ttt.txt rồi giải thích chi tiết kết quả.
e) Ký hiệu 2>> dùng trong trường hợp nào. Cho ví dụ cụ thể và thực hiện ví dụ
đó.