
Отчёт ПР5
.odtМинистерство науки и высшего образования РФ
Федеральное государственное автономное образовательное учреждение высшего образования
«Омский государственный технический университет»
Кафедра «Автоматизированные системы обработки информации и управления»
ОТЧЁТ
по дисциплине «Открытое программное обеспечение»
«ФАЙЛОВАЯ СИСТЕМА LINUX»
студента Кукушкиной Алины Антоновны группы ИВТ-234
Пояснительная записка
Шифр работы От-2068998-20-ИВТ-234-9 ПЗ
Направление 09.03.01
Старший преподаватель А.Г. Анатольев
Студент А.А. Кукушкина
Омск 2023
СОДЕРЖАНИЕ
ВВЕДЕНИЕ 3
ПОСТАНОВКА ЗАДАЧИ 4
ОСНОВНАЯ ЧАСТЬ 5-9
ЗАКЛЮЧЕНИЕ 10
ОТВЕТЫ НА КОНТРОЛЬНЫЕ ВОПРОСЫ 11-13
ВВЕДЕНИЕ
Файловая система обеспечивает функции представления и управления информацией, сохранённой в виде файлов на внешних носителях; определяет физическую и логическую структуру файлов и групп файлов (директорий), правила их создания и управления ими. Любая файловая система (ФС) устанавливает, по меньшей мере, правила идентификации файлов, максимальную длину имени файла и его максимальный возможный размер.
ПОСТАНОВКА ЗАДАЧИ
Приобрести навыки работы с файловой системой ОС Linux с использованием консольного режима.
ОСНОВНАЯ ЧАСТЬ
Я вошла в систему в текстовом режиме.
Я
определила имя текущего каталога командой pwd.
Я вывела на экран список файлов текущего каталога в краткой форме командой ls.
Я
создала копии файлов about.me и remember.it в текущем каталоге. Сначала я создала файлы about.me.bak и remember.it.bak командой touch, затем скопировала содержимое файлов about.me и remember.it в соответствующие им новые файлы командой cp. Для того, чтобы проверить, как выполнилось копирование содержимого старых файлов, я вывела содержимое их копий на экран командой cat. Затем то же самое проделала с созданием скрытых копий.
Я
создала в домашнем каталоге подкаталоги _backup, _source, _hardlinks, _symlinks и _trashbox (команда mkdir).
Введя команду ls -laX, я вывела на экран список файлов текущего каталога в р
асширенной форме, в том числе и скрытые файлы.
Я
переместила файлы about.me.bak и remember.it.bak из домашнего каталога в каталог _backup (команда mv).
Я
нашла VARNUM - значение переменной окружения, заданной в файле .bashrc (команда grep). Создала файл (команда touch) в подкаталоге _source с именем, являющимся значением найденной переменной окружения — Variant9.txt. Затем с помощью команды cat сначала добавила в новый файл содержимое файлов about.me и remember.it, потом вывела содержимое файла Variant9.txt на экран.
В
каталоге _hardlinks я создала жёсткую ссылку с именем Variant9.hard на файл из каталога _source Variant9.txt, использовав команду ln. Потом, чтобы проверить, что Variant9.txt и Variant9.hard ссылаются на один и тот же файл, сравнила их inode с помощью команды ls -i.
С помощью команды ln -s в каталоге _symlinks я создала символическую ссылку с именем Variant9.lnk на файл Variant9.txt.
Я скопировала файл из каталога _symlinks в домашний каталог командой cp.
Командой cat я вывела на экран содержимое всех файлов, созданных в п. 9-11.
Командой ls я вывела рекурсивно (параметр -R — «рекурсивно показывать каталоги») расширенную информацию, включающую в том числе идентификаторы узлов (inode) (параметр -i - «показывать индекс каждого файла»), в том числе скрытых (параметр -a - «не скрывать файлы, начинающиеся с . »), из тех каталогов, имена которых начинаются с «_».
Я переместила в каталог _trashbox копии файлов about.me. и remember.it: about.me.bak, remember.it.bak, а также скрытые файлы .about.me.bak и .remember.it.bak командой mv.
Командой mv я рекурсивно переместила каталоги _hardlinks и _symlinks в каталог _trasbox.
Командой rm -rf я рекурсивно удалила каталог _trashbox.
ЗАКЛЮЧЕНИЕ
Я изучила новые для себя команды и параметры для них в процессе работы с файлами в консольном режиме. Проблемы создаёт только синтаксис текстового режима, с которым пришлось долго разбираться. Сами команды и их параметры полностью понятны, даже если являются для меня новыми и я их не использовала в ПР4. В процессе выполнения заданий я получила новые навыки работы с файлами: научилась их копировать, перемещать, создавать подкаталоги, рекурсивно выводить нужную информацию о содержимом каталогов, создавать жёсткие и символические ссылки, рекурсивно перемещать и удалять каталоги.
ОТВЕТЫ НА КОНТРОЛЬНЫЕ ВОПРОСЫ
Определить имя текущего каталога можно командой pwd.
Командами ls или dir.
Чтобы сохранить несколько файлов в текстовый файл $HOME/files.txt, на моём компьютере можно использовать такую команду:
cat file1.txt file2.txt file3.txt > /home/kukushkinaaa/files.txt
Все текстовые файлы из каталога ~/source в каталог ~/drstination можно скопировать так:
cp ~/source/*.txt ~/destination
Параметр
-f
(или--force
) в командахcp
иrm
используется для принудительного выполнения операций копирования (copy) и удаления (remove) файлов или директорий без запроса подтверждения и без вывода предупреждений. Этот параметр может быть полезен в автоматизированных скриптах или в ситуациях, когда вы хотите выполнить операции без лишних запросов. Однако его использование может быть опасным и должно применяться с осторожностью по нескольким причинам:
Потеря данных: Если вы случайно используете
-f
в командеrm
, вы можете непреднамеренно удалить важные файлы или директории без возможности восстановления. Это может привести к потере данных, которые могут быть неотъемлемыми для вашей системы или работы.Невозможность отмены: Когда параметр
-f
применяется, удаление происходит немедленно, и файлы или директории не отправляются в корзину (Trash) или в другое место для восстановления. Это означает, что вы не сможете отменить операцию, если допустите ошибку.Нежелательное перезаписывание: В команде
cp -f
,-f
также может привести к перезаписи файлов без предупреждения. Если файл с тем же именем уже существует в целевой директории, он будет заменен новым файлом без каких-либо запросов на подтверждение.
Рекурсивный метод вывода списка файлов означает, что при создании списка файлов в определенном каталоге также включаются файлы из всех его подкаталогов и их подкаталогов, и так далее. Это позволяет получить полный список файлов в указанном каталоге и всех его подкаталогах вложенных уровней. Рекурсивный метод работает путем поочередного перехода в каждый подкаталог и извлечения файлов из него, продолжая этот процесс для всех подкаталогов внутри каталога.
В контексте фразы "вывести рекурсивный список файлов каталога /etc" это означает, что требуется создать список всех файлов в каталоге /etc и всех его подкаталогах, включая файлы из всех уровней вложенности.
Результаты выполнения команд из задания №12 не отличаются друг от друга. Содержимое всей файлов совпадает.
Каталоги, файлы, жёсткие и символические ссылки в операционных системах, таких как Linux, Unix и подобные, обозначаются определенными символами в командной строке. Вот как обычно они обозначаются:
Каталоги (директории): символом
/
в конце их имени. Например,my_directory/
.Файлы: могут иметь разнообразные расширения и не имеют специфической символики в имени. Пример:
my_file.txt
.Жёсткие ссылки: не имеют специфической символики в их имени. Они являются альтернативными именами для одного и того же файла.
Символические ссылки: символом
->
в конце имени файла, который является символической ссылкой. Например,my_symlink -> target_file
. Символические ссылки указывают на другие файлы или директории путем предоставления пути к целевому файлу.
Жёсткая ссылка представляет собой другое имя для одного и того же индексного узла (inode) в файловой системе. Поэтому размер жёсткой ссылки и размер исходного файла будут одинаковыми, так как они фактически указывают на одни и те же данные на диске.
Символическая ссылка представляет собой ссылку на путь к исходному файлу, а не на сам inode файла. Размер символической ссылки зависит от длины этого пути и обычно намного меньше, чем размер исходного файла. Таким образом, размер символической ссылки и размер исходного файла могут быть разными.
Команда
rmdir
используется для удаления пустых каталогов с файловой системы. Когда вы вводите эту команду в терминале, она удаляет указанный каталог только в том случае, если он не содержит файлов или подкаталогов. Если каталог содержит файлы или подкаталоги,rmdir
выдаст ошибку и не удалит каталог. В таком случае, для удаления каталога вместе с его содержимым можно использовать командуrm.