Linux ఫైల్ కంప్రెషన్ ఎంపికలు మరియు పోలిక

Linux File Compression Options



కుదింపు, సాధారణంగా, ఉపయోగకరమైన పద్ధతి, ఇది తప్పనిసరిగా అసలు డేటా కంటే తక్కువ డేటాను ఉపయోగించి సమాచారాన్ని ఎన్‌కోడింగ్ చేస్తుంది. లైనక్స్ విషయంలో, వివిధ సంపీడన ఎంపికలు ఉన్నాయి, ప్రతి దాని స్వంత ప్రయోజనాలు ఉన్నాయి.

సాధారణ లైనక్స్ డిస్ట్రో కొన్ని ఉపయోగకరమైన మరియు సరళమైన కుదింపు విధానాలకు ప్రాప్తిని అందిస్తుంది. ఈ వ్యాసం వాటిపై మాత్రమే దృష్టి పెడుతుంది.







కుదింపు రకాలు

కంప్రెషన్ అనేది ఎన్‌కోడింగ్ మరియు సమాచారాన్ని వాస్తవానికి ఉన్నదానికంటే తక్కువ బిట్‌లను ఉపయోగించి సూచిస్తుంది. ఫైల్ కంప్రెషన్ విషయంలో, కంప్రెషన్ పద్ధతి దాని స్వంత అల్గోరిథం మరియు గణిత గణనను ఉపయోగిస్తుంది, ఇది సాధారణంగా అసలు ఫైల్ పరిమాణం కంటే తక్కువ అవుట్‌పుట్‌ను ఉత్పత్తి చేస్తుంది. విభిన్న కంప్రెషన్ ఎలా పనిచేస్తుంది మరియు ఫైల్స్ యొక్క యాదృచ్ఛిక స్వభావం కారణంగా, మైలేజ్ బాగా మారవచ్చు.



కుదింపులో 2 రకాలు ఉన్నాయి.



  • నష్టపోయిన కుదింపు : ఇది డేటా సమగ్రతకు హామీ ఇవ్వని ప్రమాదకర రకం కుదింపు. ముఖ్యంగా, ఒకసారి కంప్రెస్ చేసిన తర్వాత, కంప్రెస్డ్ ఆర్కైవ్‌ని ఉపయోగించి అసలు ఫైల్‌ను పునర్నిర్మించలేని ప్రమాదం ఉంది.
    ఈ రకమైన కుదింపుకు ఒక ఘనమైన ఉదాహరణ బాగా తెలిసిన MP3 ఫార్మాట్. ఒరిజినల్ ఆడియో ఫైల్ నుండి ఒక MP3 సృష్టించబడినప్పుడు, అది ఒరిజినల్ సోర్స్ మ్యూజిక్ ఫైల్ కంటే చాలా చిన్నది. ఇది కొంత ఆడియో నాణ్యతను కోల్పోయేలా చేస్తుంది.
  • నష్టం లేని కుదింపు : ఇది అత్యంత విస్తృతంగా ఉపయోగించే కుదింపు రకం. లాస్‌లెస్ కంప్రెషన్ పద్ధతిని ఉపయోగించి, ఒరిజినల్ ఫైల్‌ను కంప్రెస్డ్ ఫైల్ నుండి పునర్నిర్మించవచ్చు. ఈ ఆర్టికల్లో నేను చర్చించే కుదింపు పద్ధతులు అన్నీ నష్టరహిత కుదింపు పద్ధతులు.

లైనక్స్ కంప్రెషన్

కుదింపు పద్ధతుల్లో ఎక్కువ భాగం సాధనం నుండి అందుబాటులో ఉన్నాయి తారు . జిప్ కంప్రెషన్ కొరకు, మేము దీనిని ఉపయోగిస్తాము జిప్ సాధనం. మీ సిస్టమ్‌లో ఇప్పటికే ఈ టూల్స్ ఇన్‌స్టాల్ చేయబడిందని భావించి, ప్రారంభిద్దాం.





మొదట, మాకు పరీక్ష ఫైల్ అవసరం. ఒకదాన్ని సృష్టించడానికి కింది ఆదేశాన్ని అమలు చేయండి.

$బేస్ 64/దేవ్/యాదృచ్ఛిక| తల -సి 20000000 >file.txt



ఇది 20MB సైజుతో టెక్స్ట్ ఫైల్‌ని సృష్టిస్తుంది.

ఇప్పుడు, ఫైల్ యొక్క 10 కాపీలను సృష్టిద్దాం. కలిసి, ఇది 200 MB.

కుదింపు కోసం జిప్

జిప్ చాలా సాధారణం. జిప్ ఫైల్‌ను సృష్టించడానికి, జిప్ టూల్‌కు కింది కమాండ్ స్ట్రక్చర్ అవసరం.

$జిప్ <అవుట్‌పుట్>.జిప్<ఇన్పుట్>

టెస్ట్ డైరెక్టరీ కింద అన్ని ఫైల్‌లను ఒకే జిప్ ఫైల్‌లో కంప్రెస్ చేయడానికి, ఈ ఆదేశాన్ని అమలు చేయండి.

$జిప్test.zip*

ఇన్పుట్ పరిమాణం 200 MB. కుదింపు తర్వాత, ఇది ఇప్పుడు 152 MB!

డిఫాల్ట్‌గా, జిప్ టూల్ డీఫ్లేట్ కంప్రెషన్‌ను వర్తింపజేస్తుంది. అయితే, ఇది bzip2 కంప్రెషన్‌ని కూడా ఉపయోగించగలదు. అంతే కాదు, మీరు పాస్‌వర్డ్-రక్షిత జిప్ ఫైల్‌లను కూడా సృష్టించవచ్చు! జిప్ గురించి మరింత తెలుసుకోండి .

Linux లో కంప్రెషన్ కోసం తారు

తారు కుదింపు పద్ధతి కాదు. బదులుగా, ఇది చాలా తరచుగా ఆర్కైవ్‌లను సృష్టించడానికి ఉపయోగించబడుతుంది. అయితే, ఇది ఆర్కైవ్‌కు అనేక ప్రముఖ కుదింపు పద్ధతులను అమలు చేయగలదు.

తారు (టార్‌బాల్ అని కూడా పిలుస్తారు) ఆర్కైవ్‌ను నిర్వహించడానికి, తారు సాధనం ఉంది. తారు గురించి మరింత తెలుసుకోండి. సాధారణంగా, తారు సాధనం కింది ఆదేశ నిర్మాణాన్ని ఉపయోగిస్తుంది.

$తారు <ఎంపికలు> <అవుట్‌పుట్_ఫైల్> <ఇన్పుట్>

టెస్ట్ ఫైల్‌లను ఒకే టార్ ఆర్కైవ్‌లోకి జోడించడానికి, కింది ఆదేశాన్ని అమలు చేయండి.

$తారు -cvfపరీక్ష. తార*

ఇక్కడ, ఫైల్ పరిమాణం అలాగే ఉంటుంది.

Linux లో కంప్రెషన్ కోసం Gzip

GNU జిప్ లేదా జిజిప్ అనేది మరొక ప్రసిద్ధ కుదింపు పద్ధతి, నా అభిప్రాయం ప్రకారం, సాంప్రదాయ జిప్ కంటే మెరుగైన కుదింపు కారణంగా ఇది ఉత్తమమైనది. ఇది మార్క్ అడ్లెర్ మరియు జీన్-లూప్ గైల్లీ సృష్టించిన ఒక ఓపెన్ సోర్స్ ఉత్పత్తి, ఇది వాస్తవానికి UNIX ని భర్తీ చేయడానికి ఉద్దేశించబడింది కుదించుము వినియోగ.

జిజిప్ ఆర్కైవ్‌లను నిర్వహించడానికి, 2 టూల్స్ అందుబాటులో ఉన్నాయి: తారు మరియు జిజిప్. వారిద్దరినీ చూద్దాం.

ముందుగా, gzip సాధనం. Gzip కమాండ్ స్ట్రక్చర్ ఎలా ఉందో ఇక్కడ ఉంది.

$gzip <ఎంపిక> <ఇన్పుట్>

ఉదాహరణకు, కింది ఆదేశం test1.txt.txt1.txt.gz కంప్రెస్డ్ ఫైల్‌తో భర్తీ చేస్తుంది.

$gzip -vtest1.txt

మీరు gzip ఉపయోగించి మొత్తం డైరెక్టరీని కంప్రెస్ చేయాలనుకుంటే, ఈ ఆదేశాన్ని అమలు చేయండి. ఇక్కడ, -r జెండా పునరావృత కుదింపు కోసం. Gzip అన్ని ఫోల్డర్‌ల గుండా వెళుతుంది మరియు వాటిలో ప్రతి ఒక్కటి వ్యక్తిగత ఫైల్ (ల) ను కంప్రెస్ చేస్తుంది.

$gzip -ఆర్ <folder_path>

Gzip 1 (కనీసం కుదింపు, వేగవంతమైనది) నుండి 9 (ఉత్తమ కుదింపు, నెమ్మదిగా) నుండి ప్రారంభించి వివిధ కుదింపు శక్తి విలువకు మద్దతు ఇస్తుంది.

$gzip -v -9 <ఫైల్>

అవుట్‌పుట్‌పై మెరుగైన నియంత్రణ మరియు వాడుకలో సౌలభ్యం కోసం, పనికి తారు ఉత్తమం. కింది ఆదేశాన్ని అమలు చేయండి.

$తారు -cvzftest.tar.gz*

ఫలితం డిఫ్లేట్ ఉపయోగించి జిప్ మాదిరిగానే ఉంటుంది, ఫలితంగా కుదింపు తర్వాత 152 MB వస్తుంది.

Linux లో కుదింపు కోసం Bzip2

Bzip2 అనేది ఉచిత మరియు ఓపెన్ సోర్స్ సాధనం, ఇది కుదింపు కోసం బురోస్-వీలర్ అల్గోరిథంను ఉపయోగిస్తుంది. 1996 లో మొదటిసారిగా పరిచయం చేయబడింది, gzip కంప్రెషన్‌కు ప్రత్యామ్నాయంగా bzip2 భారీగా ఉపయోగించబడింది.

జిజిప్ మాదిరిగా, బిజిప్ 2 తో పని చేయడానికి 2 టూల్స్ ఉన్నాయి: తారు మరియు బిజిప్ 2.

Bzip2 సాధనం gzip సాధనం వలె పనిచేస్తుంది. ఇది ఒకేసారి ఒకే ఫైల్‌తో మాత్రమే పని చేయగలదు. ఇక్కడ కమాండ్ స్ట్రక్చర్ ఉంది.

$bzip2 <ఎంపిక> <ఇన్పుట్>

Test1.txt ఫైల్‌ను కంప్రెస్ చేద్దాం. ఇక్కడ, -v ఫ్లాగ్ వెర్బోస్ మోడ్ కోసం.

$bzip2 -vtest1.txt

Gzip మాదిరిగానే, bzip2 కూడా 1 (డిఫాల్ట్, తక్కువ మెమరీ వినియోగం) నుండి 9 (తీవ్రమైన కుదింపు, అధిక మెమరీ వినియోగం) నుండి వివిధ స్థాయిల కుదింపుకు మద్దతు ఇస్తుంది.

$bzip2 -v -9 <ఫైల్>

Bzip2 కుదింపును ఉపయోగించడానికి ఉత్తమ మార్గం తారును ఉపయోగించడం. కింది ఆదేశాన్ని ఉపయోగించండి.

$తారు -cvjftest.tar.bz2*

కుదింపు మునుపటి వాటి కంటే కొద్దిగా మెరుగుపడింది. ఇప్పుడు, ఫైల్ పరిమాణం 151.7 MB కి కుదించింది.

Linux లో కుదింపు కోసం XZ

ఇది కుదింపు రంగంలో సాపేక్షంగా కొత్తది. 2009 లో మొట్టమొదటిసారిగా విడుదలైంది, అప్పటి నుండి ఇది వాడుకలో స్థిరమైన పెరుగుదలను చూసింది.

Xz కంప్రెషన్ టూల్ LZMA2 అల్గోరిథంను ఉపయోగిస్తుంది, ఇది gzip మరియు bzip2 తో పోలిస్తే ఎక్కువ కుదింపు నిష్పత్తికి ప్రసిద్ధి చెందింది, మీరు డిస్క్ స్థలాన్ని గరిష్టంగా ఆదా చేయాలనుకున్నప్పుడు ఇది గొప్ప ఎంపిక. అయితే, ఇది అధిక మెమరీ అవసరాలు మరియు సమయ వినియోగం ఖర్చుతో వస్తుంది.

XZ కుదింపు సాధనం ద్వారా సృష్టించబడిన ఫైల్ .xz పొడిగింపును కలిగి ఉంది. ఒకే ఫైల్‌ను కంప్రెస్ చేయడం కోసం, మీరు నేరుగా XZ టూల్‌కు కాల్ చేయవచ్చు.

$xz<ఎంపిక> <ఫైల్>

ఉదాహరణకు, test1.txt ఫైల్‌ను కంప్రెస్ చేయడానికి కింది ఆదేశాన్ని అమలు చేయండి.

$xz-vtest1.txt

పేర్కొన్న ఇతర కుదింపు పద్ధతుల మాదిరిగానే, xz కూడా 1 (తక్కువ కుదింపు, వేగవంతమైనది) నుండి 9 (ఉత్తమ కుదింపు, నెమ్మదిగా) నుండి మొదలుకొని వివిధ రకాలైన కుదింపు బలాన్ని మద్దతు ఇస్తుంది. మీకు సమయం గురించి ఏమాత్రం గౌరవం లేనట్లయితే మరియు స్థలాన్ని ఆదా చేయాలనుకుంటే, తీవ్రస్థాయికి వెళ్లండి.

$xz-v -9 <ఫైల్>

అన్ని పరీక్ష ఫైళ్ల నుండి కంప్రెస్డ్ XZ ఫైల్‌ను సృష్టించడానికి, ఈ ఆదేశాన్ని అమలు చేయండి.

$తారు -cvJftest.tar.xz*

ఇక్కడ, అవుట్‌పుట్ ఫైల్ పరిమాణం 153.7 MB.

సంపీడన ఆర్కైవ్‌లను సంగ్రహిస్తోంది

మేము సృష్టించిన ఆర్కైవ్‌లను సంగ్రహించడం వాటిని సృష్టించడం కంటే సులభం. జిప్ ఫైల్‌ను సంగ్రహించడానికి, కింది ఆదేశ నిర్మాణాన్ని ఉపయోగించండి.

$అన్జిప్ <ఫైల్ పేరు>.జిప్-డి <గమ్యం>

మేము సృష్టించిన జిప్ ఆర్కైవ్‌ను సంగ్రహించడానికి, ఈ ఆదేశాన్ని అమలు చేయండి. ఇది ఒకే డైరెక్టరీలోని అన్ని విషయాలను సంగ్రహిస్తుంది.

$అన్జిప్test.zip

తారు, tar.gz, tar.bz2 మరియు tar.xz ఆర్కైవ్‌లను సంగ్రహించడానికి, మేము దీనిని ఉపయోగించాలి తారు సాధనం. వాటన్నింటినీ సంగ్రహించడానికి క్రింది తార్ కమాండ్ వర్తిస్తుంది.

$తారు -xvf <ఆర్కైవ్_ఫైల్ పేరు>

ఉదాహరణకు, bz2 కంప్రెస్డ్ ఆర్కైవ్ నుండి అన్ని ఫైల్‌లను సంగ్రహిద్దాం.

$తారు -xvftest.tar.bz2

Gzip (tar.gz కాదు) ఫైల్‌ను డీకంప్రెస్ చేయడానికి, ఈ ఆదేశాన్ని అమలు చేయండి.

$gzip -డి <gzip_file>

అదేవిధంగా, కింది ఆదేశం bzip2 ఆర్కైవ్‌ను డీకంప్రెస్ చేస్తుంది.

$bzip2 -డి <bzip2_file>

Xz ఆర్కైవ్ కోసం అదే కమాండ్ స్ట్రక్చర్ వర్తిస్తుంది.

$xz-డి <xz_file>

తుది ఆలోచనలు

ఆశాజనక, ఇప్పుడు మీకు వివిధ పరిస్థితులలో కుదింపు పనులను నిర్వహించడానికి తగినంత జ్ఞానం ఉంది. నిర్దిష్ట అవసరాన్ని బట్టి, అన్ని కుదింపు పద్ధతులు చాలా ఆకర్షణీయమైన లక్షణాలను అందిస్తాయి.

గమనించాల్సిన ఒక ముఖ్యమైన విషయం ఏమిటంటే, కుదింపు ఫలితం అన్ని వేళలా ఒకేలా ఉండదు. విభిన్న డేటా ఇన్‌పుట్‌తో, అవుట్‌పుట్ భిన్నంగా ఉంటుంది. ఉదాహరణకు, కొన్ని సందర్భాల్లో, xz పిచ్చి కుదింపు ఫలితాన్ని అందించగలదు, అయితే ఈ ఉదాహరణలో, అది చేయలేదు. ఇతర పద్ధతులకు కూడా అదే జరుగుతుంది.

ఈ టూల్స్ గురించి మరింత లోతుగా తెలుసుకోవడానికి, వారి సంబంధిత మ్యాన్ పేజీని చూడండి.

$మనిషి జిప్