Цикл довузовской подготовки кафедры ЭФУ

ЛАБОРАТОРНЫЙ ПРАКТИКУМ:
"КОМАНДНАЯ ОБОЛОЧКА UNIX"

СТРУКТУРА ПРАКТИКУМА

ЗАДАНИЯ ПРАКТИКУМА

ЗАДАНИЕ №1

ЗАДАНИЕ №2

ЗАДАНИЕ №3

ЗАДАНИЕ №4

ЗАДАНИЕ №5

ВВЕДЕНИЕ

НЕОБХОДИМАЯ ИНФОРМАЦИЯ

Host Name рабочего сервера

Приглашение командной строки

Редактирование командной строки

Стандартные обозначения

Используемые команды

1. СЕАНС РАБОТЫ В UNIX-СИСТЕМЕ

1. Терминал и командная строка

2. Логины, пароли и доступ к серверу

3. Вход в систему/завершение работы

2.ФАЙЛОВАЯ СИСТЕМА UNIX

1. Файлы и каталоги. Абсолютный (полный) путь

2. Домашний и текущий каталог. Относительный путь

3. Просмотр структуры каталогов и файлов

4. Создание и удаление каталогов и файлов

5. Пример построения дерева каталогов

6. Копирование и перемещение файлов

3.ЧТО ДОЛЖЕН ЗНАТЬ НЕ ТОЛЬКО СИСАДМИН

1. Учетные записи и пользователи

2. Задачи и процессы в системе

3. Права доступа к файлам и каталогам

4. Ввод/вывод и конвейеры

5. Поиск и обработка текстовых данных

4.ФАЙЛОВЫЙ МЕНЕДЖЕР MIDNIGHT COMMANDER

1. Внешний вид, начало и завершение работы

2. Работа с каталогами и файлами

2.5. Пример построения дерева каталогов


В качестве подготовки к выполнению зачетного задания предлагается построить в домашней директории (в описании лабораторного практикума это каталог /home/groups/v100/v100–1) дерево каталогов и файлов (Рис. 2.2). Каталоги и подкаталоги дерева создаются с использованием различных вариантов команды mkdir и способов описания путей к каталогам и файлам (как абсолютных, так и относительных путей).


unix-workdir

Рис. 2.2. Дерево каталогов и файлов для построения


Тексты файлов для дерева (Рис. 2.2):

hacker1.txt				hacker2.txt
Если в сервер вашей фирмы		То уверены вы будьте
Вдруг забрался злобный хакер	Что залезет он еще

hacker3.txt				hacker4.txt
Абсолютно все пароли		Пусть порадуется хакер
Поместите в файл readme		Он ведь тоже человек
		


Команда mkdir –p создает цепочку вложенных каталогов


Т.е. команда mkdir –p позволяет создавать каталоги не по одному, как простая команда mkdir, а сразу создает цепочку вложенных каталогов. При создании таких цепочек можно использовать полный путь, как /home/groups/v100/v100-1/hacker|crack/answer/grant (Пример 2.17) или относительный (Пример 2.18). Чтобы увидеть всю созданную ветвь, нужно воспользоваться командой tree, поскольку команда ls отобразит только каталог hacker.


unix-workdir

Пример 2.17. Создание ветви дерева (полный путь.)

v100-1@beta:~> mkdir –p /home/groups/v100/v100–1/hacker/crack/answer/grant
v100-1@beta:~> ls –F 
hacker/
v100-1@beta:~> tree –F
.
`-- hacker/
    `-- crack/
        `-- answer/
            `-- grant/
4 directories, 0 files
v100-1@beta:~>
			

Ветка hacker/crack/answer/thieve строится с использованием пути относительно текущей директории (Пример 2.18), команда все та же с помощью mkdir –p. Контроль построения ветви дерева осуществляется командой tree.


Пример 2.18. Создание ветви дерева (путь от текущей директории – от корня)

	
v100-1@beta:~> mkdir –p ./hacker/crack/answer/thieve
v100-1@beta:~> tree
.
`-- hacker
    `-- crack
        `-- answer
            |-- grant
            `-- thieve
5 directories, 0 files
v100-1@beta:~>
		

Ветви hacker/crack/question/grant и hacker/crack/question/grant достраиваются относительно директории hacker/crack/answer/grant. Сначала ее надо сделать текущей, а затем использовать пути «сначала к корню, затем от корня» (Пример 2.19).

Если сделать текущей директорией hacker/crack/answer/grant или hacker/crack/answer/thieve, то для любой из этих директорий относительные пути в каталог hacker/crack/question/grant или в каталог hacker/crack/question/thieve» будут выглядеть совершенно одинаково: ../../question/grant и ../../question/thieve. В приведенном примере используется директория «hacker/crack/answer/grant».


unix-workdir

Пример 2.19. Создание ветви дерева (путь «к корню – от корня»)

v100-1@beta:~/lab1> cd hacker/crack/answer/grant
v100-1@beta:~/hacker/crack/answer/grant> mkdir -p ../../question/grant
v100-1@beta:~/hacker/crack/answer/grant> mkdir -p ../../question/thieve
v100-1@beta:~/hacker/crack/answer/grant> tree ~/hacker /home/groups/v100/v100-1/hacker

`-- crack
    |-- answer
    |   |-- grant
    |   `-- thieve
    `-- question
        |-- grant
        `-- thieve
7 directories, 0 files
v100-1@beta:~/hacker/crack/answer/grant>
			

Командой tree просматривается не текущая директория (в ней ничего нет), а директория hacker, путь к которой указан относительно домашней директории, всегда обозначаемой символом «~» (волна или тильда).

Оставшуюся часть дерева: ~/hacker/security каждый может достроить в соответствии со своим собственными предпочтениями.

В заключение остается создать текстовые файлы в директории ~/hacker/crack/answer/grant.

Самый простой способ – создавать файлы непосредственно в самой директории, т.е. зайти в директорию и создать файл. Однако, в учебных целях необходимо научиться создавать файлы, используя полные и относительные пути к файлам, аналогично тому, как создавались ветви дерева ~/hacker.


unix-workdir

Пример 2.20. Создание файла с использованием полного пути

v100-1@beta:~/lab1> cd
v100-1@beta:~> cat > /home/groups/v100/v100–1/hacker/security/answer/grant/hacker2.txt
  
То уверены вы будьте
Что залезет он еще 
v100-1@beta:~> cat /home/groups/v100/v100– 1/hacker/security/answer/grant/hacker2.txt 
То уверены вы будьте
Что залезет он еще
v100-1@beta:~>
			

Пример 2.20 показывает, как создать файл hacker2.txt с использованием полного пути к нему.

Файл hacker3.txt создается с использованием относительного пути из директории ~/hacker/crack/question/grant или, с таким же успехом, из директории ~/hacker/crack/question/thieve. Соответственно, перед созданием файла одну из этих директорий необходимо сделать текущей (Пример 2.21).


unix-workdir

Пример 2.21. Создание файла с использованием относительного пути

		
v100-1@beta:~> cd hacker/crack/question/grant
v100-1@beta:~/hacker/crack/question/grant> cat > ../../answer/grant/hacker3.txt
Абсолютно все пароли
Поместите в файл readme
v100-1@beta:~/hacker/crack/question/grant> cat ../../answer/grant/hacker3.txt
Абсолютно все пароли
Поместите в файл readme
v100-1@beta:~/hacker/crack/question/grant>
			

Коррекция контента