Скрипт для fstab

Автор doctor@tardis, 30 января 2014, 19:42:50

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

doctor@tardis

Здрасти.
Недавно впервые попробовал через клонзилу скопировать жесткий диск с одного компа на другой - и все прекрасно работает. Точнее даже не компа. а виртуальной машины - создал разделы как требовалось - сделал образ с помощью клонзиллы и установил этот образ на старую машину, эдак 2003-2004 года. Все запустилось, все работает. Ура.
Но, fstab я не менял, как и граб. С одной стороны, при разворачивании образа на новой машине, можно заметить, что Clonezilla устанавливает граб сама, если я не ошибаюсь. Так что граб можно не перенастраивать..
А вот fstab я все же не поменял пока, подумал, работает - не трогай. И все же есть опасения, а вдруг он через неделю полетит? Это конечно не винда, но рисковать не люблю.
Как я понял, фстаб заработал потому, что там прописаны не uuid-ы, а sda*. Но все почему-то советуют использовать uuid-ы.
И так, не хочется мне все uuid-ы прописывать вручную. Не легче ли сделать просто скриптик для этого?
И так, что мы имеем:
1) Утилита blkid, которая выводит uuid-ы устройств.
2) Пример конфига fstab.

Что нужно сделать - вывести uuid-ы  с помощью blkid, вырезать нужную нам часть - затем вписать эту часть в шаблон fstab и заменить имеющийся fstab полученным файлом.
На всех устройствах деление будет одинаковое
/dev/sda1 - основной, раздел подкачки, 500 мб
/dev/sda2 - основной, корневой раздел, ext4. Тут же находится домашний каталог. Размер раздела - будет несколько вариантов, от 19 гб, 39 гб, 89 гб, 159 гб.
Вот и все.

Вопрос, как это сделать?
И так, примерный план реализации.
blkid | tr -d /dev/sda: | tr -d \" | tr -d 'TYPE'  >> /home/username/fstab && и через echo вписывать точку монтирования и тип файловой системы в конце каждой строчки с uuid-ами.

Но скрипт не полный, т.к. я пока не силен в команде tr и не все могу вырезать и пока недопонимаю, как вписать точку монтирования и файловую систему после каждой строчки, а также как вывести blkid так, чтобы uuid-ы были в порядке возрастания, т.е. чтобы можно было быть увереным, что первый юид относится к свапу, а второй к системе...

Помогите, пожалуйста...  :(

P.S. То, что я написал, выводит список вот так вот...
Открыть содержимое (спойлер)

6 UUID=b2096-b5-498b-59-78060788819f =wp
1 UUID=2826f-b25c-4513-b04-5cff12c9262 =xt4
2 LABL=M-M-^WM-M-0M-QM-^@M-M-5M-M-7M-M-5M-QM-^@M-M-2M-M-8M-QM-^@M-M->M-M-2M-M-0M-M-=M-M-> M-QM-^AM-M-8M-QM-^AM-QM-^BM-M-5M-M-<M-M->M-M-9 UUID=A8F0B70F0B4364 =ntf
3 UUID=2200F24C00F22707 =ntf
5 UUID=47c6847-67f-4c1-9f55-90bb38488603 =xt4
7 UUID=9D1-62A4 =ft
[свернуть]



qupl

doctor@tardis, если клонировать вместе с таблицей разделов, то UUID-ы останутся теми же что на исходной системе и переделывать fstab нет необходимости. А сам по себе он не "полетит" никуда.

yura_n

#2
Цитата: doctor@tardis от 30 января 2014, 19:42:50Но все почему-то советуют использовать uuid-ы.
Все просто. Если у вас один диск, то нет разницы UUID или sdX. Если вы добавляете физический диск и используется sdX, то ранее установленная система на другом диске может и не загрузиться, так как диски могут сдвинутся (зависит от последовательности подключений дисков). Например, sda вдруг станет sdb. А если используется UUID, то такого сдвига не произойдет.

ogost

blkid | cut -d ' ' -f2

Сообщение объединено: 30 января 2014, 20:53:31

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

gardarea51

#4
 :Dls -l /dev/disk/by-uuid
fstab можно поменять и руками, в этом нет ничего сложного. Как правило для полного клонирования как вы уже сказали достаточно поставить загрузчик и поменять UUID в fstab. Но это пофайлово.. а если вообще с таблицей разделов, как сказал qupl, то да - UUID менять не нужно. Но лично я так ни разу не делал. Клонировал системы простым копированием файлов.

doctor@tardis

Ну просто скоро поставим сервер, будем автоматом на разные компьютеры устанавливать одну и туже систему.
Я просто боялся, что возможно будут ошибки, т.к. все почему то пишут, что после перенесения системы на другой компьютер, нужно менять fstab.
Вручную все это довольно долго, т.к. компов не мало, так почему бы не подготовить один скрипт и просто запускать его? Так ведь быстрее..
Да, другие харддрайвы потом добавлять не будем - просто с помощью клонзиллы будем копировать готовую систему на другие жесткие диски...
Большое спасибо, успокоили)