Modulele software executabile au o extensie. Cum să faci un fișier executabil în Linux. Nume de fișiere și foldere

Mulți utilizatori de sisteme informatice au întâlnit probabil conceptul de fișier de program executabil într-o măsură sau alta. Fișierele executabile nu au întotdeauna, dar destul de des au extensia EXE, care este comună pentru sistemele de operare din familia Windows. Pentru a arunca puțină lumină asupra subiectului extensiilor, ne vom uita la informații generale despre aceste obiecte și, de asemenea, vom analiza unele tipuri de extensii de bază.

Cum diferă fișierele executabile de alte obiecte

Înainte de a afirma că un fișier executabil al unui program poate avea un singur tip specific de extensie, este necesar să înțelegem cum să distingem un astfel de obiect de altele. Principalele diferențe dintre fișierele executabile și alte date de informații includ următorii factori: extensia în sine, care indică conținutul codului octet al mașinii sau al mașinii virtuale din fișier, semnătură, atribute în sistemul de fișiere. Cu toate acestea, chiar dacă utilizatorul știe că fișierele executabile au o extensie de nume de tip EXE, atunci nu va fi posibilă vizualizarea conținutului folosind mijloace obișnuite, deoarece astfel de obiecte au conținut compilat, care este afișat atunci când este văzut ca un set de caractere fără sens. . În general, utilizatorul va trebui să folosească un instrument de dezasamblare, sau ceva similar, care permite decompilarea. Dar nu despre asta vorbim.

Fișiere executabile: structură

În ceea ce privește construcția fișierelor executabile, acestea trebuie să conțină anteturi (execuția intenționată a instrucțiunilor, parametrilor și formatele de cod) și instrucțiunile în sine (sursă, mașină sau bytecodes). În unele cazuri, structura poate include date de depanare, descrieri ale mediului, cerințe ale sistemului de operare, liste cu biblioteci relevante, sunet, grafică, imagini, pictograme de comenzi rapide și altele asemenea. Mulți dintre voi probabil ați observat că, în cea mai mare parte, fiecare astfel de fișier din sistemul de operare are inițial o pictogramă.

Principiul de funcționare

Chiar dacă fișierele executabile pot avea diferite tipuri de extensii, ele funcționează pe același principiu. Când este lansat, fișierul executabil este încărcat în memoria computerului. În același timp, mediul este configurat și inițializat, biblioteci suplimentare sunt extrase dacă utilizarea lor este prevăzută de program. Tot în această etapă sunt configurate unele operații suplimentare și instrucțiunile în sine sunt executate folosind metodele care sunt scrise direct în fișier.

Fișiere de program executabile: ce extensie au?

Acum să trecem la analiza problemei legate de extensii. Desigur, nu va fi posibil să luați în considerare absolut toate tipurile; va dura mult timp. Vom evidenția doar opțiunile cele mai comune și populare. Deci, extensia este setată în funcție de tipul de conținut. De exemplu, într-un sistem de operare precum Windows, cele mai comune fișiere executabile au extensia EXE. Acest lucru se aplică tuturor programelor care sunt proiectate să funcționeze în mediul acestor sisteme de operare. Astfel de obiecte conțin coduri de mașină. Fișierele BIN sunt foarte asemănătoare. Fișierele batch precum CMD, BAT și COM sunt un alt tip de fișier executabil. Primul tip în acest caz este un fișier batch Windows. Fișierele de al doilea și al treilea tip aparțin sistemelor de operare din familia DOS. Mulți dintre voi probabil că ați întâlnit deja fișiere MSI și MSU. Acesta poate fi un program de instalare a actualizării sistemului sau un program de instalare nativ al sistemului de operare Windows. O categorie separată de fișiere constă din macrocomenzi și scripturi. Acestea sunt fișiere cu extensiile JSE, JS, SCR, VBE, VBS, VB. Adesea există și fișiere JAD și JAR, care sunt destinate instalării aplicațiilor pe dispozitive mobile sau utilizării lor în mediul JAVA. În conținutul lor, astfel de obiecte nu mai conțin coduri de mașină, ci coduri de mașină virtuală.

Ce extensie au fișierele executabile pe diferite sisteme de operare?

Dacă te uiți cu atenție, vei observa că unele sisteme de operare au componente destul de specifice. De exemplu, sistemul de operare Windows are o categorie specială de fișiere executabile. În general, în orice sistem de operare puteți găsi atât componente standard, cât și componente speciale. Cu toate acestea, există unele formate comune, cum ar fi HTA, un document HTML executabil. Ele funcționează aproape peste tot, indiferent de tipul de sistem de operare utilizat. Ca și în cazul altor tipuri de sisteme, de exemplu, pe Mac-uri, fișierele executabile au extensia APP pentru programe și PKG pentru distribuții. În sistemele de operare ale familiei Linux, lucrurile stau puțin diferit. Problema este că în astfel de sisteme de operare nu există deloc conceptul de extensie. Puteți recunoaște un fișier executabil după atributele sale, cum ar fi sistem, ascuns, doar pentru citire etc. Ca urmare, problema schimbării extensiei pentru a lansa sau a citi fișierul necesar dispare. Cu toate acestea, în orice sistem de operare, chiar și pe dispozitive mobile, puteți găsi un număr mare de obiecte de acest tip. Nu trebuie să mergi departe. În același sistem de operare al familiei Android, fișierul executabil de instalare are extensia APK. Pe dispozitivele Apple, fișierele executabile au extensia IPA.

Concluzie

Să rezumăm scurta noastră recenzie a extensiilor de fișiere executabile. Accentul în acest caz a fost în principal pe obiectele care sunt prezente în sistemele de operare din familia Windows. Sistemele de operare rămase au fost atinse doar pe scurt pentru dezvoltare generală. După cum a devenit deja clar, varietatea fișierelor executabile este foarte mare. Este imposibil să furnizați un fel de tabel rezumativ care să indice absolut toate tipurile de extensii. Prin urmare, în acest articol ne-am limitat doar la cele mai comune formate.

Utilizatorii Ubuntu începători se obișnuiesc adesea cu unele dintre specificul gestionării fișierelor pe acest sistem. Totuși, de fapt, totul este extrem de simplu și foarte elegant; în acest articol voi încerca să explic toate subtilitățile, pentru ca mai târziu când utilizați sistemul să nu fiți surprins de unele lucruri care sunt de neînțeles la prima vedere.

Nume de fișiere și foldere

Am menționat deja că în Linux toate numele fișierelor sunt sensibile la majuscule, adică puteți crea cu ușurință două fișiere în același director cu aceleași nume, dar scrise în cazuri diferite, de exemplu, Ubuntu.txt și ubuntu.txt.

În plus, am mai spus că puteți utiliza în numele fișierelor absolut Orice caractere pe care le doriți, în afară de bara oblică / , totuși, din anumite motive, nu aș recomanda să utilizați următoarele caractere: \< >* , precum și caractere newline și tab. Vă puteți semna fișierele cu caractere chinezești, rune, litere grecești și orice doriți, atâta timp cât vă simțiți confortabil să utilizați astfel de nume.

Și, în sfârșit, permiteți-mi să vă reamintesc încă o dată că separatorul de director din calea către un fișier în Linux este întotdeauna caracterul /, spre deosebire de Windows, care folosește \ .

Acces la fișiere

Conținutul și extensia fișierului

Dacă ați mai folosit sisteme de operare Windows, atunci cel mai probabil sunteți obișnuit cu faptul că un tip de fișier este determinat de extensia sa (ultima parte a numelui fișierului după punct). De exemplu, fișierul „Blue Icefall.mp3” este muzică în format mp3, iar „Urania.txt” este un fișier text. De fapt, totul este puțin diferit, extensia este doar o parte a numelui fișierului, care nu depinde în niciun fel de conținutul real, iar tipul fișierului este de obicei determinat diferit. De exemplu, accesați Ubuntu la un folder cu fișiere mp3 și comutați la modul de vizualizare a listei. În coloana „Type” de lângă fișierele mp3, veți vedea „MP3 audio”:

Acum redenumiți orice fișier, dându-i extensia în loc de mp3?? .

Vedeți, tipul fișierului nu s-a schimbat. Dacă acum încercați să deschideți un astfel de fișier, acesta se va deschide cu ușurință ca mp3 în player.

Desigur, extensia este necesară, mai mult, Ubuntu se bazează în primul rând pe ea, adică dacă redenumești un fișier mp3 adăugând extensia txt la el, atunci Ubuntu va considera un astfel de fișier text. Cu toate acestea, faptul că Ubuntu poate privi dincolo de numele fișierului salvează o mulțime de probleme. Prin urmare, nu fi surprins când dai peste fișiere în Ubuntu fără nicio extensie, cu care sistemul funcționează calm, fără a cere nimic.

Apropo, Ubuntu are un utilitar puternic de detectare a tipurilor de fișiere care nu se uită deloc la numele și extensia, ci încearcă să identifice fișierul doar după conținutul său. Poate fi util atunci când un fișier nu poate fi deschis dintr-un motiv oarecare, deoarece vă permite să vă asigurați că conține date exact de tipul pe care vă așteptați să le vedeți acolo. Acest utilitar este un utilitar de consolă și se numește fișier. Iată ce spune ea despre sunetul mp3 redenumit într-un document text:

Este aproape imposibil să înșeli utilitarul de fișiere și știe despre cele mai utilizate formate de fișiere.

Fișiere executabile

În ceea ce privește fișierele executabile, adică în termeni simpli, programele obișnuite, Ubuntu este radical diferit de Windows. În Windows, fișierele executabile au extensia exe (în cea mai mare parte), dar în interior sunt un set de octeți imposibil de citit. Și în Ubuntu, chiar și un fișier text poate fi executabil. Voi spune imediat că exe sunt programe pentru Windows și în Ubuntu nu funcționează fără Wine (o aplicație pentru lansarea fișierelor executabile Windows pe Linux), dar, în general, nu funcționează întotdeauna în Wine.

Deci, ce este un fișier executabil în termenii Ubuntu? De fapt, acesta este orice fișier care este marcat ca executabil și pe care Ubuntu îl poate rula. Aceasta înseamnă că fiecare fișier are o proprietate specială de comutare care nu depinde în niciun fel de nume sau conținut și este responsabil pentru executabilitate. Dacă un fișier este marcat ca executabil, atunci în general este, iar dacă nu este marcat, atunci este un fișier obișnuit cu date și nu poate fi executat direct. Un alt lucru este că nu orice fișier marcat ca executabil poate fi executat de Ubuntu, deși Ubuntu are o mulțime de metode de lansare a fișierelor cu conținut complet diferit.

Un exemplu tipic de fișiere executabile Linux care par neobișnuite la prima vedere sunt așa-numitele scripturi. Scripturile sunt fișiere text obișnuite care conțin un set de instrucțiuni pentru un program interpret care execută efectiv scripturi. Deci, dacă proprietatea de executabilitate este setată pe script, atunci este un program care poate fi lansat în mod obișnuit, iar dacă nu este instalat, atunci este doar un fișier text. Adică puteți face un fișier executabil sau, dimpotrivă, puteți elimina posibilitatea executării acestuia, modificând doar una dintre proprietățile acestuia.

Mai mult, de fapt, această proprietate magică a comutatorului de executabilitate este unul dintre cele trei drepturi de acces pe care le-am menționat pe scurt în articolul anterior. Am spus că fiecare fișier are trei grupuri de drepturi de acces - pentru utilizatorul proprietar, pentru grupul proprietar și pentru toți ceilalți, fiecare grup constă la rândul său din trei drepturi: citire, modificare și executare. Deci, dreptul de a executa este comutatorul magic al executabilității.

De aici rezultă o proprietate foarte amuzantă: același fișier poate fi atât executabil, cât și neexecutabil în același timp, de exemplu, dacă numai utilizatorul proprietar are drepturi de a-l executa. Apoi, utilizatorul care deține acest fișier îl va putea rula ca program, iar pentru toți ceilalți va fi un fișier de date obișnuit.

Așa este totul cu adevărat simplu și frumos, sper că înțelegeți logica de bază și nu vă veți încurca când lucrați cu fișiere executabile în Ubuntu.

Fișiere text

Fișierele text sunt peste tot în Ubuntu. Toate setările sunt stocate ca fișiere text, codurile sursă ale tuturor programelor sunt fișiere text, multe programe din Ubuntu sunt de fapt scripturi, adică și fișiere text. Și, desigur, Ubuntu poate lucra cu fișiere text în orice mod doriți. Și acest subiect nici nu ar trebui să fie atins dacă nu ar fi o problemă cu sistemele de operare Windows. Cert este că în Windows, în unele locuri, o metodă de salvare a textului simplu care era depășită în anii 90 ai secolului trecut este încă folosită, în special, în fișierele text.

De fapt, majoritatea fișierelor se vor deschide în editorul de text standard Ubuntu fără probleme, dar uneori întâlniți fișiere care par „nebunești”. În acest caz, trebuie să ajutați puțin Gedit și să specificați manual codificarea fișierului. Pentru a face acest lucru, închideți fila cu fișierul care nu poate fi citit în editor, apoi selectați „Deschide” în meniul programului, găsiți fișierul și acordați atenție câmpului „Codificare caractere” situat în partea de jos a casetei de dialog deschise. În acest câmp trebuie să specificați codificarea dorită, după care fișierul se va deschide într-o formă lizibilă. Apropo, recomand să salvați imediat astfel de fișiere în utf-8, astfel încât să nu mai apară probleme cu ele în viitor.

Există modalități mai ușoare de a lucra cu codificări, de exemplu, un plugin pentru Gedit care vă permite să schimbați codificarea fișierelor deschise fără a fi nevoie să le redeschideți. În plus, există utilitare pentru transcodarea automată a fișierelor în utf8, de exemplu, enca. De asemenea, puteți controla mecanismul de auto-detecție a codificării în Gedit; acest lucru se face prin editorul de configurare, despre care voi vorbi puțin într-unul din ultimele articole.

În cele din urmă, aș dori să spun că este foarte recomandat să transferați într-un fel sau altul toate informațiile text pentru a utiliza utf8, deoarece, de fapt, numai această codificare este recunoscută în mod normal peste tot și întotdeauna, iar în viitor, cel mai probabil, doar aceasta va fi folosit.

Fișiere audio

În cazul fișierelor audio, există și o problemă cu codificările, dar se manifestă doar în etichete. Din păcate, unele programe populare de editare a etichetelor Windows și editoare de text folosesc încă codare învechită. Unele playere Ubuntu acceptă specificarea codificării fișierelor redate, dar este mult de preferat să procesați întreaga bibliotecă media cu programe speciale care vor readuce automat toate etichetele la forma lor normală, astfel încât să nu existe probleme în viitor. Cel mai popular program de acest fel este EasyTag, este disponibil în depozitele standard, așa că aproape imediat după ce ați citit următorul articol îl veți putea folosi.

În ceea ce privește formatele, Ubuntu acceptă toate formatele audio existente, dar unele necesită codecuri suplimentare pentru a fi redate. Vă voi spune cum să le instalați într-unul dintre următoarele articole.

Modificarea asocierilor de fișiere cu aplicațiile

Odată ce v-ați simțit puțin mai confortabil cu Ubuntu, poate doriți să explorați abundența de programe disponibile în depozite. Și la scurt timp după ce vei alege dintre nenumărate alternative aplicațiile care ți se potrivesc, cel mai probabil te vei confrunta cu o întrebare complet logică: cum să forțezi anumite tipuri de fișiere să se deschidă în programele pe care le-ai instalat, și nu în cele disponibile implicit?

Răspunsul la aceasta este foarte simplu. Faceți clic dreapta pe orice fișier de tipul dorit, selectați „Proprietăți” în meniul care apare și în fereastra care se deschide, accesați fila „Deschideți în program”:

Lista va conține toate aplicațiile care au spus Ubuntu că acceptă tipul de fișier selectat. Ei bine, programul folosit implicit va fi marcat. Tot ce trebuie să faceți este să selectați aplicația dorită și să închideți fereastra, după care fișierele de tipul specificat vor începe să se deschidă implicit în aplicația la alegere. Adică, dacă doriți, de exemplu, ca filme în format avi să se deschidă în VLC-ul pe care l-ați instalat, și nu în Totem media player, atunci trebuie doar să marcați VLC ca aplicație implicită în proprietățile oricărui fișier avi.

Apropo, puteți include cu ușurință aplicațiile dvs. în listă făcând clic pe butonul „Adăugați” din partea de jos a ferestrei și selectând unul dintre programele instalate pe sistem sau introducând comanda de lansare. În acest fel, puteți configura asocieri cu orice aplicație pentru toate tipurile de fișiere pe care le utilizați.

Cu toate acestea, mecanismul descris are o mică problemă: pentru a modifica legarea aplicației pentru un anumit tip de fișier, trebuie să aveți un fișier de tipul dorit. Nu puteți vizualiza și modifica pur și simplu lista tuturor asociațiilor implicite utilizate în sistem. Din fericire, o funcționalitate similară este disponibilă în utilitarul Ubuntu Tweak deja menționat, așa că dacă doriți să schimbați simultan asocierile pentru un număr mare de tipuri de fișiere, vă sfătuiesc să o utilizați.

Drept concluzie

În acest articol, am încercat să vorbesc în detaliu despre principalele caracteristici ale lucrului cu fișiere în Ubuntu. Sper că ați reușit să vă dați seama ce este și să înțelegeți principalele puncte. În cele din urmă, aș dori să remarc faptul că Ubuntu acceptă cele mai comune formate de fișiere fără niciun software suplimentar; fișierele specifice pot fi cel puțin convertite într-unul dintre formatele standard folosind diverse programe care sunt disponibile din abundență în depozitele Ubuntu.

Puțin mai târziu vă voi spune cum să instalați un pachet de suport complet pentru formatele multimedia care nu sunt incluse implicit în Ubuntu din cauza legislației imperfecte din unele țări, de care, din păcate, trebuie să ținem cont, dar pentru asta avem nevoie să luați în considerare următorul subiect foarte important:

Adevărat, există o părere că nu ar trebui să denumiți fișierele folosind caractere și spații non-latine, deoarece astfel de nume pot fi primite prost de sistemele de operare Microsoft. Într-adevăr, versiunile de Windows înainte de Vista nu pot funcționa corect cu fișierele numite folosind caractere naționale; Windows, de asemenea, nu acceptă majoritatea caracterelor tipografice în numele fișierelor și nu știe că se dovedește că puteți scrie cu majuscule diferite. Ubuntu chiar încearcă să aibă grijă de acest lucru, așa că, de exemplu, atunci când copiați fișiere pe o unitate flash care poate fi utilizată în Windows, Ubuntu va înlocui automat toate caracterele care sunt dăunătoare pentru Windows cu liniuțe de subliniere. În plus, numele fișierelor rusești sunt încă afișate perfect chiar și în versiunile mai vechi de Windows în limba rusă. Dar există încă o problemă, așa că decideți singuri, eu personal prefer comoditatea organizării fișierelor în Ubuntu decât rarele sughițuri în comunicarea cu Windows.

Dacă, desigur, aveți codecuri instalate pentru redarea mp3. În caz contrar, sistemul vă va solicita mai întâi să le instalați, dar după instalare va reda în continuare fișierul.

Problema este aceasta: din punct de vedere tehnic, memoria computerului stochează biți combinați în octeți, adică seturi de unu și zero. Astfel de mulțimi sunt numere din sistemul numeric binar. Adică, computerul poate stoca doar numere obișnuite. Pentru a salva textul și a-l putea citi mai târziu, aveți nevoie de un tabel special de conversie în care fiecare caracter are propriul său număr. Un astfel de tabel se numește codificare. Din punct de vedere istoric, pe primele computere, din cauza economiei de memorie, unui octet corespundea unui caracter, deci codificarea putea conține doar 256 de caractere (întrucât numerele de la 0 la 255 pot fi scrise într-un octet). Desigur, 256 de caractere nu sunt suficiente nici măcar pentru a scrie niște alfabete naționale, ca să nu mai vorbim de toate alfabetele lumii. Prin urmare, pentru fiecare alfabet național, a fost dezvoltată propria sa codificare (și uneori mai mult de unul). Pentru limba rusă, cele mai utilizate trei codificări de acest tip sunt standardul cp1251 pentru Windows, KOI8R și vechiul cp866 pentru DOS. Și totul ar fi bine, dar din setul de octeți care ar trebui să reprezinte textul, este imposibil de stabilit în ce codificare națională este prezentat. Acest lucru creează probleme enorme atunci când se încearcă comunicarea între persoane de diferite naționalități și face aproape imposibilă internalizarea documentelor text. Prin urmare, a fost dezvoltată o codificare universală, numită Unicode, care conține absolut toate caracterele tipărite ale Pământului. Din punct de vedere tehnic, este implementat în mai multe versiuni, dintre care cea mai comună este utf-8. Această codificare este compatibilă cu ASCII, vechiul standard internațional de 128 de caractere care conține doar litere engleze, cifre arabe și punctuație, astfel încât documentele cu doar caractere ASCII se deschid bine ca utf-8. Ubuntu folosește întotdeauna și peste tot în mod natural utf-8, acest lucru permite, în special, să folosești orice caractere în numele fișierelor și, în general, să apelezi orice vrei tu. Dar unele programe pentru Windows, din păcate, nu au ieșit încă din animația suspendată și folosesc adesea codificări naționale pentru a salva text. În cazul versiunii ruse de Windows, această codificare este cp1251. Problemele încep atunci când documentele din Windows trebuie să fie deschise în Ubuntu. După cum am spus deja, este imposibil să se determine dintr-un set de octeți în care dintre sutele de codificări este reprezentat. Prin urmare, implicit, Ubuntu presupune că tot textul este prezentat în codificarea internațională standard, adică utf-8. Și dacă deschideți un fișier text cu caractere rusești create în Windows în Ubuntu, este posibil să vedeți caractere ciudate.

Deoarece în mod implicit, în versiunea în limba rusă a Ubuntu, Gedit este configurat astfel încât să încerce să selecteze automat una dintre codificările comune în limba rusă pentru fișier. Desigur, dacă fișierul conține text non-rus și fișierul este salvat într-una dintre codificările învechite, atunci Ubuntu nu îl va putea deschide automat.

Fișierele executabile sunt fișiere care conțin programe de calculator gata de rulare.

Fișierul executabil este o expresie care apare destul de des, în principal în documentație. În comunicarea live (inclusiv comunicarea virtuală), utilizatorii folosesc termeni mai puțin greoi pentru a se referi la acest tip de fișier, reflectând mai exact ceea ce înseamnă exact.

Deci, ce se ascunde în spatele acestei fraze? Fișierele executabile sunt fișiere care conțin programe de calculator gata de rulare. În funcție de forma în care este scris programul în fișierul executabil, există două subgrupuri mari de fișiere din această clasă. Primul subgrup este fișierele binare; ele conțin o înregistrare a programului sub formă de coduri speciale de mașină, care, cel mai adesea, sunt transmise direct procesorului. Astfel de fișiere sunt numite și binare pe scurt. În schimb, există fișiere executabile în care programul este scris sub formă de text - adică chiar în forma în care programatorul care l-a creat a lucrat cu el. Astfel de fișiere executabile sunt numite scripturi. Acest termen este adesea folosit și în legătură cu programele în sine, care sunt stocate în astfel de fișiere.

Pentru a rula programe din majoritatea fișierelor executabile binare, aveți nevoie doar de un sistem de operare care le acceptă. Pentru a executa scripturi, aveți nevoie de un interpret care va traduce textul programului secvenţial în comenzi ale procesorului. Unele fișiere executabile binare necesită, de asemenea, pentru a rula interpreți.

Pe Windows, cele mai comune fișiere executabile binare. Cel mai comun tip dintre ele este aplicația. Aplicațiile au extensii EXE și pot rula independent. Pe lângă acestea, există biblioteci dinamice (extensia lor este DLL), care conțin funcții comune diferitelor aplicații. Există și drivere (DRV sau VXD) - programe speciale necesare pentru ca sistemul să poată interacționa cu modele specifice ale anumitor dispozitive. Fișierele executabile (în special în Windows) pot depinde unele de altele: de exemplu, pentru a rula orice aplicație, sunt necesare anumite biblioteci dinamice de sistem și acestea, la rândul lor, au nevoie de drivere.

Trebuie remarcat faptul că fișierele executabile conțin nu numai programele în sine, ci și diverse date suplimentare. Acestea pot fi diverse resurse grafice afișate de program, texte de inscripție, descrieri ale casetelor de dialog etc. Un exemplu izbitor în acest sens pot fi arhivele autoextractibile, care conțin volume mari de informații împachetate pentru a-și reduce volumul în timpul transmiterii sau stocării.

Vadim STANKEVICH

VKontakte este, fără îndoială, o rețea socială foarte răspândită în care oamenii nu numai că corespund între ei, ci și schimbă diferite fișiere. În acest sens, mulți utilizatori ai acestei rețele de socializare întâmpină adesea o problemă atunci când, atunci când încearcă să atașeze un fișier la un mesaj, apare o eroare cu textul „Failed to upload file. Fișierul nu trebuie să fie executabil și dimensiunea acestuia nu trebuie să depășească 200 MB.”

Dacă totul este clar cu dimensiunea fișierului, atunci nu toată lumea știe ce înseamnă „Fișierul nu trebuie să fie executabil”.

În acest articol vă vom spune ce este un fișier executabil și ce trebuie să faceți pentru a ocoli acest avertisment.

Fișier executabil - ce este?

Un fișier executabil este un fișier care conține un set gata făcut de comenzi pentru computer, pe care le puteți încărca imediat în memorie și puteți începe executarea.

De regulă, acestea sunt fișiere cu extensia .exe, .bat, .com.

De asemenea, uneori, VKontakte nu dorește să descarce arhive în care sunt împachetate fișiere .exe, invocând aceeași eroare.

Acest lucru se datorează problemelor de securitate, deoarece fișierele .exe sunt primele cele mai populare în clasamentul susceptibilității la infecția cu virus. Și pentru a reduce cumva riscul de răspândire a virușilor de computer prin VKontakte, dezvoltatorii au decis să interzică pur și simplu transferul celui mai susceptibil tip de fișier unul la altul - fișierul executabil.

Cum să ocoliți eroarea?

Este destul de ușor să ocoliți această limitare. Trebuie doar să-l trimiteți unuia dintre cele permise, de exemplu .doc, destinatarului și să îi spuneți, după descărcarea fișierului, să schimbe extensia înapoi la cea pe care o avea fișierul inițial.

Schimbarea extensiei fișierului

Metodele alternative includ încărcarea unui fișier pe care VKontakte refuză să îl încarce în orice spațiu de stocare în cloud, cum ar fi Yandex Disk sau Google Drive, și apoi trimiterea unui link către acesta către destinatarul VKontakte.


Cel mai bun mod de a-i mulțumi autorului articolului este să-l repostezi pe pagina ta

Sistemul de operare Linux, spre deosebire de Windows, determină ce fișiere sunt programe nu prin extensie, ci printr-un indicator special de executabilitate. Fiecare fișier are trei steaguri principale, citire, scriere și execuție. Ei determină ce poate face sistemul cu acest fișier.

Când descărcați diverse programe de instalare de software de pe Internet sau creați un script într-un editor de text, marcajele lor implicite sunt setate doar pentru citire și scriere. Nu veți putea rula un astfel de fișier ca program; trebuie să faceți altceva cu el. În acest articol ne vom uita la cum să faceți un fișier executabil în Linux.

S-au scris deja multe despre modul de setare a indicatorului de executabilitate. Dar ce se întâmplă cu fișierul în acest timp, ce este executabilitatea și cum funcționează?

Un program este un set de instrucțiuni pe care procesorul le execută pe date, la rândul său, pentru a produce un anumit rezultat. Dar probabil că știi deja asta.

De fapt, pentru procesor nu există nicio diferență între date și instrucțiuni. Ambele constau din octeți, cu alte cuvinte, numere. Pe vremuri s-a convenit că anumite combinații de numere ar însemna una sau alta acțiune a procesorului, dar în toate celelalte privințe erau aceleași date. Prin urmare, nu are nicio diferență pentru procesor ce să execute - un fișier executabil Linux sau un fișier text obișnuit. Ambele pot fi finalizate cu succes, dar în a doua opțiune instrucțiunile nu au niciun sens.

Pentru ca sistemul să poată determina ce fișiere trebuie executate și care nu ar trebui executate, a fost inventat un flag de executabilitate. În esență, indicatorul de executabilitate este de câțiva octeți în sistemul de fișiere care spun dacă fișierul trebuie executat sau nu; conținutul fișierului în sine nu se modifică în niciun fel. Cu scripturi, totul funcționează exact la fel, doar comenzile din fișier sunt executate nu de procesor, ci de interpret, de exemplu, în scripturile bash, shell-ul bash în sine. Și programele obișnuite au și propriul lor bootloader - acesta este ld-linux.so.2.

Cum se face un fișier executabil în Linux?

În sistemul de operare Linux, utilitarul chmod este utilizat pentru a controla steagurile fișierelor. Sintaxa pentru apelarea utilitarului:

  • Categorie- steaguri pot fi setate pentru trei categorii: proprietarul fișierului, grupul de fișiere și toți ceilalți utilizatori. În comandă sunt indicate prin simbolurile u (utilizator) g (grup) o (altul), respectiv.
  • Acțiune- Pot fi + (plus), ce va însemna a pune un steag sau - (minus) scoate steagul.
  • Steag- unul dintre steagurile disponibile este r (citire), w (scriere), x (executare).

De exemplu, pentru a crea un script executabil în Linux pentru proprietarul unui fișier, rulați:

chmod u+x adresa_fișier

Acest lucru este suficient în majoritatea cazurilor, dar dacă dorim ca fișierul să fie accesibil altor utilizatori, trebuie să specificăm și alte categorii: gȘi o:

chmod ugo+x adresa_fișier

Puteți vizualiza steagurile în terminal folosind utilitarul ls:

ls -l director_cu_fișiere

Aceasta înseamnă că toate steaguri sunt activate pentru toate categoriile. Primul rwx este steagurile proprietarului, al doilea este steagurile grupului, iar al treilea este pentru toți ceilalți. Dacă steagul nu este setat, va exista o liniuță în locul lui.

Eliminarea steagului fișierului executabil este foarte simplă. Aceeași comandă este folosită numai cu semnul minus:

chmod u-x adresa_fișier

Cum să setați indicatorul de executabilitate în GUI

Puteți face un fișier executabil în Linux nu numai prin terminal. Această funcționalitate este disponibilă în toate managerii de fișiere. Acest lucru poate fi mai ușor pentru tine la început. Să ne uităm la exemplul managerului de fișiere GNOME, Nautilus. Faceți clic dreapta pe programul sau fișierul nostru script pentru a deschide meniul contextual, apoi selectați proprietăți:

Apoi, accesați fila Drepturi și bifați caseta Permiteți executarea fișierului ca program:

Gata, fișierul executabil Linux poate fi lansat de sistem, direct din managerul de fișiere.

concluzii

Asta e tot, acum știi cum să faci un fișier executabil în Linux. Și dacă trebuie să rulați un script sau un program de instalare de pe Internet, nu veți avea probleme. Dacă aveți întrebări, întrebați în comentarii!