mtools(1) General Commands Manual mtools(1) Nume mtools - instrumente pentru accesarea discurilor DOS in Unix. Introducere Mtools este o colecie de instrumente care permit sistemelor Unix sa manipuleze fiiere MS-DOS: citirea, scrierea i deplasarea fiierelor pe un sistem de fiiere MS-DOS (de obicei o discheta). Atunci cand este rezonabil, fiecare program incearca sa emuleze comanda echivalenta MS-DOS. Cu toate acestea, restriciile i ciudaeniile inutile ale DOS nu sunt emulate. De exemplu, este posibila mutarea subdirectoarelor dintr-un subdirectoriu in altul. Mtools este suficient pentru a oferi acces la sistemele de fiiere MS-DOS. De exemplu, comenzi precum mdir a: funcioneaza pe discheta a: fara nici o montare sau iniializare preliminara (presupunand ca `/etc/mtools.conf' implicit funcioneaza pe maina dumneavoastra). Cu mtools, se pot schimba i dischetele fara a le demonta i monta. De unde se poate obine mtools mtools poate fi gasit in urmatoarele locuri (i in oglinzile acestora): http://ftp.gnu.org/gnu/mtools/mtools-4.0.43.tar.gz Aceste corecii se numesc mtools-version-ddmm.taz, unde versiunea reprezinta versiunea de baza, dd reprezinta ziua i mm reprezinta luna. Din cauza lipsei de spaiu, de obicei las doar cea mai recenta modificare. Exista o lista de discuii mtools la info-mtools @ gnu.org . Trimitei toate rapoartele de erori la aceasta lista. Va putei abona la lista la https://lists.gnu.org/mailman/listinfo/info-mtools. (N.B. Eliminai spaiile din jurul lui ,,@". Le-am lasat acolo pentru a pacali roboii de publicitate nedorita i agresiva ,,spambots"). Anunurile despre noile versiuni mtools vor fi trimise, de asemenea, la aceasta lista, in plus faa de grupurile de tiri ,,Linux announce". Lista de discuii este arhivata la http://lists.gnu.org/pipermail/info-mtools/ Caracteristici comune tuturor comenzilor mtools Opiuni i nume de fiiere Numele fiierelor MS-DOS sunt compuse dintr-o litera de unitate urmata de doua puncte, un subdirector i un nume de fiier. Numai partea cu numele de fiier este obligatorie, litera de unitate i subdirectorul sunt opionale. Numele de fiier fara litera de unitate se refera la fiiere Unix. Numele subdirectoarelor pot folosi fie separatorul '/', fie '\'. Utilizarea separatorului '\' sau a caracterelor joker necesita ca numele sa fie inchise intre ghilimele pentru a le proteja de shell. Cu toate acestea, caracterele joker din numele de fiiere Unix nu trebuie sa fie incluse intre ghilimele, deoarece aici se vrea ca shell-ul sa le extinda. Rutinele de ,,potrivire a modelelor" ale expresiilor regulate respecta regulile de tip Unix. De exemplu, `*' se potrivete cu toate fiierele MS-DOS in loc de `*.*'. Biii de arhiva, ascuns, numai-pentru-citire i de atribut de sistem sunt ignorai in timpul potrivirii modelelor. Toate opiunile folosesc - (minus) ca prim caracter, nu /, aa cum v-ai atepta in MS-DOS. Majoritatea comenzilor mtools permit mai muli parametri de nume de fiier, ceea ce nu respecta conveniile MS-DOS, dar este mai uor de utilizat. Cele mai multe comenzi mtools permit opiuni care le indica modul in care trebuie sa gestioneze conflictele de nume de fiiere. Pentru mai multe detalii despre acestea, consultai seciunea Conflicte de nume. Toate comenzile accepta opiunea -i care permite specificarea unui fiier imagine (a se vedea seciunea litere de unitate). Toate comenzile accepta opiunea -V, care afieaza versiunea, iar majoritatea accepta opiunea -v, care activeaza modul descriptiv. In modul descriptiv, aceste comenzi afieaza numele fiierelor MS-DOS asupra carora acioneaza, cu excepia cazului in care se specifica altfel. A se vedea seciunea Comenzi, pentru o descriere a opiunilor specifice fiecarei comenzi. Literele de unitate Semnificaia literelor de unitate depinde de arhitecturile inta. Cu toate acestea, pe majoritatea arhitecturilor inta, unitatea A este prima unitate de discheta, unitatea B este a doua unitate de discheta (daca este disponibila), unitatea J este o unitate Jaz (daca este disponibila), iar unitatea Z este o unitate Zip (daca este disponibila). Pe acele sisteme in care numele dispozitivului este derivat din ID-ul SCSI, se presupune ca unitatea Jaz se afla la inta SCSI 4, iar unitatea Zip la inta SCSI 5 ( configurarile implicite din fabrica). Pe Linux, se presupune ca ambele unitai sunt a doua unitate de pe magistrala SCSI (/dev/sdb). Configurarile implicite pot fi modificate cu ajutorul unui fiier de configurare (consultai seciunea Configuraie). Litera de unitate : (doua puncte) are o semnificaie speciala. Se utilizeaza pentru a accesa fiierele imagine care sunt specificate direct in linia de comanda folosind opiunile -i. Exemplu: mcopy -i fiierul-meu-de_imagine.bin ::fiier1 ::fiier2 . Aceasta copiaza fiier1 i fiier2 din fiierul imagine (fiierul-meu-de_imagine.bin) in directorul /tmp. De asemenea, putei furniza o poziie in cadrul fiierului de imagine incluzand @@poziia in numele fiierului. Exemplu: mcopy -i fiierul-meu-de_imagine.bin@@1M ::fiier1 ::fiier2 . Acest lucru cauta imaginea la poziia 1M in fiier, mai degraba decat la inceputul acestuia. Directorul de lucru curent Comanda mcd (`mcd') este utilizata pentru a stabili dispozitivul i directorul de lucru curent (in raport cu sistemul de fiiere MS-DOS), in caz contrar se presupune ca valoarea implicita este A:/. Cu toate acestea, spre deosebire de MS-DOS, exista un singur director de lucru pentru toate unitaile, i nu unul pentru fiecare unitate. Nume de fiiere lungi in stilul VFAT Aceasta versiune de mtools accepta nume de fiiere lungi de tip VFAT. Daca un nume de fiier Unix este prea lung pentru a incapea intr-un nume DOS scurt, acesta este stocat ca un nume lung VFAT i se genereaza un nume scurt insoitor. Acest nume scurt nume este cel pe care il vedei atunci cand examinai discul cu o versiune pre-7.0 de DOS. Tabelul urmator prezinta cateva exemple de nume scurte: Nume lung Nume MS-DOS Motivul modificarii --------- ----------- ------------------------ thisisatest THISIS~1 nume de fiier prea lung alain.knaff ALAIN~1.KNA extensie prea lunga prn.txt PRN~1.TXT PRN este un nume de dispozitiv .abc ABC~1 nume de fiier null hot+cold HOT_CO~1 caracter ilegal Dupa cum vedei, urmatoarele transformari se realizeaza pentru a obine un nume scurt: * Caracterele ilegale sunt inlocuite cu caractere de subliniere. Caracterele ilegale sunt ;+=[]',\ "*\\\<>/?:|. * Punctele suplimentare, care nu pot fi interpretate ca un separator nume principal/extensiune, sunt eliminate * Se genereaza un numar ~n, * Numele este scurtat pentru a se incadra in limitarea 8+3 Numele iniial al fiierului in stil Unix (indiferent daca este lung sau scurt) se mai numete i numele principal, iar numele scurt derivat se numete i numele secundar. Exemplu: mcopy /etc/motd a:Reallylongname mtools creeaza o intrare VFAT pentru Reallylongname i folosete REALLYLO ca nume scurt. Reallylongname este numele principal, iar REALLYLO este numele secundar. mcopy /etc/motd a:motd motd se incadreaza in limitele de nume de fiier DOS. Mtools nu are nevoie sa obina un alt nume. motd este numele principal i nu exista un nume secundar. Pe scurt: Numele principal este numele lung, daca exista unul, sau numele scurt, daca nu exista un nume lung. Dei VFAT este mult mai flexibil decat FAT, exista totui nume care nu sunt acceptate, chiar i in VFAT. Mai exista inca unele caractere ilegale (\ "*\\<>/?:|), iar numele dispozitivelor sunt inca rezervate. Nume Unix Nume lung Motivul modificarii --------- ---------- ------------------------ prn prn-1 PRN este un nume de dispozitiv ab:c ab_c-1 caracter ilegal Dupa cum vedei, urmatoarele transformari au loc daca un nume lung este ilegal: * Caracterele ilegale sunt inlocuite cu caractere de subliniere, * Se genereaza un numar -n, Conflicte de nume La scrierea unui fiier pe disc, numele lung sau scurt al acestuia poate intra in conflict cu un fiier sau un director deja existent. Acest lucru se poate intampla pentru toate comenzile care creeaza noi intrari in directoare, cum ar fi mcopy, mmd, mren, mmove. Atunci cand apare un conflict de nume, mtools va intreaba ce ar trebui sa faca. Acesta ofera mai multe opiuni: overwrite Suprascrie fiierul existent. Nu este posibil sa se suprascrie un director cu un fiier. rename Redenumete fiierul nou creat. Mtools solicita noul nume de fiier autorename Redenumete fiierul nou creat. Mtools alege singur un nume, fara a solicita un raspuns skip Renuna la acest fiier i trece la urmatorul (daca exista) Pentru a alege una dintre aceste aciuni, introducei prima litera a acesteia la prompt. Daca folosii o litera minuscula, aciunea se aplica numai pentru acest fiier, daca folosii o litera majuscula, aciunea se aplica tuturor fiierelor i nu vi se va mai solicita din nou. De asemenea, putei alege aciuni (pentru toate fiierele) in linia de comanda, atunci cand apelai mtools: -D o Suprascrie in mod implicit numele principale. -D O Suprascrie in mod implicit numele secundare. -D r Redenumete numele primar in mod implicit. -D R Redenumete numele secundar in mod implicit. -D a Auto-redenumete numele principal in mod implicit. -D A Auto-redenumete numele secundar in mod implicit. -D s Omite numele principal in mod implicit. -D S Omite numele secundar in mod implicit. -D m Intreaba utilizatorul ce sa faca cu numele principal. -D M Intreaba utilizatorul ce sa faca cu numele secundar. Reinei ca, pentru opiunile din linia de comanda, minusculele/majusculele difereniaza intre numele ,,principal"/,,secundar", in timp ce pentru opiunile interactive, minusculele/majusculele difereniaza intre ,,doar de data aceasta"/,,intotdeauna". Numele principal este numele afiat in Windows 95 sau Windows NT: adica numele lung, daca exista, i numele scurt, daca nu exista. Numele secundar este numele ,,ascuns", adica numele scurt daca exista un nume lung. In mod implicit, utilizatorul este intrebat daca numele principal este conflictual, iar numele secundar se numete automat. In cazul in care apare un conflict de nume intr-un director Unix, mtools intreaba doar daca trebuie sa suprascriei fiierul sau sa il omitei. Diferenierea intre majuscule i minuscule a sistemului de fiiere VFAT Sistemul de fiiere VFAT este capabil sa memoreze majusculele i minusculele din numele fiierelor. Cu toate acestea, nu este permisa coexistena in acelai director a numelor de fiiere care difera doar prin majuscule i minuscule. De exemplu, daca stocai un fiier numit NumeFiierLung pe un sistem de fiiere VFAT, <> afieaza acest fiier ca NumeFiierLung, i nu ca Numefiierlung. Cu toate acestea, daca incercai apoi sa adaugai NumeFiierlung in acelai director, acesta este refuzat, deoarece este ignorata distincia dintre majuscule i minuscule pentru verificarile de conflict. Sistemul de fiiere VFAT va permite sa stocai tipul de litere minuscule/majuscule al unui nume de fiier in octetul de atribut, daca toate literele numelui de fiier sunt de acelai tip minuscule/majuscule i daca toate literele extensiei sunt de asemenea de acelai tip. Mtools utilizeaza aceste informaii la afiarea fiierelor i, de asemenea, pentru a genera numele de fiier Unix atunci cand se face utilizeaza <> intr-un director Unix. Acest lucru poate avea rezultate neateptate atunci cand este aplicat fiierelor scrise folosind o versiune de DOS anterioara la versiunea 7.0: intr-adevar, numele de fiiere in stil vechi se raporteaza la toate literele in majusculele. Acest lucru este diferit de comportamentul vechii versiuni a mtools care obinuia sa genereze nume de fiiere Unix cu litere minuscule. formate de mare capacitate Mtools accepta o serie de formate care permit stocarea pe disc a mai multor date decat in mod obinuit. Din cauza diferitelor capacitai ale sistemelor de operare, aceste formate nu sunt acceptate pe toate sistemele de operare. Mtools recunoate aceste formate in mod transparent acolo unde sunt acceptate. Pentru a formata aceste discuri, trebuie sa utilizai un instrument specific sistemului de operare. Pentru Linux, instrumentele adecvate pentru dischete se gasesc in pachetul fdutils in urmatoarele locaii~: http://www.fdutils.linux.lu/. Pentru mai multe detalii, consultai paginile de manual incluse in pachetul respectiv. Utilizai superformat pentru a formata toate formatele, cu excepia XDF, i utilizai xdfcopy pentru a formata XDF. Mai multe sectoare Cea mai veche metoda de a pune mai multe date pe un disc este de a folosi mai multe sectoare i mai muli cilindri. Dei formatul standard utilizeaza 80 de cilindri i 18 sectoare (pe un disc de 3 1/2 de inalta densitate), este posibil sa se utilizeze pana la 83 de cilindri (pe majoritatea unitailor) i pana la 21 de sectoare. Aceasta metoda permite stocarea a pana la 1743K pe un disc de 3 1/2 HD. Cu toate acestea, discurile cu 21 de sectoare sunt de doua ori mai lente decat discurile standard cu 18 sectoare, deoarece sectoarele sunt atat de apropiate incat trebuie sa le intercalam. Aceasta problema nu exista in cazul formatelor cu 20 de sectoare. Aceste formate sunt acceptate de numeroase utilitai shareware DOS, cum ar fi fdformat i vgacopy. In nesfarita sa arogana, Bill Gate$ a crezut ca el a inventat acest lucru i l-a numit `DMF disks', sau `Windows formatted disks'. Dar, in realitate, acesta exista deja cu ani inainte! Mtools suporta aceste formate pe Linux, pe SunOS i pe DELL Unix PC. Sectoare mai mari Prin utilizarea unor sectoare mai mari, este posibil sa se depaeasca capacitatea care poate fi obinuta cu ajutorul sectoarelor standard de 512 octei. Acest lucru se datoreaza antetului de sector. Antetul sectorului are aceeai dimensiune, indiferent de numarul de octei de date din sector. Astfel, economisim ceva spaiu prin utilizarea unor mai puine sectoare, dar mai mari. De exemplu, 1 sector de 4K ocupa spaiu de antet doar o singura data, in timp ce 8 sectoare de 512 octei au tot 8 anteturi, pentru aceeai cantitate de date utile. Aceasta metoda permite stocarea a pana la 1992K pe un disc de 3 1/2 HD. Mtools accepta aceste formate numai pe Linux. 2m Formatul 2m a fost inventat iniial de Ciriaco Garcia de Celis. De asemenea, acesta utilizeaza sectoare mai mari decat de obicei pentru a incadra mai multe date pe disc. Cu toate acestea, utilizeaza formatul standard (18 sectoare de 512 octei fiecare) pe primul cilindru, pentru a face aceste discuri mai uor de gestionat de catre DOS. Intr-adevar, aceasta metoda va permite sa avei un sector de pornire de dimensiuni standard, care conine o descriere a modului in care trebuie citit restul discului. Cu toate acestea, dezavantajul este ca primul cilindru poate conine mai puine date decat celelalte. Din nefericire, DOS poate gestiona numai discuri in care fiecare pista conine aceeai cantitate de date. Astfel, 2m ascunde faptul ca prima pista conine mai puine date prin utilizarea unui shadow FAT. (De obicei, DOS stocheaza FAT in doua copii identice, pentru o sigurana suplimentara. XDF stocheaza o singura copie, dar ii spune lui DOS ca stocheaza doua. Astfel, se economisete spaiul care ar fi fost ocupat de a doua copie FAT). Acest lucru inseamna, de asemenea, ca nu ar trebui sa folosii niciodata un disc de 2m pentru a stoca altceva decat un sistem de fiiere DOS. Mtools accepta aceste formate numai pe Linux. XDF XDF este un format de mare capacitate utilizat de OS/2. Acesta poate conine 1840 K pe disc. Acest lucru este mai mic decat cele mai bune formate de 2m, dar principalul sau avantaj este ca este rapid: 600 de milisecunde pe piesa. Acest lucru este mai rapid decat formatul cu 21 de sectoare i aproape la fel de rapid ca formatul standard cu 18 sectoare. Pentru a accesa aceste discuri, asigurai-va ca mtools a fost compilat cu suport XDF i definii variabila use_xdf pentru unitatea de discheta in fiierul de configurare. Consultai seciunea Compilarea mtools, i `miscellaneous variables', pentru detalii despre cum sa facei acest lucru. Accesul rapid la XDF este disponibil numai pentru nucleele Linux care sunt mai recente decat 1.1.34. Mtools accepta acest format numai pe Linux. Atenie / In atenia distribuitorilor: Daca mtools este compilat pe un nucleu Linux mai recent decat 1.3.34, nu va funciona pe un nucleu mai vechi. Cu toate acestea, daca a fost compilat pe un nucleu mai vechi, funcioneaza in continuare pe un nucleu mai nou, cu excepia faptului ca accesul la XDF este mai lent. Se recomanda ca autorii de distribuii sa includa numai binari mtools compilai pe nuclee mai vechi de 1.3.34 pana la apariia versiunii 2.0. Cand va iei 2.0, binarele mtools compilate pe nuclee mai noi pot (i ar trebui) sa fie distribuite. Binarele mtools compilate pe nuclee mai vechi de 1.3.34 nu vor funciona pe niciun nucleu 2.1 sau mai recent. Coduri de ieire Toate comenzile Mtools returneaza 0 in caz de succes, 1 in caz de eec total sau 2 in caz de eec parial. Toate comenzile Mtools efectueaza cateva verificari inainte de a continua, pentru a se asigura ca discul este intr-adevar un disc MS-DOS (spre deosebire de, sa zicem, un disc ext2 sau MINIX). Aceste verificari pot respinge discurile parial corupte, care altfel ar putea fi inca citibile. Pentru a evita aceste verificari, definii variabila de mediu MTOOLS_SKIP_CHECK sau variabila corespunzatoare din fiierul de configurare (a se vedea seciunea variabile globale). ERORI Un efect secundar nefericit al faptului ca nu se ghicete dispozitivul adecvat (atunci cand sunt acceptate mai multe capacitai de disc) este un mesaj de eroare ocazional de la controlorul de dispozitiv. Acestea pot fi ignorate in sigurana. Codul de verificare FAT se blocheaza pe discurile de 1,72 Mb formatate cu mtools pre-2.0.7. Definii variabila de mediu MTOOLS_FAT_COMPATIBILITY (sau variabila corespunzatoare din fiierul de configurare, `global variables')) pentru a ocoli verificarea FAT. Consultai i floppyd_installtest mattrib mbadblocks mcd mcopy mdel mdeltree mdir mdu mformat minfo mkmanifest mlabel mmd mmount mmove mrd mren mshortname mshowfat mtoolstest mtype TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . mtools-4.0.43 21 martie 2023 mtools(1)