Дистрибутивы проекта PuppyRus Linux > Багтрекер PuppyRus-2.0
Ошибки инсталлятора
DdShurick:
Набросал вот такой скрипт поиска разделов для установки
--- [ Читать далее ] ---
#!/bin/sh
#puppyrus2install v-006 DdShurick GPL v3
P=$(Xdialog --title "PuppyRus2install" --menu "Выбор раздела" 14 52 0 $(echo "$(ls -1 /sys/block/ | grep "^sd.") $([ -d /proc/ide ] && ls -1 /proc/ide | grep '^hd')" |
while read D; do
[ "$(cat /sys/block/$D/size)" = 0 ] && continue;
if [ -d /proc/ide ]; then
INFO=$(cat /proc/ide/$D/model)
else
if [ "$(cat /sys/block/$D/events)" = "" ]; then
I="HDD-";
else
I="USB-";
fi;
INFO="$(cat /sys/block/$D/device/vendor | tr -s ' ')$(cat /sys/block/$D/device/model | tr -s ' ')"
fi
INFO=$(echo $INFO | tr ' ' '_')
ls /sys/block/$D/ | grep "$D" |
while read P; do
[ "$(fdisk -l | grep $P | grep 82)" = "" ] || continue;
echo "$I$P ${INFO}_$(expr $(cat /sys/block/$D/$P/size) / 1024)_Mb"; done
done) 2>&1)
D=$(echo $P | cut -f1 -d'-')
P=$(echo $P | cut -f2 -d'-')
echo $P $D
--- Конец цитаты ---
Но не много ли подробностей?
RoDoN:
--- Цитата: DdShurick от 01 Декабрь 2011, 17:15:12 ---Но не много ли подробностей?
--- Конец цитаты ---
По моему в самый раз, только почему-то размер подключенных и HDD и USB удвоенный у меня получился.
И как пожелание, мне кажется, если название дисков можно без знака подчеркивания сделать, а размер разделов, например в скобках показывать, то восприятие будет лучше.
DdShurick:
--- Цитата: RoDoN от 01 Декабрь 2011, 17:40:57 ---только почему-то размер подключенных и HDD и USB удвоенный у меня получился.
--- Конец цитаты ---
Там исходный размер в блоках.
Посмотрите вот такой вариант:
--- [ Читать далее ] ---
--- Код ---
#!/bin/sh
#puppyrus2install v-006 DdShurick GPL v3
echo -n '#!/bin/sh
Xdialog --title "PuppyRus2install" --menu "Выбор раздела" 14 60 0 ' > /tmp/script
echo "$(ls -1 /sys/block/ | grep "^sd.") $([ -d /proc/ide ] && ls -1 /proc/ide | grep '^hd')" |
while read D; do
[ "$(cat /sys/block/$D/size)" = 0 ] && continue;
if [ -d /proc/ide ]; then
INFO=$(cat /proc/ide/$D/model)
else
if [ "$(cat /sys/block/$D/events)" = "" ]; then
I="HDD";
else
I="USB-";
fi;
INFO="$(cat /sys/block/$D/device/vendor | tr -s ' ')$(cat /sys/block/$D/device/model | tr -s ' ')"
fi
#INFO=$(echo $INFO | tr ' ' '_')
ls /sys/block/$D/ | grep "$D" |
while read P; do
[ "$(fdisk -l | grep $P | grep 82)" = "" ] || continue;
mount /dev/$P /mnt/data
F=$(df -h /mnt/data | grep /dev/ | tr -s ' ' | cut -f4 -d ' ')
umount /mnt/data
echo -n "\"$I $P\" \"${INFO} (${F} свободно)\" " >> /tmp/script
done
done
# echo ' 2>&1)' >> /tmp/script
chmod a+x /tmp/script
P=$(/tmp/script 2>&1)
D=$(echo $P | cut -f1 -d' ')
P=$(echo $P | cut -f2 -d' ')
xmessage "Выбран $P $D"
--- Конец кода ---
--- Конец цитаты ---
Работает заметно медленнее, но показывает оставшееся свободное место на выбранном разделе и даёт возможность включить поиск других загрузчиков, если они есть.
RoDoN:
--- Цитата: DdShurick от 03 Декабрь 2011, 22:34:57 ---Посмотрите вот такой вариант
--- Конец цитаты ---
Посмотрел инсталлер, ИМХО чтобы было красиво и информативно, то должно быть 4 колонки:
1. HDD или USB
2. Название
3. Общий размер в Mb или Gb
4. Сколько свободно.
Да, предыдущий вариант выбора раздела грузится раза в 2 быстрее
Про другие загрузчики можно подробнее.
DdShurick:
--- Цитата: RoDoN от 05 Декабрь 2011, 16:46:16 ---Посмотрел инсталлер, ИМХО чтобы было красиво и информативно, то должно быть 4 колонки:
1. HDD или USB
2. Название
3. Общий размер в Mb или Gb
4. Сколько свободно.
--- Конец цитаты ---
Xdialog поддерживает только две колонки.
--- Цитата: RoDoN от 05 Декабрь 2011, 16:46:16 ---Про другие загрузчики можно подробнее.
--- Конец цитаты ---
Хочу прикрутить кое что отсюда.
Навигация
Перейти к полной версии