Download File Systems

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

URL redirection wikipedia , lookup

Transcript
Week Thirteen Agenda
•
•
•
•
•
•
•
•
Link of the week
Announcements
Review week twelve lab assignment
Week eleven expected outcomes
Next lab assignment
Break-out problems
Upcoming deadlines
Open Source Presentation
Will Lee
• Lab assistance
• Quiz
Link of the week
Purchase CGI scripts
http://www.cgiscript.net
"How to Create Your Own Home Page" Home Page
http://www.intergalact.com/hp/part3/part3.html
CGI Programming FAQ by Nick Kews
http://www.webthing.com/tutorials/cgifaq.html
Introduction to CGI Scripts
http://linux.die.net/man/3/cgi
Define: CGI (Common Gateway Interface) script
A standard for interfacing with external applications and
information servers. The information servers can be HTTP or Web
servers. The CGI scripts provide a more dynamic avenue for
information servers to pursue rather than as a HTML file server.
Link of the week
Common
In the sense that there are many programming languages that
scripts can be written in and interact with different types of
systems. The user isn’t limited to just one way.
Gateway
CGI strengths lie in not only what it can do itself, but with it’s
potential access it offers to other systems (databases/graphic
generators).
Interface
CGI provides a well-defined way to call up its features. The
interface between the CGI script and the web server is fixed.
Week Thirteen Agenda
•Link of the week
•Announcements
•Review week twelve lab assignment
•Week eleven expected outcomes
•Next lab assignment
•Break-out problems
•Upcoming deadlines
•Lab assistance
Review Week Twelve Lab Assignment
PROCESS STATE CODES
D
R
S
T
Z
uninterruptible sleep (usually IO)
runable (on run queue)
sleeping
traced or stopped
a defunct ("zombie") process
For BSD formats and when the “STAT" keyword is used,
additional letters may be displayed:
W has no resident pages
< high-priority process
N low-priority task
L has pages locked into memory (for real-time and custom IO)
Use the ps –aux | less command to display the above mentioned codes
listed under the STAT column heading.
Review Week Twelve Lab Assignment
Inode Attributes
An inode holds all the information about a named
file.
Exception: Name and actual data.
Type of information:
User owner
Group
Permissions
Access times for a file stored in its inode
Size of the data it holds
Number of hard links
Disk addresses to data blocks
Review Week Twelve Lab Assignment
Non-Inherited Process Attributes
File locks
Resource utilization of a child process are set to
zero
Pending signals
Review Week Twelve Lab Assignment
What is the function of the cron daemon?
To initiate all timed events. The cron daemon is started at boot time and
remains active while the system is operating in multi-user mode.
cron wakes up every minute, exams all stored crontab records, checking
to see which command is ready to execute in the current minute.
crontab record format:
<minute> <hour> <day> <month> <day of week>
Command line
* * * * * Command line
crontab Restrictions
You can execute crontab if your name appears in /usr/lib/cron/cron.allow.
If the cron.allow files doesn’t exist, you can use crontab if your name isn’t
listed in the /usr/lib/cron/cron.deny file. If only cron.deny exists, and is
empty, all users can use crontab. If neither file exists, only root user can use
crontab.
Review Week Twelve Lab Assignment
What is a domain name?
It is a name that refers to a numeric notation (similar to an alias).
A name that identifies one or more IP addresses.
What is the function of a Domain Name Service (DNS)?
It is a system that resolves names to an IP address(es) of clients. Domain
name service is a hierarchical system where the top level domain serving
sub-domain clients with names and IP addresses. A DNS is similar to a
“phone book”.
The most popular DNS software is generally BIND.
FYI -dos2unix is a function that converts DOS/MAC plain text files into Unix
format.
What is the “lost+found” area on a Unix-like system?
It is the lost file directory. Usually, there is one directory on every disk
partition. Disk errors or incorrect system shutdowns cause files to become
lost.
Review Week Twelve Lab Assignment
Security on UNIX systems
Basic Unix-like system security is the access modes for files
and directories. Default file and directory permission settings
are set by the umask variable value. The initial recommended
umask setting of 077 would enable all permissions for the
directory owner, disabling all permissions for the group, and
others.
Base directory values = 777
Base file values = 666
Access permissions cannot be granted one way for one user
and another way for a different user.
The chmod command should be used to make the final
permissions settings once the information is ready for use.
Review Week Twelve Lab Assignment
Security on UNIX systems
Directory protection is vital for file security. Administrators and users
create “publicly writeable” directories which provide the most
opportunities for compromising UNIX security system. Administrators tend
to make these”open” for users to move around and access public files and
utilities.
PATH environment variable should be organized with so that system paths
are searched first rather than the users current directory. The users current
directory should be searched last.
Although passwords offer an additional level of security, they lend
themselves to computer system compromising. Lack of awareness and
responsibility contributes largely to this form of computer insecurity. In
summation, the corporate policy must be implemented to the explicitly.
Network security is important so limit access to powerful commands like
uucp, uux, uucico, and uuxqt commands.
LANs were designed to transfer files between computers quickly, and
security for them should be as consideration today as any other software.
Review Week Twelve Lab Assignment
Kernel functions in two types of modes:
Autonomous is where allocation of memory and CPU are performed without being
explicitly requested by user processes.
Responsive is where resource allocation and process creation and management are
initiated from processes. These requests are system calls to the operating system.
Examples are as follows:
fork
exec
kill
open
read
write
close
exit
What is copy-on-write (COW)?
It is an optimization strategy mainly used in virtual memory operating systems.
Multiple users can be given a pointer to the same resource. When a process creates
a copy of itself, the pages in memory that might be modified by either the parent or
child process are marked copy-on-write. When one process modifies the memory,
the kernel intercepts the operation and copies the memory so that changes in one
process’s memory are transparent to the other.
COW is intended to use memory sparsely because usage of physical memory
utilization increases as data is stored.
Review Week Twelve Lab Assignment
Network Services
A variety of services available across a network
NFS
Remote login
Utilize a Web browser
All network services rely on the ability to convert a host or domain name to
an IP address.
DNS are complex. The number of host names and IP addresses in the
Internet is very large.
DNS Local contains actual translations for the machines in its local
network
DNS Global contains more information about translations.
A single translation could involve several DNS before resolving the
IP address.
Review Week Twelve Lab Assignment
File Systems
UNIX/Linux file system is contained under the root
directory denoted by a forward slash “/”.
Users don’t have to worry about the physical
locations of files. The file system is transparent to the
user.
The system administrator must be familiar with
mounting and un-mounting storage space (/mnt).
A file system cannot be utilized unless it has been
mounted.
Review Week Twelve Lab Assignment
One-Way Encryption (Message Digest 5)
1. MD5 encrypted password (option secret 0)
2. MD5 encryption text string (option secret 5)
The optional 0 keyword enables MD5 encryption on a clear text password;
the 5 keyword enters an MD5 encryption string and saves it as the user
MD5-encrypted secret. MD5 encryption is a strong encryption method
which is not retrievable; thus, you cannot use MD5 encryption with
protocols that require clear text passwords, such as CHAP
MD5 encryption is one way hash encryption algorithm and cannot be
decrypted (except by brute force). MD5 encryption can be compromised
using brute force on it. Rainbow tables use a mathematic algorithm so its
easier and faster than a common brute force.
And yes, there are tables which can crack your MD5, I just don’t know
how big they are. Usually if you have a password which is bigger than 15
characters, it takes to much time to create a table for it, and you need a lot
of disk space.
So if your password is bigger than 15 characters you are reasonably safe.
Review Week Twelve Lab Assignment
Super Block Attributes
Contains information about each mounted file system.
The super-block is the first block of each ext2FS/ext3FS
partition. It contains important data about the file system,
such as its size, free space, etc. (it is similar to the method
used by FAT partitions). A partition with a damaged
super-block cannot be mounted. Fortunately,
ext2FS/ext3FS keeps several super-block backup copies
scattered over the partition.
Most of the information stored in the super-block is
considered static. Static information can be critical in
recovering data
Review Week Twelve Lab Assignment
Types of information found in a super-block
Device identifier, inode pointers, block size, file system
type and pointer
Number of mounted file systems
The Linux 2.0 kernel keeps a static array of such
structures to store up to 64 mounted file systems.
Ext3FS
The ext3 filesystem now installed as the default file
system in most Linux distributions. Essentially ext2 with
journaling, ext3 retains the stability and robustness of ext2
while adding the much needed journal for highavailability
.
Review Week Twelve Lab Assignment
fsck
fsck is a utility that analyses and repairs file system inconsistencies.
The file system is checked by providing the name of the block or
character special device or by giving the name of its mount point if a
matching entry exists in /etc/fstab.
fsck File System Inconsistency checks include:
Blocks claimed by more than one inode or the free list.
Blocks claimed by an inode or the free list outside therange of the file
system.
Incorrect link counts.
Incorrect directory sizes.
Bad inode format.
Blocks not accounted for anywhere.
Directory checks, file pointing to unallocated inode, inode number
out of range, and absence of `.' and `. .' as the first two entries in each
directory.
Super Block checks: more blocks for inodes than there are in the file
system.
Bad free block list format.
Total free block and/or free inode count incorrect.
Review Week Twelve Lab Assignment
Notes about fsck:
- The fsck command does not make corrections to a mounted
file system.
- The fsck command can be run on a mounted file system for
reasons other than repairs. However, inaccurate error
messages may be returned when the file system is
mounted.
Review Week Twelve Lab Assignment
Directory tree
/
jones
dandrear
date
dev
tmp
bin
usr
wc
ksh
tty03
.profile
bin
foo
null
Review Week Thirteen Lab Assignment
Directory Structure
Unix arranges files and directories in an inverted tree topology.
/proc directory contains a hierarchy of special files which represent the current state
of the kernel.
/bin directory contains shells (bash and csh), vi editor, and commands.
/etc directory contains system related configuration files.
/mnt directory is intended to be used as the temporary mount points for mounting
storage devices.
drwxr-xr-x
6 root
root
1024 Dec 29 2005 mnt
/opt directory is where new or untested software is stored.
/dev directory is where device files are located that access hardware.
/ directory contains several main directories.
/root directory is reserved for the super-user.
drwxr-x--- 4 root root
1024 Nov 16 22:35 root
Review Week Twelve Lab Assignment
/
/bin
/lib
/home
/usr
dandrear
mv
bc
more
ls
lib.ca
libm.a
local openview man
uch
Review Week Twelve Lab Assignment
ext3 File System
Super Block
File Manager
Linux Virtual File System
Kernel
Review Week Twelve Lab Assignment
Linux virtual File System
The purpose of a VFS is to allow client applications to access
different types of file systems in a uniform way.
Manages kernel file abstractions in one format for all file systems.
Receives system call requests from user level
(e.g. write, open, stat, link).
Interacts with a specific file system based on the mount point
traversal
Receives requests from other parts of the kernel, mostly from memory
management.
File Manager
Is a program that provides a user interface to work with the file
system. They are very useful for speeding up interaction with files.
The most common operations on files are create, open, edit, print,
rename, move, and copy.
Review Week Twelve Lab Assignment
Define LDAP (Lightweight Directory Access Protocol ):
A set of protocols for accessing information directories. LDAP is
considered the simplified version of the X-500 standard. Unlike the
X-500 standard, LDAP supports TCP/IP for Internet access.
LDAP Characteristics:
• Relatively Static Data -- The data is rarely modified. How often do you
change your telephone number?
• Extremely Fast Read Operations - The directory is tuned for high read
performance because the data in the directory is frequently read but rarely
written or updated.
• Distributed - The data is located on a number of systems on the network for
redundancy, performance, and scalability.
• Hierarchical -This ensures there is an authoritative source of the data in the
directory system.
Week Thirteen Expected Outcomes
Upon successful completion of this module, the
student will be able to:
•
•
•
Describe the structure and use of Web
servers.
Create and run CGI scripts.
Evaluate a current Web technology project.
Next Lab Assignment
Apache Web Server
Apache Web server is free and distributed as source files by the Apache
Software Foundation.
Apache is generally recognized as the world's most popular Web server
(HTTP server). Originally designed for Unix servers, the Apache Web
server has been ported to Windows and other network operating systems.
The name "Apache" derives from the word "patchy" that the Apache
developers used to describe early versions of their software.
Describe the structure and use of Web servers.
Early Web sites consisted of HTML pages that could only provide data that
was written into the HTML page itself. This was sufficient for that time
frame.
Currently, Web sites provide dynamic data into an HTML page with the
use of CGI scripts.
CGI stands for Common Gateway Interface. It is a mechanism for a Web
server to be able to interact with an external program. These external
programs are CGI scripts.
Next Lab Assignment
Describe the structure and use of Web servers.
CGI scripts can be written in any programming languages.
Perl is the common choice because of its feature richness.
The web is composed of clients and servers. CGI is used
on the server to provide additional services and
functionality to the client.
Next lab assignment
The Apache HTTP server must be instructed to locate the CGI scripts.
Two more pieces of information are needed.
1) A program in that directory to be used as a CGI script.
2) A link in an HTML page to your CGI scrip
The CGI script itself simply produces output to stdout. The HTTP server
captures that output and sends it to the Web browser. The format of the
output must be in a form that the Web browser can understand (HTML).
The CGI script creates the HTML page every time it is run.
The data provided to the HTML page can change with each execution
of the script.
Next lab assignment
URL that points to the CGI script.
http://cs.franklin.edu/~dandrear/itec400/CGI/sysInfo.cgi
Apache Web Server
A user can test from a Web browser on the same machine
using the host name “localhost.” http://localhost will try to find
a Web server on the same machine as the Web browser.
Demonstrate:
Script /CGI/sysInfo.cgi
Break-out problems
UNIXcommands:
fg
bg
uname –n
df
ln -s
UNIX function:
umask
What are the file permissions if the umask 027?
What are the directory permissions if the umask 027?
What are the base directory permissions?
What are the base file permissions?
What is the function of the file manager?
What is an Apache Web Server?
What would be considered an advantage of using copy-on-write?
List five top level domains?
Upcoming Deadlines
• Public Domain/Open Source Paper, 13-1 is due
12/2/08 and 12/9/08.
• Programming Assignment 3, 14-1 is due
12/16/08.
• Final Exam, 15-1 will be administered
12/16/08.
• Final Exam Outline is posted under the
Bulletin Board. This outline will be considered
a “living document” and information will be
added to it until one week prior to the exam.
Lab assistance
• Questions
• Comments
• Concerns
• I will be available after this Franklin Live
session to discuss any problems and/or
concerns regarding lab assignments.