Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



Операційна система unix

Операційна система unix




Сторінка5/10
Дата конвертації10.03.2017
Розмір0.74 Mb.
1   2   3   4   5   6   7   8   9   10

Лабораторна робота №3

Тема: «Архівація та пошук файлів.

Використання зовнішніх носіїв»


Мета

Оволодіння практичними навичками архівація та пошуку файлів, використання зовніщніх пристроїв зберігання інформації.

Зберіга́ння - дія за значенням зберігати; технологічний процес.
При́стрій (англ. device, appliance, нім. Vorrichtung f, Einrichtung f) - обладнання, конструктивно завершена технічна система, що має певне функціональне призначення і за допомогою якої виконується яка-небудь робота або спрощується, полегшується певний процес.


Завдання для самостійної підготовки

1. Вивчити:



  • поняття “архівація” і “стискання”;

  • параметри пошуку файлів;

  • принцип монтування файлових систем;

  • зміст файлів, що відображають файлові системи.

2. Детально ознайомитись з довідкової системи man з такими

командами UNIX: tar, zip, find, mount.


Порядок виконання роботи


По номеру варіанта вибрати завдання і відповідно до методичних вказівок, за матеріалами рекомендованої літератури і конспекту лекцій виконати завдання і оформити звіт по роботі.

Зміст звіту


  1. Початкові дані і постановка задачі.

  2. Текст програми.

  3. Висновки.



Методичні вказівки

Архівація файлів та ужимання файлів по своїй природі - різні операції. Архівація - це операція обєднання декількох файлів (і каталогів) в один файл спеціального формата, який зветься архівом. За рахунок наявності службової інформації в архіві, розмір архіву більше суми розмірів вхідних в нього файлів. Ужимання - це операція зменшення розміру файлу з допомогою спеціальних алгоритмів. В Unix архівуванні та ужиманні виконується як правило різними програмами.


Архівування - tar

Команда tar предназначена для створення архівів на магнітній стрічці, а також в файлах.

На даний час як магнітні носії систем і пристроїв ЦМЗ найчастіше використовуються магнітні стрічки і диски. В системах ЦМЗ, що застосовуються в інформаційно-вимірювальній техніці, в основному використовуються магнітні стрічки.
Признак tar-архіву: розширення файла ".tar" або буква "t" в розширенні ".tgz".


Таблиця 6 – Опція архіватора формується з слідуючих категорій

Дія

режим

файл

c – створити архів

v – розширений режим

f – ім”я архівного файлу

t – вивести вміст архіву

w – інтерактивний режим




x - витягнути

z – режим ужимання




u – добавляє тільки файли, які новіші, чим та яка є в архіві копія







A – добавляє файли в існуючий архів







--delete – видалити з архіву







--remove-files – видаляє вихідні файли







--exclude FILE – виключити файл з обробки








Приклади

1) створити архів arh.tar, вмістивши в нього файл b.txt і каталог prog зі всіма його файлами і підкаталогами:

tar cvf arh.tar b.txt prog

rm -rf prog b.txt


2) вивести зміст архву arh.tar:

tar tvf arh.tar

3) витягнути файл prog/a.c з архиву arh.tar (створюється каталог prog {якщо його не було} і в нього записується файл a.c з архіву):

tar xvf arh.tar prog/a.c

ls -al prog

4) витягнути всі файли з архіву arh.tar:

tar xvf arh.tar

ls -l b.txt. prog

5) добавити файл uran до архіву:

tar uvf arh.tar uran

tar tvf arh.tar
Стиснення - gzip, compress, zip

Найбільш широко використовуваним компресором файлі під Unix являється утиліта gzip (зворотня їй утиліта - gunzip).

Утилі́та (англ. Utility program, utility) - сервісна програма, що допомагає керувати файлами, отримувати інформацію про комп'ютер, діагностувати й усувати проблеми, забезпечувати ефективну роботу системи.
Компре́сор (рос. компрессор, англ. compressor, нім. Kompressor m, Verdichter m) - машина для стискування повітря або іншого газу до надлишкового тиску не нижче 0,2 МПа, компресії і переміщення газів під тиском.
Але, ці утиліти необов’язково входять в поставку операційної системи. Признак файлу, стисненого програмою gzip - розширення ".gz" або ".tgz" (tar gzip).

Формат команди

gzip file

gunzip file.gz

При стисненні (без додаткових ключів) початковий файл видаляється, на його місці утворюється стиснутий файл, ім’я якого дорівнює імені початкового файлу плюс ".gz". При відновленні відбувається зворотнє: видаляється стиснений файл і створюється початковий.

З ОС Unix поставляється стандартний компресор compress (uncompress). Робота з цими утилітами аналогічна роботі з gzip (gunzip), але використовується розширення ".Z"

Для ОС Unix також є програми zip і unzip, які працюють аналогічно DOS-версіям, в тому числі, як додаток до стиснення, проводять архівування і розпаковку архівів.

Анало́гія - (грец. αναλογια - «відповідність») - подібність, схожість у цілому відмінних предметів, явищ за певними властивостями, ознаками або відношеннями.
Формат архівів сумісний з форматом DOS pkzip та WinZip. (Для DOS/Windows також вже написані утиліти gz і tar.)


Формат команди

zip file.zip список_файлів

gunzip file.zip

gunzip file.zip список_файлів



Пошук файлів (find)

find каталог [вираз ... ]


Команда проводить рекурсивний пошук у вказаному каталозі і його підкаталогах. Для кожного файлу обчислюються значення вказаних в командному рядку логічних виразів, які об'єднуються по "І".
Ло́гіка (грец. λογιχη від грец. logos - слово, значення, думка, мова) - наука про закони і різновиди мислення, способи пізнання та умови істинності знань і суджень.
Якщо у результаті виходить "ІСТИННО", то ім'я файлу (точніше шлях до нього, починаючи від вказаного в командному рядку каталога, виводиться в стандартний вивід).

Відсутність виразів - завжди "ІСТИННО" (тобто в цьому випадку find рекурсивно виводить імена всіх файлів каталога і його підкаталогів).


Основні вирази find

(Примітка: нижче скрізь, де є числовий параметр N, перед ним можна ставити плюс або мінус, при цьому справедливе наступне правило: " N" означає "більше, ніж N", "-N" означає "менше, ніж N", просто число N означає "рівне N".)



-name шаблон_імені_файла

істино, якщо ім'я файлу відповідає шаблону; у шаблоні можна використовувати символ ‘*’ і т.п. - при цьому шаблон треба узяти в одинарні лапки.



-perm ABCD

істино, якщо права доступу до файлу точно дорівнюють вказаним (ABCD); права записуються в числовій нотації команди chmod.



-perm -ABCD

істино, якщо вказані права доступу (ABCD) є у файла; права записуються в числовій нотації команди chmod.



-type T

істино, якщо тип файлу рівний вказаному типу T, де Т - один з символів: f (звичайний файл), d (каталог), l (символічний зв'язок), b або з (блоковий або символьний пристрій), p (конвейєр).



-user ім’я_користувача

істино, якщо файл належить вказаному користувачу.



-group ім’я _групи

істино, якщо файл належить вказаній групі.



-size Nc

істино, якщо розмір файлу дорівнює N байт (без символа 'c' розмір інтерпретується в 512-байтних блоках).



-mtime N

істино, якщо вміст файла був модифікований N суток назад (т.е. N*24 години назад).



-atime N

істино, якщо останній доступ до файлу мав місце N суток назад (т.е. N*24 години назад).



-ctime N

істино, якщо атрибути файлу були модифіковані N суток назад (т.е. N*24 години назад).



-newer ім’я _файлу

істино,якщо файл був модифікований пізніше, ніж вказаний.



-nouser

істино, якщо власник файлу не знайдений в списку користувачів (наприклад, користувач був видалений, а його файли залишились).



-nogroup

істино, якщо група-власник файла не знайдена в списку груп (наприклад, група була видалена, а файли залишились).



-maxdepth N вказати кількість вкладених рівнів пошуку

-a

операція "І" в явному виді.



-o

операция "АБО".



\( \)

дужки для угрупування виразів, якщо це необхідно (зверніть увагу на наявність зворотніх слешей). До найдених файлів можуть застосовуватися наступні дії:



-print

Вивести на екран ім’я найденого файлу разом з шляхом. Ця дія виконується за умовчанням.



-delete

Видалити знайдені файли.



-exec команда {} \;

Виконання вказаної команди для кожного знайденого файла з передачею імені файла в якості артумента ({}).



-ok команда {} \;

Аналогічна дії -exec, тільки для кожного файу запитується підтвердження перед виконанням команди.


Приклад

find . –name file1

пошук файла file1 в поточному каталозі

find /home/ -name 'fx' | wc- l скільки файлів на f

find /home/ -type d які є каталоги

find /home/ -size 10c розмір більше 10 байт

find /home ! -name 'f*' не починається на f

find /home -empty –exec rm {} \; видалення пустих файлів

find . -empty | wc –l cкільки пустих файлів

find -name "*.txt" -exec cp {} /mnt/floppy/ \;

Копіювання всіх текстових файлів на дискету:

tar cf arc `find –user logname – mtime -1` -

архівування своїх файлів, створених на протязі дня:
Визначення типу файлу

Команда file

Визначити тип файлу.

Гнучкий диск також Дискета, Гнучкий магнітний диск чи Флоппі Диск (англ. Floppy disk) - портативний носій інформації, який використовується для багаторазового запису та зберігання даних, що являє собою поміщений в захисний пластиковий корпус (диск діаметром 3½ має жорсткіший футляр, ніж диск діаметром 5¼) гнучкий магнітний диск, покритий феромагнітним шаром.
Може замість списку імен файлу використовувати файл зі збереженим в ньому списком імен.

file –f file

Якщо замість file стоїть дефіс, тестує стандартний ввід.
Робота з дискетами та дисками

Підключення дискети

Подивимось файл /ete/ fstab це файл, який зберігає встановлені точки монтування файлових систем.

Верхня головка (головка 1) розташована не точно над нижньою, а зміщена на чотири або вісім доріжок ближче до центру (щодо неї), в залежності від типу дисководу. Тому те, що зазвичай називається циліндрами, мало б називатися конусами.
Першою є нижня головка (тобто головка 0). В односторонніх дисководах фактично використовується тільки нижня головка, а верхня замінюється повстяною прокладкою.

Дискета або диск також представляє собою автономну ф/с.

Автоно́мія (грец. αυτος - «сам» і грец. νομος - «закон») - 1) наявна міра незалежності будь-якого явища від зовнішньої причини його зумовленості; 2) в етиці - стадія морального розвитку особистості, яка характеризується здатністю самостійно створювати або вибирати моральні правила для свого життя і поведінки; здатність людини як суб'єкта етичного відношення до самовизначення на основі власного світогляду, “власного законодавства”.
Для того, щоб можна було з нею працювати, її треба підмонтувати до загальної ф/с.

Це робиться за допомогою утиліт mount.

В XW для цього необхідно нажати іконку з дискетою, а якщо її немає, то на вільному полі натиснути праву кнопку миші.
Основні команди

mount - монтувати

umount - розмонтувати

du – визначити розмір файла

df – перевірити об’єм диска

fdformat – низькорівневий формат

mkfs

mke2fs - створити ф/с


Формат команди mount

mount [- t< тип ф/с>] [<устрій>] [<т. монт.>]

mount – t ext2 /dev/fd0 /mnt/floppy
Так як в файлі /etc/fstab задано у відповідності між пристроями і точками монтування то або <пристрій> або <т. монтування> можна опустити.

Тип ф/с також можна опустити, тоді він задаєтся за умовчанням.

mount /dev/fd0

Проглянути вміст дискети:

ls /mnt/floppy

Помістимо туди файл

ср file 1 /mnt/floppy

Перейти на дискету:

cd /mnt/floppy, ls
Для підключення другої дискети спочатку треба відмонтувати дану:

umount /mnt/ floppy або umount /dev/fd0

Тепер можна подивитися іншу

mount /mnt/ floppy

ls /mnt/ floppy
Форматування дискет

Для того, щоб від форматувати дискету в Linux треба пройти два етапи:

- низькорівневе форматування або розмітка диска;

fd format /dev/fd0

- створення ф/с на пристрої:

mkfs –t ext2 /dev/fd0

/slin/mke2fs [опції] /dev/fd0

Опції:


-с – перевірка на вільний блок

-v- відображає інформацію

-l - <ім’я> - присвоє fd ім’я

В XW для форматування є дві утиліти кfloppy і gfloppy.


Перевірка об’єму диска

df /dev/fd0


Завдання

  1. Створити структуру директорій з лабораторної роботи №1 згідно зі своїм варіантом

  2. У директорії 3 рівні створити файли file1 file2 file3 dat dat1 dat2 dat3 gg ggg її eee. У файли file1 dat dat2 eee помістити поточний час і дату.

  3. У директорії 2-го рівня створити файли my my1 my2 pp ppp. У файли my my1 pp помістити інформацію про залогинених користувачів.

  4. Створити архів arc1.tar для каталога з п.2, при цьому файли file1 і dat не повинні в нього попасти. Проглянути вміст архіву.

  5. Витягувати з архіву arc1.tar у директорію 1-го рівня файли, що починаються на "d" в інтерактивному режимі. Витягувати з архіву в директорію 1-го рівня файли, що починаються на "g".

  6. Видалити з архіву arc1.tar файли, які закінчуються на цифру.

  7. Додати в архів arc2.tar файли з директорії п.2, що складаються з 5–ти символів. Проглянути вміст архіву із здобуттям додаткової інформації.

  8. Отримати розширену інформацію про файли в домашній директорії, створені за це день.

  9. Підрахувати кількість чужих файлів в каталозі /tmp.

  10. Імена порожніх файлів в директорії п.3 помістити у файл empty.

  11. Порожні файли каталога п.3 видалити.

  12. Підключити дискету або flash накопичувач. Проглянути його вміст і розмір занятого\свободного місця.

  13. На дискеті або flash-накопичувачі створити стислий архів arc3.tgz, що містить непорожні файли зі всіх створених в ході лабораторних файлів.

  14. На дискеті або flash-накопичувачі створити стислий архів arc4.tgz, що містить файли розміром більше 10 байт зі всіх створених в ході лабораторних файлів.

  15. Накреслити схему створених директорій і файлів.


Контрольні запитання


  1. Чим архівація різниться від стискання ?

  2. По яким критеріям можна шукати файли з допомогою команди find?

  3. Основні опції команди tar.

  4. З допомогою яких команд можна дізнатися інформацію про вільне місце в файловій системі?

  5. Що таке монтування\розмонтування ?



1   2   3   4   5   6   7   8   9   10



  • Порядок виконання роботи
  • Зміст звіту