సిస్టమ్ యుటిలిటీస్ యొక్క మినిమలిస్టిక్ సెట్ విడుదల BusyBox 1.35

BusyBox 1.35 ప్యాకేజీ యొక్క విడుదల ప్రామాణిక UNIX యుటిలిటీల సమితి అమలుతో అందించబడింది, ఇది ఒకే ఎక్జిక్యూటబుల్ ఫైల్‌గా రూపొందించబడింది మరియు 1 MB కంటే తక్కువ సెట్ పరిమాణంతో సిస్టమ్ వనరుల కనీస వినియోగం కోసం అనుకూలీకరించబడింది. కొత్త 1.35 శాఖ యొక్క మొదటి విడుదల అస్థిరంగా ఉంచబడింది; పూర్తి స్థిరీకరణ వెర్షన్ 1.35.1లో అందించబడుతుంది, ఇది దాదాపు ఒక నెలలో అంచనా వేయబడుతుంది. ప్రాజెక్ట్ కోడ్ GPLv2 లైసెన్స్ క్రింద పంపిణీ చేయబడింది.

BusyBox యొక్క మాడ్యులర్ స్వభావం ప్యాకేజీలో అమలు చేయబడిన ఏకపక్ష యుటిలిటీలను కలిగి ఉన్న ఒక ఏకీకృత ఎక్జిక్యూటబుల్ ఫైల్‌ను సృష్టించడం సాధ్యం చేస్తుంది (ప్రతి యుటిలిటీ ఈ ఫైల్‌కు సింబాలిక్ లింక్ రూపంలో అందుబాటులో ఉంటుంది). అసెంబ్లీ నిర్వహించబడుతున్న ఎంబెడెడ్ ప్లాట్‌ఫారమ్ యొక్క అవసరాలు మరియు సామర్థ్యాలపై ఆధారపడి యుటిలిటీల సేకరణ యొక్క పరిమాణం, కూర్పు మరియు కార్యాచరణ మారవచ్చు. ప్యాకేజీ స్వీయ-నియంత్రణతో ఉంటుంది; uclibcతో స్థిరంగా నిర్మించబడినప్పుడు, Linux కెర్నల్ పైన వర్కింగ్ సిస్టమ్‌ని సృష్టించడానికి, మీరు /dev డైరెక్టరీలో అనేక పరికర ఫైళ్లను మాత్రమే సృష్టించాలి మరియు కాన్ఫిగరేషన్ ఫైల్‌లను సిద్ధం చేయాలి. మునుపటి విడుదల 1.34తో పోలిస్తే, సాధారణ BusyBox 1.35 అసెంబ్లీ యొక్క RAM వినియోగం 1726 బైట్లు (1042344 నుండి 1044070 బైట్‌లకు) పెరిగింది.

ఫర్మ్‌వేర్‌లో GPL ఉల్లంఘనలకు వ్యతిరేకంగా పోరాటంలో BusyBox ప్రధాన సాధనం. సాఫ్ట్‌వేర్ ఫ్రీడమ్ కన్జర్వెన్సీ (SFC) మరియు సాఫ్ట్‌వేర్ ఫ్రీడమ్ లా సెంటర్ (SFLC), BusyBox డెవలపర్‌ల తరపున, కోర్టుల ద్వారా మరియు వెలుపల GPL ప్రోగ్రామ్‌ల సోర్స్ కోడ్‌కు ప్రాప్యతను అందించని కంపెనీలను పదేపదే విజయవంతంగా ప్రభావితం చేశాయి. - కోర్టు ఒప్పందాలు. అదే సమయంలో, BusyBox రచయిత అటువంటి రక్షణను తీవ్రంగా వ్యతిరేకించారు - ఇది తన వ్యాపారాన్ని నాశనం చేస్తుందని నమ్ముతారు.

BusyBox 1.35లో కింది మార్పులు హైలైట్ చేయబడ్డాయి:

  • ఫైండ్ పేర్కొన్న పేరుతో ఫైల్ అదే ఐనోడ్‌ని ఉపయోగిస్తుందో లేదో తనిఖీ చేయడానికి ఫైండ్ యుటిలిటీ "-samefile name" ఎంపికను అమలు చేస్తుంది. సమయ పోలిక కోసం ఏకీకృత కోడ్ మరియు యాక్సెస్ సమయం మరియు ఫైల్ సృష్టిని తనిఖీ చేయడానికి "-amin", "-atime", "-cmin" మరియు "-ctime" ఎంపికలను జోడించారు.
  • "--tmpdir" ఐచ్ఛికం mktemp యుటిలిటీకి జోడించబడింది, తాత్కాలిక ఫైల్‌లతో అనుబంధించబడిన పాత్‌లకు సంబంధించి బేస్ డైరెక్టరీని పేర్కొనడానికి.
  • వాస్తవ పరికర సంఖ్య (0 ఎల్లప్పుడూ వ్రాయబడుతుంది) మరియు ఆర్కైవ్‌లో నిల్వ చేయడానికి ముందు ఐనోడ్‌ను పునఃనంబరు చేయడానికి "-renumber-inodes"ని విస్మరించడానికి cpio యుటిలిటీకి “-ignore-devno” ఎంపికలు జోడించబడ్డాయి.
  • awk యుటిలిటీలో, “printf %%” వ్యక్తీకరణ సర్దుబాటు చేయబడింది.
  • libbb లైబ్రరీకి దాదాపు డజను మార్పులు జోడించబడ్డాయి. coreutils సెట్ నుండి దాని ప్రతిరూపంతో రియల్‌పాత్ యొక్క మెరుగైన అనుకూలత.
  • ఇతర షెల్‌లతో అనుకూలతను మెరుగుపరిచే లక్ష్యంతో యాష్ మరియు హుష్ కమాండ్ షెల్‌ల కోసం పెద్ద సంఖ్యలో పరిష్కారాలు ప్రతిపాదించబడ్డాయి. యాష్ బాష్ లాంటి ERR ట్రాప్‌లు, సెట్ -E మరియు $FUNCNAME మరియు "${s:}" ఎక్స్‌ప్రెషన్‌ని ఉపయోగించి వేగవంతమైన స్ట్రింగ్ రిట్రీవల్‌కు మద్దతును జోడించింది. బూడిద మరియు హుష్‌లో, "${x//\*/|}" కార్యకలాపాల అమలు వేగవంతం చేయబడింది.
  • బేస్ నేమ్ యుటిలిటీ ఒక కాల్‌లో బహుళ పేర్లను పాస్ చేయడానికి "-a" ఎంపికలను అమలు చేస్తుంది మరియు వెనుకబడిన "SUFFIX" అక్షరాలను తీసివేయడానికి "-s SUFFIX"ని అమలు చేస్తుంది.
  • వినియోగాన్ని విస్మరించడానికి "-f" (ఫోర్స్) ఎంపిక జోడించబడింది.
  • httpd లోపాలు ఉన్న పేజీల కోసం చివరిగా సవరించిన/ETag/కంటెంట్-పొడవు శీర్షికలను పంపడం ఆపివేసింది.
  • httpd మరియు telnetd డిఫాల్ట్ నెట్‌వర్క్ పోర్ట్‌ను మార్చగల సామర్థ్యాన్ని అందిస్తాయి.
  • చాలా పొడవైన ఫైల్ పేర్లతో ఆర్కైవ్‌లను ప్రాసెస్ చేస్తున్నప్పుడు అందుబాటులో ఉన్న మొత్తం మెమరీని వినియోగించేలా టార్‌లో ఒక దుర్బలత్వం పరిష్కరించబడింది.
  • P256 మరియు x25519 అమలు TLS కోడ్‌లో మళ్లీ పని చేయబడింది.
  • wget యుటిలిటీ ఫైల్‌లను పంపడానికి "--post-file" ఎంపికను అమలు చేస్తుంది మరియు "--post-data" మరియు "--post-file" ఎంపికల కోసం కంటెంట్-టైప్ హెడర్ యొక్క కంటెంట్‌లను అనుకూలీకరించడానికి మిమ్మల్ని అనుమతిస్తుంది.
  • గడువు ముగిసిన యుటిలిటీ ఇప్పుడు అదనపు KILL_SECS సెకన్లలోపు కమాండ్ పూర్తి కాకపోతే SIGKILL సిగ్నల్‌ని పంపడానికి "-k KILL_SECS" ఎంపికకు మద్దతు ఇస్తుంది.
  • పరికరాల కొరకు netns పరామితిని అమర్చుటకు తోడ్పాటు ip యుటిలిటీకి జోడించబడింది.
  • కాల్ యుటిలిటీ పేర్కొన్న నెలను ప్రదర్శించడానికి "-m" ఎంపికను అమలు చేస్తుంది.
  • తేదీ మరియు టచ్ యుటిలిటీలు తేదీలలో టైమ్ జోన్ ఆఫ్‌సెట్‌ను పేర్కొనడానికి అనుమతిస్తాయి.
  • vi ఎడిటర్‌లో, ~/.exrc ఫైల్‌కు మద్దతు జోడించబడింది మరియు “-c” మరియు EXINIT నిర్వహణ మార్చబడింది.
  • ed యుటిలిటీలో, రీడ్/రైట్ ఆదేశాలను అమలు చేయడం వల్ల వచ్చే ఫలితం POSIX-1.2008 స్పెసిఫికేషన్‌కు అనుగుణంగా ఉంటుంది. "-p" ఎంపికకు మద్దతు జోడించబడింది.
  • N బైట్‌లకు పోలికను పరిమితం చేయడానికి cmp యుటిలిటీకి "-n N" ఎంపిక జోడించబడింది.

అదనంగా, కొన్ని రోజుల క్రితం, టాయ్‌బాక్స్ 0.8.6 విడుదల చేయబడింది, ఇది BusyBox యొక్క అనలాగ్, మాజీ BusyBox నిర్వహణదారుచే అభివృద్ధి చేయబడింది మరియు 0BSD లైసెన్స్ క్రింద పంపిణీ చేయబడింది. టాయ్‌బాక్స్ యొక్క ముఖ్య ఉద్దేశ్యం తయారీదారులకు సవరించిన భాగాల సోర్స్ కోడ్‌ను తెరవకుండానే ప్రామాణిక యుటిలిటీల యొక్క కనీస సెట్‌ను ఉపయోగించగల సామర్థ్యాన్ని అందించడం. సామర్థ్యాల పరంగా, టాయ్‌బాక్స్ ఇప్పటికీ BusyBox కంటే వెనుకబడి ఉంది, అయితే 296 ప్రణాళికలో 217 ప్రాథమిక ఆదేశాలు ఇప్పటికే అమలు చేయబడ్డాయి (83 పూర్తిగా మరియు 374 పాక్షికంగా).

టాయ్‌బాక్స్ 0.8.6 యొక్క ఆవిష్కరణలలో సిస్టమ్ ఇమేజ్‌లను రూపొందించడానికి స్క్రిప్ట్‌ల మెరుగుదల, sha256sum, sha224sum, sha384sum, sha512sum, linux32, strace మరియు hexdump ఆదేశాల జోడింపులను మనం గమనించవచ్చు. అమలు చేయబడిన ఎంపికలు “date -s”, “pmap -p”, “tail -F -s”, “kill -0″, reboot/halt/poweroff -d”, “tail –bytes –lines”, “i2cdetect -q” , "find -quit -lname -ilname -d", "cut -d $'\n'", "cut -nb", "cpio -ignore-devno -renumber-inodes", "tar -selinux", "split -n", "grep -L".

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి