Mais conteúdo relacionado Semelhante a Ch02 administrators-tasks (20) Ch02 administrators-tasks2. Bootup and Shutdown Linux
● boot … เปิ ดเครือง แล้ว grub ควรจะทำำงำนตำมปกติในกำร
่
เลือก default kernel ทีจะใช้สำำหรับกำร boot
่
● มี boot loader ตัวอืน นอกจำก grub ให้ใช้งำนได้ แต่สำำหรับ
่
x86 system และใช้งำนบนเครืองทัวไป ควรใช้ grub
่ ่
● อีกทำงเลือกหนึงคือ syslinux
่
– ใช้สำำหรับ boot จำก CD (เช่น แผ่น install linux)
3. Bootup (cont)
● Linux kernel-version (recovery mode) จะใช้สำำหรับกำร boot เข้ำ
linux ในกรณีที ่ service ในกำรทำำงำนปกติมีปัญหำ เช่น network
config มีปัญหำ หรือ ไม่สำมำรถเข้ำที ่ console ได้
● กำรเลือกใช้ console ใช้ ALT+F1 .. ALT+F6
– ALT+F7 ใช้สำำหรับกำร switch graphics mode ถ้ำติดตัง X-Windows
้
● ถ้ำอย่่ใน X-Windows ใช้ CTRL+ALT+F1 เพือเลือก tty1
่
● ตอนนี ้ ไม่มี X-Windows เพรำะฉะนัน ไม่ต้องสนใจก่อน!
้
4. Bootup (cont)
● Bootup ใน recovery mode
● ตอน boot จะแสดง message ว่ำกำำลังทำำอะไรบ้ำง
● start network แต่ไม่ start services
● จะต้องกำร root password เพือเข้ำไปทำำงำน
่
● ถ้ำกดป่ ม CTRL+D ก็จะเหมือนเลือก boot ใน mode ปกติ จะทำำงำนต่อ
่
– recovery mode จะทำำ runlevel 1
– normal mode จะทำำ runlevel 2 ต่อ
6. Bootup (cont)
● Linux
– kernel (init hardware and other stuff)
– execute /sbin/init
– /sbin/init ใช้ /etc/inittab สำำหรับ config
– script ใน /etc/init.d/ สำำหรับกำร start/stop
services
7. Bootup (cont)
● /etc/inittab
– ระบ่กำรทำำงำน โดยใช้ runlevel
● 0 : Halt
● 1 : Single-User
● 2-5 : Multi-User
● 6 : Reboot
– debian ใช้ default runlevel = 2
8. Bootup (cont)
● first boot run /etc/init.d/rcS
● each runlevel run /etc/init.d/rc N
– for runlevel N
● run
/etc/rcN.d/KNN-script (kill/stop script)
/etc/rcN.d/SNN-script (start script)
● เมือก่อน run ตำมลำำดับ, ตอนนี ้ script บำงตัว run แบบ
่
parallel กันได้ โดยกำรกำำหนด dependency
9. Bootup (cont)
● สำมำรถ enable / disable service ทีมีอย่่ (สำำหรับ กำร
่
bootup / shutdown ครังต่อไป) ได้ โดยใช้คำำสัง update-
้ ่
rc.d
# update-rc.d ssh disable
# ls -l /etc/rc2.d/ | grep ssh
# update-rc.d ssh enable
# ls -l /etc/rc2.d/ | grep ssh
10. Bootup (cont)
● ถ้ำต้องกำรเพิม คำำสัง / script แบบ local
่ ่
สำมำรถเพิมใน /etc/rc.local ได้ จะ execute
่
เป็ น คำำสังเกือบท้ำยส่ด ใน sequence
่
11. Shutdown
● Shutdown เพือปิ ดเครือง
่ ่
# /sbin/shutdown -h now
● สัง reboot เครือง
่ ่
# /sbin/shutdown -r now
● สำมำรถระบ่เวลำอืนๆ แทนที ่ 'now' ได้
่
# /sbin/shutdown -h 12:00
12. Shutdown (cont)
● shutdown คือกำร init runlevel 0,6 แล้วแต่กรณี
# init 6
# init 0
● ไม่ควร power-off/unplug power เครืองโดยไม่
่
shutdown (เป็ นเรืองสำำคัญ สมัยก่อน แต่ไม่
่
สำำคัญมำก ในสมัยนี ้)
13. Manage Storages on Linux
● There are a lot of things Linux admin should know
about this topic. E.g.
– Add and remove disks
– Partitioning and Filesystem
– Software RAID
– Logical Volume Management
– etc.
● There ain't no time for all of that!
● So ...
14. Add Disk to VM on VBox
● เปิ ด VirtualBox Manager แล้ว Shutdown VM
● เลือก VM จำก panel ทำงซ้ำย (LSA Clone)
● เลือก Settings icon => เปิ ด Settings Window
● เลือก Storage จำก panel ซ้ำย
● เลือก SATA Controller จำก Storage Tree
● กดเลือก Add Harddisk (icon ทำงขวำ)
15. Add Disk to VM on Vbox (cont)
● จำก Question เลือก Create new disk
● File type: VDI (next)
● Storage details: Dynamically allocated (next)
● Location: แล้วแต่จะระบ่ชอ ทีไม่ซำกับชือเดิม Size: 100 MB
ื่ ่ ำ้ ่
(next)
●
Summary: (Create)
เสร็จ
● กลับไป Start VM
16. Devices File
● สำำหรับ Unix /dev จะใช้สำำหรับกำรเก็บ special “device” file
● Harddisk ของ Linux จะปรำกฏเป็ น
/dev/sdX โดย 'X' จะเริมจำก a,b,c,d, …
่
● ลองใช้คำำสัง
่
# ls -l /dev/sd?
# ls -l /dev/sd??
● /dev/sda คือ disk ตัวแรก ซึงใช้ SATA driver
่
(ไม่สำำคัญเท่ำไหร่ สำำหรับ Linux ร่่นล่ำส่ด แทบทังหมดจะใช้ sata driver)
้
17. Disk Devices
● /dev/sda คือ harddisk ตัวแรก
● /dev/sdb คือ harddisk ตัวทีสอง
่
● /dev/sr0 คือ cdrom (ลอง ls -l /dev/cdrom และ ls -l /dev/dvd)
● /dev/sda1 จะเป็ น partition ที ่ 1 บน harddisk ตัวแรก
● /dev/sdb2 จะเป็ น partition ที ่ 2 บน harddisk ตัวที ่ 2
# ls -l /dev/sd??
● ยังไม่เห็น partition ของ /dev/sdb เพรำะ ยังไม่มีกำรสร้ำง partition บน disk
ตัวทีสอง
่
18. สร้ำง partition ด้วย fdisk, cfdisk
● Tools สำำหรับกำรจัดกำร partition (ในตอนนี ้) มี
sfdisk, fdisk, cfdisk
● cfdisk เป็ น text full screen ใช้งำนง่ำยทีสด
่ ่
● sfdisk เหมำะสำำหรับกำรใช้งำนผ่ำน script
● fdisk อย่่ระหว่ำงกลำง แต่ผมชอบใช้ตัวนี ้
เพรำะฉะนัน เรำจะใช้ fdisk
้
19. fdisk
● list partition on disk
# fdisk -l /dev/sda
# fdisk -l
● create / modify disk partitio on /dev/sdb
# fdisk /dev/sdb
– m (help)
– x (extra/expert function) – ส่วนใหญ่แล้วไม่ต้องใช้
● r (return to normal command)
– p (print partition table)
– q (quit without saving changes)
– w (write and quit)
20. fdisk (cont)
● ตรวจสอบ กำรเปลียนแปลงเป็ นระยะๆ ด้วย 'p' และ ก่อนทีจะ
่ ่
'w' ลงไป
● เรำจะสร้ำง partition ใหม่ 2 partition
– /dev/sdb1 ขนำด 80 MB สำำหรับเก็บข้อม่ล โดยใช้ ext2
– /dev/sdb2 ทีเหลือ สำำหรับเป็ น swap
่
● ขนำดของ swap ทีควรใช้ควรจะเป็ น 1 หรือ 2 เท่ำของ
่
memory (แล้วแต่ application ของ server)
21. fdisk (cont)
● จำก Command (m for help):
– n (create new partition)
– p (primary partition (1-4))
– Partition number (1-4): 1
– First cylinder (1-xxx, default 1): 1
– Last cylinder, .. default xxx): +80M
80M คือ 80 Megabytes, G → Gigabytes
● สร้ำง partition ที ่ 2 สำำหรับ swap
– n, p, 12
ถ้ำเหลือเพียง cylinder เดียว ก็จะใช้ทงหมด
ั้
22. fdisk (cont)
● ขนำดของ disk จะเป็ นค่ำโดยประมำณ ขึนอย่่กบจำำนวนของ
้ ั
head/cylinder/sector ซึงจริงๆแล้วก็ขึนอย่กับกำร mapping ของ disk controller
่ ้ ่
อีกที ไม่ได้เป็ นไปตำมทีแสดงจริงๆ
่
● เพรำะฉะนัน จะได้ค่ำ “ประมำณ”
้
● partition ทีสองยังมีชนิดเป็ น linux ต้องเปลียนให้เป็ น swap
่ ่
● t, 2, 82
● Command: t, Partition No: 2, Hex code: 82
● ลองใช้ 'L' ตอน fdisk ถำม hex code เพือแสดง partition ทังหมดที ่ fdisk ของ
่ ้
Linux ร้่จัก
23. สร้ำงและใช้ swap
# fdisk -l /dev/sdb
# mkswap /dev/sdb2
# free
# swapon /dev/sdb2
# free
● เปรียบเทียบ บรรทัด Swap: ของคำำสัง Free
่
# swapoff /dev/sdb2
# free
24. สร้ำงและใช้ swap (cont)
● ถ้ำต้องกำรใช้ท่กครัง หลังจำกกำร reboot
้
เครือง จะต้องไปแก้ไขไฟล์ /etc/fstab
่
● เพิม บรรทัด
่
/dev/sdb2 none swap sw 0 0
25. สร้ำง ext2 partition
# mke2fs /dev/sdb1
# df
# mount /dev/sdb1 /mnt
# df
● เปรียบเทียบผลระหว่ำงคำำสัง df ทังสอง
่ ้
● ลองใช้คำำสัง df -h และ df /mnt หรือ df /
่
27. fsck
● File System ChecK
● e2fsck – fsck for ext2,3,4
# fsck -t ext2 /dev/sdb1
● filesystem ทีต้องกำรจะ check และ fix จะต้อง unmount ก่อน
่
● ถ้ำ filesystem นัน mount อย่่ มันจะทำำให้พัง เพรำะกำร fix
้
นันๆ
้
28. Linux FileSystem (short intro)
# ls /sbin/mkfs*
# ls /sbin/fsck*
● แสดง filesystem ทีสำมำรถ สร้ำง (make) และ ตรวจ
่
สอบ/ซ่อมแซมได้ check (and fix)
● NFS – Network file system เป็ น services ทีให้บริกำรโดย
่
server ส่วน filesystem ทีอย่่ใน layer ล่ำงๆ อำจจะเป็ น
่
filesysystem ชนิดอืนๆ
่
29. Linux Filesystem (cont)
● File system อืนๆ เช่น NTFS, VFAT (ของ
่
Windows) อย่่ใน package อืนๆ
่
- vfat (dosfstools)
- ntfs (ntfs-3g)
● จะพ่ดถึงเรืองนีอีกที วันหลัง (หรือวันหน้ำ?)
่ ้
30. Config sudo
● วิธีกำรทีงำยทีสดคือเพิม user เข้ำไปในกล่่ม sudo
่ ่ ่ ่ ่
# grep sudo /etc/group
# usermod -a -G sudo cj
เปลียน cj เป็ น user account ทีสร้ำงขึน
่ ่ ้
# grep sudo /etc/group
● user จะต้อง logout และ login ใหม่ ถึงจะสำมำรถ
ใช้งำนได้
31. Config sudo (cont)
● แก้ไขไฟล์ /etc/sudoers
● โดยใช้คำำสัง visudo
่
– มันใช้ nano โดย default ถึงแม้จะชือขึนต้นด้วย vi
่ ้
● ถ้ำต้องกำรเปลียนเป็ น vi
่
# EDITOR=vi visudo
● หรือ
# update-alternatives --config editor
# update-alternatives --set editor /usr/bin/vim.tiny
32. Config sudo (cont)
● เพิม บรรทัด
่
cj ALL=(ALL) NOPASSWD: /usr/bin/aptget, /usr/bin/aptitude
● ทำำให้สำมำรถใช้ sudo สำำหรับคำำสัง apt-get, aptitude ได้โดย ไม่ต้องถำม password
่
(แต่สำำหรับคำำสังอืน ยังถำมเหมือนเดิม)
่ ่
● หลังจำกใช้ครังแรกแล้ว ครังต่อไปไม่ถำม password จนกว่ำจะ logout หรือ timeout
้ ้
● ต้องกำรให้ลืม password ใช้
$ sudo -k