bài giảng mã nguồn mở

89 262 0
bài giảng mã nguồn mở

Đ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

10/8/2014 Tiêu chí đánh giá NGUỒN MỞ  Hồn thành tập tiêu chí tự đánh giá  Thời lượng: GIỚI THIỆU PHẦN MỀM NGUỒN MỞ Đoàn Duy Bình  45 tiết (3 tín chỉ) Khoa Tin học, Trường Đại Học Sư Phạm, Đại Học Đà Nẵng Địa chỉ: 459 Tôn Đức Thắng – Đà Nẵng, Tầng – Nhà A5  30 lý thuyết  15 thực hành (làm tập nhóm) Điện thoại: (+84)511-3733293 E-Mail: khoatin@dce.udn.vn Điện thoại: 0914025264 – 0935222304 Email: doanduybinh@gmail.com, ddbinh@dce.udn.vn Giới thiệu PMNM  Đánh giá:  40% kỳ (Kiểm tra tự luận;2228/10/14)  60% cuối kỳ (Báo cáo tập nhóm; 8/1211/01/15/14) Giới thiệu PMNM Nội dung chương trình học     Giới thiệu chung Hệ điều hành Linux Giới thiều phần mềm nguồn mở Lập trình nguồn mở Giới thiệu PMNM Chúc bạn năm học năm cuối có kết tốt! 10/8/2014 Nội dung phần giới thiệu Mục tiêu  Cung cấp cho sinh viên kiến thức phần mềm nguồn mở  Khi phát triển phần mềm nguồn mở cần phải tuân theo nguyên tắc  Biết số giấy phép nguồn mở Khái niệm PMNM Các học thuyết PMNM Lịch sử PMNM Ưu nhược điểm PMNM Các giấy phép PMNM Khái niệm phần mềm Các kiểu biên dịch  Các nhà phát triển phần mềm tạo chương trình việc viết text, gọi “Source Code” hay “Mã nguồn”, theo ngôn ngữ định  Souce Code thường biên dịch thành định dạng máy tính chạy 10/8/2014 Source Code Cơ sở phần mềm  Tạo ngơn ngữ lập trình  Java, C#, Prolog  C, C++, Delphi, Visual Basic, Pascal  Source Code:  Là dẫn, câu lệnh chương trình phải làm  Miễn chương trình khơng cần phải thay đổi (để trợ giúp cho yêu cầu sử dụng máy tính hơn), người sử dụng không cần thiết Source Code  Thay đổi chương trình thơng thường u cầu quyền sở hữu cho phép để thay đổi nguồn  Bất kỳ kiểm soát nguồn hợp pháp họ làm khơng làm  Những người sử dụng khơng có nguồn thường khơng thể thay đổi chương trình để làm họ muốn hay chuyển sang loại máy tính khác Phần mềm nguồn mở 10 OSS/FS  Ý tưởng đằng sau nguồn mở đơn giản: Các lập trình viên đọc, phân phối lại, điều chỉnh nguồn phần phần mềm, hay gọi phần mềm tiến hóa hay phẩn mềm mở  Mọi người cải thiện, điều chỉnh, sửa lỗi  Q trình tiến hóa nhanh tức sản xuất phần mềm tốt so với hình phần mềm “đóng” truyền thống, lập trình viên nhìn thấy nguồn, người khác biết sử dụng  Tổ chức Open Source Initiative sáng lập nhằm thực mục tiêu 11  Hai định nghĩa sử dụng “free software” “open source software”  Phần mềm loại phải tuân theo điều kiện khác  Thuật ngữ “free software” xuất 12 10/8/2014 Free and Open Source Software (FOSS) Khái niệm PMNM  Định nghĩa (David Wheeler) Các chương trình OSS/FS chương trình quy trình cấp phép cho người dùng quyền tự chạy chương trình theo mục đích nào, quyền nghiên cứu sửa đổi chương trình, quyền chép tái phát hành phần mềm gốc phần mềm sửa đổi (mà trả tiền quyền cho ngườI lập trình trước)  Sự bùng nổ số lượng triển khai hệ thống phần mềm nguồn mở làm thay đổi giới công nghệ thông tin  Khi hệ thống FOSS phát triển, nhiều người sớm sử dụng hệ thống chuyên gia công nghệ 13 Các học thuyết PMNM 14 Các học thuyết PMNM (tt) Học thuyết FSF Hai học thuyết PMNM chủ đạo  Tổ chức phần mềm tự FSF (Free Software Foundation)  Chương trình Sáng kiến nguồn mở OSI (Open Source Initiative) 15 Phần mềm miễn phí nhằm mục đích bảo vệ quyền tự người dùng: Quyền tự chạy chương trình với mục đích Quyền tự nghiên cứu cách thức vận hành chương trình thích ứng cho phù hợp với nhu cầu Quyền tự phân phát phiên phần mềm để giúp đỡ người xung quanh Quyền tự thêm chức cho chương trình cơng bố tính đến cơng chúng để tồn cộng đồng hưởng lợi 16 10/8/2014 Các học thuyết PMNM (tt) Học thuyết FSF  Một chương trình phần mềm tự người sử dụng có tất tự Việc tự để làm thứ có nghĩa bạn hỏi hay trả tiền để cho phép Có tự để làm cải tiến sử dụng riêng tư cơng việc riêng chơi, chí khơng đề cập tồn Nếu bạn xuất thay đổi, bạn khơng cần phải thơng báo nói riêng, hay trường hợp đặc biệt  Free Software khơng có nghĩa khơng thương mại Học thuyết OSI Chú trọng giá trị kỹ thuật việc tạo phần mềm mạnh, có độ tin cậy cao phù hợp với giới kinh doanh, đặc biệt lợi ích thực tiễn phương pháp xây dựng quảng bá PMNM  Một chương trình free phải có sẵn cho sử dụng, triển khai phân phối thương mại 17 18 Free Redistribution – Miễn phí phân phối lại Học thuyết OSI  Open Source khơng có nghĩa truy cập vào source code  Các điều khoản phân phối phần mềm nguồn mở phải tuân theo tiêu trí sau:  Việc cấp giấy phép không hạn chế từ việc bán cho theo cách khác phần mềm  Việc cấp giấy phép khơng đòi hỏi phải có trả tiền chi phí khác 19 20 10/8/2014 Derived Works – Các sản phẩm dẫn xuất Source code  Chương trình phải bao gồm Source Code, phải cho phép phân phối source code hình thức biên soạn  Trong trường hợp số sản phẩm không phân phối với nguồn, phải cơng bố phương tiện đại chúng download từ Internet khơng có phí  Source code phải ưu tiên trường hợp lập trình viên chỉnh sửa chương trình  Cố ý làm rối Source code không phép  Các sản phẩm trung gian đầu tiền sử lý dịch không cho phép  Giấy phép phải cho phép sửa đổi, bổ sung sản phẩm dẫn xuất phải cho phép họ phân phối theo điều khoản giấy phép phần mềm gốc 21 22 Integrity of The Author's Source Code – Sự toàn vẹn Source code tác giả  Giấy phép hạn chế nguồn từ phân phối hình thức sửa đổi cấp giấy phép cho phép phân phối "các miếng vá" với nguồn cho mục đích việc sửa đổi chương trình thời điểm xây dựng No Discrimination Against Persons or Groups - Khơng phân biệt đối xử với cá nhân nhóm  Giấy phép không phân biệt đối xử người nhóm người  Giấy phép phải rõ ràng cho phép phân phối phần mềm xây dựng từ sửa đổi nguồn  Giấy phép yêu cầu sản phẩm dẫn xuất mang tên khác hay phiên khác từ phần mềm ban đầu 23 24 10/8/2014 No Discrimination Against Fields of Endeavor – Chống lại phân biệt cố gắng thành viên  Giấy phép không giới hạn từ làm việc sử dụng chương trình lĩnh vực cụ thể  Ví dụ  Trong thương mại  Trong nghiên cứu di truyền 25 License Must Not Be Specific to a Product Giấy phép không cụ thể cho sản phẩm  Các quyền kèm theo chương trình phụ thuộc vào phần phân phối đặc biệt  Nếu chương trình trích xuất từ phân phối sử dụng phân phối điều khoản chương trình cấp phép, tất bên tham gia vào chương trình phân phối nên có quyền lợi người cấp với gốc phần mềm phân phối 27 Distribution of License – Phân phối giấy phép  Các quyền kèm theo chương trình cần phải áp dụng cho tất chương trình phân phối, không cần thực thêm giấy phép bên 26 License Must Not Restrict Other Software – Giấy phép phải không hạn chế phần mềm khác  Giấy phép không đưa hạn chế phần mềm khác phân phối với phần mềm cấp phép  Ví dụ, giấy phép khơng đòi tất chương trình khác phân phối mơi trường phải phần mềm nguồn mở 28 10/8/2014 Ưu điểm phương pháp xây dựng PMNM 10 License Must Be Technology-Neutral – Giấy phép phải trung lập công nghệ  Không cung cấp giấy phép phải xác định dựa theo công nghệ theo kiểu giao diện Giảm trùng lặp nguồn lực Tiếp thu kế thừa Quản lý chất lượng tốt Giảm chi phí trì 29 30 Lịch sử PMNM Lợi ích PMNM Các cột mốc đáng nhớ 1984: Richard Stallman sáng lập dự án GNU (GNU Not Unix) 1991: Linus Tovards viết thành công lõi Linux 1997: GNU/Linux chiếm 25% thị trường máy chủ 1998: Netscape công bố nguồn Navigator Thuật ngữ “Nguồn mở” đời Thành lập Sáng kiến nguồn mở OSI 31 Tính kinh tế Tính an tồn Tính ổn định Sử dụng chuẩn mở Giảm phụ thuộc vào nhập Phát triển lực ngành CNPM địa phương Giảm tình trạng vi phạm quyền 32 10/8/2014 Hạn chế PMNM Ví dụ tính kinh tế Thiếu ứng dụng kinh doanh đặc thù Tính tương hỗ với phần mềm đóng Giao diện người dùng chưa tốt 33 Những dự án PMNM thành công 34 Hệ điều hành GNU/Linux BIND (máy chủ tên miền DNS) Apache (máy chủ Web) Sendmail (máy chủ thư điện tử) OpenSSH(Công cụ quản trị bảo mật mạng) Open Office (bộ ứng dụng văn phòng) 35 Được tạo thành kết hợp thành phần dự án GNU lõi Linux Phát hành đóng gói Distro: Red Hat, Debian, SuSE, Mandriva… Nguồn mở miễn phí Phù hợp cho mục đích sử dụng làm máy chủ môi trường Internet 36 10/8/2014 Các loại giấy phép PMNM Các loại giấy phép PMNM (tt) Giấp phép đại chúng GNU (General Public License)     Người phổ biến chương trình cấp phép đại chúng phải đồng thời phổ biến nguồn cho người nhận Nếu người phổ biến chương trình thực sửa đổi cho phần mềm sửa đổi phải cấp phép theo chế độ giấy phép đại chúng Người phổ biến chương trình khơng áp dụng với người nhận hạn chế không thuộc phạm vi giấy phép đại chúng Người nhận phần mềm cấp phép đại chúng trao y nguyên quyền người phổ biến gốc, tức quyền chép, chỉnh sửa phổ biến phần mềm Giấp phép BSD (Berkeley System Distribution)  Ghi nhận công lao tác giả làm phần mềm cách đưa vào file nguồn thông tin quyền gốc,  Người phát hành ban đầu không chịu trách nhiệm trước pháp luật thiệt hại phát sinh sử dụng phần mềm nguồn mở chỉnh sửa 37 38 Các loại giấy phép PMNM (tt) Giấp phép đại chúng Giấp phép BSD Phải phổ biến nguồn gốc Có Không Phải phổ biến nguồn người dùng tạo Có Khơng nguồn tạo phải cấp phép đại chúng Có Khơng Các giấy phép PMNM khác               39 Academic Free License Adaptive Public License Apache Software License Apache License, 2.0 Apple Public Source License Artistic license Attribution Assurance Licenses New BSD license Computer Associates Trusted Open Source License 1.1 Common Development and Distribution License Common Public License 1.0 CUA Office Public License Version 1.0              EU DataGrid Software License Eclipse Public License Educational Community License Eiffel Forum License Eiffel Forum License V2.0 Entessa Public License Fair License Frameworx License GNU General Public License (GPL) GNU Library or "Lesser" General Public License (LGPL) Historical Permission Notice and Disclaimer 40 10 10/8/2014 Ví dụ 3: Đọc toàn liệu sử dụng hàm mysql_fetch_array Phần VI - Xây dựng phát triển PMNM 145   146 HTML FORM: Các thành phần INPUT HTML Form Phần VI - Xây dựng phát triển PMNM method=’cách gửi INPUT Text INPUT Checkbox Đường dẫn đến file script phải đường dẫn tương đối Trường hợp script nằm file với FORM khai báo action=”” INPUT Radio  Có hai cách gửi liệu GET POST INPUT Submit Phần VI - Xây dựng phát triển PMNM 147 Phần VI - Xây dựng phát triển PMNM 148 37 10/8/2014 HTML FORM: Các thành phần INPUT Chuyển liệu với GET POST List Box Nếu thiết lập register_globals = ON file cấu hình php.ini tất liệu thành phần input form trở thành biến tồn cục có tên truy xuất trực tiếp không cần thông qua mảng siêu toàn cục Kể từ phiên PHP 4.2.0, register_globals mặc định thiết lập OFF số lý bảo mật chuỗi hiển thị 1 … chuỗi hiển thị n Multiline List Box Trường hợp không quan tâm đến cách chuyển liệu dùng biến mảng siêu toàn cục $_REQUEST hai trường hợp dùng GET POST chuỗi hiển thị 1 … chuỗi hiển thị n Phần VI - Xây dựng phát triển PMNM 149 150 Chuyển hướng người dùng Chuyển liệu với GET POST GET POST Dữ liệu gắn thêm vào URL gọi script Các liệu đưa vào biến mảng siêu toàn cục $_GET với khóa tương ứng với tên thành phần input form Nên dùng trường hợp liệu dùng để truy vấn, khơng đòi hỏi bảo mật Không hỗ trợ uploading file Chỉ hỗ trợ bảng ASCII chuẩn Dữ liệu nhúng vào HTTP request gởi đến server Các liệu đưa vào biến mảng siêu tồn cục $_POST với khóa tương ứng với tên thành phần input form An toàn so với dùng GET nên dùng phổ biến (Visual page) start.html (Visual page) process.php redirect.php header("Location: http://www.example.com/"); header('Location: http://' $_SERVER['HTTP_HOST'] rtrim(dirname($_SERVER['PHP_SELF']), '/\\') "/" $relative_url); Hỗ trợ uploading file Hỗ trợ nhiều bảng Phần VI - Xây dựng phát triển PMNM Phần VI - Xây dựng phát triển PMNM 151 Phần VI - Xây dựng phát triển PMNM 152 38 10/8/2014 Bài tập Viết script thực công việc sau:     Yêu cầu người dùng nhập vào số nguyên Đem so sánh số vừa nhập với số nguyên cho trước Nếu xuất câu chúc mừng người dùng đoán số bí mật Ngược lại thì thơng báo kết số vừa nhập lớn hay bé số bí mật yêu cầu nhập lại nhập Phần VI - Xây dựng phát triển PMNM 153 39 15/1/2015 Giới thiệu File Permission NGUỒN MỞ  Linux hệ điều hành đa người dùng, vấn đề phân quyền truy xuất hệ thống file quan trọng  Để xem quyền hạn ứng với file cụ thể, ta dùng lệnh ls -l Phần IV (TT) File permission Quản trị User Đoàn Duy Bình Khoa Tin học, Trường Đại Học Sư Phạm, Đại Học Đà Nẵng Địa chỉ: 459 Tôn Đức Thắng – Đà Nẵng, Tầng – Nhà A5 Điện thoại: (+84)511-3733293 Mail: khoatin@dce.udn.vn Điện thoại: 0914025264 – 0935222304 Email: doanduybinh@gmail.com, ddbinh@dce.udn.vn Phần IV – Các lệnh E- Phần IV – Các lệnh Cấu trúc permission  Ba loại người permission: dùng ứng với file  User/Owner (u): Người nắm quyền sở hữu file, thay đổi lệnh chown  Group users (g): Những người dùng nằm group sở hữu user  Others (o): Những người dùng lại Phần IV – Các lệnh Phần IV – Các lệnh 15/1/2015 Ý nghĩa quyền  Các từ viết tắt r,w,x; giá trị - tượng trưng cho khơng có quyền hạn vị trí Ví dụ: r-x khơng có quyền w  Chữ d: thư mục; -: tập tin; có ký tự đặc biệt khác Phần IV – Các lệnh Biểu diễn dạng số  Quyền hạn việc thể chuỗi ký tự rwx, ký hiệu số bát phân  Toàn quyền truy xuất chia thành nhóm ứng với loại người dùng Mỗi nhóm viết thành số dạng bát phân Phần IV – Các lệnh Lệnh chmod Việc biểu diễn dạng số tuân theo nguyên tắc biểu diễn số nhị phân Ví dụ: rwx biểu diễn dạng số : 111(bin) = (octal) rw- biểu diễn dạng số: 110 (bin) = (octal)  Để thay đổi quyền hạn file, ta sử dụng lệnh chmod, cú pháp:  chmod [mode] filename  Ghi chú: có superuser (các user quản trị) user sở hữu tập tin/ thư mục chmod cho tập tin/thư mục  Lệnh chmod hoạt động dạng chuỗi (rwx) lẫn dạng số (764) File có quyền: rwxrw-r có giá trị: 764 Phần IV – Các lệnh Phần IV – Các lệnh 15/1/2015 Ví dụ 1:  Xóa quyền read group với file dante: $ ls -l dante -rw-r r user2 staff Jun 11 1:44 dante $ chmod g-r dante $ ls -l dante -rw r user2 staff Jun 11 1:44 dante Mục mode câu lệnh chmod gồm có phần Phần đầu nhóm người dùng, phần sau tốn tử, cuối quyền hạn Phần IV – Các lệnh Phần IV – Các lệnh Ví dụ 2: 10 Ví dụ 3:  Thêm quyền execute cho owner, thêm quyền read cho group others với file dante:  $ ls -l dante -rw - user2 staff Jun 11 1:44 dante -rw-rw-rw- user2 staff Jun 11 1:44 dante Hoặc dùng dạng số: $ chmod u+x,go+r dante $ ls -l dante chmod 666 dante Có thể dùng tham số -R để set quyền đệ qui (cho tập tin thư mục thư mục) -rwxr r user2 staff Jun 11 1:44 dante Phần IV – Các lệnh  Cho người dùng quyền read write (a: all user) $ chmod a=rw dante $ ls -l dante 11 Phần IV – Các lệnh 12 15/1/2015 Quyền mặc định umask  Quyền mặc định ban đầu (initial default permission) quyền tự động set cho file/directory chúng tạo  Quyền mặc định tập tin 666 (rw-rw-rw-)  Quyền mặc định thư mục 777 (rwx rwx rwx)  Có thể thay đổi quyền mặc định tập tin/ thư mục cách thay đổi giá trị biến umask  Giá trị umask gồm số bát phân, tương tự giá trị file permission  Giá trị mặc định umask 022 Phần IV – Các lệnh Phần IV – Các lệnh 13 14 Ví dụ  umask hoạt động tương tự lọc  Khi tính giá trị default permission cho file, thư mục tạo hệ thống lấy (initial default permission) AND ( NOT umask)  Nhắc lại: Initial Default permission of:  File: 666  Directory: 777 Phần IV – Các lệnh 15  Default file permission 666 ) umask of 022 Resulting file permission – – – – w – –w – rw–r– – r– – ( 022 ) ( 644 )  Default dir permission umask of 022 Resulting dir permission rwxrwxrwx – – – – w – –w – rwxr–x r– x ( 777 ) ( 022 ) ( 755 ) rw–rw– rw– Phần IV – Các lệnh ( 16 15/1/2015 Ví dụ 2: Thay đổi giá trị umask  Default file permission r w – r w – r w – ( 666 ) umask of 123 – – x – w – – w x ( 123 ) Resulting file permission r w – r – – r – – ( 644 ) (not 543!)  Default dir permission r w x r w x r w x ( 777 ) umask of 123 – – x – w – – w x ( 123 ) Resulting dir permission rw– r–xr –– ( 654 ) Phần IV – Các lệnh 17 Các quyền hạn đặc biệt  Xem giá trị umask: $ umask 0022  Đổi giá trị umask sang 027 $umask 027 Phần IV – Các lệnh 18 Set User ID  Các quyền đặc biệt cho tập tin thực thi thư mục dùng chung • Set user ID : suid • Set group ID : sgid • Sticky bit  Khi user thực thi file, user “mượn” quyền user làm chủ file để thực thi Ví dụ user sv thực thi file user root làm chủ, trình thực thi chương trình “mượn” tạm quyền root để làm việc  Khi file set “set user id” ký tự s muc quyền hạn execute (thay cho ký tự x) owner Nếu file có quyền “set user id” khơng có quyền execute, ký tự s chuyển thành S (viết hoa) $ ls –l /bin/su /usr/bin/passwd -rwsr–xr–x root root 18452 Jul 2003 /bin/su -r-s—-x-–x root root 13476 Aug 2003 /usr/bin/passwd Phần IV – Các lệnh 19 Phần IV – Các lệnh 20 15/1/2015 Set Group ID  Root owner set suid câu lệnh chmod, với giá trị 4000 ký tự s:  Ví dụ:  Tương tự suid, file có quyền sgid user khác thực thi file “mượn” tạm quyền hạn group quản lý file  File có quyền sgid thể ký tự “s” quyền execute group Nếu group khơng có quyền execute, ký tự S viết hoa  Ví dụ: # chmod 4755 # chmod u+s $ ls /usr/bin/write –l /usr/bin/slocate -rwxr-sr–x root slocate Jul 2003 /usr/bin/slocate Phần IV – Các lệnh 21 Phần IV – Các lệnh -rwxr-sr–x root tty 13476 Aug 2003 /usr/bin/write Set Group ID  User root người sở hữu file set group id qua lệnh chmod, sử dụng giá trị 2000 chuỗi g+s: Sticky Bit Permission   $ chmod 2755 $ chmod g+s  Khi directory set Group ID Mọi tập tin tạo (dù tạo) chuyển quyền sở hữu cho group sở hữu thư mục Phần IV – Các lệnh 23 22 Dùng để bảo vệ tập tin thư mục public Khi thư mục set sticky bit:  Chỉ có owner root phép xóa files/rename thư mục  Các user khác có quyền tạo/ ghi file khơng phép xóa/rename  Sticky bit thể qua ký tự “t” phần quyền execute others, others khơng có quyền x, ký tự T viết hoa  Set sticky bit: $ chmod 1755 $ ls –ld /tmp Phần IV – Các lệnh 24 drwxrwxrwt root root 4096 Jul 2003 /tmp 15/1/2015 chown Command chgrp command  Sử dụng lệnh chown để đổi quyền sở hữu tập tin, thư mục cho người dùng khác  Ví dụ đổi quyền sở hữu tập tin data.txt cho user sv: chown sv data.txt  Chuyển quyền sở hữu tập tin cho group khác (phần owner giữ nguyên)  Ví dụ: chgrp sv data.txt => Chuyển group sở hữu tập tin data.txt từ group sang cho group sv  Đổi quyền sở hữu tập tin data.txt cho user sv group ketoan chown sv:ketoan data.txt Phần IV – Các lệnh 25 Quản trị user 26 Thêm nhóm người dùng  Khi thêm user vào hệ thống, người quản trị cần biết vai trò tập tin sau (trong thư mục /etc): passwd, shadow, group, gshadow  /etc/passwd: chứa thông tin tất user: login name, user ID, Group ID, Full Name, Home directory, loại shell  /etc/shadow chứa thơng số điều khiển q trình user login: user password (dạng hash, không đọc được), thông tin thời hạn mật  /etc/group chứa thông tin group users  /etc/gshadow chứa password group dạng hash (ít dùng đến) Phần IV – Các lệnh Phần IV – Các lệnh 27  Mỗi dòng file /etc/group chứa thơng tin nhóm người dùng hệ thống  Các câu lệnh để chỉnh sửa thông tin group: groupadd, groupmod, groupdel Phần IV – Các lệnh 28 15/1/2015 /etc/passwd  Mỗi dòng file /etc/passwd ứng với người dùng hệ thống Cấu trúc dòng: name:password:UID:GID:User directory:shell Name:home # more /etc/passwd root:x:0:0:Super User:/root:/bin/bash henry:x:101:101:Thiery Henry:/home/henry:/bin/ksh Phần IV – Các lệnh Cấp phát User ID 30 useradd  Hệ thống Linux thường cấu hình sẵn số user, nhằm phục vụ cho cơng việc quản trị (như user administrator guest Windows), users thường có ID < 100: root, bin, daemon, sys…  Các user khác thêm vào hệ thống thường có ID > 100 Phần IV – Các lệnh Phần IV – Các lệnh 29 31  Lệnh useradd dùng để thêm user vào hệ thống Công cụ tự động thêm dòng tương ứng vào file /etc/passwd /etc/shadow  Các thông useradd: -u UID -g GID với user ) -c comment -d directory -m -k skel_dir -s shell số thường dùng lệnh user ID (default: next available number) default (primary) group ( mặc định tạ group tên tả user ( default: blank ) Đường dẫn home directory ( default /home/username ) Tự tạo home directory Thư mục chứa template Phần IV – Các lệnh cơmẫu ( default /etc/skel ) 32 login shell ( default /bin/bash ) 15/1/2015 Thay đổi thuộc tính user  Chúng ta thay đổi thuộc tính user cách thay đổi nội dung file /etc/passwd, nhiên để thuận tiện ta dùng công cụ usermod: # usermod –g users –c “Henry Blake” henry # usermod –u 321 –s /bin/ksh majorh #change id  Mỗi user thuộc vào group (primary group), thay đổi lệnh usermod –g  User thuộc group khác (secondary group), điều khiển lệnh: usermod –G # usermod –f 10 henry #disable tài khoản sau 10 ngày kể từ password hết hạn # grep blofeldt /etc/passwd blofeldt:x:416:400::/home/blofeldt:/bin/bash #thông tin user blofeldt # groups blofeldt #xem primary group user # usermod –e 2004-12-20 majorh #expire_date # usermod –L majorh #lock user # usermod –U majorh #unlock user Blofeldt mash #user thuộc group # groupadd –g 600 fleming #thêm group fleming # usermod –G fleming blofeldt #chuyển user vào group fleming # grep blofeldt /etc/group #tìm thơng tin group fleming fleming:x:600: blofeldt Phần IV – Các lệnh Phần IV – Các lệnh 33 Xóa user 34 userdel  Khi user khơng dùng hệ thống, ta có vấn đề cần quan tâm:  Xóa tài khoản user này, khơng cho người khác sử dụng account để truy cập  Xóa file/thư mục user khỏi hệ thống  Command format: userdel [option] -r This option will remove home directory  Câu lệnh userdel dùng để xóa tài khoản user, đồng thời xóa file thư mục home directory user (/home/username) Phần IV – Các lệnh 35 Phần IV – Các lệnh 36 15/1/2015 Lock tài khoản, xóa file user Thay đổi password Để khóa tài khoản user, ta dùng lệnh chage  Để thay đổi password user ta dùng câu lệnh passwd # passwd henry current password : new password: # chage –E 1999-01-01 henry retype new password: Để tìm xóa tất file/thư mục user nằm home directory: # find / -user henry –type f –exec rm –f {} \;   Lời khuyên chọn password: • Not use proper words or names • Use letters and digits • Include symbols: !, @, #, $, %, … Không cho phép tài khoản “guest” login vào hệ thống # find / -user henry –type d –exec rmdir {} \; Phần IV – Các lệnh /etc/shadow name:password:lastchange:min:max:warn:inactive:expire:flag User login name, mapped to /etc/passwd password Encrypted password If this field is blank, then there is no password ; “*”,”!!” : account is locked, … lastchange Number of days since the last password change, from 1/1/70 max Maximum number of days password is valid warn Number of days before expiration that user will be warned inactive Number of inactivity days allowed for this user expire Absolute date, beyond which the account will be disabled Phần IV – Các lệnh  Một số việc làm để tăng độ an tồn:  name Minimum number of days between password changes 38 Bảo mật tài khoản  Mật user băm (hash) lưu file Phần IV – Các lệnh 37 Đặt ngày hết hạn cho tài khoản tạm thời # usermod –e 2003-12-20 henry  Khóa tài khoản lâu khơng dùng đến:  Change passwords known by someone who leaves If they know the root password, change ALL password # usermod –f henry 39 Phần IV – Các lệnh 40 10 15/1/2015 Thêm group vào hệ thống   Câu lệnh groupadd: Thêm group vào hệ thống  Cú pháp: groupadd group Ví dụ: # groupadd sinhvien Thay đổi thời hạn password với chage : chage [options]  Options: -m Minimum days -M Maximum days -d Day last changed -I Inactive lock, sau mật hết hạn lock tài khoản -E Expiration (YYYY-MM-DD or MM/DD/YY) -W Warning days Phần IV – Các lệnh 41 Sửa thông tin group 42 Xóa group  Câu lệnh groupmod: groupmod –n newname –g gid groupname  Mỗi group chiếm dòng file /etc/group root:x:0:root pppusers:x:230:jdean,jdoe finance:x:300:jdean,jdoe,bsmith jdean:x:500: jdoe:x:501: bsmith:x:502:  Mỗi trường cách dấu “:”, trường đầu tên group, trường thứ group ID, trường cuối user group, user cách dấu “,” Phần IV – Các lệnh Phần IV – Các lệnh 43  Câu lệnh: groupdel groupname Phần IV – Các lệnh 44 11 15/1/2015 Chuyển user:  Câu lệnh su: Cú pháp: su [- –l] username -, -l: chạy đoạn login script user Để trở user cũ ta dùng lệnh exit Phần IV – Các lệnh 45 12 ... trọng Mã nguồn Mở chiến luợc phát triển CNTT nuớc ta  Sử dụng sản phẩm mã Mở quan nhà nuớc, đưa Mã nguồn Mở vào trung tâm đào tạo CNTT 43  Hàng loạt diễn đàn thảo luận, hàng loạt viết Mã nguồn Mở. .. license 41 Thực trạng nguồn mở 42 Mốc son LTV mã Mở  Mã nguồn Mở đạt đuợc nhiều thành công nuớc tiên tiến nhu Anh, Đức, Pháp, Hà lan v.v  Việt Nam, Hội thảo Quốc gia Phần mềm mã Mở lần thứ IV lần... loạt viết Mã nguồn Mở như:  “Liệu Mã nguồn Mở trợ giúp Kinh tế”  “Phần mềm mã Mở, chìa khóa tương lai CNTT”  Hàng ngàn tuyền dụng LTV Mã nguồn Mở năm 2008 (nguồn Internet) 44 11 10/8/2014 Cơ

Ngày đăng: 11/12/2017, 13:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan