101 2.1 design hard disk layout


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

101 2.1 design hard disk layout

  1. 1. Junior Level Linux Certification
  2. 2. Exam Objectives Key Knowledge Areas Allocate filesystems and swap space to separate partitions or disks. Tailor the design to the intended use of the system. Ensure the /boot partition conforms to the hardware architecture requirements for booting. Objective 2: Linux Installation and Package Management Design hard disk layout Weight: 2 Terms and Utilities / (root) filesystem /var filesystem /home filesystem swap space mount points partitions 2
  3. 3. Extended partitions 3 The original MS DOS partition table was limited to 4 partitions To work around this, scheme allows additional “logical” partitions – in a single “extended partition”. If there are more than 4 partitions, one of the first four partitions will be an extended partition. Ex: Design hard disk layout
  4. 4. Extended and logical partitions 4 Ex: Design hard disk layout
  5. 5. Partition scheme 5 Linux disk partition scheme table identifies the blocks for disks and partitions (use fdisk –l to see it) A hard disk can be divided into several partitions. Each partition functions as if it were a separate hard disk. partitioning scheme is not built into hardware, or into BIOS. It is only a convention that many operating systems follow. Ex: $ fdisk -l /dev/hda Disk /dev/hda: 15 heads, 57 sectors, 790 cylinders Units = cylinders of 855 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 1 1 24 10231+ 82 Linux swap /dev/hda2 25 25 48 10260 83 Linux native /dev/hda3 49 49 408 153900 83 Linux native /dev/hda4 409 409 790 163305 5 Extended /dev/hda5 409 409 744 143611+ 83 Linux native /dev/hda6 745 745 790 19636+ 83 Linux native Design hard disk layout
  6. 6. Disks and partitions 6 There are two kinds of major partitions on a Linux system: data partition: normal Linux system data, including root partition containing all data to start up and run the system; swap partition: expansion of the computer's physical memory, extra memory on hard disk. Normal server data and swap partitioning: 1.partition with all data necessary to boot the machine 2.partition with configuration data and server programs 3.one or more partitions containing the server data (database tables, user mails, an ftp archive etc.) 4.partition with user programs and applications 5.one or more partitions for the user specific files (home directories) 6.one or more swap partitions (virtual memory) Division of hard disks into partitions is determined by the system administrator Programs that offer services are kept in a different place than the data handled by the service. Different partitions should be created Design hard disk layout
  7. 7. Partitions and Linux naming scheme 7 Linux disk naming scheme identifies disks and data/swap partitions on all disks. Device name Meaning /dev/hda devices, hard disk “a” (IDE, primary channel, master) /dev/hdb devices, hard disk “b” (IDE, primary channel, slave) /dev/hdc5 devices, hard disk “a”, partition “5” (IDE, secondary channel, master) /dev/hdd2 devices, hard disk “a”, partition “2” (IDE, secondary channel, slave) /dev/sda devices, SCSI disk “a” /dev/sdd9 devices, SCSI disk “d”, partition “9” yourname@yourcomp~> fdisk -l /dev/hd?Ex: Design hard disk layout
  8. 8. Design hard disk layout Formatting 8 LOW-LEVEL FORMATTING Process of writing marks on magnetic media that are used to mark tracks and sectors. Before format, the disk magnetic surface is a complete mess of magnetic signals. After format, draws lines for tracks, divides tracks in sectors. HIGH-LEVEL FORMATTING Process of creating a filesystem.
  9. 9. Formatting 9 Floppies are formatted with fdformat cmd Ex: yourname@yourcomp~> fdformat /dev/fd0H1440 Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB. Formatting ... done Verifying ... done Formatting the auto detected device (/dev/fd0), requires first the device set parameters with setfdprm. Ex: yourname@yourcomp~> setfdprm /dev/fd0 1440/1440 yourname@yourcomp~> fdformat /dev/fd0 Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 KB. Formatting ... done Verifying ... done badblocks cmd can be used to search disks or partitions or filesystems for bad blocks. does not format the disk. bad blocks search can be done by mkfs cmd (which initializes the filesystem), Later checks should be done with badblocks and new blocks should be added with fsck. Design hard disk layout
  10. 10. File Systems 10 filesystem is the methods and data structures that an operating system uses to keep track of files on disk or partition or, the way the files are organized on disk Linux Filesystems can be created with the mkfs command. Cmd is a front end to several filesystem-specific commands (such as mkfs.ext3 for ext3 and mkfs.reiserfs for ReiserFS) To view what filesystem-specific support is installed on the system use: ls /sbin/mk* command. Linux Swapspaces are created with the mkswap command. Ex: yourname@yourcomp~> ls /sbin/mk* /sbin/mkdosfs /sbin/mkfs.ext2 /sbin/mkfs.ntfs /sbin/mke2fs /sbin/mkfs.ext3 /sbin/mkfs.vfat /sbin/mkfs /sbin/mkfs.ext4 /sbin/mkfs.xfs /sbin/mkfs.btrfs /sbin/mkfs.ext4dev /sbin/mkhomedir_helper /sbin/mkfs.cramfs /sbin/mkfs.msdos /sbin/mkswap Create partitions and filesystems
  11. 11. File Systems 11 Linux Swapspaces and Filesystems can be created with fdisk Ex: yourname@yourcomp~> fdisk -v fdisk (util-linux-ng 2.16) yourname@yourcomp~> sudo fdisk /dev/sdb [sudo] password for: The number of cylinders for this disk is set to 30401. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): p Disk /dev/sdb: 250.1 GB, 250059350016 bytes 255 heads, 63 sectors/track, 30401 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x000404d6 Device Boot Start End Blocks Id System /dev/sdb1 1 25 200781 83 Linux /dev/sdb2 26 12965 103940550 83 Linux /dev/sdb3 12966 30401 140054670 83 Linux Command (m for help): Create partitions and filesystems
  12. 12. Creating a swap space 12 swap space from other partition with mkswap Ex: yourname@yourcomp~> mkswap /dev/sda4 Setting up swapspace version 1, size = 4192960 KiB no label, UUID=8f5a3a05-73ef-4c78-bc56-0e9b1bcc7fdb mkswap doesnt check if file or partition isn't used. It can overwrite important files and partitions swap space is part of hard disk that is used as virtual memory Linux can use a normal file in filesystem or separate partition for swap space. used as a raw partition, and will not contain any filesystem. type 82 (Linux swap); Create partitions and filesystems
  13. 13. Creating a swap space 13 Ex: yourname@yourcomp~> dd if=/dev/zero of=/extra-swap bs=1024 count=1024 1024+0 records in 1024+0 records out /extra-swap is the name of the swap file and the size of is given after the count=. yourname@yourcomp~> mkswap /extra-swap 1024 Setting up swapspace, size = 1044480 bytes After created a swap file or swap partition, you need to write a signature to its beginning; contains administrative information used by kernel. command to do is mkswap Ex: the swap space is still not in use: it will exist, but the kernel does not use it to provide virtual memory. Create partitions and filesystems
  14. 14. Creating a swap space 14 initialized swap space is used with swapon. tells kernel that swap space can be used and path to swap space is given as argument Ex: yourname@yourcomp~> swapon /extra-swap to start swapping on temporary swap file use the following command: /dev/hda8 none swap sw 0 0 /swapfile none swap sw 0 0 startup scripts will run command swapon -a, which will start swapping on all the swap spaces listed in /etc/fstab Ex: Swap spaces can be used automatically by listing them in /etc/fstab file swap space can be removed with swapoff swap used automatically with swapon -a can be removed from with swapoff -a; it looks at /etc/fstab to find what to remove Create partitions and filesystems
  15. 15. Creating a swap space 15 monitor swap with free or top or in /proc/meminfo View enabled swap devices use swapon –s or with cat /proc/swaps yourname@yourcomp~> swapon –s Filename Type Size Used Priority /dev/sdb1 partition 514044 0 -1 /dev/sdb5 partition 4192928 0 -2 yourname@yourcomp~> cat /proc/swaps Filename Type Size Used Priority /dev/sdb1 partition 514044 0 -1 /dev/sdb5 partition 4192928 0 -2 Ex: Create partitions and filesystems
  16. 16. Creating an ext3 filesystem 16 Ex: yourname@yourcomp~> mkfs -t ext3 /dev/sda8 mke2fs 1.41.9 (22-Aug-2009) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 2624496 inodes, 10488429 blocks 524421 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=4294967296 321 block groups 32768 blocks per group, 32768 fragments per group 8176 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 20 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. • To add journal to an existing ext2, use tune2fs with -j option. • To display or set label for ext2 or ext3, use e2label. Labels limited to 16 characters. • To display UUID (Universally Unique Identifier) for the formatted partition, use blkid cmd Linux filesystems generate UUID when the filesystem is formatted - 128-bit identifier displayed as 32 hexadecimal digit and four hyphens Create partitions and filesystems
  17. 17. Other tools and filesystems 17 cfdisk tool (console based) Ex: Create partitions and filesystems
  18. 18. Other tools and filesystems 18 gpart partitioning tool Ex: Create partitions and filesystems
  19. 19. Linux file system 19 Linux filesystem contains files arranged on a block storage device in directories. Linux filesystem is a single tree with the / directory as its root directory. Ex: Create partitions and filesystems
  20. 20. File system Hierarchy Standard 20 Directories required in / by the Filesystem Hierarchy Standard Set of requirements and guidelines for file and directory placement under UNIX-like operating systems. Directory Description bin Essential command binaries boot Static files of the boot loader dev Device files etc Host-specific system configuration lib Essential shared libraries and kernel modules media Mount point for removable media mnt Mount point for mounting a filesystem temporarily opt Add-on application software packages sbin Essential system binaries srv Data for services provided by this system tmp Temporary files usr Secondary hierarchy var Variable data http://www.pathname.com/fhs/ Create partitions and filesystems
  21. 21. Filesystem Hierarchy Standard 21 Ex: Create partitions and filesystems
  22. 22. Linux file system 22 A simple description of UNIX system, applicable to Linux, is: "On a UNIX system, everything is a file; if something is not a file, it is a process.” • Regular files: Contain normal data. Ex. text files, executable files or progs, input for or output from a program. • Directories: Files that are lists of other files. • Special files: The mechanism used for input and output. Most special files are in /dev • Links: System to make a file or directory visible in multiple parts of the system's file tree. • Domain sockets: Special file type (similar to TCP/IP sockets) providing inter-process networking protected by the file system's access control. • Named pipes: More or less like sockets. Form a way for processes to communicate with each other, without using network socket semantics. Create partitions and filesystems
  23. 23. Linux file system 23 The -l option to ls cmd displays the file type, using the first character of each input line Good options are with -F and --color combined: Ex: yourname@yourcomp~> ls -l total 80 -rw-rw-r-- 1 jaime jaime 31744 Feb 21 17:56 intro Linux.doc -rw-rw-r-- 1 jaime jaime 41472 Feb 21 17:56 Linux.doc drwxrwxr-x 2 jaime jaime 4096 Feb 25 11:50 course File types in ls -long list Symbol Meaning •- Regular file •d Directory •l Link •c Special file •s Socket •p Named pipe •b Block device File types in ls –F suffixes to non-standard file name. For mono-color use and printing Character File type •nothing Regular file •/ Directory •* Executable file •@ Link •= Socket •| Named pipe View info coreutils ls Create partitions and filesystems
  24. 24. Control mounting and unmounting mount points 24 If logical data is below root folder and there’s no change in the logical id of the partition how do we see other logical data created by the other partitions that exist? (Like C: change to D: and back to C: in windows ) All partitions are connected through the root directory via a mount point. Mount point defines the place of a particular data set in the file system. That is… When a partition is mounted, files on its filesystem become part of the system. In Linux partitions are mounted on directories, and files in the partition becomes files in the directory Ex: # mke2fs /dev/hda2 # create the filesystem on a partition # mkdir /home # make a place to put it # mount /dev/hda2 /home # put it there Use cmd mount to create mount points
  25. 25. fstab mount 25 Ex: ## /etc/fstab # Created by anaconda on Fri May 28 12:37:05 2010 ## Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=082fb0d5-a5db-41d1-ae04-6e9af3ba15f7 / ext4 defaults 1 1 UUID=488edd62-6614-4127-812d-cbf58eca85e9 /grubfile ext3 defaults 1 2 UUID=2d4f10a6-be57-4e1d-92ef-424355bd4b39 swap swap defaults 0 0 UUID=ba38c08d-a9e7-46b2-8890-0acda004c510 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 Example of Fedora 13 fstab with mount points Control mounting and unmounting
  26. 26. fstab mount 26 Ex: # /etc/fstab: static file system information. ## Use 'blkid -o value -s UUID' to print the universally unique identifier # for a device; this may be used with UUID= as a more robust way to name # devices that works even if disks are added and removed. See fstab(5). ## <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 # / was on /dev/sda7 during installation UUID=8954fa66-e11f-42dc-91f0-b4aa480fa103 / ext3 errors=remount-ro 0 1 # /grubfile was on /dev/sda2 during installation UUID=3a965842-b6dd-4d52-8830-2d0fdb4284a2 /grubfile ext3 defaults 0 2 /dev/sda5 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 developerWorks® ibm.com/developerWorks Control Example of Ubuntu 9.10 fstab with mount points Control mounting and unmounting
  27. 27. umount points 27 Unmounting filesystems Usually unmounted automatically on rebooted or shutdown. When a filesystem is unmounted, any cached filesystem data in memory is flushed. You may unmount manually. This should be done for removing media (diskettes, DVD’s, USB drives). Ex: # umount /dos # mount /dev/sda9 /dos # umount /dev/sda9 Use umount command, with argument for the device name or mount point Control mounting and unmounting
  28. 28. Fim de sessão 28