Red Hat System Administration I 8.2

Упражнение под руководством преподавателя: Управление файлами с помощью утилит командной строки

В этом упражнении вы будете создавать, организовывать, копировать и удалять файлы и каталоги.

Результаты

После завершения этого раздела вы сможете создавать, организовывать, копировать и удалять файлы и каталоги.

Войдите на workstation как пользователь student с паролем student.

На workstation выполните команду lab files-manage start. Эта команда запускает подготовительный сценарий, который проверяет доступность машины servera в сети.

[student@workstation ~]$ lab files-manage start
  1. С помощью команды ssh войдите на servera как пользователь student. Системы настроены на использование ключей SSH для аутентификации, поэтому пароль не требуется.

    [student@workstation ~]$ ssh student@servera
    ...output omitted...
    [student@servera ~]$ 
    
  2. В домашнем каталоге пользователя student используйте команду mkdir, чтобы создать три подкаталога: Music, Pictures и Videos.

    [student@servera ~]$ mkdir Music Pictures Videos
    
  3. В домашнем каталоге пользователя student используйте команду touch, чтобы создать наборы пустых файлов для этой лабораторной работы.

    • Создайте шесть файлов с именами в виде songX.mp3.

    • Создайте шесть файлов с именами в виде snapX.jpg.

    • Создайте шесть файлов с именами в виде filmX.avi.

    В каждом наборе замените X номерами от 1 до 6.

    [student@servera ~]$ touch song1.mp3 song2.mp3 song3.mp3 song4.mp3 \
    song5.mp3 song6.mp3
    [student@servera ~]$ touch snap1.jpg snap2.jpg snap3.jpg snap4.jpg \
    snap5.jpg snap6.jpg
    [student@servera ~]$ touch film1.avi film2.avi film3.avi film4.avi \
    film5.avi film6.avi
    [student@servera ~]$ ls -l
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film1.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film2.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film3.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film4.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film5.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film6.avi
    drwxrwxr-x. 2 student student 6 Feb  4 18:23 Music
    drwxrwxr-x. 2 student student 6 Feb  4 18:23 Pictures
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap1.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap2.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap3.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap4.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap5.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap6.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song1.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song2.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song3.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song4.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song5.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song6.mp3
    drwxrwxr-x. 2 student student 6 Feb  4 18:23 Videos
    

  4. Из домашнего каталога пользователя student переместите файлы песен в подкаталог Music, файлы снимков в подкаталог Pictures, а файлы фильмов в подкаталог Videos.

    При распределении файлов из одного расположения в несколько сначала перейдите в каталог, содержащий исходные файлы. Используйте простой синтаксис пути (абсолютный или относительный), чтобы дойти до целевого расположения в каждой задаче управления файлами.

    [student@servera ~]$ mv song1.mp3 song2.mp3 song3.mp3 song4.mp3 \
    song5.mp3 song6.mp3 Music
    [student@servera ~]$ mv snap1.jpg snap2.jpg snap3.jpg snap4.jpg \
    snap5.jpg snap6.jpg Pictures
    [student@servera ~]$ mv film1.avi film2.avi film3.avi film4.avi \
    film5.avi film6.avi Videos
    [student@servera ~]$ ls -l Music Pictures Videos
    Music:
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song1.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song2.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song3.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song4.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song5.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 song6.mp3
    
    Pictures:
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap1.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap2.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap3.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap4.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap5.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 snap6.jpg
    
    Videos:
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film1.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film2.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film3.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film4.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film5.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:23 film6.avi
    

  5. В домашнем каталоге student создайте три подкаталога для распределения файлов по проектам. Назовите эти подкаталоги friends, family и work. Используйте одну команду для одновременного создания этих трех подкаталогов.

    Вы будете использовать эти каталоги для распределения файлов по проектам.

    [student@servera ~]$ mkdir friends family work
    [student@servera ~]$ ls -l
    total 0
    drwxrwxr-x. 2 student student   6 Feb  4 18:38 family
    drwxrwxr-x. 2 student student   6 Feb  4 18:38 friends
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Music
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Pictures
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Videos
    drwxrwxr-x. 2 student student   6 Feb  4 18:38 work
    

  6. Скопируйте набор новых файлов в проектные каталоги family и friends. Используйте столько команд, сколько потребуется. Использовать только одну команду, как в примере, не обязательно. Для каждого проекта сначала перейдите в каталог проекта, а затем скопируйте исходные файлы в этот каталог. Имейте в виду, что вы создаете копии, поэтому оригинальные файлы останутся на своих местах, после того как файлы будут скопированы в проектные каталоги.

    • Скопируйте файлы (всех типов) с номерами 1 и 2 в подкаталог friends.

    • Скопируйте файлы (всех типов) с номерами 3 и 4 в подкаталог family.

    При копировании файлов из нескольких расположений в одно Red Hat рекомендует перейти в целевой каталог, прежде чем начинать копирование. Используйте простой синтаксис пути (абсолютный или относительный), чтобы дойти до исходного расположения в каждой задаче управления файлами.

    [student@servera ~]$ cd friends
    [student@servera friends]$ cp ~/Music/song1.mp3 ~/Music/song2.mp3 \
    ~/Pictures/snap1.jpg ~/Pictures/snap2.jpg ~/Videos/film1.avi \
    ~/Videos/film2.avi .
    [student@servera friends]$ ls -l
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:42 film1.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:42 film2.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:42 snap1.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:42 snap2.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:42 song1.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:42 song2.mp3
    [student@servera friends]$ cd ../family
    [student@servera family]$ cp ~/Music/song3.mp3 ~/Music/song4.mp3 \
    ~/Pictures/snap3.jpg ~/Pictures/snap4.jpg ~/Videos/film3.avi \
    ~/Videos/film4.avi .
    [student@servera family]$ ls -l
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:44 film3.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:44 film4.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:44 snap3.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:44 snap4.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:44 song3.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:44 song4.mp3
    

  7. Создайте дополнительные копии для проекта work.

    [student@servera family]$ cd ../work
    [student@servera work]$ cp ~/Music/song5.mp3 ~/Music/song6.mp3 \
    ~/Pictures/snap5.jpg ~/Pictures/snap6.jpg \
    ~/Videos/film5.avi ~/Videos/film6.avi .
    [student@servera work]$ ls -l
    total 0
    -rw-rw-r--. 1 student student 0 Feb  4 18:48 film5.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:48 film6.avi
    -rw-rw-r--. 1 student student 0 Feb  4 18:48 snap5.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:48 snap6.jpg
    -rw-rw-r--. 1 student student 0 Feb  4 18:48 song5.mp3
    -rw-rw-r--. 1 student student 0 Feb  4 18:48 song6.mp3
    

  8. Задачи вашего проекта теперь выполнены, и пришло время очистить проекты.

    Перейдите в домашний каталог пользователя student. Попытайтесь удалить проектные каталоги family и friends с помощью одной команды rmdir.

    [student@servera work]$ cd
    [student@servera ~]$ rmdir family friends
    rmdir: failed to remove 'family': Directory not empty
    rmdir: failed to remove 'friends': Directory not empty

    Команда rmdir должна завершиться ошибкой, поскольку оба подкаталога содержат файлы.

  9. Используйте команду rm -r, чтобы рекурсивно удалить подкаталоги family и friends, а также их содержимое.

    [student@servera ~]$ rm -r family friends
    [student@servera ~]$ ls -l
    total 0
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Music
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Pictures
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Videos
    drwxrwxr-x. 2 student student 108 Feb  4 18:48 work
    

  10. Удалите все файлы в проекте work, но не удаляйте каталог work.

    [student@servera ~]$ cd work
    [student@servera work]$ rm song5.mp3 song6.mp3 snap5.jpg snap6.jpg \
    film5.avi film6.avi
    [student@servera work]$ ls -l
    total 0
    

  11. Из домашнего каталога пользователя student выполните команду rmdir, чтобы удалить каталог work. Поскольку каталог теперь пуст, выполнение команды должно привести к нужному результату.

    [student@servera work]$ cd
    [student@servera ~]$ rmdir work
    [student@servera ~]$ ls -l
    total 0
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Music
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Pictures
    drwxrwxr-x. 2 student student 108 Feb  4 18:36 Videos
    

  12. Выйдите с servera.

    [student@servera ~]$ exit
    logout
    Connection to servera closed.
    [student@workstation ~]$
    

Конец

На workstation запустите сценарий lab files-manage finish, чтобы закончить упражнение. Этот сценарий удалит все каталоги и файлы, созданные во время упражнения.

[student@workstation ~]$ lab files-manage finish

Упражнение завершено.