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

Ubuntu Linux: добавление и удаление пользователей в группы

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

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

Какие группы используются в Linux

Группа в Linux — это как раз то, на что это похоже: группа пользователей. Они используются для управления разрешениями для нескольких пользователей вместо их изменения для каждого пользователя. Стоит разбираться в группах, так как эта концепция используется в Unix-подобных операционных системах в целом, а не только в Linux.

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

Добавить пользователя в группу в Ubuntu

Есть две команды, которые вы должны знать, когда хотите добавить пользователя в группу в Linux. Это команда groups и команда usermod. Первый позволяет увидеть, какие группы вы уже назначены. Просто запустите следующее:

groups

Прежде чем добавить пользователя в группу, вы хотите убедиться, что пользователь действительно существует. Для этого вы можете использовать команду getent. Чтобы получить список всех групп, выполните следующее:

getent group

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

Чтобы добавить пользователя в группу, используйте команду usermod. Как правило, вы делаете это с помощью команды, подобной следующей:

sudo usermod -a -G group username

С помощью приведенной выше команды замените group на имя группы, в которую вы хотите добавить пользователя, и username на имя пользователя. Например:

sudo usermod -a -G sudo kwouk

Это позволило бы пользователю использовать команду sudo. Поскольку только пользователи в этой группе могут использовать sudo , вы можете запустить команду usermod если вы уже в этой группе.

Хотя это руководство посвящено Ubuntu, для добавления пользователя в группу в других дистрибутивах вы должны использовать те же самые шаги.

Создание новой группы в Ubuntu

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

Эта команда очень проста в использовании. Просто запустите его под sudo с названием группы, которую вы хотите создать. Например:

sudo groupadd newgroup

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

Удалить пользователя из группы в Ubuntu

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

Команда deluser, как следует из названия, часто используется для полного удаления пользователя. Вы также можете использовать его в Ubuntu для удаления пользователя из группы, а также в других дистрибутивах, таких как Debian, где также доступен пакет. Чтобы удалить пользователя из группы, используйте команду следующим образом:

sudo deluser username groupname

Всегда проверяйте, что имя группы присутствует дважды. Если вы запустите команду без имени группы, она просто полностью удалит пользователя. Например, следующая команда удалит пользователя из группы «sudo».

sudo deluser kwouk sudo

Если вы опустите последний «sudo» в приведенной выше команде, он удалит пользователя «kwouk».

Это может помочь дважды проверить, к каким группам уже назначен пользователь. Для этого просто запустите следующее:

sudo groups username

Простой способ добавления и удаления пользователей из групп

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

Для этого вам необходимо установить пакет «gnome-system-tools», который содержит несколько различных утилит. Нас интересует только приложение «Пользователи и группы», но нам все равно нужно установить весь пакет. Для этого выполните следующую команду:

sudo apt install gnome-system-tools

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

С левой стороны вы увидите список пользователей вашей системы. Чтобы добавить и удалить пользователей из групп, нажмите «Управление группами». Вы увидите список всех групп, доступных в вашей установке Ubuntu. Чтобы добавить пользователей в группы, нажмите «Свойства» и установите флажок рядом с их именами. Удалить пользователей из групп, сняв флажок.

Новые способы управления разрешениями в Ubuntu

Хотя его Unix-корни восходят к 1970-м годам, Linux постоянно развивается. Это не только означает лучшую аппаратную поддержку и настройки производительности. По мере развития Linux мы видим все больше способов управления пользователями и разрешениями.

Помимо прочего, в Ubuntu 19.10 добавлена ​​версия 3.32 для Gnome, в которую добавлен контроль прав доступа к приложениям. Это позволит вам использовать разрешения приложения в стиле смартфона. Хотя эта функция все еще находится в зачаточном состоянии, она может сделать рабочий стол Linux более безопасным.



2019-08-19T09:41:04
Вопросы читателей

Discord на Ubuntu: руководство по установке

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

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

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

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

Windows и MacOS могут получить все заголовки, но Linux остается опцией для тех, кто ищет более безопасную и упрощенную операционную систему. Цель этой статьи — предложить всем новичкам, любителям Linux и ветеранам Linux пошаговую процедуру получения доступа к услугам Discord в максимально безболезненном процессе.

Установка Discord для ОС Ubuntu Linux

Весь процесс очень прост и может быть завершен за короткое время, если у вас есть базовые знания команд Linux. В частности, пользователи Ubuntu обнаружат, что у них есть более упрощенный вариант установки за счет использования удобных пакетов, которые можно найти на большинстве сайтов приложений Linux.

Существует два основных способа приобретения Discord для Linux, каждый из которых потребует ввода одной или двух команд. Я расскажу о них обоих, начав с гораздо более быстрого метода использования snapcraft.io. За этим последует более традиционный способ, требующий немного более длительных временных затрат, но также наиболее привычный для давних пользователей Linux.

Независимо от метода, который вы в конечном итоге выберете, результаты будут одинаковыми.

Спринт

Этот метод потребует, чтобы ваша версия Linux имела возможности управления пакетами оснастки. Для всех пользователей Ubuntu 16.04.4 LTS или новее, Snapd поставляется с предустановленной версией . Для более ранних версий Ubuntu вам придется установить Snapd вручную.

Если вы окажетесь в последнем лагере, откройте терминал ( Ctrl + Alt + T на клавиатуре) и введите следующую команду.

sudo apt update

sudo apt install -y snapd

После установки Snapd вы также захотите загрузить приложение Snap Store. Это сайт, на котором находится загружаемый вами пакет Discord.

Введите эту команду в терминал.

$ sudo snap install snap-store

Доступ к Snap Store теперь доступен для вас. Не только для Discord, но и для любых будущих приложений, которые вы можете добавить. Но сейчас вы можете использовать команду Snap для установки Discord для Linux.

Когда ваш терминал все еще открыт, введите следующее.

$ sudo snap install discord

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

Просто введите команду $discord в терминал, и вы сможете присоединиться к 250 миллионам других зарегистрированных пользователей Discord по всему миру.

Для тех ветеранов Linux, которые предпочитают более традиционный подход к установке, или новичков, которые хотели бы изучить одну или две вещи, следующий раздел предназначен для вас.

Марафон

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

К счастью для всех, необходимые зависимости доступны в легко устанавливаемом пакете.

Откройте свой терминал и введите следующую команду.

sudo apt install libconf-2-4 libappindicator1

Миссия выполнена.

GUI был предназначен для новых пользователей Linux, которые могут быть более знакомы с выбором графического интерфейса для установки, а не ввода команд. Любой, кто прибывает из одной из двух больших (Windows, MacOS), найдет больше комфорта при выборе этой опции.

Откройте браузер и перейдите на официальный сайт Discord. Сайт должен автоматически определить, что вы работаете в Linux, и предложить вам загрузить пакет .deb.

Нажмите кнопку Download now.

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

Загрузка должна быть быстрой, и вы скоро сможете установить недавно приобретенный пакет Discord. Нажмите на кнопку «Установить» и подождите, пока процесс запустится.

Discord будет доступен для использования после завершения установки.

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

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

Уже есть аккаунт? Даже лучше. Просто используйте свои учетные данные для входа в систему и сразу начните использовать Discord.

https://www.youtube.com/watch?v=uNHV96dqp6A



2019-08-05T10:23:52
Вопросы читателей

Как смонтировать и размонтировать устройства хранения с терминала Linux

Файловые системы в Linux и Unix-подобных операционных системах, таких как macOS, могут быть смонтированы, размонтированы и перемонтированы с помощью терминала. Это мощный и универсальный инструмент – вот все, что вам нужно знать. Читать

Как создавать и распаковывать архивы zip в консоли Linux

ZIP-файлы — это универсальный архив, обычно используемый в системах Windows, macOS и даже Linux. Вы можете создать zip-архив или распаковать файлы из одного с помощью некоторых общих команд терминала Linux.

Формат сжатого архива ZIP

Благодаря доминированию формата ZIP в области Windows, файлы ZIP, вероятно, являются наиболее распространенной формой сжатых архивов в мире.

Хотя файлы .tar.gz и tar.bz2 распространены в Linux, пользователи Windows, вероятно, отправят вам архив в формате ZIP. И, если вы хотите заархивировать некоторые файлы и отправить их пользователю Windows, формат ZIP будет самым простым и наиболее совместимым решением для всех.

zip, unzip и другие утилиты

Возможно, вы уже знаете, что Linux и Unix-подобные операционные системы, такие как macOS, имеют инструменты, позволяющие создавать ZIP-файлы и извлекать из них файлы, называемые zip и unzip . Но есть целый ряд связанных утилит, таких как zipcloak , zipdetails, zipsplit и zipinfo.

Мы проверили некоторые дистрибутивы Linux, чтобы увидеть, включают ли они эти утилиты в стандартную установку. Все утилиты присутствовали в Ubuntu 19.04, 18.10 и 18.04. Они также присутствовали в Манджаро 18.04. Fedora 29 включала zip и unzip , но ни одну из других утилит, и это также относится к CentOS.

Чтобы установить недостающие элементы в Fedora 29, используйте следующую команду:

sudo dnf install perl-IO-Compress

Чтобы установить недостающие элементы в CentOS 7, используйте следующую команду:

sudo yum install perl-IO-Compress

Если какая-либо из утилит zip отсутствует в дистрибутиве Linux, который не был упомянут выше, используйте инструмент управления пакетами этого дистрибутива Linux для установки необходимого пакета.

Как создать ZIP-файл с помощью команды zip

Чтобы создать ZIP-файл, необходимо указать zip имя файла архива и какие файлы включить в него. Вам не нужно добавлять расширение «.zip» к имени архива, но это не повредит.

Чтобы создать файл с именем source_code.zip содержащий все файлы исходного кода C и заголовочные файлы в текущем каталоге, вы должны использовать эту команду:

zip source_code *.c *.h

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

Если вы посмотрите на новый ZIP-архив, то увидите, что расширение «.zip» было автоматически добавлено zip.

ls -l source_code.zip

Если вы не хотите видеть вывод из zip при создании ZIP-файла, используйте параметр -q (quiet).

zip -q source_code *.c *.h

Включение каталогов в ZIP-файлы

Чтобы включить подкаталоги в ZIP-файл, используйте параметр -r (рекурсивный) и укажите имя подкаталога в командной строке. Чтобы создать ZIP-файл, как и раньше, а также включить подкаталог архива, используйте эту команду.

zip -r -q source_code archive/ *.c *.h

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

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

zip -r -q source_code work/

Установка уровня сжатия

Вы можете установить степень сжатия файлов при их добавлении в ZIP-архив. Диапазон составляет от 0 до 9, где 0 вообще не компрессирует. Чем выше степень сжатия, тем больше времени требуется для создания файла ZIP. Для ZIP-файлов небольшого размера разница во времени не является существенным штрафом. Но тогда, для ZIP-файлов небольшого размера, сжатие по умолчанию (уровень 6), вероятно, достаточно хорошо в любом случае.

Чтобы заставить zip использовать определенный уровень сжатия, передайте число в качестве параметра в командной строке с помощью «-», например:

zip -0 -r -q source_code work/

Уровень сжатия по умолчанию равен 6. Нет необходимости -6 опцию -6 , но это не принесет вреда.

zip -r -q source_code work/

Максимальный уровень сжатия — уровень 9.

zip -9 -r -q source_code work/

При выборе файлов и каталогов, которые здесь архивируются, разница между отсутствием сжатия (уровень 0) и сжатием по умолчанию (уровень 6) составляет 400 КБ. Разница между сжатием по умолчанию и самым высоким уровнем сжатия (уровень 9) составляет всего 4K.

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

Добавление паролей к ZIP-файлам

Добавить пароли к ZIP-файлам легко. Используйте параметр -e (зашифровать), и вам будет предложено ввести пароль и повторно ввести его для проверки.

zip -e -r -q source_code work/

Как распаковать ZIP-файл с помощью команды unzip

Чтобы извлечь файлы из ZIP-файла, используйте команду unzip и укажите имя ZIP-файла. Обратите внимание, что вам нужно предоставить расширение «.zip».

unzip source_code.zip

По мере извлечения файлов они отображаются в окне терминала.

ZIP-файлы не содержат информации о владельце файла. Все извлеченные файлы имеют владельца, назначенного пользователю, который их извлекает.

Как и в zip , у unzip есть опция -q (quiet), поэтому вам не нужно видеть список файлов, когда файлы извлекаются.

unzip -q source_code.zip

Извлечение файлов в целевой каталог

Чтобы файлы были извлечены в определенном каталоге, используйте опцию -d (directory) и укажите путь к каталогу, в который вы хотите извлечь архив.

unzip -q source_code.zip -d ./development

Извлечение защищенных паролем ZIP-файлов

Если ZIP-файл был создан с паролем, unzip попросит вас указать пароль. Если вы не введете правильный пароль, unzip файлы не удастся.

unzip -q source_code.zip

Если вас не волнует, что ваш пароль видят другие — и не хранится ли он в истории команд — вы можете указать пароль в командной строке с параметром -P (пароль). (Вы должны использовать заглавную «P.»)

unzip -P fifty.treacle.cutlass -q source_code.zip

Исключение файлов

Если вы не хотите извлекать определенный файл или группу файлов, используйте параметр -x (исключить). В этом примере мы хотим извлечь все файлы, кроме тех, которые заканчиваются расширением «.h».

unzip -q source_code.zip -x *.h

Перезапись файлов

Предположим, вы распаковали архив, но по ошибке удалили несколько извлеченных файлов.

Быстрое решение этой проблемы — извлечь файлы еще раз. Но если вы попытаетесь извлечь ZIP-файл из той же директории, что и раньше, unzip предложит вам принять решение относительно перезаписи файлов. Ожидается один из следующих ответов.

Помимо ответа r (переименование), эти ответы чувствительны к регистру.

  1. y: да, переписать этот файл
  2. n: нет, не перезаписывать этот файл
  3. A: Все, переписать все файлы
  4. N: Нет, перезаписать ни один из файлов
  5. r: переименовать, распаковать этот файл, но дать ему новое имя. Вам будет предложено ввести новое имя.

Чтобы заставить unzip перезаписывать любые существующие файлы, используйте опцию -o (перезапись).

unzip -o -q source_code.zip

Наиболее эффективный способ заменить отсутствующие файлы — unzip только те файлы в архиве, которые не находятся в целевом каталоге. Для этого используйте параметр -n (никогда не перезаписывать).

unzip -n source_code.zip

Глядя внутрь ZIP-файла

Часто полезно и поучительно видеть список файлов внутри ZIP-файла перед его извлечением. Вы можете сделать это с опцией -l (архив списка). Это запускает less чтобы сделать вывод управляемым.

unzip -l source_code.zip | less

Вывод показывает каталоги и файлы в ZIP-файле, их длину и время и дату, когда они были добавлены в архив. Нажмите «q», чтобы выйти из less.

Как мы увидим, есть другие способы заглянуть внутрь ZIP-файла, который предоставляет различные типы информации.

Добавить пароль с помощью команды zipcloak

Если вы создали ZIP-файл, но забыли добавить пароль, что вы можете сделать? Вы можете быстро добавить пароль в ZIP-файл с помощью команды zipcloak. Передайте имя файла ZIP в командной строке. Вам будет предложено ввести пароль. Вам необходимо подтвердить пароль, введя его во второй раз.

zipcloak source_code.zip

Просмотр сведений о файле с помощью команды zipdetails

Команда zipdetails покажет вам много информации о ZIP-файле. Единственный разумный способ обработать количество вывода, которое может дать эта команда, состоит в том, чтобы передать его через less.

zipdetails source_code.zip | less

Обратите внимание, что информация будет содержать имена файлов, даже если ZIP-файл защищен паролем. Информация этого типа хранится в ZIP-файле в виде метаданных и не является частью зашифрованных данных.

Поиск внутри файла с помощью команды zipgrep

Команда zipgrep позволяет вам искать файлы в ZIP-файле. В следующем примере мы хотим знать, какие файлы в ZIP-файле содержат текст «keyval.h».

zipgrep keyval.h source_code.zip

Мы видим, что файлы slang.c и getval.c содержат строку «keyval.h». Мы также видим, что в ZIP-файле есть две копии каждого из этих файлов в разных каталогах.

Просмотр информации с помощью команды zipinfo

Команда zipinfo дает вам еще один способ заглянуть внутрь ZIP-файла. Как и прежде, мы транслируем вывод через less.

zipinfo source_code.zip | less

Слева направо вывод показывает:

  • Файл разрешений
  • Версия инструмента, использованного для создания файла ZIP
  • Исходный размер файла
  • Файловый дескриптор (описан ниже)
  • Метод сжатия (в данном случае дефляция)
  • Данные и отметка времени
  • Название файла и любой каталог

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

  1. -: если ни один не существует, символ будет дефисом
  2. l: если есть расширенный локальный заголовок, но нет дополнительного поля
  3. x: если расширенного локального заголовка нет, но есть дополнительное поле
  4. X: если есть расширенный локальный заголовок и есть дополнительное поле

Разделить файл командой zipsplit

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

Опция -n (размер) позволяет вам установить максимальный размер для каждого из новых файлов ZIP. В этом примере мы source_code.zip файл source_code.zip . Мы не хотим, чтобы новые ZIP-файлы были больше 100 КБ (102400 байт).

zipsplit -n 102400 source_code.zip

Выбранный вами размер не может быть меньше размера любого из файлов в ZIP-файле.

Используя эти команды, вы можете создавать свои собственные ZIP-файлы, распаковывать полученные ZIP-файлы и выполнять с ними различные другие операции, даже не покидая терминал Linux.



2019-05-17T10:22:18
Вопросы читателей

Клонирование жёсткого диска на Linux

То, что вы работаете в операционной системе Linux, не означает, что вы не будете время от времени сталкиваться с проблемами. Всегда хорошо иметь план резервного копирования, на случай, если возникнет проблема. Возможно, редкий вирус Linux будет атаковать; возможно, вы будете жертвами мошенников-вымогателей. Может быть, жесткий диск (HDD) выйдет из строя.

Клонируя жесткий диск Linux, вы создаете образ диска, который можно восстановить позже. Но как вы клонируете свой жесткий диск Linux?

Инструменты клонирования дисков Linux

Ваша установка Linux может привести к ошибке; Вы можете обновить жесткий диск до большего объема. Безотносительно проблемы, если у вас есть резервная копия вашего диска, восстановить и запустить все будет относительно просто.

В Linux есть четыре решения для клонирования дисков, которые вы должны рассмотреть:

  • dd
  • Partimage
  • Partclone
  • Clonezilla

Используете ли вы функции, встроенные в вашу операционную систему Linux, или устанавливаете сторонний инструмент, не должно пройти много времени, прежде чем вы сможете восстановить свою систему и запустить ее.

Давайте рассмотрим каждый из четырех основных вариантов клонирования диска в Linux.

1. dd: инструмент для клонирования Native Linux

Возможно, самый мощный инструмент Linux из всех, dd (иногда называемый «разрушитель диска»), может клонировать весь жесткий диск или раздел диска в другой. Но в случае неправильного использования он может удалить содержимое вашего диска.

Таким образом, вы должны использовать с особой осторожностью. Вы найдете dd встроенный в большинство операционных систем Linux. Если нет, установите его из менеджера пакетов. Чтобы клонировать жесткий диск вашего компьютера, используйте команду:

dd if=/dev/sdX of=/dev/sdY bs=64K conv=noerror,sync

Здесь sdX — это исходный диск, а sdY — место назначения. Числовое значение 64K соответствует команде размера блока, bs. Значение по умолчанию составляет 512 байт, что очень мало, поэтому лучше включить 64K или более 128K в качестве условия. Однако: хотя больший размер блока делает передачу быстрее, меньший размер блока делает передачу более надежной.

Если вы хотите клонировать только раздел вашего диска, используйте

dd if=/dev/sda1 of=/dev/sdb1 bs=64K conv=noerror,sync

Как вы можете видеть, раздел sda1 (то есть раздел 1 на устройстве sda) будет клонирован в sdb1 (вновь созданный раздел 1 на устройстве sdb), например, вторичный или внешний жесткий диск, подключенный к вашему компьютеру.

Нажмите Enter, чтобы запустить команду. Сколько времени это займет, будет зависеть от размера диска или раздела. Просто убедитесь, что объем назначения достаточно велик для его хранения!

2. Инструмент клонирования разделов Linux, Partimage

Если вы столкнулись с проблемами, пытаясь разобраться с инструкциями с помощью dd, или предпочли бы избежать случайного удаления вашего жесткого диска с опечаткой, partimage также доступен для большинства дистрибутивов и не несет риска «уничтожения диска»!

Однако partimage не поддерживает файловую систему ext4, поэтому избегайте ее использования для клонирования дисков или разделов этого типа. Однако при необходимости его можно использовать для клонирования дисковых форматов Windows (FAT32 или NTFS, хотя это экспериментально), а также для более широко используемой файловой системы Linux ext3 и других более старых альтернатив.

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

Для Ubuntu установите:

sudo apt install partimage

Запустите из командной строки:

sudo partimage

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

Нажмите вправо на клавиши со стрелками, чтобы перейти к следующему разделу, затем Image file to create/use и дайте ему имя (или введите имя файла изображения, которое будет восстановлено).

Выберите Action to be done (убедитесь, что у выбранной опции есть звездочка) и нажмите F5, чтобы продолжить. На следующем экране выберите уровень сжатия и предпочитаемые параметры. Вы также можете выбрать режим разделения изображений и указать, что должно произойти после создания резервной копии.

Нажмите F5, чтобы продолжить, подтвердите данные, затем нажмите OK, чтобы начать процесс. Скорость этого будет зависеть от мощности вашего компьютера.

Если вы ищете быстрое и грязное, но безопасное решение для клонирования дисков для Linux, используйте partimage.

3. Partclone: ​​программное обеспечение для создания разделов и клонирования

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

sudo apt install partclone

И запустить с:

partclone.[fstype]

… Где [fstype] — тип файловой системы раздела, который вы хотите клонировать.

Следующая команда создаст образ диска hda1 (жесткий диск 1, раздел 1) с именем hda1.img:

partclone.ext3 -c -d -s /dev/hda1 -o hda1.img

Возможно, вы захотите восстановить это изображение, поэтому используйте

partclone.extfs -r -d -s hda1.img -o /dev/hda1

Более подробную информацию об использовании можно найти на сайте partclone.

4. Клонируйте свой диск Linux с помощью Clonezilla

Для более гибкого решения, почему бы не попробовать Clonezilla? Это популярное решение для аварийного восстановления основано на Partclone и предназначено для ряда задач клонирования дисков. Поддерживаются все ожидаемые файловые системы в Linux, Windows и MacOS (и за ее пределами).

В отличие от dd и Partclone, Clonezilla доступен в виде загрузочного ISO. Вы можете записать это на DVD или USB-накопитель, чтобы полностью клонировать жесткий диск Linux. Clonezilla проста в использовании, с меню на клавиатуре, а не с непонятными командами, так что любой может справиться с этим.

Хотя Clonezilla можно настроить как отдельную утилиту, вы можете предпочесть использовать ее как часть инструмента восстановления Boot CD от Hiren.

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

Загрузить: Clonezilla

Клонировать ваш жесткий диск Linux легко

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

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



2019-05-15T11:07:19
Вопросы читателей

Сравнение файлов в консоли Linux

Нужно увидеть различия между двумя ревизиями текстового файла? Тогда diff — это команда, которая вам нужна. Из этого туториала вы узнаете, как легко использовать diff в Linux и macOS.

Погружение в diff

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

Давайте углубимся и проанализируем два файла. Порядок файлов в командной строке определяет, какой файл diff считает «первым файлом», а какой — «вторым файлом». В приведенном ниже примере alpha1 — это первый файл, а alpha2 — второй файл. Оба файла содержат фонетический алфавит, но второй файл, alpha2, подвергся некоторому дальнейшему редактированию, так что эти два файла не идентичны.

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

diff alpha1 alpha2

Как мы анализируем этот результат? Если вы знаете, что искать, это не так уж плохо. Каждое различие перечисляется по очереди в одном столбце, и каждое различие помечается. Ярлык содержит цифры по обе стороны от буквы, например 4c4. Первое число — это номер строки в alpha1, а второе — номер строки в alpha2. Буква в середине может быть:

  • c: Строка в первом файле должна быть изменена, чтобы соответствовать строке во втором файле.
  • d: строка в первом файле должна быть удалена, чтобы соответствовать второму файлу.
  • a: Дополнительный контент должен быть добавлен в первый файл, чтобы он соответствовал второму файлу.

4c4 в нашем примере говорит нам, что четвертая строка alpha1 должна быть изменена, чтобы соответствовать четвертой строке alpha2. Это первое различие между двумя найденными файлами.

Строки, начинающиеся с < ссылаются на первый файл в нашем примере alpha1, а строки, начинающиеся с > ссылаются на второй файл, alpha2. Строка < Delta говорит нам, что слово Delta — это содержимое строки четыре в alpha1. Строка > Dave говорит нам, что слово Dave — это содержимое строки четыре в alpha2. Подводя итог, нам нужно заменить Delta на Dave в четвертой строке в alpha1, чтобы эта строка соответствовала обоим файлам.

Следующее изменение обозначено 12c12 . Применяя ту же логику, это говорит нам о том, что строка 12 в alpha1 содержит слово Lima, а строка 12 в alpha2 содержит слово Linux.

Третье изменение относится к строке, которая была удалена из alpha2. Метка 21d20 расшифровывается как «строка 21 должна быть удалена из первого файла, чтобы синхронизировать оба файла со строки 20 и далее». Строка < Uniform показывает нам содержимое строки, которую необходимо удалить из alpha1.

Четвертое отличие обозначено 26a26,28 . Это изменение относится к трем дополнительным строкам, которые были добавлены в alpha2. Обратите внимание на 26,28 на этикетке. Номера в две строки, разделенные запятой, представляют собой диапазон номеров строк. В этом примере диапазон составляет от строки 26 до строки 28. Метка интерпретируется как «в строке 26 в первом файле добавьте строки 26–28 из второго файла». Нам показаны три строки в alpha2, которые необходимо быть добавленным к альфа1. Они содержат слова Quirk, Strange и Charm.

Snappy One-Liners

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

diff -s alpha1 alpha3

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

diff -q alpha1 alpha2

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

Альтернативный взгляд

Опция -y (рядом) использует другую компоновку для описания различий в файлах. Часто удобно использовать параметр -W (ширина) с видом рядом, чтобы ограничить количество отображаемых столбцов. Это позволяет избежать появления уродливых строк, которые затрудняют чтение. Здесь мы указали diff производить параллельное отображение и ограничивать вывод до 70 столбцов.

diff -y -W 70 alpha1 alpha2

Первый файл в командной строке, alpha1, показан слева, а вторая строка в командной строке, alpha2, показана справа. Строки из каждого файла отображаются рядом. Рядом с этими строками в alpha2 есть символы индикатора, которые были изменены, удалены или добавлены.

  • |: Строка, которая была изменена во втором файле.
  • <: Строка, которая была удалена из второго файла.
  • >: Строка, добавленная ко второму файлу, которого нет в первом файле.

Если вы предпочитаете более компактную сводную информацию о различиях в файлах, используйте параметр --suppress-common-lines. Это заставляет diff перечислять только измененные, добавленные или удаленные строки.

diff -y -W 70 --suppress-common-lines alpha1 alpha2

Добавьте цветовую подсветку

Другая утилита под названием colordiff добавляет цветовую подсветку к выводу diff. Это позволяет намного легче увидеть, какие линии имеют различия.

Используйте apt-get для установки этого пакета в вашу систему, если вы используете Ubuntu или другой дистрибутив на основе Debian. В других дистрибутивах Linux используйте инструмент управления пакетами вашего дистрибутива Linux.

sudo apt-get install colordiff

Используйте colordiff же, как вы используете diff.

На самом деле, colordiff — это оболочка для diff, и diff делает всю работу за кулисами. Из-за этого все опции diff будут работать с colordiff.

Предоставление определённого контекста

Чтобы найти некоторую золотую середину между наличием всех строк в файлах, отображаемых на экране, и наличием в списке только измененных строк, мы можем попросить diff предоставить некоторый контекст. Есть два способа сделать это. Оба способа достигают одной и той же цели — показывать несколько строк до и после каждой измененной строки. Вы сможете увидеть, что происходит в файле в том месте, где была обнаружена разница.

Первый метод использует опцию -c (скопированный контекст).

colordiff -c alpha1 alpha2

Вывод diff имеет заголовок. В заголовке перечислены два имени файла и время их изменения. Звездочки (*) перед именем первого файла и тире (-) перед именем второго файла. Звездочки и тире будут использоваться, чтобы указать, какому файлу принадлежат строки в выходных данных.

Линия звездочек с 1,7 в середине указывает на то, что мы смотрим на линии от alpha1. Чтобы быть точным, мы смотрим на строки с первой по седьмую. Слово Delta помечается как измененное. Он имеет восклицательный знак (!) Рядом с ним, и он красный. Есть три строки не измененного текста, отображаемые до и после этой строки, поэтому мы можем видеть контекст этой строки в файле.

Линия штрихов с 1,7 в середине говорит о том, что мы сейчас смотрим на линии из alpha2. Опять же, мы смотрим на строки с первой по седьмую, причем слово Dave на четвертой строке помечено как отличающееся.

Три строки контекста выше и ниже каждого изменения — это значение по умолчанию. Вы можете указать, сколько строк контекста вы хотите предоставить diff . Для этого используйте опцию -C (скопированный контекст) с заглавной буквой «C» и укажите количество строк, которое вам нужно:

colordiff -C 2 alpha1 alpha2

Вторая опция diff которая предлагает контекст, это опция -u (унифицированный контекст).

colordiff -u alpha1 alpha2

Как и раньше, у нас есть заголовок на выходе. Эти два файла названы, и показано время их изменения. Есть тире (-) перед названием альфа1 и знаки плюс (+) перед названием альфа2. Это говорит нам о том, что тире будут использоваться для обозначения альфа1, а знаки плюс будут использоваться для обозначения альфа2. По всему списку разбросаны строки, начинающиеся со знаков (@). Эти строки отмечают начало каждого различия. Они также говорят нам, какие строки показываются из каждого файла.

Нам показывают три строки до и после строки, помеченной как отличающиеся, чтобы мы могли видеть контекст измененной строки. В едином представлении линии с разницей показаны одна над другой. Перед строкой из alpha1 стоит тире, а перед строкой из alpha2 стоит знак плюс. Это отображение достигает в восьми строках того, что для скопированного контекстного дисплея выше потребовалось пятнадцать.

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

 colordiff -U 2 alpha1 alpha2

Игнорирование пустого пространства

Давайте проанализируем еще два файла, test4 и test5. В них есть имена шести супергероев.

colordiff -y -W 70 test4 test5

Результаты показывают, что diff находит ничего особенного с линиями Black Widow, Spider-Man и Thor. Он отмечает изменения с линиями Капитан Америка, Железный человек и Халк.

Так что же отличается? Что ж, в тесте 5 Халк пишется строчной буквой «h», а у «Капитана Америка» есть дополнительный пробел между «Капитаном» и «Америкой». Хорошо, это ясно, но что не так с линией Ironman? Там нет видимых различий. Вот хорошее эмпирическое правило. Если вы не видите этого, ответ — пробел. В конце этой строки почти наверняка есть пробел или два, или символ табуляции.

Если они не имеют значения для вас, вы можете diff игнорировать определенные типы различий строк, в том числе:

  • -i: игнорировать различия в случае.
  • -Z: игнорировать конечные пробелы.
  • -b: игнорировать изменения количества пустого пространства.
  • -w: игнорировать все изменения пробелов.

Давайте попросим diff снова проверить эти два файла, но на этот раз, чтобы игнорировать любые различия в случае.

colordiff -i -y -W 70 test4 test5

Строки с «The Hulk» и «The Hulk» теперь считаются совпадением, и для строчной буквы «h» не отмечается никакой разницы. Давайте попросим diff также игнорировать конечный пробел.

colordiff -i -Z -y -W 70 test4 test5

Как и предполагалось, конечный пробел должен был быть различием на линии Ironman, потому что diff больше не помечает разницу для этой линии. Это оставляет Капитана Америку. Давайте попросим diff игнорировать регистр и игнорировать все проблемы с пробелами.

colordiff -i -w -y -W 70 test4 test5

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

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



2019-04-15T18:30:02
Вопросы читателей