sda+sdb=sdb (Как вытащить винт?)

Kubuntu, Xubuntu и другие

Модератор: Модераторы разделов

Аватара пользователя
SlipKnoT8
Сообщения: 91
ОС: Debian lenny, Arch

sda+sdb=sdb

Сообщение SlipKnoT8 »

Есть Ubuntu 7.04, стоит на двух винтах: sda имеет точку монтирования /, а sdb - swap, /usr и /home. Скажите пожалуйста как освободить один диск?
P.S.
root@TERMINAL:/home/dos# df -h
Файловая система Разм Исп Дост Исп% смонтирована на
/dev/sda1 74G 555M 70G 1% /
varrun 220M 276K 220M 1% /var/run
varlock 220M 0 220M 0% /var/lock
procbususb 220M 100K 220M 1% /proc/bus/usb
udev 220M 100K 220M 1% /dev
devshm 220M 1,1M 219M 1% /dev/shm
lrm 220M 33M 187M 16% /lib/modules/2.6.20-15-generic/volatile
/dev/sdb3 44G 2,1G 40G 5% /home
/dev/sdb2 28G 2,2G 24G 9% /usr
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: sda+sdb=sdb

Сообщение allez »

SlipKnoT8 писал(а):
10.04.2008 14:38
Есть Ubuntu 7.04, стоит на двух винтах: sda имеет точку монтирования /, а sdb - swap, /usr и /home. Скажите пожалуйста как освободить один диск?
Загрузитесь с компакт-диска Ubuntu в режиме LiveCD и c помощью sudo выполните следующие команды (можете внести их в скрипт, а уже его запустить через sudo):

Код: Выделить всё

umount /dev/sda1 # Размонтируем разделы,
umount /dev/sdb2 # если они смонтировались,
umount /dev/sdb3 # во избежание и ибо нефиг :-)

# Создадим новые точки монтирования и смонтируем в них наши разделы
for i in sda1 sdb2 sdb3; do mkdir /mnt/$i; mount /dev/$i /mnt/$i; done

# Перенос данных из раздела /usr
cd /mnt/sdb2
find . -xdev | cpio -pvdm /mnt/sda1/usr

# Перенос данных из раздела /home
cd /mnt/sdb3
find . -xdev | cpio -pvdm /mnt/sda1/home

# Закроем комментариями все упоминания /dev/sdb в fstab
sed -i 's/\/dev\/sdb/#&/' /mnt/sda1/etc/fstab

# Создаем файл подкачки размером 512 мегабайт (измените это значение по своему усмотрению)
dd if=/dev/zero of=/mnt/sda1/.swapfile bs=1M count=512
mkswap -v1 /mnt/sda1/.swapfile

# Пропишем его в fstab
echo ".swapfile  swap  swap  defaults  0 0" >> /mnt/sda1/.swapfile

# Переход в корневой каталог и размонтирование разделов
cd /
for i in sda1 sdb2 sdb3; do umount /dev/$i; done

# Перезагрузка
shutdown -r now

Если после перезагрузки система работает нормально и ни один из разделов диска sdb не используется, можете спокойно выключать машину и извлекать из нее диск.
Спасибо сказали:
Аватара пользователя
SlipKnoT8
Сообщения: 91
ОС: Debian lenny, Arch

Re: sda+sdb=sdb

Сообщение SlipKnoT8 »

2 allez Огромное спасибо за подробный ответ!

Но есть несколько ламерских вопросов:

Как система забудет про то что /usr и /home располагались на другом диске?
Какова вероятность потерять данные?
У меня теперь не будет раздела подкачки, а только файл, как это повлияет на производительность тачки?
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: sda+sdb=sdb

Сообщение allez »

SlipKnoT8 писал(а):
10.04.2008 17:25
Как система забудет про то что /usr и /home располагались на другом диске?
Соответствующие записи в fstab будут закомментированы:

Код: Выделить всё

# Закроем комментариями все упоминания /dev/sdb в fstab
sed -i 's/\/dev\/sdb/#&/' /mnt/sda1/etc/fstab

SlipKnoT8 писал(а):
10.04.2008 17:25
Какова вероятность потерять данные?
В вашем случае - практически нулевая.

SlipKnoT8 писал(а):
10.04.2008 17:25
У меня теперь не будет раздела подкачки, а только файл, как это повлияет на производительность тачки?
Скорее всего, никакой разницы вы не заметите.
Спасибо сказали:
Аватара пользователя
SlipKnoT8
Сообщения: 91
ОС: Debian lenny, Arch

Re: sda+sdb=sdb

Сообщение SlipKnoT8 »

Еще раз огромное спасибо - помогло! :)
Спасибо сказали: