Presentation is loading. Please wait.

Presentation is loading. Please wait.

CIT 470: Advanced Network and System Administration

Similar presentations


Presentation on theme: "CIT 470: Advanced Network and System Administration"— Presentation transcript:

1 CIT 470: Advanced Network and System Administration
Filesystems I CIT 470: Advanced Network and System Administration

2 CIT 470: Advanced Network and System Administration
Topics Filesystems and Namespaces Filesystem Types Inodes and Superblocks Network Filesystems CIT 470: Advanced Network and System Administration

3 CIT 470: Advanced Network and System Administration
Filesystems A filesystem is a method for storing and organizing documents. Most filesystems offer a hierarchical tree structure of folders within folders. Some filesystems are flat, with no folders. Some filesystems work like a database, where files are identified by metadata, such as creator or user-created tags. CIT 470: Advanced Network and System Administration

4 CIT 470: Advanced Network and System Administration
Kernel Storage Layers CIT 470: Advanced Network and System Administration

5 Filesystem Tree Structure
/ bin boot tmp usr var bin lib X11R6 ls grub less vmlinuz bin lib zip menu.lst xclock xterm CIT 470: Advanced Network and System Administration

6 CIT 470: Advanced Network and System Administration
UNIX has One Namespace A single tree-structured namespace which Provides a single way to identify files by name Contains multiple filesystems: /dev – files represent hardware devices /media/cdrom – ISO9660 optical media filesystem /proc – in-memory representation of kernel data that are added to the namespace with the mount command: mount /dev/devname /fs/location CIT 470: Advanced Network and System Administration

7 Namespace contains many fs
CIT 470: Advanced Network and System Administration

8 Filesystem Types by Media
Disk Filesystems Filesystems designed to store files to a fixed or removable permanent storage device. examples: ext4fs, FAT, ISO9660, NTFS Solid State Filesystems Wear leveling: re-arrange block usage to avoid writing too many times to any one block on flash. In-Memory Filesystems Filesystems that represent kernel data structures, e.g. procfs, devfs. Network Filesystems Filesystems where file access operations are performed using network operations to contact a server where the data is stored on a disk or other physical medium. CIT 470: Advanced Network and System Administration

9 Common Disk-based Filesystems
Extended Filesystems ext2: first full featured UNIX fs for Linux in 1993 Recommended use: USB + other solid state drives. ext3: + journaling; 2TB max file size; 16TB max vol ext4: faster version of ext3 with larger max file + vol size Microsoft Filesystems FAT: inefficient disk usage, slow, 8+3 filenames 4GB maximum file size in 32-bit FAT NTFS: modern filesystem, many versions Supports long + old 8+3 filenames for compatibility CIT 470: Advanced Network and System Administration

10 Ext Filesystem Structure
CIT 470: Advanced Network and System Administration

11 Superblocks and Block Groups
CIT 470: Advanced Network and System Administration

12 Inode Block Addressing
CIT 470: Advanced Network and System Administration

13 Journaling Filesystems
Problem: writing to file involves many disk writes Modify inode to change file size (potentially) Add new data block to used block map (potentially) Add pointer to new data block Write to new data block Journaling filesystems perform writes by: Write blocks to journal. Wait for write to be committed to journal. Write blocks to filesystem. Discard blocks from journal. CIT 470: Advanced Network and System Administration

14 CIT 470: Advanced Network and System Administration
Creating a Filesystem Select a disk partition to create filesystem on fdisk –l /dev/sda will list partitions on 1st disk fdisk –l /dev/sdb will list partitions on 2nd disk, Run mke2fs –v /dev/sda2 Creates ext2 filesystem on 2nd partition of 1st disk Wipes any data already existing on that filesystem Add a –j option to create an ext3 journaling fs. CIT 470: Advanced Network and System Administration

15 CIT 470: Advanced Network and System Administration
Mounting a Filesystem Create a mountpoint mkdir -p /stor/video Mount filesystem on chosen directory mount -t ext3 /dev/sda2 /stor/video Use filesystem Unmount filesystem when done umount /dev/sda2 Happens automatically at reboot or shutdown CIT 470: Advanced Network and System Administration

16 CIT 470: Advanced Network and System Administration
Automatic Mounting Filesystems in /etc/fstab are mounted on boot. Use mount to see current mounted filesystems. # /etc/fstab: static file system information. # # <device> <mnt pt> <type> <options> <dump> <pass> proc /proc proc defaults /dev/sda1 / ext3 defaults /dev/sda2 none swap sw /dev/sda3 /home ext3 defaults /dev/sdb1 /backup ext3 defaults CIT 470: Advanced Network and System Administration

17 Checking Filesystem Integrity
fsck utility performs consistency checks Are used blocks actually used? Do inodes point to any unused blocks? Are used inodes pointed to by directory entries? and repairs inconsistencies if Sysadmin enters ‘y’ in interactive mode. Sysadmin uses ‘-y’ argument to do all repairs. Run fsck with unmounted partition as arg: fsck –y /dev/sda2 CIT 470: Advanced Network and System Administration

18 CIT 470: Advanced Network and System Administration
Access Control Read--You can read the file with cat, more, etc. Write--You can modify the file with vi, Execute--You can run the file if it’s a program. CIT 470: Advanced Network and System Administration

19 CIT 470: Advanced Network and System Administration
POSIX ACLs Specify individual groups and users. Basic ACL user/group refers to owner. POSIX ACLs allow specifying users + groups. To add/modify permissions for a user: setfacl –m u:username:rw- filename To add/modify permissions for a group: setfacl –m g:groupname:rw- filename CIT 470: Advanced Network and System Administration

20 CIT 470: Advanced Network and System Administration
File Attributes Attributes extend file permissions: a: append-only (only root can set) i: immutable (read-only, only root can set) s: safe-delete (overwrite, not supported yet) Use lsattr to view attributes. Most files do not have any attributes set. Use chattr to set attributes. chattr +i /boot/vmlinuz* CIT 470: Advanced Network and System Administration

21 CIT 470: Advanced Network and System Administration
Network Filesystems Use filesystem to transparently share files. Examples: NFSv3 CIFS AFS NFSv4 GoogleFS CIT 470: Advanced Network and System Administration

22 CIT 470: Advanced Network and System Administration
NFS v3 Network File System Transparent, behaves like a regular UNIX filesystem. Uses UNIX UIDs,GIDs,perms but can work on Win. Since NFS is stateless, file locking and recovery are handled by rpc.lockd and rpc.statd daemons. Security Server only lets certain IP addresses mount filesystems. Client UIDs have same permissions on server as client. Client root UID is mapped to nobody, but Root can su to any client UID to access any file. CIT 470: Advanced Network and System Administration

23 CIT 470: Advanced Network and System Administration
How NFS Works CIT 470: Advanced Network and System Administration

24 CIT 470: Advanced Network and System Administration
CIFS Microsoft Network Filesystem Derived from 1980s IBM SMB net filesystem. Originally ran over NetBIOS, not TCP/IP. \\svr\share\path Universal Naming Convention Auth: NTLM (insecure), NTLMv2, Kerberos Implementation MS Windows-centric (filenames, ACLs, EOLs) Samba: UNIX client and server software. CIT 470: Advanced Network and System Administration

25 CIT 470: Advanced Network and System Administration
AFS Distributed filesystem Global namespace: /afs/abc.com/vol_home1 Servers provide one or more volumes. Volume replication with RO copies on other svrs. Cells are administrative domains within AFS. Cells contain multiple servers. Each server provides multiple volumes. Security Kerberos authentication ACLs with user-controlled groups CIT 470: Advanced Network and System Administration

26 CIT 470: Advanced Network and System Administration
NFSv4 New model of NFS Only one protocol (no separate mount,lock,etc.) Global namespace. Security (ACLs, Kerberos, encryption) Cross platform + internationalized. Better caching via delegation of files to clients. CIT 470: Advanced Network and System Administration

27 CIT 470: Advanced Network and System Administration
References Michael D. Bauer, Linux Server Security, 2nd edition, O’Reilly, 2005. Mike Eisler, Ricardo Labiaga, Hal Stern, Managing NFS and NIS, 2nd edition, O’Reilly, 2001. Aeleen Frisch, Essential System Administration, 3rd edition, O’Reilly, 2002. Evi Nemeth et al, UNIX System Administration Handbook, 3rd edition, Prentice Hall, 2001. NFS HOWTO, RedHat, Red Hat Enterprise Linux 4 System Administration Guide, RedHat, Red Hat Enterprise Linux 4 Reference Guide, CIT 470: Advanced Network and System Administration


Download ppt "CIT 470: Advanced Network and System Administration"

Similar presentations


Ads by Google