Отчёт ПР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.
