<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Аникин: заметки с тегом mbr</title>
<link>https://anikin.pw/tags/mbr/</link>
<description>Блог об администрировании Linux, BSD и не только</description>
<author></author>
<language>ru</language>
<generator>Aegea 11.3 (v4134)</generator>

<itunes:subtitle>Блог об администрировании Linux, BSD и не только</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Замена диска в програмном RAID1 в Linux</title>
<guid isPermaLink="false">32</guid>
<link>https://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/</link>
<pubDate>Fri, 08 Aug 2014 09:42:17 +0300</pubDate>
<author></author>
<comments>https://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/</comments>
<description>
&lt;p&gt;Оглавление:&lt;/p&gt;
&lt;p&gt;
&lt;ol&gt;
&lt;a href="http://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/#del"&gt;I. Удаление диска из массива&lt;/a&gt;&lt;/br&gt;
&lt;a href="http://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/#add"&gt;II. Добавление диска в массив после замены&lt;/a&gt;&lt;/br&gt;
&lt;a href="http://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/#parttabl"&gt;&amp;emsp;1. Определение таблицы разделов(GPT или MBR) и перенос её на новый диск&lt;/a&gt;&lt;/br&gt;
&lt;a href="http://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/#adddisk"&gt;&amp;emsp;2. Добавление диска в массив&lt;/a&gt;&lt;/br&gt;
&lt;a href="http://anikin.pw/all/zamena-dika-v-programnom-raid1-v-linux/#grub"&gt;III. Установка загрузчика&lt;/a&gt;
&lt;/ol&gt;&lt;p&gt;
У нас есть сервер в котором 2 диска: /dev/sda и /dev/sdb. Эти диски собраны у нас в софтверный RAID1 с помощью mdadm. Один из дисков вышел из строя, в нашем случае это /dev/sdb.&lt;p&gt;
&lt;a name="del"&gt;&lt;/a&gt;
&lt;b&gt;I. Удаление диска из массива&lt;/b&gt;&lt;p&gt;

Перед заменой диска желательно убрать диск из массива. Для начала проверим как размечен диск в массиве:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# cat /proc/mdstat 
Personalities : [raid1] [raid0] [raid6] [raid5] [raid4] 
md2 : active raid1 sda4[0] sdb4[1]
      1456504640 blocks super 1.2 [2/2] [UU]
      
md1 : active raid1 sda3[0] sdb3[1]
      7996352 blocks super 1.2 [2/2] [UU]
      
md0 : active raid1 sda2[0] sdb2[1]
      499392 blocks super 1.2 [2/2] [UU]
      
unused devices: &amp;lt;none&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;

В данном случае массив собран так. Что md0 состоит из sda2 и sdb2, md1 из sda3 и sdb3, md2 из sda4 и sdb4. На этом сервере md0 это /boot, md1 — своп, md2 — корень. Убираем sdb из всех устройств.&lt;p&gt;

&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# mdadm /dev/md0 --remove /dev/sdb2
# mdadm /dev/md1 --remove /dev/sdb3
# mdadm /dev/md2 --remove /dev/sdb4&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;

Если разделы из массива не удаляются, это как в нашем случае. Mdadm не считает диск неисправным и использует его, и при удалении мы увидим ошибку, что устройство используется. В этом случае перед удалением помечаем диск как сбойный.&lt;p&gt;

&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# mdadm /dev/md0 -f /dev/sdb2
# mdadm /dev/md1 -f /dev/sdb3
# mdadm /dev/md2 -f /dev/sdb4&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;

А затем снова выполним команды по удалению разделов из массива.
Все, мы удалили сбойный диск из массива. Теперь можем писать в датацентр запрос на замену диска.&lt;p&gt;
&lt;a name="add"&gt;&lt;/a&gt;
&lt;b&gt;II. Добавление диска в массив после замены&lt;/b&gt;&lt;p&gt;
&lt;a name="parttabl"&gt;&lt;/a&gt;
&amp;emsp;&amp;emsp;&lt;b&gt;1. Определение таблицы разделов(GPT или MBR) и перенос её на новый диск&lt;/b&gt;&lt;p&gt;
После замены поврежденного диска нужно добавить новый диск в массив. Для этого надо определить какая у нас таблица разделов: GPT или MBR. Для этого будем использовать gdisk
Установим gdisk:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# apt-get install gdisk -y&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Выполняем:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# gdisk -l /dev/sda&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Где /dev/sda — исправный диск находящийся в raid.
В выводе будет примерно это для MBR:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Partition table scan:
MBR: MBR only
BSD: not present
APM: not present
GPT: not present&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;

И примерно это для GPT:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;

Перед добавлением диска в массив нам нужно на нем создать разделы в точности такие же как и  на sda. В зависимости от разметки диска это делается по разному.&lt;p&gt;
&lt;b&gt;Копирование разметки для GPT:&lt;/b&gt;&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# sgdisk -R /dev/sdb /dev/sda&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Здесь надо быть внимательным. Первым пишется диск на который копируется разметка, а вторым с которого копируют. Если перепутать их местами, то разметка на изначально исправном диске будет уничтожена.&lt;/br&gt;
Даем диску новый случайный UIDD:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# sgdisk -G /dev/sdb&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
&lt;b&gt;Копирование разметки для MBR:&lt;/b&gt;&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# sfdisk -d /dev/sda | sfdisk /dev/sdb&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Здесь наоборот первым пишется диск с которого переносим разметку, а вторым на который переносим.
Если разделы не видны в системе, то можно перечитать таблицу разделов командой:&lt;p&gt;
&lt;/code&gt;# sfdisk -R /dev/sdb&lt;/code&gt;&lt;p&gt;
&lt;a name="adddisk"&gt;&lt;/a&gt;
&amp;emsp;&amp;emsp;&lt;b&gt;2. Добавление диска в массив&lt;/b&gt;&lt;p&gt;
Когда мы создали разделы на /dev/sdb, то можно добавлять диск в массив.&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# mdadm /dev/md0 -a /dev/sdb2
# mdadm /dev/md1 -a /dev/sdb3
# mdadm /dev/md2 -a /dev/sdb4&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
&lt;a name="grub"&gt;&lt;/a&gt;
&lt;b&gt;III. Установка загрузчика&lt;/b&gt;&lt;p&gt;
После добавления диска в массив нужно установить на него загрузчик. Если сервер загружен в нормальном режиме, то это делается одной командой:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# grub-install /dev/sdb&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Если сервер загружен в recovery или rescue, т.е с live cd, то установка загрузчика выглядит следующим образом.&lt;/br&gt;
Монтируем корневую файловую систему в  /mnt:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# mount /dev/md2 /mnt&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Монтируем boot:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# mount /dev/md0 /mnt/boot&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Монтируем /dev, /proc и /sys:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# mount --bind /dev /mnt/dev
# mount --bind /proc /mnt/proc
# mount --bind /sys  /mnt/sys&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Затем делаем chroot в примонтированную систему:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# chroot /mnt&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
И устанавливаем grub на sdb:&lt;p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# grub-install /dev/sdb&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Теперь можно попробовать загрузится в нормальный режим.
&lt;p&gt;
&lt;b&gt;P.S.&lt;/b&gt;
Если при установке загрузчика возникнет ошибка Could not find device for /boot/boot: not found or not a block device то вам &lt;a href="http://anikin.pw/all/could-not-find-device-for-boot-boot-not-found-or-not-a-block-dev/"&gt;сюда&lt;/a&gt;.</description>
</item>

<item>
<title>Создание установочной флешки Windows 7 из под Linux.</title>
<guid isPermaLink="false">10</guid>
<link>https://anikin.pw/all/sozdanie-ustanovochnoy-fleshki-windows-7-iz-pod-linux/</link>
<pubDate>Sun, 20 Oct 2013 11:22:51 +0300</pubDate>
<author></author>
<comments>https://anikin.pw/all/sozdanie-ustanovochnoy-fleshki-windows-7-iz-pod-linux/</comments>
<description>
Несколько способов создать загрузочную флешку Windows 7 из под linux.&lt;p&gt;

Способ первый:&lt;p&gt;

Командой fdisk -l определяем флешку. Затем с помощью dd записываем iso образ c windows на флешку:&lt;p&gt;

&lt;code&gt;# dd if=/home/user/windows7.iso of=/dev/sdX&lt;/code&gt;&lt;p&gt;

Где /dev/sdX — флешка. Теперь вот &lt;a href="http://ms-sys.sourceforge.net/" target="_blank"&gt;здесь&lt;/a&gt; качаешь и по инструкции устанавливаешь утилиту ms-sys, которая пропишет правильную MBR для нашей флешки. &lt;p&gt;
Установка простая:&lt;p&gt;

2. Installation&lt;p&gt;
---------------&lt;p&gt;

Step 1, unpack the archive:&lt;p&gt;

tar -xzvf ms-sys*.tgz&lt;p&gt;

Step 2, compile:&lt;p&gt;

cd ms-sys&lt;p&gt;
make&lt;p&gt;

Step 3, become root and install&lt;p&gt;

su (and give password)&lt;p&gt;
make install&lt;p&gt;
Думаю здесь всё понятно. Затем выполняем:&lt;p&gt;

&lt;code&gt;# ms-sys -7 /dev/sdX&lt;/code&gt;&lt;p&gt;

Загружаемся с флешки и устанавливаем windows.&lt;p&gt;

Способ второй:&lt;p&gt;

С помощью unetbootin. Сразу скажу, что не знаю насколько работает этот способ. У меня изначально не сложились отношения с unetbootin, на мой взгляд слишком сырая программа, ИМХО. Но многим нравится.&lt;p&gt;

Для начала нужно отформатировать флешку в ntfs. Проверьте чтобы флешка была отмонтирована. Если это не так, то отмонтируйте командой umount. Форматируем:&lt;p&gt;

&lt;code&gt;# mkfs.ntfs /dev/sdX&lt;/code&gt;&lt;p&gt;

Затем устанавливаем unetbootin.&lt;p&gt;

&lt;code&gt;# apt-get install unetbootin&lt;/code&gt;&lt;p&gt;

Запускаем. Выглядит она вот так:&lt;p&gt;

&lt;a href="https://anikin.pw/pictures/uploads/Snimok-e`krana-ot-2013-10-20-101758.png"&gt;&lt;img src="https://anikin.pw/pictures/uploads/Snimok-e`krana-ot-2013-10-20-101758-300x223.png" alt="Снимок экрана от 2013-10-20 10:17:58" width="300" height="223" class="alignnone size-medium wp-image-20" /&gt;&lt;/a&gt;&lt;p&gt;

Выбираем образ, ваш носитель(/dev/sdX) и нажимаем «ОК». После создания флешки, загружаемся с неё и устанавливаем windows.&lt;p&gt;

Способ третий:&lt;p&gt;

На мой взгляд самый лучший и простой способ. С помощью утилиты winusb. Плюс этой утилиты в том что на флешку она ставит загрузчик grub, который отлично загружается практически на всём возможном железе. И уже grub запускает установщик windows. Установка програмы очень проста:&lt;p&gt;

&lt;code&gt;# add-apt-repository ppa:colingille/freshlight&lt;p&gt;
# apt-get update&lt;p&gt;
# apt-get install winusb&lt;/code&gt;&lt;p&gt;

А интерфейс ещё проще чем установка.&lt;p&gt;

&lt;a href="https://anikin.pw/pictures/uploads/Snimok-e`krana-ot-2013-10-20-101914.png"&gt;&lt;img src="https://anikin.pw/pictures/uploads/Snimok-e`krana-ot-2013-10-20-101914-228x300.png" alt="Снимок экрана от 2013-10-20 10:19:14" width="228" height="300" class="alignnone size-medium wp-image-21" /&gt;&lt;/a&gt;&lt;p&gt;

Выбираете либо iso образ, либо диск в приводе. Выделяете вашу флешку. Затем жмете кнопку install. Загружаетесь с флешки, устанавливаете windows.&lt;p&gt;

Вот три простейших способа создать загрузочную флешку windows 7 из под Linux.</description>
</item>


</channel>
</rss>