Skocz do zawartości

Skrypt bash instalujący system na wybranym nośniku


tux

Rekomendowane odpowiedzi

Gość Dominika

Witam niech  mi ktoś powie jak na pena zrobić obraz hd clone softu tuxa chce go mieć podoba mi się chce testować na penie ale z rozpakowaniem tar gz z telnetu nie daje rady . Ma ktoś gotowy obraz najnowszego image ? Czemu inne image maja obrazy do pobrania a tu nie ma . Jestem początkująca z góry dziękuję .

 

Odnośnik do komentarza
Udostępnij na innych stronach

UWAGA -- Nie odpowiadam za skutki źle użytego skryptu!


Załączam obiecany skrypt.
Skrypt pisałem dla siebie bo czasem na szybko coś musiałem zrobić u kogoś. Jak ktoś chce to poprawić i usprawnić to proszę bardzo :)

Należy go wypakować i wgrać do jakiegoś katalogu na nBoxa uruchomionego z NAND. Należy również nadać mu atrybuty 755 i oraz poprawić linijkę media=sdb jeżeli jest to potrzebne. W skrypcie wpisane jest urządzenie sdb. Tak na wszelki wypadek aby nie uszkodzić tablicy partycji dyski twardego jeżeli go mamy i przez przypadek wykonamy skrypcik.

Jeżeli nasz pendrive to jedyny nośnik pamięci masowej to należy tam wpisać sda. Jeżeli mamy dysk twardy to należy wpisać sdx gdzie x to literka odpowiadająca naszemu pendrive.

Zadaniem skryptu jest stworzenie nowej tablicy partycji:
/dev/sdx1 --> system (512MB)
/dev/sdx2 --> SWAP (128MB)
/dev/sdx3 -->data (reszta wolnego miejsca)
Następnie sformatowanie ich z odpowiednimi etykietkami, pobranie pliku z obrazem rootfs z http://nbox.xunil.pl i wypakowanie tego obrazu na /dev/sdx1
Po zakończeniu pracy skryptu jak wszystko pójdzie jak powinno da się uruchomić z takiego pendrive naszego nBoxa.




Poniżej kod skryptu

#!/bin/sh

# Wpisz odpowiednie urządzenie
media=sdb

if [ ! -e /ram/tmp ]; then
    mkdir -p /ram/tmp
fi

if [ ! grep -q \"$media\" /proc/mounts ]; then
echo \"Nie mam na czym instalować.....\"
else
echo \"Masz zamontowane partycje pendrive\'a\"
    part=`df -h | grep $media | awk {\'print $1\'}`
    echo \"Trzeba odmontować:\"
    echo $part
    while [ `df -h | grep $media | awk {\'print $1\'} | tail -n1` ]; do
    uumount=`df -h | grep $media | awk {\'print $1\'} | tail -n1`
    echo \"odmontowuję $uumount...\"
    umount $uumount
    done

echo \"Tworzę tablicę partycji na $media o układzie:\"
echo \"$media 1 --> 512MB na system (Label system)\"
echo \"$media 2 --> 128MN na SWAP (Label swap)\"
echo \"$media 3 --> Pozostała część nośnika na partycję DATA (Label data)\"
echo \",512\" > /ram/tmp/part.set
echo \",128\" >> /ram/tmp/part.set
echo \";\" >> /ram/tmp/part.set
sfdisk /dev/$media -q -L -uM < /ram/tmp/part.set > /dev/null

echo \"formatuję $media\"1\"\"
mkfs.ext3 -q -L \"system\" -b 4096 -I 128 /dev/$media\"1\"
echo \"formatuję $media\"2\"\"
mkswap -L \"swap\" /dev/$media\"2\" > /dev/null
echo \"formatuję $media\"3\"\"
mkfs.ext3 -q -L \"data\" /dev/$media\"3\"
echo
echo \"Pobieram plik z rootfs...\"
echo \"WGET\"
echo \"Montuję /dev/$media\"1\" /dest\"
if [ ! -e /dest ]; then
    mkdir /dest
fi
mount /dev/$media\"1\" /dest
df -h

cd /ram/tmp
echo \"Pobieram paczkę z rootfs...\"
wget -c http://xunil.pl/nbox/data/_uploaded/file/freebox_v8.1_mod_by_tux_live_rootfs.tar.gz
echo \"Wypakowuję pliki...\"
tar -xzf freebox_v8.1_mod_by_tux_live_rootfs.tar.gz -C /dest/
fi
echo \"Sprzątam po wykonanych działaniach...\"
umount /dest
rm -r /dest
rm -r /ram/tmp
echo \"Pendrive Gotowy\"


Odnośnik do komentarza
Udostępnij na innych stronach

Witam.

FileZilla odpalona, połączenie nawiązane, plik rozpakowany, zmieniony (sda) i przesłany. Rozłączam i zamykam.

Pod MC ( połączenie po ftp ) nadaje uprawnienia 755.

Po odpaleniu skryptu spod telnet otrzymuję taki komunikat:

 

./f2c3bbc7209b334c00ea23189e7515: line 1: make_pentuxfreeboxmod.sh0000755000000000000000000000315712107700550014511: not found

: not found09b334c00ea23189e7515: line 2:

: not found09b334c00ea23189e7515: line 5:

./f2c3bbc7209b334c00ea23189e7515: line 59: syntax error: unexpected end of file (expecting \"then\")

 

 

Co robię źle ?

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Pod MC jest podpięty GNU nano 2.2.6

Tym poprawiłem.

 

edycja:

Wyświetliłem jeszcze raz skrypt pod edytorem Nano.

 

W pierwszej i ostatniej linijce są powielone znaki Ctrl i @.

Może to ?

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Jak do tej pory nadążałem tak teraz stoje ,pobieram skrypt, wrzucam do jakiegoś katalogu na Nbox,nadaje mu atrybut 755,ale jak uruchamiacie ten skrypt ?,napewno przez telnet.Ja wrzuciłem do katalogu.. var..jak do jakiegoś to dałem tam.Oczywiście zmieniłem na sda w notepad++.Sorry za może brak wiedzy. 

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

×
×
  • Dodaj nową pozycję...