Workshop - Linux LPI 1

6 208 0
Workshop - Linux LPI 1

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

Thông tin tài liệu

IPMac Networking Academy ©Pham Anh Liem Page | 1 LPIC-1 WORKSHOP (Ngày thực hiện:………………………………………) Tên học viên:………………………….…………………… …… …… Chữ ký học viên:……… ………… …………. Bước 1: Tạo một máy ảo mới trên VMware Workstation với cấu hình: 01 CPU, 1GB RAM, 02 x 10GB SCSI harddisk (sử dụng tính năng Thin Provisioning). Cài đặt Red Hat Enterprise Linux 5 hoặc CentOS 5 lên harddisk thứ nhất theo theo bảng phân bổ partition như bên dưới. Partition Kích thước Filesystem Mountpoint /dev/sda1 100 MB ext3 /boot /dev/sda2 4000 MB ext3 / /dev/sda3 Kích thước bạn đề nghị: 2000MB (=2xRAM) swap /dev/sda5 1000 MB ext3 /home /dev/sda6 500 MB vfat /winshare /dev/sda7 toàn bộ phần trống còn lại ext3 /tmp Trước khi hoàn tất quá trình cài đặt, tạo một account với tên là linux và password tuz bạn chọn. Các bước dưới đây đề nghị bạn thao tác trên account linux này (yêu cầu không login trực tiếp vào hệ thống bằng account root) Bước 2: Cấu hình để cho account linux có quyền sử dụng sudo để thực hiện mọi lệnh của root. Bạn cần phải sửa file cấu hình nào: /etc/sudoers Bạn cần thêm thông tin gì vào file cấu hình này: linux ALL = (ALL) ALL Bước 3: Cấu hình lại boot loader (GRUB) để thay đổi giá trị timeout thành 10 giây. Bạn cần phải thay đổi thông tin này trong file cấu hình nào: /boot/grub/grub.conf Bước 4: Cấu hình để account linux có quyền chạy trực tiếp các lệnh có trong thư mục /opt mà không cần phải gõ đường dẫn đầy đủ. Việc thay đổi này phải có giá trị vĩnh viễn (không cần làm lại sau mỗi lần reboot) Bạn cần phải thay đổi thông tin này trong file cấu hình nào: /home/linux/.bashrc Bạn cần thêm thông tin gì vào file cấu hình này: PATH=$PATH:/opt Bước 5: Cài đặt VMware-Tools cho máy ảo của bạn. Bạn cần copy file VMwareTools-X-Y.tar.gz nằm trong đĩa cài VMware-Tools vào thư mục /tmp và giải nén bằng lệnh tar -zxvf VMwareTools-X-Y.tar.gz sau đó cài đặt bằng lệnh /tmp/vmware-tools-distrib/vmware-install.pl Bước 6: Trên harddisk thứ hai, tạo một primary partition mới với kích thước 5GB, format partition mới này với định dạng ext3 và cấu hình cho hệ thống tự động mount partition này lên thư mục /localrepo. Bạn tạo partition bằng công cụ: fdisk, device file của partition này là: /dev/sdb1 Bạn format partition này bằng lệnh: mkfs.ext3 /dev/sdb1 IPMac Networking Academy ©Pham Anh Liem Page | 2 Bạn cần sửa file gì để partition này được mount tự động khi hệ thống bật lên: /etc/fstab Thông tin bạn cần đưa thêm vào file này là: /dev/sdb1 /localrepo ext3 defaults 0 2 Bước 7: Sử dụng filesystem mà bạn mới tạo ở bước 6 để lưu tất cả các file .rpm có trong đĩa cài đặt Linux. Tạo một local repository và cấu hình yum để sử dụng repository này 1. Mount đĩa cài Linux lên thư mục /media 2. Cài đặt gói createrepo-X.Y.Z.el5.noarch.rpm với câu lệnh: rpm -ivh /media/CentOS/ createrepo-X.Y.Z.el5.noarch.rpm 3. Copy tất cả file .rpm files từ /media/CentOS vào thư mục /localrepo 4. Chạy câu lệnh: createrepo /localrepo để chuẩn bị repository 5. (Với CentOS) Move tất cả file có đuôi .repo trong thư mục /etc/yum.repos.d sang một thư mục khác: mkdir /etc/yum.repos.d/backup mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/ 6. Tạo một file mới tên là local.repo trong thư mục /etc/yum.repos.d và đưa các thông tin mô tả về repository này vào file đó [LocalRepo] name=Local Repository baseurl=file:///localrepo enabled=1 gpgcheck=0 7. Chỉnh sửa file cấu hình global của yum là /etc/yum.conf để disable gpgcheck. 8. Chạy câu lệnh: yum clean all để xoá các thông tin trong yum’s cache 9. Liệt kê tất cả các package có trong yum’s repository bằng câu lệnh: yum list Bước 8: Cài đặt các package sau với yum: gcc, gcc-c++, xinetd Câu lệnh để cài đặt package với yum: yum install <package> Bước 9 (tuỳ chọn): Download netcat từ địa chỉ sau và cài đặt phần mềm này từ source: http://nchc.dl.sourceforge.net/project/netcat/netcat/0.7.1/netcat-0.7.1.tar.gz 1. Download netcat: wget http://nchc.dl.sourceforge.net/project/netcat/netcat/0.7.1/netcat-0.7.1.tar.gz 2. Giải nén netcat bằng lệnh: tar -zxvf netcat-0.7.1.tar.gz 3. Chạy file configure để chuẩn bị trước khi compile bằng lệnh: ./configure 4. Compile netcat bằng lệnh: make 5. Cài đặt netcat bằng lệnh: make install Bước 10: Tạo một user cronjob để backup tất cả các file có trong thư mục $HOME của user linux vào 9:00 tối thứ 7 hàng tuần, chỉ backup các file đã bị thay đổi nội dung kể từ lần backup trước đó. File backup này sẽ được lưu trong thư mục /tmp/backup/linux Tìm kiếm các file đáp ứng tiêu chí trên bằng lệnh: find /home/linux/ -mtime -7 Các file này sẽ được backup bằng công cụ: cpio -o > /tmp/backup/linux/backup.cpio Crontab bạn sẽ tạo để backup theo tiêu chí trên: 00 21 * * 6 find /home/linux -mtime -7 | cpio -o > /tmp/backup/linux/backup_`date +%F`.cpio IPMac Networking Academy ©Pham Anh Liem Page | 3 Bước 11: Tạo thêm một account mới trên hệ thống với các thông tin như sau: Username: job User ID: 600 Primary Group: share Secondary Group: root Password: 123@abc Account này phải đổi password ít nhất mỗi tháng 1 lần. Sau khi hoàn tất, đưa thêm account linux vào trong nhóm share. Bạn cần tạo nhóm share trước khi tạo user account này bằng lệnh: groupadd share Bạn tạo account này bằng lệnh: useradd -u 600 -g share job Bạn đặt password cho accout này bằng lệnh: passwd job Bạn đưa account linux vào group root bằng lệnh: usermod -G root linux Bạn đặt policy cho account này phải đổi password mỗi tháng bằng lệnh: chage -M 30 linux Bước 12: Trên harddisk thứ hai, tạo thêm một primary partition với kích thước 2GB, format định dạng ext3, cấu hình để filesystem này được tự động mount cùng hệ thống lên mountpoint /quota và enable tính năng userquota và groupquota trên partition này. Để enable tính năng quota cho filesystem này, trong file /etc/fstab bạn cần thêm các options là usrquota và grpquota /dev/sdb2 /quota ext3 defaults,usrquota,grpquota 0 2 Bước 13: Tạo một thư mục tên share bên trong mountpoint /quota. Phân quyền cho thư mục share sao cho người sở hữu thư mục này và tất cả các thư mục/file bên trong là nhóm share, và nhóm share có toàn quyền trên thư mục này cũng như các thư mục/file bên trong. Để thay đổi owner sang nhóm share bạn dùng lệnh: chown :share -R /quota/share Để thay đổi quyền bạn dùng lệnh: chmod -R g+rwx /quota/share Bước 14: Cấu hình quota trên filesystem /quota để chỉ cho phép account job được sử dụng tối đa 1GB dung lượng và tạo tối đa 100 files/folders. Nếu job sử dụng quá 800MB dung lượng hoặc tạo nhiều hơn 80 files/folders thì sẽ bị cảnh báo. Bạn tạo các file cấu hình quota bằng lệnh: quotacheck -ug /quota Lệnh này sẽ sinh ra các file là aquota.usr và aquota.group trong thư mục /quota Bạn đặt quota cho job bằng lệnh: edquota -u job Quota cho job sẽ được đặt là: Filesystem blocks soft hard inodes soft hard /quota 0 204800 262144 0 80 100 (Các tham số soft và hard ở sau blocks phụ thuộc kích thước block. Để kiểm tra kích thước block, sử dụng lệnh tune2fs -l /dev/sdb2 | grep “Block size”. Với blocksize=4096=4KB thì 204800 tương đương 800MB, 262144 tương đương 1GB). Để kích hoạt tính năng quota, bạn cần chạy lệnh: quotaon -ug /quota Bước 15: Tạo một file script tên là monitor.bash đặt trong thư mục /tmp. Script này sẽ yêu cầu người dùng nhấn phím 1 hoặc 2. Nếu nhấn phím 1, người dùng sẽ được chạy các lệnh trên shell, tuy nhiên mọi thao tác của người dùng sẽ được ghi lại vào file /tmp/monitor.log. Nếu nhấn phím 2 hoặc bất kz phím nào khác, người dùng sẽ exit ra khỏi script. Để log lại mọi câu lệnh mà người dùng nhập vào cùng với kết quả, bạn dùng lệnh: script filename IPMac Networking Academy ©Pham Anh Liem Page | 4 Nội dung của file script bạn sẽ tạo: #!/bin/bash echo ‚Nhan phim 1 de mo shell. Nhan phim 2 de exit‛ read ANSWER if [ $ANSWER = 1 ] then { script /tmp/monitor.log } else exit fi Để file script này chạy được, bạn cần thực hiện lệnh: chmod a+x /tmp/monitor.log Để chạy thử script này bạn thực hiện lệnh: /tmp/monitor.log Nếu bạn đang login bằng account linux, hãy copy file script này vào thư mục /opt. Để chạy script này trong thư mục /opt bạn chỉ cần gõ tên script là đủ, đúng hay sai? đúng. Tại sao? Vì /opt đã nằm trong biến môi trường PATH của account linux (thực hiện ở Bước 4) Bước 16 (tuỳ chọn): Cấu hình account job để mỗi khi account này login vào hệ thống, login shell của anh ta sẽ là file monitor.bash mà bạn vừa tạo. Hãy xem thử kết quả. Để thay đổi login shell của job bạn sẽ cần sửa file /etc/passwd bằng lệnh vipw Bạn sẽ thay đổi login shell hiện tại của anh ta từ /bin/bash thành /opt/monitor.bash Bước 17: Chuyển chế độ kết nối của card mạng máy ảo sang NAT, cấu hình cho card mạng sử dụng thiết lập IP tự động qua DHCP. Lưu lại các thông tin về IP mà bạn được cấp qua DHCP. Cấu hình động lại cho card mạng của bạn theo thông tin sau: IP Address: là IP Address hiện tại cộng thêm 10 Subnet: Như cũ Gateway: Như cũ DNS Server: 8.8.8.8 và 4.4.4.4 Thiết lập cho hệ thống tự động cấu hình theo các thông tin như trên sau mỗi lần reboot. Để cấu hình cho card mạng sử dụng DHCP bạn cần sửa file /etc/sysconfig/network-scripts/ifcfg-eth0 Tham số nào sẽ được đặt là “dhcp”: BOOTPROTO Để cấu hình có hiệu lực, bạn cần chạy lệnh ifdown eth0 sau đó là ifup eth0 Cấu hình động lại cho card mạng bằng lệnh: ifconfig eth0 <IPADDRESS> netmask <NETMASK> Cấu hình động lại gateway bằng lệnh: route add default gw <GATEWAY> Cấu hình động lại DNS Server bằng cách thêm các dòng dạng nameserver <IPADDRESS> vào trong file /etc/resolv.conf Để hệ thống tự động cấu hình theo thông tin như trên sau mỗi lần reboot, bạn cần sửa file /etc/sysconfig/network-scripts/ifcfg-eth0 và thêm các thông tin như sau: DEVICE= eth0 BOOTPROTO=static IPADDR=<YOUR IPADDRESS> NETMASK=<YOUR NETMAKSK> IPMac Networking Academy ©Pham Anh Liem Page | 5 GATEWAY=<YOUR GATEWAY> ONBOOT=yes Bước 18: Cấu hình hệ thống của bạn để tự động đồng bộ với các time server sau: pool.ntp.org 1.vn.pool.ntp.org File cấu hình cho NTP là /etc/ntp.conf Backup file cấu hình hiện tại bằng lệnh: mv /etc/ntp.conf /etc/ntp.conf.bak Tạo một file cấu hình mới bằng lệnh: vi /etc/ntp.conf Để cấu hình sử dụng time server mới, bạn thêm các thông tin gì vào file cấu hình: server pool.ntp.org server 1.vn.pool.ntp.org Để cấu hình mới có hiệu lực cần restart ntpd bằng lệnh: /etc/init.d/ntpd restart Để kiểm tra hoạt động của ntpd bạn dùng lệnh ntpq và gõ peers Bước 19 (Optional): Cấu hình một máy trạm Linux khác để có thể SSH đến máy Linux của bạn mà không cần nhập password. Trên máy SSH Client, tạo SSH key bằng lệnh: ssh-keygen -q -t rsa -f ~/.ssh/id_rsa -C ‘’ -N ‘’ Copy file id_rsa.pub lên SSH Server qua scp bằng lệnh: scp ~/.ssh/id_rsa.pub root@<SERVER ADDRESS>:/~ Trên SSH Server, đưa nội dung của file id_rsa.pub vừa copy lên vào file ~/.ssh/authorized_keys bằng lệnh: cat ~/id_rsa.pub >> ~/.ssh/authorized_keys Bước 20: Thử nghiệm trên hệ thống của bạn và trả lời các câu hỏi dưới đây:  Để shutdown hệ thống linux sau 30s, bạn dùng lệnh: shutdown -h -t 30  Để liệt kê tất cả các package rpm đã cài đặt trên hệ thống, bạn dùng lệnh: rpm -qa  Để xem package samba đã được cài đặt trên hệ thống chưa, bạn dùng lệnh: rpm -qa | grep samba  Để xem thư mục hiện thời, bạn dùng lệnh: ‚pwd‛ hoặc ‚echo $PWD‛  Để đổi password cho account hiện tại, bạn dùng lệnh: passwd  Để xem tất cả các câu lệnh đã chạy, bạn dùng lệnh: history  Để đổi tên file abc.txt thành def.txt bạn dùng lệnh: mv abc.txt def.txt  Để liệt kê tất cả các file trong thư mục hiện tại, kết quả vừa hiển thị ra terminal, vừa được ghi vào file /tmp/ls.output bạn dùng lệnh: ls | tee /tmp/ls.output  Để tìm kiếm tất cả các file có tên config và việc tìm kiếm chạy ở chế độ nền, toàn bộ output và error được ghi ra file /tmp/find.output bạn dùng lệnh: find / -name config > /tmp/find.output 2>&1 & hoặc find / -name config >& /tmp/find.output &  Để chạy lệnh tìm kiếm như trên nhưng đảm bảo việc tìm kiếm không bị gián đoạn khi bạn exit ra khỏi shell, bạn dùng lệnh: nohup find / -name config >& /tmp/find.output &  Để kiểm tra dung lượng trống của một filesystem bạn dùng lệnh: df -H <moutpoint>  Để kiểm tra dung lượng của một thư mục, bạn dùng lệnh: du -sh <directory>  Để kiểm tra một process có tên là kinit xem có đang chạy hay không, bạn dùng lệnh: ps -ef | grep kinit IPMac Networking Academy ©Pham Anh Liem Page | 6  Để xem PID của một process có tên là ssh bạn dùng lệnh: ‚ps -ef | grep ssh‛ và xem giá trị ở cột thứ 2  Để stop tất cả các process có tên là ssh bạn dùng lệnh: killall ssh  Để stop một process có PID là 1234 bạn dùng lệnh: ‚kill 1234‛ hoặc ‚kill -9 1234‛  Để theo dõi tải hệ thống theo thời gian thực, bạn dùng lệnh: top  Để theo dõi log hệ thống theo thời gian thực, bạn dùng lệnh: tail -f /var/log/messages  Để kiểm tra lỗi của partition /dev/sda2 bạn dùng lệnh: fsck -t <FS Type> /dev/sda2  Khi umount một filesystem, hệ thống báo không thể thực hiện do filesystem ở trạng thái busy, bạn kiểm tra xem tiến trình nào đang truy cập file nào trên filesystem đó bằng lệnh: lsof <mountpoint>  Để tạo một link đến file /bin/bash, link này đặt trên thư mục /quota đã tạo ở bước 14, bạn dùng lệnh: ln -s /bin/bash /quota (bắt buộc phải dùng softlink (-s) do file gốc và link nằm trên các filesystem khác nhau)  Để mọi account khi login vào hệ thống đều có thể gõ lệnh dir thay cho lệnh ls, bạn cần tạo một alias đặt trong file /etc/profile Với chỉ một câu lệnh bạn có thể thực hiện được việc này, đó là lệnh: echo ‚alias dir=ls‛ >>/etc/profile  Biến môi trường DISPLAY quản lý việc giao diện đồ hoạ của một ứng dụng sẽ được hiển thị ở đâu.  Để X Server chấp nhận kết nối đến từ mọi X Client, bạn cần chạy lệnh trên X Server: xhost +  File /etc/cron.deny cho phép bạn liệt kê danh sách những người dùng không được phép tạo cronjob  Để truy cập vào giao diện CUPS quản trị máy in trên máy Linux hiện tại, bạn truy cập vào địa chỉ http://localhost:631

Ngày đăng: 08/05/2014, 12:35

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

Tài liệu liên quan