Архив метки: Linux

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



























Rate this post

lsВыводит список файлов в директории.

Синтаксис

ls опциидиректория

директория — задает директорию, содержимое которой нужно вывести. Если вместо директории указать файл, то будет выведена информация о данном файле.

Если директория не указана, то выводится содержимое текущей директории.

Команда ls linux

Как обычно, в таких статьях сначала нам нужно понять синтаксис команды, чтобы вы знали как правильно ее использовать. На самом деле, синтаксис очень прост, вы набираете саму команду, а после нее путь к папке, содержимое которой хотите посмотреть. Если вы запустите команду без пути, то она выдаст содержимое текущего каталога:

$ lsопции/путь/к/папке

Опции команды указывают как именно и в каком виде нужно выводить информацию на экран, а путь, это та папка, которую нужно отобразить. Рассмотрим основные опции утилиты:

  • -a – отображать все файлы, включая скрытые, это те, перед именем которых стоит точка;
  • -A – не отображать ссылку на текущую папку и корневую папку . и ..;
  • –author – выводить создателя файла в режиме подробного списка;
  • -b – выводить Escape последовательности вместо непечатаемых символов;
  • –block-size – выводить размер каталога или файла в определенной единице измерения, например, мегабайтах, гигабайтах или килобайтах;
  • -B – не выводить резервные копии, их имена начинаются с ~;
  • -c – сортировать файлы по времени модификации или создания, сначала будут выведены новые файлы;
  • -C – выводить колонками;
  • –color – включить цветной режим вывода, автоматически активирована во многих дистрибутивах;
  • -d – выводить только директории, без их содержимого, полезно при рекурсивном выводе;
  • -D – использовать режим вывода, совместимый с Emacs;
  • -f – не сортировать;
  • -F – показывать тип объекта, к каждому объекту будет добавлен один из специализированных символов */=>@|;
  • –full-time – показывать подробную информацию, плюс вся информация о времени в формате ISO;
  • -g – показывать подробную информацию, но кроме владельца файла;
  • –group-directories-first – сначала отображать директории, а уже потом файлы;
  • -G – не выводить имена групп;
  • -h – выводить размеры папок в удобном для чтения формате;
  • -H – открывать символические ссылки при рекурсивном использовании;
  • –hide – не отображать файлы, которые начинаются с указанного символа;
  • -i – отображать номер индекса inode, в которой хранится этот файл;
  • -l – выводить подробный список, в котором будет отображаться владелец, группа, дата создания, размер и другие параметры;
  • -L – для символических ссылок отображать информацию о файле, на который они ссылаются;
  • -m – разделять элементы списка запятой;
  • -n – выводить UID и GID вместо имени и группы пользователя;
  • -N – выводить имена как есть, не обрабатывать контролирующие последовательности;
  • -Q – брать имена папок и файлов в кавычки;
  • -r – обратный порядок сортировки;
  • -R – рекурсивно отображать содержимое поддиректорий;
  • -s – выводить размер файла в блоках;
  • -S – сортировать по размеру, сначала большие;
  • -t – сортировать по времени последней модификации;
  • -u – сортировать по времени последнего доступа;
  • -U – не сортировать;
  • -X – сортировать по алфавиту;
  • -Z – отображать информацию о расширениях SELinux;
  • -1 – отображать один файл на одну строку.

Это были все основные параметры команды ls, которые нам может когда-либо понадобиться использовать. Их очень много, но на деле будут нужны только некоторые из них, вы их быстро запомните, а все остальные сможете всегда найти в этой статье или на странице справки man ls. А теперь давайте рассмотрим несколько примеров использования команды ls linux.

Использование ls в Linux

Как вы уже поняли, ls – это сокращение от list, эта команда представляет из себя аналог команды dir для Linux. Самый простой способ использовать команду, запустить ее без параметров и посмотреть содержимое текущей папки:

ls


Чтобы посмотреть список файлов в папке linux для точно заданной папки, вам нужно указать путь к ней. Например, смотрим содержимое корневой папки:

ls /


Или папки /bin:

ls /bin/


По умолчанию включен цветной вывод, поэтому вы видите столько различных цветов. Например, исполняемые файлы обозначаются салатовым, а ссылки голубым. Теперь посмотрим содержимое домашней папки снова, только на этот раз в виде списка с максимальным количеством информации:

ls -l


Тут вывод уже разделен на отдельные колонки, в первой колонке указаны права доступа к файлу в формате владелец группа остальные. Следующая колонка – это тип файла или папки, дальше владелец и группа, затем размер, дата создания и последний параметр – имя. Если вы еще хотите знать кто создал файл, можно использовать опцию author:

ls -l –author


Колонка создателя будет добавлена после группы. Дальше размер. Он выводится в байтах, килобайтах или еще в чем-то и нам не совсем понятно что там происходит, поэтому добавьте опцию -h чтобы выводить размер в более удобном виде:

ls -lh


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

ls -l Фото
ls -lh Фото

Если вы хотите видеть скрытые файлы, а в домашней папке их просто море, то используйте опцию -a:

ls -a


Или смотрим скрытые файлы без ссылок на текущую и родительскую папку:

ls -A


Теперь нас будет интересовать сортировка. Сначала отсортируем файлы по размеру:

ls -lSh Фото


Обратите внимание, что файлы расположены от большего к меньшему. Теперь мы можем включить обратный порядок:

ls -lShr


С помощью опции -r мы вывели файлы в обратном порядке. Теперь отсортируем по алфавиту:

ls -lX


Или сортируем по времени последней модификации:

ls -lt


Обратите внимание на колонку времени, действительно, самые новые файлы будут вверху списка. Если вы хотите посмотреть какие метки SELinux присвоены файлу, необходимо использовать опцию -Z:

ls -lZ


Но это возможно только в системах, где установлена надстройка SELinux. Если вы хотите рекурсивно вывести содержимое всех папок, используйте опцию -R:

ls -lR /usr/


Если же вам нужно список папок и файлов в директории через запятую, что можно использовать -m:

ls -m


Особенности утилиты LS Linux

Перед использованием такой команды необходимо тщательно изучить особенности синтаксиса. www.vseprolinux.ru/komanda-ls

Это дает возможность пользователю правильно применить команду при решении различных задач.
Синтаксис ls Линукс весьма простой. Первоначально требуется ввести сам у команду, а далее – указать путь к файлу или определенной папке, содержимое которой требует изучения.

Общий синтаксис выглядит так:
$ ls (опции)/(путь к папке)

Рубрика «опции» укажет, в каком именно виде должна быть выведена требуемая информация. Она в последующем отображается на экране вашего монитора. «Путь к папке» — это своеобразный адрес месторасположения данных, которые пользователь желает увидеть.
Опции, которыми можно воспользоваться с помощью команды LS Linux:

  • «-а». После введения отображаются все файлы. Вам будут показаны даже скрытые данные, перед которыми система установила точку.
  • «-А». Опция дает возможность не отображать ссылку на исследуемую папку, которая также корневой (. и ..).
  • «—author». На экран выводится информация о создателе определенного файла. Режим – подробный список.
  • «-b». Вместо напечатанных символов отображается Escape-последовательность.
  • «—block-size». На экране монитора показан размер папки или файла. Единица измерения может быть различной – мегабайты, гигабайты или килобайты.
  • «-В». Такая опция даёт возможность не выводить резервные копии. Стоит отметить, что их имена начинаются со знака «~».
  • «-с». После введения появляется возможность сортировки файлов – по времени создания или модификации. Первоначально отображаются новые файлы.
  • «-С». Информация будет выведена в виде колонок.
  • «—color». Эта опция позволяет запустить цветной режим ввода. Стоит заметить, что в большинстве дистрибутивов она активирована в автоматическом режиме.
  • «-d». На экран будут выведены только директории. Вы не увидите их содержимое. Опцию актуально использовать при необходимости рекурсивного вывода.
  • «-D». Опция позволяет использовать режим, который совместим с Emacs.
  • «-f». Здесь исключена вероятность сортировки файлов и папок.
  • «-F». Будет показана разновидность исследуемого объекта. Они зачастую дополнены различными вспомогательными символами – *, /, =, >, @, | и иными.
  • «—full-time». Такая опция позволяет отобразить подробную информацию о файле или директории. Данные о времени отображены в формате ISO.
  • «-g». Показывается подробная информация об исследуемом объекте, но нет данных о владельце.
  • «—group-directories-first». После введения первоначально отображаются директории, а фалы находятся внизу списка.
  • «-G». Эта опция даёт возможность не показывать названия групп.
  • «-h». Позволяет посмотреть размеры папок. Формат удобен для чтения.

Вышеописанный список опций неполный. Их большое количество, но зачастую на деле используются лишь некоторые. Более подробно изучить функционал утилиты LS Linux можно в категории «справка».

Особенности использования команды

Как понятно из вышесказанного, данная утилита имеет широкие возможности. Стоит рассмотреть некоторые примеры использования LS Linux:

  • Запуск программы без введения параметров для просмотра содержимого текущей папки. Для этого потребуется ввести команду «$ ls».
  • Просмотр списка файлов в определенной папке. Для этого потребуется указать путь к ней. Если нужно изучить содержимое корневой папки, стоит ввести «$ ls/». Когда требуется посмотреть содержимое определённой папки (к примеру, /ХХХ), стоит ввести команду «$ ls/ХХХ/».
  • Просмотр прав доступа к определенному файлу. Для этих целей в командной строке нужно ввести «$ ls -l —autor».
  • Просмотр размера файла в максимально удобном виде (в байтах, мегабайтах, килобайтах, гигабайтах). Необходимо ввести команду «$ ls –lh».
  • Просмотр скрытых файлов. Нужно заметить, что практически в каждой папке их большое количество. Стоит в командной строке ввести команду «$ ls -a».
  • Сортировка фалов по размеру. Для этого вводится команда «$ ls –lSh».
  • Сортировка по алфавиту. Нужно ввести команду «$ ls –lX».
  • Сортировка по последней модификации. Вводится команда «$ ls –lt».
  • Просмотр отметок на файле, которые были присвоены SELinux. Для этого вводится команда «$ ls –lZ».
  • Рекурсивный просмотр содержимого всех папок. Необходимо ввести команду «$ ls -lR /usr/».
  • Просмотр файлов и папок в определённой директории через запятую. Для выполнения поставленной задачи нужно ввести «$ ls -m».

Утилита ls весьма сложная и местами непонятная, но функционал ее весьма редко используется полностью. С простыми задачами справится новичок без определенных навыков.
 

Список ключей для команды ls.

Для повседневной работы, одни из самых используемых ключей для команды ls:

  • -l — вывод подробной информации о содержимом каталога в виде списка;
  • -a (—all) — вывод информации о всех имеющихся объектах явных и скрытых;
  • -A (—allmost-all) — вывод информации о всех имеющихся явных и скрытых объектах (за исключением объектов «.» и «..»);
  • -d (—directory) — вывод информации о директории без вывода его содержимого;
  • -F — к объектам являющимся каталогами добавит в конце символ слеш «/», к объектам являющимися исполняемыми файлами добавляется «*», к объектам являющимися символьными ссылками — «@»;
  • -r (—reverse) — данные ключи меняют сортировку на обратную;
  • -i — отображение номера индексных дескрипторов объектов;
  • -S — сортировка объектов по размеру от большого к меньшему;
  • -Sr — сортировка объектов по размеру от меньшего;
  • -t — сортировка объектов по времени модификации файлов;
  • -R (—recursive) — вывод информации об имеющихся объектах в том числе и объектах во вложенных каталогах.

Способы работы с командой ls и ее ключи, упоминаемые в статье это далеко не весь список. Если вы желаете использовать всю мощь этой на первый взгляд простой команды, то как уже упоминалось ранее, более подробную информацию можно получить при вызове встроенного мануала $ man ls .

Получение сведений о файлах и каталогах

Файловая система для каждого из своих базовых объектов (файлов и каталогов) хранит около четырёх десятков информационных полей. Подавляющее большинство из этих полей ФС использует для поддержания собственной работоспособности. По сути, когда пользователь работает с ФС, он просто использует любезно предоставленные самой же ФС возможности и информацию. При этом видит всё «как на ладони», всё как есть. Единственным скрытым (а точнее, «замаскированным») компонентом в представлении ФС является оборудование. Которое представлено теми же самыми файлами с соответствующими им свойствами и атрибутами.

Что представляет собой тот или иной файл, т. е. какой доступ к нему предоставлен, какими «связями» он обладает, когда был создан и/или изменён. А также многое другое, позволяет узнать команда ls с ключом -l. Когда нужно «навести справки» о каком-либо объекте ФС, использовать нужно именно её:

$ ls -l /bin/gzip -rwxr-xr-x 3 root root 101560 апр 28 2017 /bin/gzip

Нет необходимости подробно останавливаться на синтаксисе и перечисления всех доступных опций и их описании. Поскольку это простая справочная информация, доступная из соответствующего справочного руководства: man ls. А вот сам вывод команды из приведённого примера стоит рассмотреть более внимательно. Он разбит на секции, каждая из которых является отдельным атрибутом файла. В данном выводе в первой секции представлен режим доступа к файлу. Во второй — количество жёстких ссылок на данный файл. В третьей и четвертой — информация о владельце и группе. В данном случае root, к которым принадлежит файл. Следующая секция отображает размер файла в байтах. Далее следует дата последнего изменения файла — 28 апреля 2017 г., последняя секция — имя самого файла. Что касается каталогов, то для них всегда имеется как минимум две жесткие ссылки: первая — из родительского каталога, а вторая — это «псевдокаталог» «.» внутри самого этого каталога.

Как правильно интерпретировать вывод команды ls?

Первое, что может ввести в заблуждение при изучении вывода команды ls -l, так это первая секция данных. Состоящая из набора десяти символов и показывающая режимы доступа к файлу. Для вышеприведённого примера первый символ «-» указывает, что это файл. А в случае с каталогом вместо него выводится символ «d». Следующие девять символов представляют собой три группы, отражающих режимы доступа к файлу. Первая группа (первые три символа «rwx») показывают, какие права доступа выставлены на данный файл для его владельца. Следующая группа символов — «r-x» — показывает режим доступа для группы, к которой принадлежит файл. Ну а третья («r-x») — права доступа для всех остальных пользователей.

В полях, отображающих владельца и группу вместо символьных имён могут быть также и цифровые идентификаторы. Такое бывает, когда соответствующие записи были удалены из файлов /etc/passwd или /etc/group. Также это может быть признаком возникновения ошибки в базах данных LDAP или NIS. Конечно, если таковые используются.

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

Особенности использования команды ls

Когда команда ls обрабатывает не «обычные» файлы, а специальные файлы устройств (хотя это тоже самые обычные файлы). То для них она выводит несколько иную информацию:

$ ls -l /dev/tty0 cr–w—- 1 root tty 4,0 фев 28 14:27 /dev/tty0

Вместо размера файла выводится старший и младший номера (4, 0) устройства tty0 – это первая виртуальная консоль, управляемая драйвером устройства 4, который является драйвером терминала.

Когда нужно узнать для определённого файла не только количество указывающих на него жестких ссылок, но и сами эти ссылки. То целесообразно использовать опцию -i, которая выводит номер индексного дескриптора для файла:

$ ls -li ‘Рабочий стол’ 3276880 ‘Рабочий стол’

Номер индексного дескриптора — это индекс той самой таблицы, в которой содержатся записи всех файловых систем. В свою очередь, на дескрипторы ссылаются файловые записи каталогов. Таким образом, у жёстких ссылок, ссылающихся на один и тот же файл, будут одинаковые номера. Зная номер индексного дескриптора определённого файла, можно найти в системе все ссылающиеся на него жесткие ссылки, используя команду find:

$ find точка_монтирования -xdev -inum индексный_дескриптор

Данный пример — лишь одно из важных практических применений команды ls. Следует также отметить некоторые особенно полезные опции команды ls:

-a – отображает все файлы и каталоги. Включая скрытые (имена которых начинаются с точки), а также «всевдокаталоги» с именами «.» и «. .»;

-t – отображает результаты в отсортированном (по времени изменения файлов) порядке. А опция -tr то же, но в обратном порядке;

-F – выделяет каталоги и исполняемые файлы в общем выводе;

-h – отображает размеры файлов и каталогов в «человекопонятных» единицах, к примеру 4k или 10M;

-R – рекурсивный вывод, выполнение которого прерывается нажатием сочетания клавиш .

Иногда возникает путаница в использовании опций -l и —d. Дело в том, что опция -d предназначена для дополнения работы опции -l (которая выводит подробную информацию об атрибутах). Когда необходимо получить атрибуты именно конкретного каталога:

$ ls -ld ~/htdocs drwxrwxr-x 12 john john 4096 фев 11 12:56 /home/john/htdocs

Еще полезные примеры ls

Вывод файлов по дате изменения, вверху будут самые новые файлы

ls -lat /home

Вывод файлов по дате изменения, вверху будут самые старые файлы

ls -latr /home

Отсортировать файлы по размеру

ls -alS /home

Вывести список только каталогов:

ls -d -1 /home

1. Вывод имен скрытых файлов/директорий

По умолчанию команда не отображает имена скрытых файлов и директорий. Однако, вы можете активировать механизм вывода информации об этих элементах файловой системы с помощью параметра -a. Таким образом, для вывода имен всех файлов/директорий из текущей директории (включая скрытые файлы и директории, имена которых начинаются с символа точки “.”) достаточно выполнить следующую команду:

ls -a

2. Удаление информации о текущей (.) и родительской (..) директориях из вывода

При использовании параметра -a, кроме всего прочего, осуществляется вывод информации о текущей и родительской директориях (элементы “.” и “..” соответственно). Если вам не нужна эта информация, вы можете использовать вместо упомянутого параметра параметр -A.


3. Вывод информации о файлах и директориях в обратном порядке

По умолчанию ls сортирует имена файлов и директорий в алфавитном порядке. Но если вам понадобится, вы можете организовать вывод имен элементов директории в обратном порядке. Для этого вам придется использовать параметр -r.

ls -r

А это пример вывода:


1. ls без параметров

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

# ls 001.pcap Desktop Downloads index.html install.log.syslog Pictures Template anaconda-ks.cfg Documents fbcmd_update.php install.log Music Public Videos

2. ls с параметром -l

Здесь, ls -l (l — символ, а не единица) показывает файл или каталог вместе с его размером, а также дату и время изменения, права и владельца.

# ls -l total 176 -rw-r–r–. 1 root root 683 Aug 19 09:59 0001.pcap -rw——-. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfg drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documents drwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads -rw-r–r–. 1 root root 21262 Aug 12 12:42 fbcmd_update.php -rw-r–r–. 1 root root 46701 Jul 31 09:58 index.html -rw-r–r–. 1 root root 48867 Jul 31 02:17 install.log -rw-r–r–. 1 root root 11439 Jul 31 02:13 install.log.syslog drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Music drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Public drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos

3. Просмотр скрытых файлов

Показ всех файлов, включая скрытые, которые начинаются с «.»

# ls -a . .bashrc Documents .gconfd install.log .nautilus .. .cache Downloads .gnome2 install.log.syslog .netstat.swp 0001.pcap .config .elinks .gnome2_private .kde .opera anaconda-ks.cfg .cshrc .esd_auth .gtk-bookmarks .libreoffice Pictures .bash_history .dbus .fbcmd .gvfs .local .pki .bash_logout Desktop fbcmd_update.php .ICEauthority .mozilla Public .bash_profile .digrc .gconf index.html Music .pulse

4. Перечисление файлов с удобным отображением размера

С опцией -lh, ls показывает размеры в удобном формате.

# ls -lh total 176K -rw-r–r–. 1 root root 683 Aug 19 09:59 0001.pcap -rw——-. 1 root root 1.6K Jul 31 02:17 anaconda-ks.cfg drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Documents drwxr-xr-x. 4 root root 4.0K Aug 16 02:55 Downloads -rw-r–r–. 1 root root 21K Aug 12 12:42 fbcmd_update.php -rw-r–r–. 1 root root 46K Jul 31 09:58 index.html -rw-r–r–. 1 root root 48K Jul 31 02:17 install.log -rw-r–r–. 1 root root 12K Jul 31 02:13 install.log.syslog drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Music drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Public drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Videos

5. Перечисление файлов и директорий с символом «/» в конце

Использование опции -F с командой ls добавит символ «/» в конце каждого каталога.

# ls -F 0001.pcap Desktop/ Downloads/ index.html install.log.syslog Pictures/ anaconda-ks.cfg Documents/ fbcmd_update.php install.log Music/ Public/

6. Перечисление файлов в обратном порядке

Следующая команда ls с опцией -r выводит файлы и каталоги в обратном порядке.

# ls -r Videos Public Music install.log fbcmd_update.php Documents 0001.pcap Templates Pictures install.log.syslog index.html Downloads Desktop

7. Рекурсивный список подкаталогов

ls с опцией -R выведет очень длинный список деревьев каталогов. Смотрите пример вывода команды.

# ls -R total 1384 -rw——-. 1 root root 33408 Aug 8 17:25 anaconda.log -rw——-. 1 root root 30508 Aug 8 17:25 anaconda.program.log ./httpd: total 132 -rw-r–r– 1 root root 0 Aug 19 03:14 access_log -rw-r–r–. 1 root root 61916 Aug 10 17:55 access_log-20120812 ./lighttpd: total 68 -rw-r–r– 1 lighttpd lighttpd 7858 Aug 21 15:26 access.log -rw-r–r–. 1 lighttpd lighttpd 37531 Aug 17 18:21 access.log-20120819 ./nginx: total 12 -rw-r–r–. 1 root root 0 Aug 12 03:17 access.log -rw-r–r–. 1 root root 390 Aug 12 03:17 access.log-20120812.gz

8. Обратный порядок вывода

С помощью комбинации -ltr список будет сортироваться по дате последнего изменения от старых к новым.

# ls -ltr total 176 -rw-r–r–. 1 root root 11439 Jul 31 02:13 install.log.syslog -rw-r–r–. 1 root root 48867 Jul 31 02:17 install.log -rw——-. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfg drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktop drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templates drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Public drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Pictures drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Music drwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documents -rw-r–r–. 1 root root 46701 Jul 31 09:58 index.html -rw-r–r–. 1 root root 21262 Aug 12 12:42 fbcmd_update.php drwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads -rw-r–r–. 1 root root 683 Aug 19 09:59 0001.pcap

Показать скрытые файлы

По умолчанию команда ls не показывает скрытые файлы. Что их показать, используется опция -a:

ls -a

Понятный размер файлов

Вывести размер файлов в понятном формате (опция -h):

ls -lh

Обозначить директории

У команды ls есть очень полезная опция -F, про которую не все знают. Она добавляет к именам файлов дополнительные обозначения, по которым сразу понятно что это за файл. Например, для директорий она добавляет символ /, и в списке файлов сразу видно где директории а где обычные файлы.

ls -lF

Список файлов в одну колонку

Вывести список в одну колонку:

ls -1

Вывести только файлы с определенным расширением

Выведем файлы только с расширением .txt:

ls *.txt

Выведем файлы с определенными расширениями (.html, .php и .txt):

ls *.{html,php,txt}

Файлы, начинающиеся на определенную букву

Показать только файлы, имена которых начинаются на одну из букв указанного множества (a, d, u и x):

ls [adux]*

Список файлов с сортировкой по времени

Выведем список файлов с сортировкой по времени последнего изменения файла. Более свежие файлы располагаются сверху.

ls -lt

Сортировка по времени, но в обратном порядке:

ls -ltr

[spoiler title=”Источники”]

  • https://pingvinus.ru/note/cmd-ls
  • https://losst.ru/komanda-ls-linux
  • http://linux-user.ru/komandy-v-linux/kak-polzovatsya-komandoj-ls-v-linukse/
  • https://world-hello.ru/linux/bash/commands/ls.html
  • https://ITProffi.ru/komanda-ls-prosmotr-atributov-fajlov/
  • http://rus-linux.net/MyLDP/consol/linux-ls-command.html
  • https://mordeniuss.ru/15-basic-ls-command-examples-in-linux/


[/spoiler]


2020-07-27T15:39:45
Linux

Команда top в Linux

В одной из предыдущих статей я рассказывал как пользоваться утилитой ps для просмотра информации о запущенных процессах в Linux. Однако для решения подобных задач существуют и более продвинутые инструменты. Один из таких инструментов — это команда top. Она немного проще чем та же утилита htop, но в отличие от ps позволяет выводить информацию о системе, а также список процессов динамически обновляя информацию о потребляемых ими ресурсах.

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

Читать →

Как использовать BleachBit в Linux

Хотите безопасно удалить ненужные файлы из операционной системы Linux, освободить место на жестком диске и защитить свою конфиденциальность? BleachBit  делает все это для вас!

Почему бы не использовать RM?

Конечно, вы также можете  использовать rm для удаления всех нежелательных или ненужных файлов из вашей системы. Однако преимущество использования BleachBit заключается в том, что он сканирует ваш жесткий диск на предмет определенных типов файлов, а затем удаляет только эти типы. Это означает, что вам не нужно искать их, а также не нужно проверять все места в вашей файловой системе, как вы это делаете  rm. Любая кратковременная потеря концентрации во время использования rmможет привести к катастрофическим последствиям.

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

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

Например, избыточные файлы из менеджеров пакетов являются хорошими кандидатами на удаление из вашей системы. Тем не менее, вы увидите apt категорию, только когда BleachBit работает в Ubuntu и других дистрибутивах, основанных на Debian. Это потому, что не имеет смысла показывать эту категорию на чем-то вроде Fedora.

Скорее, dnf и yum категории будут отображаться. Аналогично, вы не увидите категорию для Chromium, если на вашем компьютере не установлен браузер Chromium.

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

Установка BleachBit

Чтобы установить BleachBit в Ubuntu, используйте эту команду:

sudo apt-get install bleachbit

Чтобы установить BleachBit на Manjaro, введите:

sudo pacman -Syu bleachbit

Чтобы установить BleachBit на Fedora, введите команду:

sudo dnf install bleachbit

На момент написания этой статьи версия BleachBit для Fedora 32 еще не была добавлена ​​в репозиторий. Если вы используете Fedora 32, вы можете сделать следующее для установки BleachBit:

  • Нажмите «Fedora 31» на веб-сайте BleachBit, чтобы загрузить файл.

  • Дважды щелкните файл в папке «Загрузки».

  • После того, как приложение откроет файл, нажмите «Установить».

Начиная BleachBit

Если вы используете sudo для запуска BleachBit, он сможет получить доступ к системным временным и журнальным файлам, а также к файлам, принадлежащим корневой учетной записи.

Если вы запускаете BleachBit без него  sudo, он работает только с файлами, которые принадлежат вам и той учетной записи, в которую вы вошли. BleachBit отображает больше категорий файлов, когда вы запускаете его под учетной записью обычного пользователя. Это связано с тем, что в него войдут пользовательские файлы из приложений, которые вы, возможно, установили, например, Firefox и Thunderbird.

Введите следующую команду для  sudo запуска BleachBit:

sudo bleachbit

Введите следующую команду, чтобы запустить BleachBit без sudo:

bleachbit

Настройка предпочтений

После первого запуска вы увидите диалоговое окно «Preferences», в котором вы можете настроить BleachBit. Вы можете получить доступ к этим настройкам в любое время, выбрав «Предпочтения» в меню гамбургера на главном экране.

Вы увидите следующие варианты:

  • «General»:  здесь вы можете выбрать, хотите ли вы, чтобы BleachBit выполнял следующие действия:

    • Проверьте наличие обновлений (включая бета-версии).
    • Показать или скрыть категории файлов для всех поддерживаемых приложений, независимо от того, установлены они или нет.
    • Выход после выполнения удалений.
    • Требовать подтверждения перед удалением файлов.
    • Используйте размеры ISO / IEC  или SI для размеров файлов.
    • Используйте темный режим.
    • Показать отладочную информацию во время своих действий.

  • «Пользовательский»: выберите, добавлять ли файлы или папки, а также какие из них можно выбрать, а какие можно включить или исключить из действий сканирования и удаления. Вы также можете включить местоположения, которые не предлагаются BleachBit по умолчанию.
  • «Диски»: BleachBit может перезаписать свободное пространство и сделать данные там невосстановимыми. Для каждого раздела в вашей файловой системе вы должны создать доступную для записи папку и добавить ее путь к этой вкладке. Если ваша файловая система имеет только один раздел, значения по умолчанию будут хорошими.
  • «Языки»: все языки, доступные в вашем дистрибутиве Linux, будут перечислены на этой вкладке, поэтому просто выберите те, которые вы хотите включить. Ваш язык по умолчанию уже будет выбран. BleachBit также предложит удалить все, что не выбрано.
  • «Белый список»: на этой вкладке вы можете указать места, которые BleachBit должен игнорировать, и они останутся нетронутыми.

Использование BleachBit

Главное окно BleachBit имеет две панели: список категорий файлов слева и параметры в каждой категории справа. Вы можете установить флажок рядом с любым параметром, чтобы выбрать его, или щелкнуть название категории, чтобы выбрать все ее параметры.

Если вы выберете вариант, который займет много времени, или тот, который может повлиять на сохраненные пароли, вы увидите уведомление. Вы все еще можете выбрать эти опции, но BleachBit просто следит за тем, чтобы вы знали, что они делают.

Когда вы выделяете категорию, BleachBit отображает описание параметров в ней на панели справа. Вы можете прокручивать категории и параметры и выбирать типы файлов, которые вы хотите очистить.

Мы выбрали варианты удаления файлов для Firefox, но оставим настройки пароля такими же. Мы сделали то же самое для Thunderbird.

После того, как вы сделаете свой выбор, нажмите «Предварительный просмотр», и BleachBit выполнит пробный прогон.

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

Если вы довольны информацией и хотите продолжить, нажмите «Очистить». Если вы ранее выбрали опцию конфигурации «Подтвердить перед удалением», BleachBit спросит, уверены ли вы, что хотите продолжить.

Нажмите «Удалить», чтобы удалить файлы, или «Отмена», чтобы вернуться в главное окно BleachBit.

Если вы нажмете «Удалить», BleachBit выполнит очистку и удалит файлы из вашей системы. Если вы ранее выбрали какой-либо из параметров безопасного стирания  или перезаписи, это может занять некоторое время. Однако имейте в виду, что в большинстве современных файловых систем журналирования очень сложно гарантировать, что удаленные файлы будут перезаписаны.

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

Повторите, если необходимо

Временные файлы и файлы журналов, а также другие одноразовые материалы, которые удаляет BleachBit, будут заменены и воссозданы, когда вы продолжите использовать компьютер. Со временем они будут расти снова. Но теперь вы можете периодически использовать BleachBit, чтобы контролировать их.



2020-07-17T10:07:44
Вопросы читателей

📜 Bash скрипт для копирования всех файлов с той же структурой каталогов

Этот скрипт оболочки предназначен для конкретной задачи, необходимой для нашего сервера.

Задача

Наша задача – скопировать все файлы, созданные в каталоге, в другой каталог с такой же структурой каталогов.

Скрипт будет запускаться с регулярным интервалом, искать все файлы, созданные в исходном каталоге, и копировать их в каталог назначения. Читать →

Как использовать команду whois в Linux

Поиск в Whois расскажет вам много информации о том, кто владеет интернет-доменом. В Linux вы можете запустить поиск whois из командной строки. Мы проведем вас через это.

Система Whois

Система whois представляет собой список записей, которые содержат сведения как о владельцах доменов, так и о владельцах. Интернет-корпорация по присвоению имен и номеров  (ICANN) регулирует регистрацию доменного имени и право собственности, но список записей проводится многими компаниями, известными как реестры.

Любой может запросить список записей. Когда вы это сделаете, один из реестров обработает ваш запрос и отправит вам данные из соответствующей записи whois.

Прежде чем идти дальше, важно, чтобы вы ознакомились со следующими терминами:

  • Реестр: компания, которая управляет списком, содержащим набор доменных имен (их много).
  • Регистрант: законный владелец домена; это зарегистрировано для этого человека.
  • Регистратор. Регистрант использует регистратора для своей регистрации.

Запись Whois содержит всю контактную информацию, связанную с лицом, компанией или другим лицом, зарегистрировавшим доменное имя. Некоторые регистрации содержат больше информации, чем другие, а некоторые реестры возвращают различное количество информации.

Типичная запись whois будет содержать следующую информацию:

  • The name and contact information of the registrant: владелец домена.
  • The name and contact information of the registrar: организация, которая зарегистрировала доменное имя.
  • The registration date: дата регистрации домена.
  • When the information was last updated: дата последнего обновления информации о домене.
  • The expiration date: дата освобождения домена.

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

Установка Whois

Команда whoisуже была установлена ​​в Ubuntu 20.04. Если вам нужно установить его в вашей версии Ubuntu, вы можете сделать это с помощью следующей команды:

sudo apt-get install whois

На Fedora используйте команду ниже:

sudo dnf install whois

И, наконец, на Манджаро введите следующее:

sudo pacman -Syu whois

Использование whois с доменным именем

Вы можете использовать whoisкоманду с доменными именами или  Internet Protocol (IP) адреса. Для каждого из них возвращается немного другой набор информации.

Мы будем использовать доменное имя для нашего первого примера:

whois cnn.com

Ответ из реестра whois начинается со сводки, а затем повторяется с добавлением дополнительной информации. Ниже приведен пример с удаленными заявлениями о товарных знаках и условиями использования:

Domain Name: CNN.COM

Registry Domain ID: 3269879_DOMAIN_COM-VRSN

Registrar WHOIS Server: whois.corporatedomains.com

Registrar URL: http://www.cscglobal.com/global/web/csc/digital-brand-services.html

Updated Date: 2018-04-10T16:43:38Z

Creation Date: 1993-09-22T04:00:00Z

Registry Expiry Date: 2026-09-21T04:00:00Z

Registrar: CSC Corporate Domains, Inc.

Registrar IANA ID: 299

Registrar Abuse Contact Email: domainabuse@cscglobal.com

Registrar Abuse Contact Phone: 8887802723

Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited

Domain Status: serverDeleteProhibited https://icann.org/epp#serverDeleteProhibited

Domain Status: serverTransferProhibited https://icann.org/epp#serverTransferProhibited

Domain Status: serverUpdateProhibited https://icann.org/epp#serverUpdateProhibited

Name Server: NS-1086.AWSDNS-07.ORG

Name Server: NS-1630.AWSDNS-11.CO.UK

Name Server: NS-47.AWSDNS-05.COM

Name Server: NS-576.AWSDNS-08.NET

DNSSEC: unsigned

Это достаточно понятно. Мы видим различные сведения о регистраторе и реестре, в том числе контактные данные, даты регистрации и т. Д. В списке есть несколько записей, которые вы можете не распознать.

Управление по присвоению номеров в Интернете (IANA) контролирует и координирует такие вещи, как зоны системы доменных имен верхнего уровня, системы адресации по протоколу IP и список реестров. Этот реестр имеет номер 299, который указан в списке как «IANA ID: 299.»

Строки «Статус домена» показывают состояние, в котором находится домен, и он может быть в нескольких одновременно. Состояния определены в расширяемом протоколе обеспечения. Некоторые из них встречаются редко, а другие ограничены определенными ситуациями, такими как правовые споры.

Следующие государства прикреплены к этой регистрации:

  • clientTransferProhibited: Реестр домена будет отклонять запросы на передачу домена от текущего регистратора к другому.
  • serverDeleteProhibited: домен не может быть удален.
  • serverTransferProhibited: домен не может быть передан другому регистратору.
  • serverUpdateProhibited: домен не может быть обновлен

Последние три обычно активируются по запросу владельца регистрации или в случае судебного разбирательства. В этом случае CNN, вероятно, потребовал, чтобы они были принудительно «заблокированы» доменом компании.

«DNSSEC» означает «Расширения безопасности системы доменных имен» , схему, которая позволяет распознавателю DNS-имен криптографически проверять, что данные, полученные из зоны DNS, действительны и не были подделаны.

Более длинная часть ответа показана ниже:

Domain Name: cnn.com

Registry Domain ID: 3269879_DOMAIN_COM-VRSN

Registrar WHOIS Server: whois.corporatedomains.com

Registrar URL: www.cscprotectsbrands.com

Updated Date: 2018-04-10T16:43:38Z

Creation Date: 1993-09-22T04:00:00Z

Registrar Registration Expiration Date: 2026-09-21T04:00:00Z

Registrar: CSC CORPORATE DOMAINS, INC.

Registrar IANA ID: 299

Registrar Abuse Contact Email: domainabuse@cscglobal.com

Registrar Abuse Contact Phone: +1.8887802723

Domain Status: clientTransferProhibited http://www.icann.org/epp#clientTransferProhibited

Domain Status: serverDeleteProhibited http://www.icann.org/epp#serverDeleteProhibited

Domain Status: serverTransferProhibited http://www.icann.org/epp#serverTransferProhibited

Domain Status: serverUpdateProhibited http://www.icann.org/epp#serverUpdateProhibited

Registry Registrant ID:

Registrant Name: Domain Name Manager

Registrant Organization: Turner Broadcasting System, Inc.

Registrant Street: One CNN Center

Registrant City: Atlanta

Registrant State/Province: GA

Registrant Postal Code: 30303

Registrant Country: US

Registrant Phone: +1.4048275000

Registrant Phone Ext:

Registrant Fax: +1.4048271995

Registrant Fax Ext:

Registrant Email: tmgroup@turner.com

Registry Admin ID:

Admin Name: Domain Name Manager

Admin Organization: Turner Broadcasting System, Inc.

Admin Street: One CNN Center

Admin City: Atlanta

Admin State/Province: GA

Admin Postal Code: 30303

Admin Country: US

Admin Phone: +1.4048275000

Admin Phone Ext:

Admin Fax: +1.4048271995

Admin Fax Ext:

Admin Email: tmgroup@turner.com

Registry Tech ID:

Tech Name: TBS Server Operations

Tech Organization: Turner Broadcasting System, Inc.

Tech Street: One CNN Center

Tech City: Atlanta

Tech State/Province: GA

Tech Postal Code: 30303

Tech Country: US

Tech Phone: +1.4048275000

Tech Phone Ext:

Tech Fax: +1.4048271593

Tech Fax Ext:

Tech Email: hostmaster@turner.com

Name Server: ns-576.awsdns-08.net

Name Server: ns-1086.awsdns-07.org

Name Server: ns-47.awsdns-05.com

Name Server: ns-1630.awsdns-11.co.uk

DNSSEC: unsigned

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

Имя регистранта называется «Менеджер доменных имен». Иногда за определенную плату компании предпочитают, чтобы их регистратор регистрировал домен от своего имени под общим именем, которое регистратор поддерживает для этой цели. Это, кажется, имеет место здесь. Однако, поскольку адрес регистранта — «1 Центр CCN», очевидно, кто является регистрантом.

Использование whois с IP-адресом

Использовать  whoisс IP-адресом так же просто, как использовать его с доменным именем. Просто укажите IP-адрес после whois, вот так:

whois 205.251.242.103

Это результат, возвращаемый whois:

NetRange: 205.251.192.0 - 205.251.255.255

CIDR: 205.251.192.0/18

NetName: AMAZON-05

NetHandle: NET-205-251-192-0-1

Parent: NET205 (NET-205-0-0-0-0)

NetType: Direct Allocation

OriginAS: AS16509, AS39111, AS7224

Organization: Amazon.com, Inc. (AMAZON-4)

RegDate: 2010-08-27

Updated: 2015-09-24

Ref: https://rdap.arin.net/registry/ip/205.251.192.0



OrgName: Amazon.com, Inc.

OrgId: AMAZON-4

Address: 1918 8th Ave

City: SEATTLE

StateProv: WA

PostalCode: 98101-1244

Country: US

RegDate: 1995-01-23

Updated: 2020-03-31

Ref: https://rdap.arin.net/registry/entity/AMAZON-4



OrgAbuseHandle: AEA8-ARIN

OrgAbuseName: Amazon EC2 Abuse

OrgAbusePhone: +1-206-266-4064 

OrgAbuseEmail: abuse@amazonaws.com

OrgAbuseRef: https://rdap.arin.net/registry/entity/AEA8-ARIN



OrgNOCHandle: AANO1-ARIN

OrgNOCName: Amazon AWS Network Operations

OrgNOCPhone: +1-206-266-4064 

OrgNOCEmail: amzn-noc-contact@amazon.com

OrgNOCRef: https://rdap.arin.net/registry/entity/AANO1-ARIN



OrgRoutingHandle: ADR29-ARIN

OrgRoutingName: AWS Dogfish Routing

OrgRoutingPhone: +1-206-266-4064 

OrgRoutingEmail: aws-dogfish-routing-poc@amazon.com

OrgRoutingRef: https://rdap.arin.net/registry/entity/ADR29-ARIN



OrgRoutingHandle: IPROU3-ARIN

OrgRoutingName: IP Routing

OrgRoutingPhone: +1-206-266-4064 

OrgRoutingEmail: aws-routing-poc@amazon.com

OrgRoutingRef: https://rdap.arin.net/registry/entity/IPROU3-ARIN



OrgTechHandle: ANO24-ARIN

OrgTechName: Amazon EC2 Network Operations

OrgTechPhone: +1-206-266-4064 

OrgTechEmail: amzn-noc-contact@amazon.com

OrgTechRef: https://rdap.arin.net/registry/entity/ANO24-ARIN



RTechHandle: ROLEA19-ARIN

RTechName: Role Account

RTechPhone: +1-206-266-4064 

RTechEmail: ipmanagement@amazon.com

RTechRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN



RAbuseHandle: ROLEA19-ARIN

RAbuseName: Role Account

RAbusePhone: +1-206-266-4064 

RAbuseEmail: ipmanagement@amazon.com

RAbuseRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN



RNOCHandle: ROLEA19-ARIN

RNOCName: Role Account

RNOCPhone: +1-206-266-4064 

RNOCEmail: ipmanagement@amazon.com

RNOCRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN

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

Второй раздел содержит адрес и имя владельца регистрации, Amazon.com, Inc. Веб-адрес в поле «Ref:» содержит эту информацию в формате JavaScript Object Notation (JSON).

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

Использование whois в скрипте

Чтобы использовать whois в скрипте, давайте предположим, что у нас есть набор доменов, для которых нам нужно проверить даты истечения срока действия. Мы можем сделать это с помощью небольшого сценария оболочки.

Введите это в редактор и сохраните как «get-expiry.sh»:

#!/bin/bash



DOMAIN_LIST="howtogeek.com reviewgeek.com lifesavvy.com cloudsavvyit.com"



echo "Expiration dates:"



for domain in $DOMAIN_LIST

do

  echo -n "$domain :: "

  whois $domain | grep 'Expiration' | awk '{print $5}'

done

Установите для сценария разрешения на выполнение с помощью chmodкоманды, как показано ниже:

chmod + x get-expiry.sh

Запустите скрипт, назвав его по имени:

./get-expiry.sh

Срок годности для каждого домена извлекается из ответа из whoisиспользуя grepдля поиска строк , которые содержат строку «Действительно,» и используя awk для печати пятого элемента из этой строки.

Удобство и автоматизация

Да, вы также можете выполнять поиск в Интернете. Однако наличие whoisкоманды в окне терминала и сценариях обеспечивает удобство, гибкость и дает возможность автоматизировать некоторые из ваших рабочих нагрузок.



2020-07-11T12:14:17
Вопросы читателей

🐧 Как перенести виртуальные машины Virtualbox в виртуальные машины KVM на Linux

Вы решили перейти с Oracle VirtualBox на виртуальную машину KVM?

В этом руководстве объясняется, как мигрировать виртуальные машины Virtualbox в виртуальные машины KVM на Linux.

Возможно, у вас есть несколько важных гостевых машин на VirtualBox.

Вместо создания новых гостей KVM с такой же конфигурацией, вы можете легко перенести существующие машины Virtualbox на KVM, как описано в это мануале.

Перенос виртуальных машин Virtualbox на виртуальные машины KVM на Linux

Во-первых, отключите все виртуальные машины, размещенные на KVM и VirtualBox.

Формат образа диска по умолчанию у виртуальной машины Virtualbox – VDI.

Мы можем найти список образов виртуальных дисков и их расположение с помощью команды:

$ vboxmanage list hdds

или,

 

$ VBoxManage list hdds

 

Пример вывода:

 

UUID:           ecfb6d5c-aa10-4ffc-b40c-b871f0404da8

Parent UUID:    base

State:          created

Type:           normal (base)

Location:       /home/itsecforu/VirtualBox VMs/CentOS 8 Server/CentOS 8 Server.vdi

Storage format: VDI

Capacity:       20480 MBytes

Encryption:     disabled



UUID:           34a5709f-188c-4040-98f9-6093628c3d88

Parent UUID:    base

State:          created

Type:           normal (base)

Location:       /home/itsecforu/VirtualBox VMs/Ubuntu 20.04 Server/Ubuntu 20.04 Server.vdi

Storage format: VDI

Capacity:       20480 MBytes

Encryption:     disabled

 

Как видите, у меня две виртуальные машины Virtualbox.

Теперь я собираюсь преобразовать образ диска машины CentOS 8 в формат необработанного диска с помощью команды «vboxmanage»:

$ vboxmanage clonehd --format RAW "/home/itsecforu/VirtualBox VMs/CentOS 8 Server/CentOS 8 Server.vdi" CentOS_8_Server.img

 

Если образы дисков содержат пробелы в их именах, укажите имя в кавычках, как показано выше.

 

 

Пример вывода:

 

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Clone medium created in format 'RAW'. UUID: afff3db8-b460-4f68-9c02-0f5d0d766c8e

 

Образ RAW слишком большой.

 

Итак, давайте преобразуем формат образа RAW в формат диска KVM, т.е. сжатый qcow2, с помощью команды qemu-img:

$ qemu-img convert -f raw CentOS_8_Server.img -O qcow2 CentOS_8_Server.qcow2

 

Мы конвертировали из VDI, т.е. образа диска Virtualbox в формат образа KVM qcow2.

Теперь вы можете импортировать образ диска на существующий компьютер KVM или создать новый экземпляр с этим вновь преобразованным образом диска KVM из командной строки или с помощью любых графических приложений управления KVM, таких как Virt-manager или веб-консоль Cockpit.

В следующем руководстве я объясню, как создать новый экземпляр KVM с существующим образом диска qcow2.