मुझे इंटरनेट पर कौन सी सावधानियां बरतनी चाहिए।


29

इसलिए मैं दूसरे दिन वेब ब्राउज़ कर रहा था, और मैं कुछ स्थानों पर आया था जो मुझे .debफ़ाइलों को डाउनलोड करने के लिए चाहते थे - और चूंकि वे रूट द्वारा स्थापित किए गए हैं (और जैसे कि "शक्तियां" और रूट की क्षमताएं हैं), मैं नहीं था उस बारे में यकीन।

जवाबों:


32

विचार करने के लिए बातें:

  • साइट कितनी प्रसिद्ध है? उदाहरण के लिए, क्या यह विज्ञापनों में शामिल एक यादृच्छिक ब्लॉग था, क्या यह किसी मंच पर एक यादृच्छिक उपयोगकर्ता था, या यह एक प्रसिद्ध, सम्मानित साइट थी?

  • यह क्या स्थापित करने का दावा करता है? उदाहरण के लिए, क्या यह कर्नेल या आइकॉसेट स्थापित करने का दावा करता है, लेकिन क्या यह केवल 1MB बड़ा है?

  • यह "महत्वपूर्ण" कैसे है कि आपके पास इस की सामग्री है .deb?

चीजों को सुरक्षित तरीके से जांचने के तरीके:

मैं अपने मानक (और अन्य चीजों) के साथ सैंडबॉक्सिंग मेंarkose ( इसके मानक रिपोज में स्थापित करें ) का उपयोग करता हूं - इसे इस तरह से उपयोग करें:

sudo arkose -n -c "cd $PWD; $SHELL"

क्या यह मुझे एक "सैंडबॉक्स" देता है (अन्यथा "YAY I CAN SCREW UP!" के रूप में जाना जाता है) अपने कंप्यूटर पर मेरे घर की निर्देशिका सहित सभी चीज़ों पर कॉपी-ऑन-राइट एक्सेस के साथ - इसलिए अगर बुरा बुरा .debकरता है sudo rm -rf /*, तो मुझे नहीं पता 'टी किसी भी डेटा खो!

एक और बात जिस पर जोर नहीं दिया जाता है वह है मेकअप बैकप्स । वे बेहद मददगार हैं, और हमारे पास विषय पर कई सवाल हैं।

संक्षेप में, बस यह सुनिश्चित करें कि आप इसके बारे में सोचते हैं, और बस एक यादृच्छिक बहस डाउनलोड न करें और इसे स्थापित करें।


2
.debफ़ाइल रोलर के साथ खोलें देखें कि अंदर क्या है। हालाँकि मुझे कहना होगा कि मैंने अपने प्रिंटर के साथ अपने मुद्दों को ठीक करने के लिए उबंटू मंचों पर एक यादृच्छिक थ्रेड पर एक यादृच्छिक उपयोगकर्ता से एक यादृच्छिक डिबेट डाउनलोड किया, यह काम किया।
उड़ी हरेरा

20

यदि आप अविश्वसनीय या संदिग्ध स्रोतों से पैकेज डाउनलोड कर रहे हैं, तो पागल हो जाएं। Ubuntuforums.org जैसे लोकप्रिय मंचों पर, यदि कोई उपयोगकर्ता अपनी पहली पोस्ट करता है जिसमें केवल एक छोटा पाठ होता है जैसे "इसे स्थापित करें, मेरे लिए काम करता है!", इसके बाद एक लिंक, उस लिंक और / या निर्देशों से सावधान रहें।

यदि संभव हो तो बाइनरी पैकेज का उपयोग न करें, विशेष रूप से अविश्वसनीय स्रोतों से। स्रोत प्राप्त करें (आधिकारिक उबंटू पैकेजों के लिए, इसके साथ किया जा सकता है apt-get source package-name) और इस पर एक नज़र डालें।

यदि प्रश्न में पैकेज छोटा है, तो इसका विश्लेषण करने के लायक हो सकता है। क्योंकि मैं तो जैसे अन्य शक्तिशाली कमांड लाइन उपकरण के लिए तेजी से उपयोग कर सकते है मुझे लगता है कि के लिए टर्मिनल का उपयोग करना पसंद ls, find, file, less, vim, grep, sed, dpkgऔर बहुत अन्य शामिल हैं। टैब-पूर्ण (यानी Tabकमांड और फ़ाइलनाम को पूरा करने के लिए हिटिंग ) का उपयोग करें, यह वास्तव में समय बचाता है!

.Deb फ़ाइल डाउनलोड करने के लिए, आप ब्राउज़र का उपयोग कर सकते हैं, लेकिन लिंक को कॉपी करना और फिर उपयोग wgetकरना तेज है क्योंकि आप पहले से ही इसका प्रयोग कर सकते हैं।

$ mkdir /tmp/foo && cd /tmp/foo
$ wget http://nl.archive.ubuntu.com/ubuntu/pool/main/n/nvidia-common/nvidia-common_0.2.35_amd64.deb

अगला, यह फ़ाइल की जांच करने का समय है। less(के माध्यम से lesspipe) फ़ाइल सामग्री का एक त्वरित अवलोकन प्रदान कर सकते हैं। एरो कीज़, पेज अप / डाउन, होम / एंड नेवीगेशन के लिए उपयोगी हो सकता है, Qप्रोग्राम को क्विट करता है।

$ less nvidia-common_0.2.35_amd64.deb
nvidia-common_0.2.35_amd64.deb:
 new debian package, version 2.0.
 size 10802 bytes: control archive= 1877 bytes.
     197 bytes,    11 lines   *  config               #!/bin/sh
     703 bytes,    16 lines      control              
     741 bytes,    10 lines      md5sums              
     163 bytes,     9 lines   *  postinst             #!/bin/sh
     206 bytes,     8 lines   *  postrm               #!/bin/sh
     827 bytes,    38 lines   *  preinst              #!/bin/sh
     263 bytes,    14 lines   *  prerm                #!/bin/sh
     365 bytes,    12 lines      templates            
 Package: nvidia-common
 Version: 1:0.2.35
 Architecture: amd64
 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
 Installed-Size: 156
 Pre-Depends: dpkg (>= 1.15.7.2)
 Depends: python2.7 | python2.6, python (>= 2.7.1-0ubuntu2), python (<< 2.8), debconf (>= 0.5.00) | debconf-2.0, pciutils, python-apt
 Conflicts: nvidia-180-modaliases, nvidia-185-modaliases, nvidia-current-modaliases
 Replaces: nvidia-180-modaliases, nvidia-185-modaliases, nvidia-current-modaliases
 Section: admin
 Priority: optional
 Description: Find obsolete NVIDIA drivers
  This package will find obsolete NVIDIA drivers in use,
  detect the hardware and recommend the most appropriate
  driver.
 Python-Version: 2.6, 2.7

*** Contents:
drwxr-xr-x root/root         0 2011-09-07 11:06 ./
drwxr-xr-x root/root         0 2011-09-07 11:06 ./usr/
drwxr-xr-x root/root         0 2011-09-07 11:06 ./usr/share/
drwxr-xr-x root/root         0 2011-09-07 11:06 ./usr/share/doc/
drwxr-xr-x root/root         0 2011-09-07 11:06 ./usr/share/doc/nvidia-common/
-rw-r--r-- root/root      1174 2011-09-07 11:07 ./usr/share/doc/nvidia-common/changelog.gz
-rw-r--r-- root/root       466 2011-06-24 14:45 ./usr/share/doc/nvidia-common/copyright
...

इसके बाद, आपको पैकेज निर्भरता का अवलोकन मिलता है और इसमें किस प्रकार की फाइलें शामिल हैं। फ़ाइलों को निकालने और उपयोग की गई सामग्री का विश्लेषण करने का समय dpkg-deb। पहला कमांड फ़ाइल ट्री को एक नई बनाई गई डायरेक्टरी में fsनिकालता है, दूसरा इसे DEBIANइसलिए निकालता है क्योंकि कोई अन्य टारगेट निर्दिष्ट नहीं है:

$ dpkg-deb -x nvidia-common_0.2.35_amd64.deb fs
$ dpkg-deb -e nvidia-common_0.2.35_amd64.deb

हम इस्तेमाल करेंगे lessमेंटेनर लिपियों (यानी फ़ाइलें जो उपयोग किया जाएगा / स्थापना (और हटाने) के दौरान चलाने की सामग्री का विश्लेषण करने के लिए फिर से। prerm, preinst, postrm, postinstस्क्रिप्ट पहले ही आ जाते / हटाने के बाद / स्थापना जो विश्लेषण करने के लिए सबसे महत्वपूर्ण फ़ाइलें हैं का उपयोग करें :nऔर :pफ़ाइलों के बीच स्विच करने के लिए। दबाने से =, आपको वर्तमान फ़ाइल नाम और लाइन नंबर के साथ-साथ सूची में मौजूद फ़ाइलों की संख्या मिलती है।

$ less DEBIAN/*

यदि पैकेज स्क्रिप्ट समझदार दिखती हैं, तो यह स्थापित सामग्री (टैब-पूर्णता का उपयोग करें) का विश्लेषण करने का समय है। शेल स्क्रिप्ट और व्याख्या की गई स्क्रिप्ट (जैसे पायथन) के लिए, विश्लेषण आसान है (यह मानते हुए कि आप भाषा के साथ जाने जाते हैं)।

$ less fs/usr/bin/nvidia-detector    # fs<TAB><TAB>/usr/ <TAB><TAB>bin ...
$ less fs/usr/lib/nvidia/pre-install
$ ls -la fs/usr/lib     # quickly check the directory contents, my memory is weak
drwxr-xr-x 5 peter peter 100 2011-09-07 11:06 .
drwxr-xr-x 5 peter peter 100 2011-09-07 11:06 ..
drwxr-xr-x 2 peter peter  60 2011-09-07 11:06 nvidia
drwxr-xr-x 3 peter peter  60 2011-09-07 11:06 python2.6
drwxr-xr-x 3 peter peter  60 2011-09-07 11:06 python2.7
$ # I conclude: python2.6 is not a symlink to python2.7
$ less fs/usr/lib/python2.7/dist-packages/NvidiaDetector/*
press 'v' to open an editor (e.g. nano, vim) to get syntax highlighting if preferable

कॉन्फ़िगरेशन फ़ाइलों पर विशेष ध्यान दें, खासकर यदि वे /etc/init(स्टार्टअप स्क्रिप्ट के लिए) या /etc/modprobe.d(कर्नेल मॉड्यूल लोड करने के लिए विकल्प ) जैसी निर्देशिकाओं का उपयोग कर रहे हैं ।

बायनेरिज़ के लिए, lddएक विचार दे सकता है कि किस प्रोग्राम के लिए उपयोग किया जा सकता है। नीचे दिया गया कार्यक्रम एक ग्राफिकल प्रोग्राम की तरह दिखता है जो ओपनजीएल का उपयोग करता है।

$ ldd /usr/bin/glxgears
    linux-vdso.so.1 =>  (0x00007fff7d3ff000)
    libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007fa2ead11000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fa2eaa8d000)
    libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fa2ea754000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa2ea3b5000)
...

आप यह सुनिश्चित करें कि पैकेज वैध लग रहा है कर रहे हैं के बाद, आप पर जा सकते हैं एक लाइव सीडी और उपयोग बंद VirtualBox बूटिंग में इसे स्थापित ps aux, top, strace -f -o logfile.txt programnameआगे के विश्लेषण के लिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.