a se kdo kej z linuxom ukvarja
a se kdo kej z linuxom ukvarja
A je kdo stručko za linux? Rabim par skript za napisat.
Error Code #0656: “Oil pan gasket too tight. Unable to leak oil and mark territory.”
Za take skripte kot jih jaz rabim, si z ubuntu forumom nimam kaj pomagat ,a goglu pa tudi ni ravno veliko o tem napisano.
Gre pa za LVM particioniranje diskov + raid polje + raid polje. In ukaze vse poznam, treba pa je narest skripto, kjer po vrsti vse te ukaze izvede.
Narest moram 6 diskov v virtualizaciji. Prvi disk je 20Gb, ostali so po 2Gb (5x). Potem pa s skripto narest tole:
Diske postavit v mirror (po 2 in 2 diska skupaj) in potem posamezen mirror še v stripping z drugim, peti disk pa je machine hot varianta - torej je stalno prižgan in je za nadomestitev, če kateri od teh prvih štirih crkne.
Gre pa za LVM particioniranje diskov + raid polje + raid polje. In ukaze vse poznam, treba pa je narest skripto, kjer po vrsti vse te ukaze izvede.
Narest moram 6 diskov v virtualizaciji. Prvi disk je 20Gb, ostali so po 2Gb (5x). Potem pa s skripto narest tole:
Diske postavit v mirror (po 2 in 2 diska skupaj) in potem posamezen mirror še v stripping z drugim, peti disk pa je machine hot varianta - torej je stalno prižgan in je za nadomestitev, če kateri od teh prvih štirih crkne.
Error Code #0656: “Oil pan gasket too tight. Unable to leak oil and mark territory.”
Tu nekaj ne štima, sumim, da tale zgornji stavek ni čisto resničen.... ukaze vse poznam, treba pa je narest skripto, kjer po vrsti vse te ukaze izvede.
Ker kolikor je meni jasno, ti nimaš dveh levih rok kar se googlanja tiče. In google brezskrbi da v trenutku najde vse, kar se GNU/Linux skriptanja tiče.
Namig:
Koda: Izberi vse
#!/bin/shv prvi vrstici skripte je vse, kar rabiš, če tvoja zgoraj citirana izjava drži.
S povprečnim luserjem (Linux USERjem, za neposvečene), njegovim znanjem in nasveti na Ubuntu forumu in na podobnih straneh pa si res lahko bore malo pomagaš, tu se popolnoma strinjam s teboj.
I'm just a soul who's intentions are good, oh Lord, please don't let me be misunderstood ...
Ukaze poznam in ukaz sam mi ni problem izvest. Problem mi je pa narest skripto z ukazi, ki se mora izvajat nad interaktivnim programom - torej ko moraš enter pritisnit v samem programu, da zaključiš nekaj kar si naredil in to v skripti narediš z tem ukazom. Če pa recimo 3x narediš \n (enter), se pa skripta prekine, kar pa ni prav. In take zadeve moram rešit.vrecha napisal/-a:Tu nekaj ne štima, sumim, da tale zgornji stavek ni čisto resničen.... ukaze vse poznam, treba pa je narest skripto, kjer po vrsti vse te ukaze izvede.
Ker kolikor je meni jasno, ti nimaš dveh levih rok kar se googlanja tiče. In google brezskrbi da v trenutku najde vse, kar se GNU/Linux skriptanja tiče.
Namig:Koda: Izberi vse
#!/bin/sh
v prvi vrstici skripte je vse, kar rabiš, če tvoja zgoraj citirana izjava drži.![]()
S povprečnim luserjem (Linux USERjem, za neposvečene), njegovim znanjem in nasveti na Ubuntu forumu in na podobnih straneh pa si res lahko bore malo pomagaš, tu se popolnoma strinjam s teboj.
Evo recimo primer:
Koda: Izberi vse
#!/bin/sh
$ echo -e "n\np\n1\n\n+50M\nn\np\n2\n\n+100M\nn\ne\n4\n \n\nn\nl\n \n\nw\n" | sudo fdisk /dev/sde
Še prevod tega: - z programom fdisk ustvarimo MBR particijsko tabelo na /dev/sde tako, da bodo na njem 2 primarni particiji (1: 50MB, 2: 100MB) ter razširjena particija z 1 logičnim pogonom. Ker je fdisk interaktiven program, si lahko v skripti pomagam, da ustrezne vnose s konzole "prednaložim".
In to moram jaz narest. Problem je pa v tem, da moram narest brez fdiska, ki je uporaben samo do 2Gb velikosti particij in je treba urediti z LVM - torej particioniranje nad 2Gb velikosti particij in z ukazom "parted", ki pa je meni totalno neznan.
Predvidevam, da tega tukaj gor ne bom izvedel kako bi to naredil.
Error Code #0656: “Oil pan gasket too tight. Unable to leak oil and mark territory.”
Od kod ti ideja, da fdisk podpira samo do 2GB? Najbrz si mislil 2TB, ki pa ni omejitev fdiska, ampak DOS particijske tabele. Torej, ce zelis particijo vecjo od 2 TB mores uporabit GPT particijsko tabelo, pri cemer pa mores pazit:
1.) Orodje za particioniranje ni vec fdisk, ki zna samo DOS label, ampak parted ali pa recimo gdisk.
2.) Pri DOS particijski tabeli je bil za MBRjem se prostor, kamor si je grub ali drugi bootloader shranil stage2 loader. Pri GPT labeli tega ni, tako da mores pazit, da v startu naredis ali eno manjso particijo (dovolj je par mega), ali pa pustis plac fraj in particijo zacnes malo kasneje
Drugace pa ne vem v cem ti je problem, ker parted sprejema ukaze ali:
a.) iz command line-a, torej parted /dev/sdX mkpart primary zacetek konec
b.) vse te komande zapises v recimo p.script, pa potem pozenes parted --script p.script, in bo izvedel vse to kar je v fajlu.
Ce pa bi rabil interakcijo s kaksnim programom, ki ne zna delat preko parametrov pa lahko uporabis expect skript (man expect).
1.) Orodje za particioniranje ni vec fdisk, ki zna samo DOS label, ampak parted ali pa recimo gdisk.
2.) Pri DOS particijski tabeli je bil za MBRjem se prostor, kamor si je grub ali drugi bootloader shranil stage2 loader. Pri GPT labeli tega ni, tako da mores pazit, da v startu naredis ali eno manjso particijo (dovolj je par mega), ali pa pustis plac fraj in particijo zacnes malo kasneje
Drugace pa ne vem v cem ti je problem, ker parted sprejema ukaze ali:
a.) iz command line-a, torej parted /dev/sdX mkpart primary zacetek konec
b.) vse te komande zapises v recimo p.script, pa potem pozenes parted --script p.script, in bo izvedel vse to kar je v fajlu.
Ce pa bi rabil interakcijo s kaksnim programom, ki ne zna delat preko parametrov pa lahko uporabis expect skript (man expect).
Ja, moja napaka ni 2Gb ampak 2TB, še vedno pa je omejitev 32 bitni sistem - fdisk na 64 bitnem ne deluje v povezavi z GPT particijami (64 bitno naslavlanje).
Ok, torej lahko jaz samo odprem eno skripto (test.sh) in vanjo recimo zapišem zaporedno tele ukaze?
Ok, torej lahko jaz samo odprem eno skripto (test.sh) in vanjo recimo zapišem zaporedno tele ukaze?
Koda: Izberi vse
#!/bin/sh
$ sudo parted -s /dev/sdf mklabel gpt # ustvarim GPT disk
$ sudo parted -s /dev/sdf mkpart primary 0M 100M # prva particija med 0 in 100MB
$ sudo parted -s /dev/sdf mkpart primary 100M 300M # druga particija med 100 in 300MB
$ sudo parted -s /dev/sdf mkpart primary 300M 2G # tretja particija med 300MB in 2GB
$ sudo parted -s /dev/sdf print #izpišem vse particijeError Code #0656: “Oil pan gasket too tight. Unable to leak oil and mark territory.”
Lahko tako, lahko pa se bolje naredis skripto naprimer parted.script in vanjo zapises:
Potem pa v tisto pravo skripto napises:
Ce pa delas po svojem nacinu pa tudi lahko, ampak brez -s flaga.
Druga stvar je pa ta, da pazi ce imas skucajno disk, ki ima 4KB sektorje, predstavlja pa, da ima 512B. V tem primeru parted tega ne bo zaznal (ker mu disk ne javi) in ne bo poravnal particij prav za 4KB sektorje. V tem primeru bo sicer vse delalo, ampak nenormalno pocasi. Gre pa za razne WD Green diske, ... Pac samo vzami na znanje, da ce te bo kaj zezalo je to najbrz to...
[/code]
Koda: Izberi vse
mklabel gpt # ustvarim GPT disk
mkpart primary 0M 100M
mkpart primary 100M 300M
mkpart primary 300M 2G
printKoda: Izberi vse
#!/bin/sh
$ sudo parted /dev/sdf --script parted.script
Druga stvar je pa ta, da pazi ce imas skucajno disk, ki ima 4KB sektorje, predstavlja pa, da ima 512B. V tem primeru parted tega ne bo zaznal (ker mu disk ne javi) in ne bo poravnal particij prav za 4KB sektorje. V tem primeru bo sicer vse delalo, ampak nenormalno pocasi. Gre pa za razne WD Green diske, ... Pac samo vzami na znanje, da ce te bo kaj zezalo je to najbrz to...
[/code]
Še bolj v duhu skriptanja in bolj berljivo je, če namesto if stavkov za reakcijo na neuspel ukaz uporabiš ||. Npr:
Presneto koristno. Bom ob tej temi obnovil kakšno pozabljeno zadevo.
Koda: Izberi vse
cat /etc/shadow || echo "Ne dovolijo ... "Presneto koristno. Bom ob tej temi obnovil kakšno pozabljeno zadevo.
I'm just a soul who's intentions are good, oh Lord, please don't let me be misunderstood ...
Kdo je na strani
Po forumu brska: 0 registriranih uporabnikov in 0 gostov