ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Alexey V. Vissarionov" <gremlin@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] разбивалка диска (почему-то было: Шаги инсталлятора)
Date: Thu, 21 Jun 2018 12:36:35 +0300
Message-ID: <20180621093635.GC15692@altlinux.org> (raw)
In-Reply-To: <20180621081743.GT20609@imap.altlinux.org>

[-- Attachment #1: Type: text/plain, Size: 2825 bytes --]

On 2018-06-21 11:17:43 +0300, Michael Shigorin wrote:

 >> решил пока сильно шашкой не размахивать, а осилить "маленький,
 >> но важный кусочек", связанный с разбивкой диска,
 > Это ни разу не "маленький", а САМЫЙ (с большим отрывом) сложный
 > кусок инсталятора для разработчика и для пользователя тоже.

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

 > Его сложность обусловлена, с одной стороной, огромным
 > наследием самых разных устройств

Практически все современные блочные устройства, используемые для
размещения корневой ФС, позволяют работать с ними точно так же,
как с жесткими дисками, а эти методы не менялись более 20 лет.

 > и вариантов организации данных на них,

Их, кстати, не так уж и много.

Вот есть физическое устройство /dev/sda; если его объем 2 Тб или
меньше, то создаем в его первом блоке MBR, а если больше, то GPT.
Если машина использует EFI, понадобится небольшой раздел с FAT32.
Если рядом есть физическое устройство /dev/sdb того же объема, то
можно рекомендовать пользователю создать зеркало. В любом случае
понадобится создать как минимум две ФС - / и /home, а для сервера
полезно еще и /var обособить (или /var/log - больше ничего совсем
большого в /var не бывает).

А, ну да: если держать корень на зеркале /dev/md0, то /home на
/dev/md1 может со временем расти - из зеркала в RAID-5, потом в
RAID-6, а потом только диски добавляй... в общем, примерно так:

md0 : active raid1 sdg1[3] sdf1[4] sde1[5] sda1[6] sdc1[1] sdb1[0] sdd1[2]
      9764800 blocks [7/7] [UUUUUUU]
md1 : active raid6 sdb2[0] sda2[4] sde2[5] sdf2[6] sdg2[7] sdd2[3] sdc2[1]
      14601845760 blocks super 1.2 level 6, 64k chunk, algorithm 2 [7/7]
      [UUUUUUU]

Аналогично наращивать можно и RAID-10, только диски нужно добавлять
парами, а надежность деградирует.

 > а с другой -- риском потери этих данных лёгким движением руки.

Главное - чтобы это происходило только в результате нажатия кнопки
"записать изменения": в этом случае ответственность за сохранность
данных полностью возлагается на пользователя ("ну, у вас ведь есть
резервная копия!").

 > Известных мне работающих "машинок состояния", которые умеют
 > "держать в уме" нюансы устройств/разбивок/ФС -- ровно два: libevms
 > (апстрим давно умер) и libparted (который, помнится, сделали из
 > партеда дебианщики для своего инсталятора).

Лично я не доверяю ни тому, ни другому. Поэтому просто озвучу хотелку:
нужна возможность запустить терминал и сделать вручную все необходимое
(в вышеприведенном примере это будет монтирование /dev/md0 в /target и
/dev/md1 в /target/home).


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

  parent reply	other threads:[~2018-06-21  9:36 UTC|newest]

Thread overview: 97+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-21  8:17 Michael Shigorin
2018-06-21  8:19 ` Anton Farygin
2018-06-21  8:30   ` Yuri Sedunov
2018-06-21 18:35     ` Leonid Krivoshein
2018-06-22  4:50       ` Anton Farygin
2018-06-22  8:32         ` Paul Wolneykien
2018-06-22  8:44           ` Alexey V. Vissarionov
2018-06-22  8:49             ` Paul Wolneykien
2018-06-22  8:51               ` Anton Farygin
2018-06-22  8:48           ` Anton Farygin
2018-06-22  8:53             ` Paul Wolneykien
2018-06-22  8:54               ` Anton Farygin
2018-06-22  8:58                 ` Paul Wolneykien
2018-06-22  9:06                   ` Anton Farygin
2018-06-25 11:08                     ` Sergey V Turchin
2018-06-25 11:23               ` Sergey V Turchin
2018-06-22 20:29           ` Leonid Krivoshein
2018-06-21  9:36 ` Alexey V. Vissarionov [this message]
2018-06-21  9:44   ` Anton V. Boyarshinov
2018-06-21  9:47     ` Michael Shigorin
2018-06-21 10:52       ` Anton Farygin
2018-06-21 10:59         ` Alexey V. Vissarionov
2018-06-21 21:45           ` Leonid Krivoshein
2018-06-22  4:59             ` Anton Farygin
2018-06-22  6:21               ` Alexey V. Vissarionov
2018-06-22  6:13             ` Alexey V. Vissarionov
2018-06-22  8:05               ` Anton Farygin
2018-06-22  8:53                 ` Alexey V. Vissarionov
2018-06-22  8:55                   ` Anton Farygin
2018-06-22  8:19               ` Leonid Krivoshein
2018-06-22  8:56                 ` Alexey V. Vissarionov
2018-06-21  9:54     ` Alexey V. Vissarionov
2018-06-21 19:52       ` [devel] Шаги инсталлятора Leonid Krivoshein
2018-06-21 10:51   ` [devel] разбивалка диска (почему-то было: Шаги инсталлятора) Anton Farygin
2018-06-21 11:08     ` Alexey V. Vissarionov
2018-06-21 11:15       ` Anton Farygin
2018-06-21 13:59         ` Alexey V. Vissarionov
2018-06-21 22:34           ` Leonid Krivoshein
2018-06-22  5:00             ` Anton Farygin
2018-06-22 13:50         ` Vitaly Lipatov
2018-06-22 14:02           ` Alexey V. Vissarionov
2018-06-23 11:16             ` Vitaly Lipatov
2018-06-23 11:37               ` Alexey V. Vissarionov
2018-06-23 16:23                 ` Vitaly Lipatov
2018-06-21 11:39       ` [devel] разбивалка диска Michael Shigorin
2018-06-21 12:22         ` Michael A. Kangin
2018-06-21 22:39           ` Leonid Krivoshein
2018-06-21 21:43     ` [devel] разбивалка диска (почему-то было: Шаги инсталлятора) Leonid Krivoshein
2018-06-22  5:01       ` Anton Farygin
2018-06-22  6:28         ` Alexey V. Vissarionov
2018-06-22  8:06           ` Anton Farygin
2018-06-22  9:00             ` Alexey V. Vissarionov
2018-06-22  9:03               ` Anton Farygin
2018-06-22  9:36                 ` Alexey V. Vissarionov
2018-06-22  9:39                   ` Anton Farygin
2018-06-22  9:49                     ` Alexey V. Vissarionov
2018-06-22  9:57                       ` Anton Farygin
2018-06-22  8:24         ` Leonid Krivoshein
2018-06-22  8:27           ` Anton Farygin
2018-06-22  9:06             ` Alexey V. Vissarionov
2018-06-22  9:11               ` Anton Farygin
2018-06-22 20:48                 ` Leonid Krivoshein
2018-06-23  9:19                   ` Anton Gorlov
2018-06-23 11:01                     ` Leonid Krivoshein
2018-06-23 13:56                       ` Anton Gorlov
2018-06-23 14:17                         ` Leonid Krivoshein
2018-06-23 20:44                           ` Anton Gorlov
2018-06-25  8:36                             ` Leonid Krivoshein
2018-06-25 22:06                                 ` Leonid Krivoshein
2018-06-23 11:14                     ` Leonid Krivoshein
2018-06-23 12:18                     ` Alexey V. Vissarionov
2018-06-23 14:06                       ` Anton Gorlov
2018-06-23 14:34                         ` Leonid Krivoshein
2018-06-23 16:16                           ` Anton Gorlov
2018-06-23 17:12                             ` Leonid Krivoshein
2018-06-23 17:31                               ` Anton Gorlov
2018-06-25  8:50                                 ` Leonid Krivoshein
2018-06-25 11:33                                   ` Anton Gorlov
2018-06-25 22:29                                     ` Leonid Krivoshein
2018-06-23 15:52                         ` Alexey V. Vissarionov
2018-06-23 16:13                           ` Anton Gorlov
2018-06-24  3:54                           ` Anton Farygin
2018-06-25  8:32                             ` Leonid Krivoshein
2018-06-25  8:59                             ` Alexey V. Vissarionov
2018-06-25 10:30                               ` Anton Farygin
2018-06-25 21:58                                 ` Leonid Krivoshein
2018-06-25 11:31                               ` Anton Gorlov
2018-06-25 12:25                                 ` Alexey V. Vissarionov
2018-06-25 12:46                                   ` Anton Gorlov
2018-06-25 14:57                                     ` Alexey V. Vissarionov
2018-06-25 17:55                                       ` Anton Gorlov
2018-06-25 22:25                                         ` Leonid Krivoshein
2018-06-25 22:14                                   ` Leonid Krivoshein
2018-06-21 19:43   ` Leonid Krivoshein
2018-06-21 19:03 ` Leonid Krivoshein
2018-06-22  5:04   ` Anton Farygin
2018-06-22 20:18     ` Leonid Krivoshein

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180621093635.GC15692@altlinux.org \
    --to=gremlin@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git