Linux/C2/File-System/English-timed

From Script | Spoken-Tutorial
Jump to: navigation, search
Time Narration
00:00 Welcome to this spoken tutorial on Linux File System.
00:04 I am using Ubuntu 10.04.
00:07 We assume that you know how to get started with the Linux operating system and have some basic idea about commands.
00:13 If you are interested, it is available through another spoken tutorial, on the following website http://spoken-tutorial.org
00:25 Also note that Linux is case sensitive.
00:28 All the commands used in this tutorial are in lower case unless otherwise mentioned.
00:36 In Linux almost everything is a file.
00:39 So what is a file? In real life, we know that a file is where we store our documents and papers.
00:47 Similarly, in Linux a file is a container for storing information.
00:53 Next, what is a directory?
00:56 A directory can be understood as a collection of files and other (sub)directories.
01:02 A directory helps us in organizing our files in a systematic manner.
01:08 This is like what we call folders in Windows.
01:12 It allows different users to have their own directories with their files which others cannot access or modify.
01:20 Also, if there are no directories, all the files on the system need to have unique names which would be very difficult to maintain.
01:31 Though these definitions of files and directories are good to get a general feel about them, they are not entirely accurate.
01:42 As well as its contents, a file has a name and some properties or “administrative information”; that is, the file’s creation/modification date and its permissions.
01:55 The properties are stored in the file’s inode, a special block of data in the file system that also contains the length of the file and where on the disk it’s stored.
02:08 The system uses the number of the file’s inode; the directory structure just names the file for our benefit as its easier for us to remember names than large numbers.
02:23 Contrary to its oversimplified definition, a directory doesn't actually store other files ,it is itself a file that holds the 'inode' numbers and names of other files.
02:37 In fact, in Linux there are three kinds of files:
02:41 1 Regular Files or Ordinary files: It contains only data as a stream of characters.
02:48 2 Directories: As we just saw in the previous slides.
02:52 3 Device Files: All hardware devices and peripherals are represented as files in Linux.
02:59 A CD, a Hard disk or even an 'usb' stick, everything is a file in Linux. But why is this so? This helps to read and write these devices in a way similar to that for ordinary files.
03:15 All files in Linux are related, in short all form a family much like we do.
03:22 A directory containing say some files and sub-directories will have a parent – child relationship with each other. This gives rise to the Linux File System Tree.
03:34 At the top is the root (denoted by a front-slash /). It contains all the other files and directories.
03:42 This also helps in easy navigation from one file or directory to other, if we know the correct path.
03:51 As we work with a Linux file system, it seems that we are moving along this tree.
03:56 One command and there you are teleported from one place to other.
04:01 Sounds interesting!! Indeed it is. As we will see.
04:05 When we login into the Linux system we are by default in a home directory.
04:11 Now, switch to the terminal.
04:13 Ctrl+alt+T helps to start a terminal in Ubuntu.
04:17 This command may not work in all Unix systems, however. A general procedure to open a terminal is already explained in another spoken tutorial.
04:27 To see the home directory , Type at the command prompt:

"echo space dollar H-O-M-E in capital" and press Enter.

04:40 This gives the pathname of our home directory.
04:44 We can move around from one directory to other.
04:47 But, any time we can be in one directory and this directory is known as the current directory or working directory. Now go back to slides.
04:56 The pwd command helps us to see the current directory. 'pwd' stands for present working directory.
05:03 Type at the command prompt: "pwd" and press Enter. Now this is our present working directory.
05:13 We have said that we can move from one directory to other.
05:17 But how do we do so? We have the cd command for this purpose.
05:22 You have to type the command cd followed by the 'pathname' of the directory you want to move to.
05:28 Lets again see our current directory by typing pwd at the command prompt and press Enter.
05:37 So, now we are placed in this directory.
05:41 Now say we want to move to slash usr directory. So, type

"cd space slash usr" . Remember here slash in Linux means front slash and press Enter.

05:56 Now let's see our current directory. Type pwd and press Enter.
06:03 Yes! We have moved to slash usr (/usr) directory.
06:08 The problem here is, the pathnames can be very long, this is because these are Absolute Pathnames that enlist the entire path staring from the root directory.
06:18 Instead we may use Relative pathnames that begin from the current directory.
06:23 Here we need to know two special characters.

dot that represent the current directory and dot dot that represent the parent directory of the current directory.

06:36 Now, let us have a brief session on cd command.
06:40 The command cd without any argument is used to move back to the home directory.
06:46 Type at the command prompt: "cd" and press Enter.
06:51 Now check our current directory by the pwd command.
06:55 So, now we are back in our home directory

/home/gnuhata [ narration- slash home slash gnuhata ]

07:01 Now, let us move to music directory. Type at the command prompt: "cd space Music(M in capital) slash" and press Enter.
07:13 Now check our current directory by the 'pwd' command. pwd and press Enter. See, we have moved /home/gnuhata/Music
07:26 Let us go to the parent directory from Music. For that, you have to use cd command with 'dot dot'.
07:33 Type at the command prompt: cd space dot dot and press Enter.
07:40 Now, check our present directory by typing pwd. We are again in /home/gnuhata.
07:51 Now let's try to move to a subdirectory of the current directory using dot.
07:58 Type at the command prompt: cd space dot slash Documents(D in capital) slash. Press Enter.
08:09 Check our current directory by typing 'pwd'. We are at /home/gnuhata/Documents.
08:19 Let me clear the screen by pressing control L. So you can see clearly.
08:23 To go back to our home directory by 'cd' command,

type cd and press Enter.

08:32 Again check our current directory by 'pwd' command. We are back to /home/gnuhata .
08:41 We can combine any number of .. [narration - dot dot] separated by / [narration- slash] in a relative path .
08:47 In this slide, we can see the file system hierarchy. Root or '/' is at the top. home and bin are two sub-directories under root. username , here the directory named gnuhata is a sub-directory under home.
09:05 So, now we are in /home/gnuhata. Now how can we go to the 'bin' directory?
09:12 Type at the command prompt:

"cd space dot dot slash dot dot slash bin" and press Enter.

09:23 Check our current directory by the command pwd.

We are at /bin [narration - slash bin]

09:30 The first .. [narration-dot dot] takes us from /home/gnuhata [narration - slash home slash gnuhata] to /home [narration - slash home].
09:37 The next takes us from /home to root.
09:43 Now from '/' or 'root', we have moved to '/bin' directory.
09:48 Go back to our home directory by the command 'cd'.
09:52 To create a directory, we use the mkdir command.
09:56 You have to type the command and name of directory to be created and a directory would be created under the current directory.
10:04 To create a directory named 'testdir', type the command: "mkdir space testdir" and press Enter.
10:15 This creates the 'testdir' directory successfully.
10:19 Note that, there is no explicit notification of successful directory creation or removal.
10:25 If you do not get any error message, it denotes successful execution.
10:30 We can also use the relative or absolute pathname to create a directory anywhere in the tree provided we have the permission to do so and a directory by that name does not already exist.
10:43 This process can be used for making multiple directories or even a hierarchy of directories.
10:49 Type "mkdir space test1 space test2" and press Enter ,this will make two directories named test1 and test2 under the present directory.
11:06 Type "mkdir space testtree space testtree slash test3".
11:20 This will make a directory 'testtree' and another directory 'test3' which is a sub-directory under 'testtree'.
11:28 So, we have created four directories namely testdir,test1,test2 and testtree in the current directory, out of which first three are empty and the last one contains a subdirectory namely test3.
11:47 Similar to mkdir is the rmdir command which is used for removing a directory or directories.
11:56 The command "rmdir space test1" removes the test1 directory successfully.
12:09 A directory can be removed only if you are its owner, your current directory is hierarchically above the directory to be removed and the directory is empty.
12:23 Now type at the command prompt:

"cd space testtree slash test3"

12:35 So, we are now in test3 directory which is a subdirectory under testtree.
12:42 Lets try to remove the testdir directory by typing the command "rmdir space testdir". Press Enter.
12:55 We see it can't be done, because the current directory is not hierarchically above the directory to be removed.
13:02 So,we have to go to the directory which is hierarchically above testdir directory.
13:08 Type: "cd space dot dot" and press Enter.
13:14 Now, go back to our parent directory by typing the command "cd space dot dot".
13:20 Now, again try the previous command.
13:24 Type "rmdir space testdir". Press Enter.
13:30 The 'testdir' directory is successfully deleted. Note that, 'testdir' directory was also empty.
13:38 Multiple directories or a hierarchy of directories can be removed at once. So, try to delete the 'testtree' directory along with its subdirectory 'test3'.
13:48 Type at the command prompt:

"rmdir space testtree space testtree slash test3" press Enter.

14:02 See, it is giving the error message that 'testree' directory cannot be removed because 'testtree' is not empty.
14:11 But one thing which you may miss is that testtree/test3 has been deleted as it was empty.
14:19 To check that, type at the command prompt "cd space testtree" and press Enter.
14:27 Now type "ls" and press Enter. See, the directory contains nothing. So, 'test3' was deleted.
14:36 So, in this Linux tutorial we have learnt about Linux Files and directories and how to work with Linux Directories. See them, move between them, make them, remove them.
14:49 This brings me to the end of this tutorial. Spoken Tutorials are a part of the Talk to a Teacher project, supported by the National Mission on Education through ICT.
15:03 More information on this is available at the following link.
15:08 This script has been contributed by ----------------------(name of the translator) and this is -----------------------(name of the recorder) from --------------------------(name of the place)signing off . Thanks for joining.

Contributors and Content Editors

Minal, Pratik kamble, Sandhya.np14, Vasudeva ahitanal