1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo án - Bài giảng: Công nghệ thông tin:Bài tập môn công nghệ mã nguồn mở giành cho sinh viên ôn tập

42 1,1K 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Bài tập môn công nghệ mã nguồn mở giành cho sinh viên ôn tập
Người hướng dẫn PTS. Nguyễn Văn A
Trường học Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
Chuyên ngành Công nghệ thông tin
Thể loại Bài tập môn công nghệ mã nguồn mở
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 42
Dung lượng 1,14 MB

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

Nội dung

Một user trong nhóm prof, có quyền xoá những file trong thư mục sql khôngc. Một user robert không thuộc nhóm prof, có quyền xoá những file không thuộc về thư mục exoshelld. Một user thuộ

Trang 1

Bài tập 1: Trích xuất nội dung từ lệnh #ls trong Terminal thu được bảng sau :

Hãy trả lời các câu hỏi sau:

a User dupont có quyền thực thi file fich hay không ?

b User dupont có đọc, thay đổi file fichier hay không?

c Một user trong nhóm prof có quyền đọc file fich hay không ?

d Một user trong nhóm prof có quyền thay đổi file fich hay không ?

e Một user trong nhóm prof, có quyền xoá những file trong thư mục sql không ?

f User dupont có quyền thay đổi file texte hay không ?

g User dupont có quyền thực thi file long hay không ?

h Một user robert không thuộc nhóm prof, có quyền xoá những file không thuộc về thư mục exoshell ?

i Một user thuộc nhóm prof, có quyền đổi tên những file trong thư mục sql không?

j Một user thuộc nhóm prof, có quyền đổi tên những file trong thư mục exoshell?

Bài tập 2: Cho biết giá trị thập phân của umask cho phép tạo ra file có quyền rw­rw­r­­

Bài tập 3: Cho biết quyền của file mới tạo ra khi sử dụng giá trị umask là 127

Bài tập 4: Trích xuất nội dung từ lệnh #ls trong Terminal của một thư mục với các quyền sau đây :

Cho biết giá trị của umask là 0022, hãy cho biết quyền của file đích (destination) khi thực hiện lệnh copy sau đây :

Trang 2

$ cp test.c test2.c

$ cp test.c a.out

Trang 3

MSSV :

Họ tên :

BÀI TẬP SHELL Bài 1 : Viết đoạn script, sử dụng lệnh case biểu diễn 4 phép toán cơ bản sau đây :

+ cộng ; - trừ; x nhân; / chia

Yêu cầu: Khi thực thi câu lệnh như sau : $./pheptoan 20*3

Bài 2 : Viết đoạn script minh họa xuất ra chuỗi số Fibonnaci theo

( ) {

( ) ( ) Với giá trị p = 0, ta có chuỗi Fibonacci: 0, 2, 4, 8, 16, 32, 64, 128…

Với giá trị p = 1, ta có chuỗi Fibonacci : 1, 1, 2, 3, 5, 8, 13, 21, 34, 55…

Bài 3 : Viết đoạn script xuất ra ngày, giờ, tháng năm và thư mục hiện hành

Bài 4 : Viết đoạn script đảo thứ tự của chuỗi số Ví dụ : 12345 đảo thành 54321

Hướng dẫn : Lệnh cut [-c] [-f] list [-n] [-d delim] [-s] [file]

File khong ton tai

Bài 8 : Viết đoạn shell script giải phương trình bậc 2

Bài 9 : Viết đoạn script kiểm tra số a nhập vào có phải là nguyên tố hay không và tính tổng các số nguyên tố từ số nguyên tố đầu tiên đến a

Trang 4

MSSV :

Họ tên :

Bài 10 : Viết đoạn script chuyển đổi số thập phân ra thập lục phân (HEX) và nhị phân Và ngược lại Bài 11 Viết đoạn script kiểm tra quyền truy xuất của 1 file và xuất ra kết quả quyền theo dạng số thập phân

Nếu file có quyền là rwxrwxrwx , thì xuất ra 777

Trang 5

BÀI TẬP LẬP TRÌNH C TRÊN UNIX MÔN HỌC : CÔNG NGHỆ MÃ NGUỒN MỞ

NỘP SOURCE CODE HOÀN CHỈNH (BẰNG GIẤY IN) CHO LỚP TRƯỞNG VÀO NGÀY CUỐI MÔN HỌC

1 Viết chương trình cho phép nhập vào một số và trả về giá trị tuyệt đối của số đó

#include <stdio.h>

int main(void) {

if (n > 1) binairerec(n/2);

printf("%d", n%2);

} void binaireite(int n) {

int e;

int bits[32];

for (e = 0; n > 0; n = n/2, e++) bits[e] = n%2;

for (e ; e >= 0; e )

Trang 6

printf("%d", bits[e]);

}

int main(void) {

int n;

// Saisie de n printf("n : ");

scanf("%d", &n);

binairerec(n);

for (l = 0; l < n; l++) { p[l][0] = 1; /* Cot 0 */

p[l][l] = 1; /* Cot l */

/* Cot 1 toi l-1 */

for (c = 1; c < l; c++) p[l][c] = p[l-1][c-1] + p[l-1][c];

}

/*Hien thi*/

for (l = 0; l < n; l++) { for (c = 0; c <= l; c++) printf("%d\t", p[l][c]);

printf("\n");

} }

void pascal2(int n) {

Trang 7

int l; /* Chi so dong */

int tab1[n];

int tab2[n];

int* connue = tab1;

int* calcul = tab2;

tmp = connue;

connue = calcul;

calcul = tmp;

for (c = 0; c <= l; c++) printf("%d\t", connue[c]);

printf("\n");

} }

void pascal3(int n) {

int l;

int c;

int tab[n];

tab[0] = 1;

printf("%d\n", tab[0]);

for (l = 1; l < n; l++) {

tab[l] = 1;

for (c = l-1; c > 0; c ) tab[c] = tab[c-1] + tab[c];

Trang 8

for (c = 0; c <= l; c++) printf("%d\t", tab[c]);

printf("\n");

} } int main(void) {

5 Viết hàm delspace để xóa khoảng trắng của chuỗi ký tự

Ví dụ : char s[] = "Xin chao moi nguoi";

Trang 10

1 Phần quan trọng nhất của hệ điều hành Linux là:

c Workstation and Server

d Không cái nào đúng

4 Kiến trúc Kernel Linux là :

Trang 11

13 Để đọc nội dung một đĩa CD trong Linux ta phải làm thế nào ?

a Phải mount trước

b eject cdrom

c cd /mnt/cdrom

d Không đọc được CD rom

14 Làm thế nào để đọc một đĩa mềm trong Linux

Trang 12

a 077

b 644

c 755

d 711

18 Để thiết lập thuộc tính cho một tập tin hello.sh với các yêu cầu sau:

- Chủ sở hữu được quyền đọc ghi, nhóm được đọc, thực thi, other chỉ đọc thì ta làm lệnh nào dưới đây

22 Tập tin /etc/passwd chứa thông tin gì của users hệ thống

a Chứa profile của người dùng

b Chứa uid,gid, home directory, shell

c Chứa password của người dùng

23 Tập tin /etc/shadow chứa thông tin gì của users hệ thống

a Chứa profile của người dùng

b Chứa uid,gid, home directory, shell

c Chứa password của người dùng

d Chứa login name

24 Trong hệ thống Linux user nào có quyền cao nhất

Trang 13

d Không có level nào

30 Chương trình soạn thảo văn bản nào là phổ biến nhất trong hđh Linux:

Trang 14

b Tiến trình con sẽ chết theo

c Chương trình sẽ đọc lại file cấu hình

d Sẽ có một tiến trình con mới sinh ra

41 Để kill hết các tiến trình có tên là vi ta dùng lệnh nào

Trang 15

b ifconfig eth0 172.16.10.11 netmask 255.255.255.0

c ifconfig eth0 172.16.10.11 mask 255.255.255.0

d ifconfig eth0 172.16.10.11 mask 255.255.255.0

46 Để tạm thời stop một card mạng ta dùng lệnh nào

a ifconfig eth0 up

b ifconfig eth0 stop

c ifconfig eth0 start

d ifconfig eth0 down

47 Giả sử ta muốn thêm vào bảng routing một đường dẫn mới: qua mạng 192.168.10.0/24 thì phải qua gateway 172.16.10.140 ta làm cách nào:

a route add –net 192.168.10.0 netmask 255.255.255.0 gw 172.16.10.140

b route add –net 192.168.10.0 mask 255.255.255.0 gw 172.16.10.140 netmask 255.255.255.0

c route add –net 192.168.10.0/25 gw 172.16.10.140

d route add –net 192.168.10.0 netmask 255.255.255.0 gw 172.16.10.0

48 Khai báo default gw 172.16.8.2 cho 1 máy Linux làm gw ta dùng lệnh nào:

a route add –net default gw 172.16.8.2

b route add –net 0.0.0.0 netmask 0.0.0.0 gw 172.16.8.2

c route add –net 0.0.0.0 netmask 255.255.255.255 gw 172.16.8.2

Trang 16

57 Để thay đổi các lựa chọn gắn kết (mount) tự động cho một hệ thống tập tin cục

bộ, ta cần sửa đổi nội dung tập tin nào?

Trang 17

c VirtualHost

d Tất cả đều sai

59 Để thay đổi tên đăng nhập của tài khoản “user” thành “newuser”, ta dùng lệnh?

a userchange –name newuser user

b passwd –n newuser user

c usermode –l newuser user

d usermode –m user newuser

60 Để chỉ liệt kê danh sách các tập tin có ký tự cuối cùng trong tên là “?” ở thư mục hiện hành, ta dùng lệnh?

63 Để chép nội dung file1 vào cuối file2, sử dụng lệnh?

a cat file1 file2

b more file1 2> file2

c cat file1 >> file2

d copy file1 >> file2

64 Lệnh nào để biết đầy đủ đường dẫn của thư mục hiện hành?

a pwd

b path

c echo path

d Không câu nào đúng

65 Để hủy bỏ lệnh đang thi hành, ta thực hiện:

Trang 18

67 Để tạo tập tin “new” chứa nội dung của hai tập tin “data” và “odd”, ta dùng lệnh:

a cp data odd > new

b cp data odd >> new

c cat data odd > new

71 Lệnh nào tương đương với lệnh sau “mkdir –p /home1/home2

a mkdir parents /home2/home1

b mkdir /file /doc /priv

c mkdir /priv /doc /file

d Không câu nào đúng

74 Để chuyển về thư mục chủ của người dùng hiện hành, ta dùng lệnh?

Trang 19

b Phân biệt chữ thường với chữ hoa

c Không được bắt đầu bằng một ký số

77 Lệnh nào tương đương với lệnh sau “chown sales myfile”

a chown sales:sales myfile

b chgroup sales:sales myfile

c chgrp sales myfile

d chmod sales myfile

78 Tập tin /etc/sysconfig/network có chứa thông tin về:

a Tên máy tính và default gateway

b Các thiết bị được sử dụng để kết nối mạng

c Các script dùng trong kết nối PPP và SLIP

Trang 20

84 Tập tin script nào chứa khai báo định tuyến?

a /etc/sysconfig/network

b /etc/sysconfig/route

c /etc/sysconfig/static-routes

d /etc/sysconfig/network-scripts/routes

85 Khi tạo một tài khoản người dùng, thông tin nào bắt buộc phải được cung cấp?

a Tên đầy đủ (Full Name)

87 “/xyz” là một symbolic link của “/tmp/dir”, lệnh nào sau đây cho phép ta

chuyển vào thư mục “/tmp/dir”?

a cd –L /xyz

b cd –P /xyz

c cd /xyz

d Tất cả đều sai

88 Để bật ngay lập tức chức năng chuyển gói tin (IP Forward), ta thực hiện:

a Sửa nội dung tập tin “/etc/sysctl.conf”

b Thi hành lệnh echo 1> /proc/sys/net/ipv4/ip_forward

c Thi hành lệnh echo 1> net.ipv4.ip_forward

d Thi hành lệnh /proc/sys/net/ipv4/ip_forward=1

89 Cho biết ý nghĩa của một mục từ crond như sau: 10 5 * * * /bin/foo

a Thực thi /bin/foo vào lúc 10:05 sáng mỗi ngày

b Thực thi /bin/foo vào 10 tháng 5 hàng năm

c Thực thi /bin/foo vào lúc 5:10 sáng mỗi ngày

d Không câu nào đúng

90 Để xem thông tin về phần chia đĩa cứng trên hệ thống, ta dùng lệnh:

Trang 21

b expr length $string

c Các tập tin đại diện trạng thái hiện hành của hệ thống

d Các tập tin đại diện thiết bị

94 Để sao chép tất cả nội dung có trong thư mục /dir vào thư mục /tmp, thi hành lệnh:

96 Trong tập tin /etc/group các nhóm được mô tả dưới dang :

groupname: password: GID: member list Lệnh nào dưới đây cho phép trả về danh sách người dùng trong nhóm (member list):

a MEMBERS=($(cat /etc/passwd | grep $GUID | cut –d: -f4))

b MEMBERS=($(cat /etc/group | grep $GUID | cut –d: -f4))

c MEMBERS=($(cat /etc/group | grep $GUID | cut –d: -f2))

d MEMBERS=($(cat /etc/group | grep $GUID | cut –d: -f1))

100.Lệnh nào dùng để xóa toàn bộ thư mục /dir

Trang 22

b echo ${string//substring/replacement}

c echo ${#string */replacement/}

103 Lệnh nào dùng để liệt kê danh sách tất cả các tập tin có tên phần mở rộng không chứa các ký tự trong khoảng từ “x” đến “w” trong thư mục hiện hành

a useradd –g group abc

b useradd –G group abc

c useradd –m group abc

d useradd group abc

105 : Có ít nhất bao nhiêu patition cần được tạo ra khi ta cài đặt LINUX

107 :Tất cả các nhóm được liệt kê trong file /etc/group Mỗi một nhóm được thể hiện

trên một dòng.Hãy xác định trật tự đúng của các trường trên thực thể này :

a groupname: password: GID: member list

b GID : groupname: password: member list

c.groupname: GID: password: member list

d.GID: member list: groupname: password

108 : Bạn sử dụng lênh sau useradd –m sapa song user sapa không đăng nhập vào

được.Để đăng nhập được ta phải làm gì ?

a Cần đăng ký mật khẩu cho user sapa bằng lệnh password sapa

b Phải tạo thư mục home cho sapa và tạo quyền cho phép truy cập

c Bạn cần biên tập lại file /etc/passwd và đăng ký shell cho acount sapa

d Tên người dùng nhỏ hơn 5 ký tự

109: Bạn tạo một user sinhvien mới bằng cách thêm vào /etc/passwd file một dòng

như sau

sinhvien:abcdef:501:501:tensinhvien:/home/sinhvien:/bin/bash

Sau đó sinh vien gặp bạn và nói không logon vào hệ thống được Bạn kiểm tra và thấy tên user và mật khẩu đều đúng Điều gì đã xảy ra?

a UID và GID giống nhau

b Bạn không gõ khoảng trống hoặc ngoặc kép vào những vị trí cần thiết

Trang 23

c Bạn không thể nhập mật khẩu trực tiếp Cần dùng lệnh passwd command

để đăng ký mật khẩu cho user

d Tên người dùng quá ngắn, tối thiểu nó phải có độ dài 6 ký tự

110 : Mở file /etc/passwd ta thấy có các dòng Trật tự nào sau đây của các trường là đúng:

a username, UID, GID, home directory, command, comment

b username, UID, GID, comment, home directory,command

c UID, username, GID, home directory, comment, command

d username, UID, group name, GID, home directory, comment

111 : Bạn có một máy tính và đang cài Windows98 và muốn cài thêm Linux trên đó song bạn không còn đủ không gian đĩa cứng để cài đặt.Bằng cách nào tối ưu nhất bạn

có thể thực hiện công việc trên

a Sử dụng Disk Manager để thay đổi lại kích thước (resize ) của partition chứa Windows 98

b Phân hoạch lại đĩa cứng từ đầu; cài lại Windows 98 và sau đó cài Linux

c Không thể cài Windows 98 và Linux trên cùng một máy tính

d Tạo một directory trong Windows 98 và cài Linux vào directory này

112 :Bạn đang cài Linux lên máy tính của bạn.Bạn muốn có 5 partitions khác nhau và

đã tạo ra được 4 partition.Còn partition thứ 5 không cách nào tạo ra được.Điều gì đã xảy ra :

a Hard drive của bạn không đủ chỗ để tạo hơn 4 partition

b Bạn phải tạo swap partition

c Bạn đã tạo ra 4 primary partitions

113 : Quan sát file /etc/passwd , bạn thấy trong trường password chứa ký hiệu „x‟

Ý nghĩa của ký tự này là gì?

a Password đã được mã hoá

b Bạn đang sử dụng shadow password

c Tất cả passwords đều rỗng

d Tất cả passwords đều hết hạn

114 : Sau khi Dung rời khỏi công ty ,bạn dùng lệnh userdel Dung để xoá user

này.Mẩu tin của user này trong file etc/passwd bị xoá , tuy vậy , trong home directory

có thể vẫn còn thư mục của user này Bạn có thể dùng lệnh nào sau đây để khẳng định home directory cũng đã bị xoá?

a userdel –m Dung

b userdel –u Dung

c userdel –l Dung

d userdel –r Dung

115 : Bạn Dung có username là sapa.Bạn ấy nói rằng quên mật mật khẩu đăng

nhập.Lệnh nào sẽ giúp bạn Dung reset lại mật khẩu của mình

Trang 24

c sda1, sda2, sda1, sdb2

d sda1, sda2, sda3, sda4

c.echo ${#string xyz}

d.echo ${string% abc*}

122 Những lệnh nào dưới đây cho phép loại chuỗi “xyz” đầu tiên tính từ đầu chuỗi string=“xyzabcdef123xyztuv”

a.echo ${string:3}

b.echo ${string##*xyz}

Trang 26

của DATA BASE cần chọn)

Trang 27

135 Một biến thuộc dạng (type) integer có thể nhận giá trị tối đa là bao nhiêu?

137 Câu lệnh nào là đúng , khi bạn muốn biến đổi dang (type) thành integer?

a) $item = (int) "100Laptop";

139 Type boolean trả cho ta giá trị gì ?

a) true hay false

b) equal hay unequal

c) bigger hay smaller

d) yes hay none

140 PHP không hổ trợ dạng type nào?

Trang 28

142 Loại biến nào được dùng trong PHP?

144 Câu lệnh PHP nào không tương thích trong văn bản HTML

a) <?php echo "Hello World"; ?>

b) <? echo "Hello World"; ?>

c) <% echo "Hello World"; %>

d) <! echo "Hello Wordl"; !>

e) <script language = "php"> echo "Hello World"; </script>

d) bao nhiêu cũng được

147 Trong một form có nhiều Radio Buttons bạn có thể chọn bao nhiêu entry qua biến

$_GET hay $_POST

Trang 29

148 Dể tạo một DATA BASE có tên là “db_name “ ta dung câu truy vấn MySQL nào sau đây

a)$sql="CREATE DATABASE $db_name";

mysql_query($connect)or die ("DB IS NOT CREATED!");

b)$sql="CREATE_DATABASE $db_name";

mysql_query($sql,$connect)or die ("DB IS NOT CREATED!");

c) $sql="CREATE DATABASE $db_name";

mysql_query($sql,$connect)or die ("DB IS NOT CREATED!");

d)mysql_select_db($db_name,$connect) or die ("DB IS NOT SELECTED!”)

149 ký tự trắng (space) được biến đổi thành ký tự gì trong thanh địa chỉ Url

151 Khi sử dụng biến $_GET bạn có thể thấy tham số được truyền trong

a) status của trình duyệt

b) trong thanh adress của trình duyệt

c) chẳng thấy gì cả ở biến $_GET này

152 PHP có thể họat động với lọai form fields phụ nào?

Ngày đăng: 18/04/2014, 15:02

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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