Создание microSD-карты с образом: различия между версиями

Нет описания правки
Строка 3: Строка 3:
* Распакуйте образ архив с образом
* Распакуйте образ архив с образом


'''Образ с названием, оканчивающимся на _wb28 предназначен для WB rev. 2.8 и не подходит для Wiren Board Smart Home!'''
'''Образ с названием, оканчивающимся на _wb4 предназначен для Wiren Board 4'''


'''Образ с названием, оканчивающимся на _wb3 предназначен для Wiren Board Smart Home 3.5'''
'''Для Wiren Board Smart Home с серийными номерами больше 300 необходимо использовать образ с "newwifi" в названии'''
'''Для Wiren Board Smart Home с серийными номерами больше 300 необходимо использовать образ с "newwifi" в названии'''


'''В стандартном образе нет раздела подкачки, из-за этого может не хватать оперативной памяти для полного обновления ОС (через apt-get), решением может быть как создание отдельного файла подкачки, так и [[#Расширение корневого раздела|создание раздела]]'''
'''Образ с названием, оканчивающимся на _wb28 предназначен для WB rev. 2.8'''
 
 
 




Строка 44: Строка 48:
</pre>
</pre>


===Расширение корневого раздела===
По-умолчанию образ рассчитан на флеш-карту размером 4Гб и в нём нет раздела подкачки памяти (swap-раздела). Если ваша флеш-карта большего размера, то рекомендуется создать swap раздел, а так же расширить корневой раздел так, чтобы он занимал всё доступное пространство.
* Для начала нужно создать раздел подкачки (если вы считаете, что в нём нет необходимости, то можно пропустить этот шаг). Раздела размером 128Мб должно быть достаточно. Разместить раздел нужно в '''конце''' диска, чтобы осталось место для расширения корневого раздела (для этого можно воспользоваться дружелюбной утилитой cfdisk).
<pre>
cfdisk /dev/mmcblk0
</pre>
Далее нужно расширить корневой раздел на всё оставшееся место.


Менять таблицу разделов на этот раз будем при помощи утилиты ''fdisk''. Процедура расширения раздела проста, мы удалим текущий раздел, а затем создадим новый, начинающийся ровно с того же цилиндра, но заканчивающийся на цилиндре перед наши разделом подкачки. При этом изменяться будет только таблица разделов, данные самих разделов меняться не будут.
* Запустим fdisk.
<pre>
fdisk -u /dev/mmcblk0
</pre>
* Выводим текущую таблицу разделов
<pre>
Command (m for help): p


Disk /dev/mmcblk0: 8001 MB, 8001683456 bytes
4 heads, 16 sectors/track, 244192 cylinders, total 15628288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


        Device Boot      Start        End      Blocks  Id  System
/dev/mmcblk0p1            8192      40959      16384  53  OnTrack DM6 Aux3
/dev/mmcblk0p2          40960    7796735    3877888  83  Linux
/dev/mmcblk0p3        13628288    15628287    1000000  83  Linux
</pre>


Стартовый цилиндр изменяемого нами раздела имеет номер 40960, запомним его, он потребуется нам далее.


* Удалим раздел
<pre>
Command (m for help): d
Partition number (1-4): 2
Command (m for help): p
Disk /dev/mmcblk0: 8001 MB, 8001683456 bytes
4 heads, 16 sectors/track, 244192 cylinders, total 15628288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
        Device Boot      Start        End      Blocks  Id  System
/dev/mmcblk0p1            8192      40959      16384  53  OnTrack DM6 Aux3
/dev/mmcblk0p3        13628288    15628287    1000000  83  Linux
</pre>
* И создадим заново, обратив внимание на то, что стартовый цилиндр и номер создаваемого раздела, должны быть в точности таким же, как у удаленного т.е. 40960 и 2.
<pre>
Command (m for help): n
Partition type:
  p  primary (2 primary, 0 extended, 2 free)
  e  extended
Select (default p): p
Partition number (1-4, default 2): 2
First sector (2048-15628287, default 2048): 40960
Last sector, +sectors or +size{K,M,G} (40960-13628287, default 13628287): '''<Enter>'''
</pre>
* Проверяем, что всё правильно, убеждаемся, что каждый следующий раздел начинается со следующего цилиндра от предыдущего.
<pre>
Command (m for help): p
Disk /dev/mmcblk0: 8001 MB, 8001683456 bytes
4 heads, 16 sectors/track, 244192 cylinders, total 15628288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
        Device Boot      Start        End      Blocks  Id  System
/dev/mmcblk0p1            8192      40959      16384  53  OnTrack DM6 Aux3
/dev/mmcblk0p2          40960    13628287    6793664  83  Linux
/dev/mmcblk0p3        13628288    15628287    1000000  83  Linux
</pre>
* Записываем изменения на диск.
<pre>
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Устройство или ресурс занято.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
</pre>
* Выходим из parted набрав '''q''' и и просим ядро обновить свою информацию о разделе командой '''partx'''.
<pre>
root@wirenboard:~# partx /dev/mmcblk0p2
# 2:    40960- 13628287 ( 13587328 sectors,  6956 MB)
</pre>
* Обновляем таблицу ФС для нового размера командой '''resize2fs'''.
<pre>
root@wirenboard:~# resize2fs /dev/mmcblk0p2
resize2fs 1.42.5 (29-Jul-2012)
Filesystem at /dev/mmcblk0p2 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
[ 1159.480000] EXT4-fs (mmcblk0p2): resizing filesystem from 969472 to 1698416 blocks
[ 1159.910000] EXT4-fs (mmcblk0p2): resized filesystem to 1698416
The filesystem on /dev/mmcblk0p2 is now 1698416 blocks long.
</pre>
Перезагружаем машину и убеждаемся, что всё прошло хорошо.
<pre>
root@wirenboard:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          6.4G  801M  5.4G  13% /
...
</pre>
Осталось доделать раздел подкачки.
* Форматируем раздел подкачки
<pre>
root@wirenboard:~# mkswap /dev/mmcblk0p3
</pre>
* Добавляем раздел подкачки в /etc/fstab и активируем его.
<pre>
echo "/dev/mmcblk0p3  swap        swap  defaults            0  0" >> /etc/fstab
swapon -a
</pre>


==Создание образа по частям==
==Создание образа по частям==