Читайте также:
|
|
Команда ln создает указатель на имеющийся файл, что предоставляет возможность обращаться к нему под различными именами. Новое имя называют link к старому имени. При создании файл заносится в каталог. В каталоге создается указатель на I – Node (I – Node номер). I – Node файла содержит:
- тип файла;
- бит защиты;
- links;
- данные о пользователе и группе;
- размер файла;
- временные данные;
- указатели на прямые блоки;
- указатели на косвенные блоки;
- указатели на вторичные косвенные блоки.
I – Node каталога содержит:
- биты защиты;
- links;
- данные пользователя и группы;
- размер;
- временные данные;
- указатель на блоки данных.
После выполнения команды ln в каталог заносится новая запись, указывающая на I – Node существующего файла. Следовательно links имеют один и тот же I – Node (Рис 1.).
В этом случае создается, так называемый, hard link – link в том же носителе данных. Права доступа всех links одни и те же.
В некоторой иерархии файлов могут существовать несколько файловых систем с собственными списками I-Node – номеров. В каждой файловой системе каждый номер, например, 1131, указывает на свой отличный от других файл.
С помощью link-механизма невозможно инсталлировать link за рамки файловой системы. Поэтому был разработан symbolic link, позволяющий создавать указатели на файлы других файловых систем.
Super User может делать кроме того указатели на каталоги.
Например: пользователи usr1 и usrIU7 хотят работать с одним и тем же файлом:
$ ln / usr / IU7 / usr1 / data1 /usr / IU7 / usrIU7 data1
Задание: введите команду ls и сделайте link на файл fil.3 и затем ls
$ ls -il
…
82343 – rw – r – r- -r- - 1 IU715937 … fil.3
…
$ ln fil.3 datlink
$ ls il
82343……….2IU715937 …….datlink
82343……….2IU715937……...fil.3
После этого уничтожьте файл datlink и ls
$ rm datlink
$ ls il
82343 – rw-r- - r- -1IU715937…fil.3
Пеpеключение ввода/вывода: осуществляется с помощью символа > или <
#ls > filelist
#cat f1 f2 f3 >> temp - склеивает тpи файла и записывает в конец temp
# who > temp
# sort < temp
# mail Mary,Joe,Tom < letter
Программные каналы (pipe)
Linux так же, как Unix поддерживает программные каналы двух типов: именованные и не именованные. Именованные программные каналы создаются командой mknod. Программный канал - этоспециальный файл, в который можно «писать» информацию и из которого эту информацию можно «читать». Причем порядок записи информации и последующего чтения – FIFO (очередь).
Именованный канал имеет имя, которое указывается при вызове команды mknode:
Дата добавления: 2014-12-19; просмотров: 134 | Поможем написать вашу работу | Нарушение авторских прав |