خمسة أعوام ونصف لاستخدام نظام أوبونتو لينكس والبرامج المفتوحة المصدر

السلام عليكم ورحمة الله، وكل عام وانتم بخير

في هذه المقالة سوف أتكلم بإذن الله عن تجربتي الشخصية لاستخدام نظام أوبونتو لينكس كنظام تشغيل أساسي في العمل والمنزل أي في الحياة اليومية، كذلك اﻹعتماد على البرامج المفتوحة المصدر والمجانية كاستخدام بديل للبرامج المغلقة أو المملوكة.

بدأت بدراسة نظام لينكس عندما كُنت لا أزال في الجامعة، في عام 1997، وكان ذلك باستخدام معمل يحتوي على أجهزة طرفية بسيطة dummy terminals بعمنى الكلمة، أي لا يوجد فيها معالج، حيث أنها تستخدم معالج وذاكرة الجهاز رئيسي واحد ويتم توصيله بها وعن طريق  كيبل   يشبه الكيبل المتوازي  parallel cable. وكانت الواجهة فقط نصية terminal فكان كل الاستخدام هو للأوامر المسماة بالـ command line.

بعد ذلك لم يتسنى لي استخدام نظام لينكس، حيث لم تتوفر أي وسيلة لتثبيته مع وندوز – حينها كان نظام وندوز 95 – وكانت اﻷقراص الصلبة قليلة السعة، تكفي فقط لنظام تشغيل واحد، أذكر أن القرص الصلب لحاسوبي المنزلي كان 1 قيقا بايت فقط . طبعاً كانت سعة كبيرة حينها. بعد أن تخرجت من الجامعة وعملت في شركة اتصالات اصبحت أقراص نظام لينكس أكثر توفراً، كذلك فقد حضرت دروس لنظام ريدهات لينكس، وكان حينها النسخة رقم 7.1 أو 7.2 على ما أذكر.

بعد ذلك ظهر نظام فيدورا لينكس فقمت بتثبيته فى حاسوبي المنزلي على ما أذكر مع نظام وندوز، ثم استبدلته بعض عدة أعوام بنظام ماندريك الذي تغير اسمه إلى ماندريفا بعد عدة أعوام، ثم اخيراً قمت بتجربة أوبونتو لينكس والذي مازلت استخدمه إلى اﻵن.

في بداية عام 2012 تركت الوظيفة وقمت بتأسيس عملي الخاص – فأصحبت أكثر حرية في اختيار التقنيات- وكان أول تغيير هو الإعتماد على المصادر المفتوحة فقط في الإستخدام ولتطوير البرامج، فقمت بتثبيت نظام أوبونتو كنظام أساسي لكن جنباً إلى جنب مع نظام وندوز الذي كنت احتاج إليه في بعض الحالات، ثم بعد ذلك اصبح نظام لينكس هو النظام اﻷساسي في الأجهزة التي استخدمها ونظام وندوز قمت بتثبيته داخله باستخدام برنامج Virtual Box واصبحت لا افتح نظام وندوز إلا نادراً. والأسباب التي تجعلني استخدم وندوز أحياناً هي:

  1. تجربة البرامج التي أنتجها في نظام لينكس للتأكد أنها تعمل بطريقة سليمة في نظام وندوز
  2. إعادة ترجمة برامج فري باسكال لإنتاج نسخة وندوز من تلك البرامج (مثل برنامج تسجيل المحاسبي)
  3. استخدام البرامج التي لا تعمل إلا في وندوز مثل MS-SQL Enterprise
  4. تشغيل بعض البرامج التي بها مشكلة في نظام لينكس، مثل برامج عميل Cisco VPN وفي السابق Juniper VPN لكن الحمد لله وجدت حل للأخير في نظام أوبونتو واصبح يعمل بدون مشاكل

باستخدام البرامج المفتوحة المصدر فقد قُمت بتقليل التكلفة بصورة كبيرة جداً، فمثلاً نظام التشغيل مجاني لكل جهاز كمبيوتر أقوم بشراءه لنفسي أو لأحد الموظفين أو المتعاقدين معنا في العمل، وحتى لأبنائي. كذلك لا نحتاج لشراء برامج، مثل أدوات التطوير البرمجية، حيث نستخدم برامج مفتوحة المصدر مثل NetBeans وقد اشتريت نُسخة وندوز 7 مرة واحدة فقط واصبحت أنقلها داخل نظام لينكس مع كل لابتوب جديد دون أن يشعر نظام الوندوز أن هناك تغيير في العتاد.

كذلك تم تقليل تجهيز المخدمات لدي الزبائن من ناحية نظام التشغيل، حيث بلغت المخدمات التي تعمل فيها برامجنا والتي نشرف عليها مباشرة حوالي 40 مخدماً، كذلك قلت تكلفة الترقية، حيث نستخدم مخدم أوبونتو ويمكننا ترقيته إلى أي نسخة جديدة بدون أي تكلفة تذكر.

كل البرامج المكتبية المساعدة تأتي مجانية مع نظام لينكس مثل LibreOffice و GIMP لتحرير الصور وغيرها ولم نحتاج إلى أي برامج أخرى إضافية، كل البرامج التي نحتاج إليها كمطوري برامج نجدها موجودة في مستودعات أوبونتو أو في اﻹنترنت.

تتطلب عرض الشرائح هذه للجافا سكريبت.

نستخدم كذلك لغات البرمجة المجانية ومفتوحة المصدر مثل لغة جافا، PHP، ولغة Golang وبالنسبة لقواعد البيانات نستخدم MySQL وFirebird .و في جانب مخدمات الويب نستخدم apache و tomcat.

تمتاز البرامج المفتوحة المصدر بالبساطة مما جعلها لا تستهلك قدراً كبيراً من موارد العتاد، حيث كُنت استخدم لابتوب Core I5 طوال الأعوام السابقة، لكن استبدلته بجهاز Core I3 ولم الحظ أنه بطيء  بصورة كبيرة، حيث أنه يكفي تماماً العمل الذي أقوم به من تطوير برامج ، وتصفح للإنترنت و كتابة كتب ووثائق وغيرها من النشاطات اﻷخرى.

اشتريت قبل عامين قرص صلب من نوع SSD وقمت بتثبيت نظام أوبونتو فيه في لابتوب من نوع توشيبا، وبعدما اشتريت لابتوب جديد من نوع Dell قمت فقط بنقل القرص القديم من لابتوب توشيبا إلى اللابتوب الجديد، وقد عمل نظام أوبونتو مباشرة ولم تحدث أي مشكلة ولم يحتاج إلى إعاد تعريف لأي من العتاد. فقط طلب مني إعادة إدخال كلمات المرور للشبكات الوايفاي.

حتى الألعاب والبرامج التعليمية بالنسبة للأطفال اصبحنا نستخدمها في نظام أبونتو حيث يوجد عدد كبير منها وتتميز بالبساطة وأنها أقل عنفاً من نظيراتها ألعاب وندوز والـ playstation.

بالنسبة لتخصص شبكات الكمبيوتر فإن نظام لينكس يحتوي على عدد كبير من البرامج الخدمية والـ command line tools التي تُساعد في تقصي مشاكل الشبكات أو البرامج مثل tcpdump, telnet, nc وغيرها من البرامج التي تأتي مباشرة مع نظام لينكس.

رأي أن أنقل تجربتي وأن أعترف بما قدمته لنا المصادر المفتوحة ولزبائننا بعدما اصبح العمل مستقراً – بفضل الله- واصبحت التجربة تستحق الذكر.

 

 

Advertisements

24 فكرة على ”خمسة أعوام ونصف لاستخدام نظام أوبونتو لينكس والبرامج المفتوحة المصدر

  1. استخدمت قبل عدة سنين اوبنتو 10.10 ، كان نظاما خفيفا لا يتباطا في الاقلاع مهما كان عدد البرامج المثبتة فيه (ليس مثل ويندوز 7 الذي استخدمه حاليا) ، لكن بعد مرور سنة تقريبا واجهتني مشكلة في تثبيت البرامج، لم اعد قادرا على تثبيت اي برنامج جديد ، بعد فترة حصلت على لابتوب مثبت به ويندوز 7 ، قمت بتثبيت ubuntu بجانب الويندوز لكن نسخة لازروس الموجودة بالمستودعات قديمة قمت بتثبيت نسخة حديثة عن طريق تنزيل ملفات .deb
    لكن لم اتمكن من تثبيت اي برنامج بعدها ، قمت بحذفubuntu ، الان لدي اوبونتو في virtual box به نفس المشكلة .
    رغم انني استخدم ويندوز 7 الا ان معظم البرامج التي استخدمها مفتوحة المصدر (انت كتب موضوعاً عن استخدام ويندوز كمنصة للبرامج المفتوحة المصدر) ، صرت انتبه الى تراخيص البرامج قبل تثبيتها.

  2. أود التنبيه على أن نسخة أوبونتو 10.10 ليست من النُسخ المستقرة، النُسخ المستقرة طويلة الدعم LTS هي مايكون رقم السنة فيها زوجي ورقم الشهر هو 4، مثلاً:
    10.4
    12.4
    14.4
    16.4
    الباقي هو نُسخ تجريبية غير مستقرة مثل 10.10 و 11.4 و 11.10 و 12.10 وغيرها
    إذا حدثت مشكلة في تثبيت البرامج يمكن علاجها بواسطة اﻷمر
    sudo apt-get install -f
    ثم حذف أو إكمال تثبيت الحزم الناقصة

    >رغم انني استخدم ويندوز 7 الا ان معظم البرامج التي استخدمها مفتوحة المصدر
    أعتقد أن معظم من يستخدمون البرامج المفتوحة المصدر يستخدمونها في نظام لينكس
    والدليل أن أداة التطوير لازاراس يتم تحميلها من الموقع لنظام وندوز أكثر من لينكس، حسب هذا الرابط:
    https://sourceforge.net/projects/lazarus/files/

    Lazarus-downloads

  3. moh@moh-VirtualBox:~$ sudo apt-get install -f
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Correcting dependencies… Done
    The following packages were automatically installed and are no longer required:
    lazarus-1.6 lazarus-doc-1.6 lazarus-ide-1.6 lazarus-ide-gtk2-1.6
    lazarus-src-1.6 lcl-1.6 lcl-gtk2-1.6 lcl-nogui-1.6 lcl-units-1.6
    lcl-utils-1.6
    Use ‘sudo apt autoremove’ to remove them.
    The following additional packages will be installed:
    fp-compiler-3.0.0 fp-units-base-3.0.0 fp-units-fcl-3.0.0 fp-units-gtk2-3.0.0
    fp-units-rtl-3.0.0 fp-utils-3.0.0 fpc-source-3.0.0
    Suggested packages:
    fp-docs-3.0.0 mingw32-binutils uuid-dev
    The following NEW packages will be installed:
    fp-compiler-3.0.0 fp-units-base-3.0.0 fp-units-fcl-3.0.0 fp-units-gtk2-3.0.0
    fp-units-rtl-3.0.0 fp-utils-3.0.0 fpc-source-3.0.0
    0 upgraded, 7 newly installed, 0 to remove and 505 not upgraded.
    78 not fully installed or removed.
    Need to get 0 B/28.2 MB of archives.
    After this operation, 265 MB of additional disk space will be used.
    Do you want to continue? [Y/n] y
    Preconfiguring packages …
    (Reading database … 219927 files and directories currently installed.)
    Preparing to unpack …/fp-units-base-3.0.0_3.0.0+dfsg-2_amd64.deb …
    Unpacking fp-units-base-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fp-units-base-3.0.0_3.0.0+dfsg-2_amd64.deb (–unpack):
    trying to overwrite ‘/usr/lib/fpc/3.0.0/units/x86_64-linux/ncurses/ocrt.o’, which is also in package fpc 3.0.0
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Preparing to unpack …/fp-units-fcl-3.0.0_3.0.0+dfsg-2_amd64.deb …
    Unpacking fp-units-fcl-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fp-units-fcl-3.0.0_3.0.0+dfsg-2_amd64.deb (–unpack):
    trying to overwrite ‘/usr/lib/fpc/3.0.0/units/x86_64-linux/fcl-passrc/paswrite.ppu’, which is also in package fpc 3.0.0
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Preparing to unpack …/fp-units-gtk2-3.0.0_3.0.0+dfsg-2_amd64.deb …
    Unpacking fp-units-gtk2-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fp-units-gtk2-3.0.0_3.0.0+dfsg-2_amd64.deb (–unpack):
    trying to overwrite ‘/usr/lib/fpc/3.0.0/units/x86_64-linux/cairo/cairoft.o’, which is also in package fpc 3.0.0
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Preparing to unpack …/fp-units-rtl-3.0.0_3.0.0+dfsg-2_amd64.deb …
    Unpacking fp-units-rtl-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fp-units-rtl-3.0.0_3.0.0+dfsg-2_amd64.deb (–unpack):
    trying to overwrite ‘/usr/lib/fpc/3.0.0/units/x86_64-linux/rtl/cp1252.ppu’, which is also in package fpc 3.0.0
    No apport report written because MaxReports is reached already
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Preparing to unpack …/fp-compiler-3.0.0_3.0.0+dfsg-2_amd64.deb …
    Unpacking fp-compiler-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fp-compiler-3.0.0_3.0.0+dfsg-2_amd64.deb (–unpack):
    trying to overwrite ‘/usr/lib/fpc/3.0.0/ppcx64’, which is also in package fpc 3.0.0
    No apport report written because MaxReports is reached already
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Preparing to unpack …/fpc-source-3.0.0_3.0.0+dfsg-2_all.deb …
    Unpacking fpc-source-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fpc-source-3.0.0_3.0.0+dfsg-2_all.deb (–unpack):
    trying to overwrite ‘/usr/share/fpcsrc/3.0.0/rtl/android/jvm/java_sys_android.inc’, which is also in package fpc-src 3.0.0
    No apport report written because MaxReports is reached already
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Preparing to unpack …/fp-utils-3.0.0_3.0.0+dfsg-2_amd64.deb …
    Unpacking fp-utils-3.0.0 (3.0.0+dfsg-2) …
    dpkg: error processing archive /var/cache/apt/archives/fp-utils-3.0.0_3.0.0+dfsg-2_amd64.deb (–unpack):
    trying to overwrite ‘/usr/lib/fpc/3.0.0/units/x86_64-linux/utils-lexyacc/lexlib.o’, which is also in package fpc 3.0.0
    No apport report written because MaxReports is reached already
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Errors were encountered while processing:
    /var/cache/apt/archives/fp-units-base-3.0.0_3.0.0+dfsg-2_amd64.deb
    /var/cache/apt/archives/fp-units-fcl-3.0.0_3.0.0+dfsg-2_amd64.deb
    /var/cache/apt/archives/fp-units-gtk2-3.0.0_3.0.0+dfsg-2_amd64.deb
    /var/cache/apt/archives/fp-units-rtl-3.0.0_3.0.0+dfsg-2_amd64.deb
    /var/cache/apt/archives/fp-compiler-3.0.0_3.0.0+dfsg-2_amd64.deb
    /var/cache/apt/archives/fpc-source-3.0.0_3.0.0+dfsg-2_all.deb
    /var/cache/apt/archives/fp-utils-3.0.0_3.0.0+dfsg-2_amd64.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)

  4. moh@moh-VirtualBox:~$ sudo apt-get purge lazarus
    [sudo] password for moh:
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    You might want to run ‘apt-get -f install’ to correct these:
    The following packages have unmet dependencies:
    fp-compiler : Depends: fp-compiler-3.0.0 (= 3.0.0+dfsg-2) but it is not going to be installed
    fp-units-base : Depends: fp-units-base-3.0.0 (= 3.0.0+dfsg-2) but it is not going to be installed
    fp-units-fcl : Depends: fp-units-fcl-3.0.0 (= 3.0.0+dfsg-2) but it is not going to be installed
    fp-units-gtk2 : Depends: fp-units-gtk2-3.0.0 (= 3.0.0+dfsg-2) but it is not going to be installed
    fp-units-rtl : Depends: fp-units-rtl-3.0.0 (= 3.0.0+dfsg-2) but it is not going to be installed
    lcl-gtk2-1.6 : Depends: fpc-abi-3.0.0
    lcl-nogui-1.6 : Depends: fpc-abi-3.0.0
    lcl-units-1.6 : Depends: fpc-abi-3.0.0
    E: Unmet dependencies. Try ‘apt-get -f install’ with no packages (or specify a solution).
    moh@moh-VirtualBox:~$ sudo apt autoremove
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    You might want to run ‘apt-get -f install’ to correct these.
    The following packages have unmet dependencies:
    fp-compiler : Depends: fp-compiler-3.0.0 (= 3.0.0+dfsg-2) but it is not installed
    fp-units-base : Depends: fp-units-base-3.0.0 (= 3.0.0+dfsg-2) but it is not installed
    fp-units-fcl : Depends: fp-units-fcl-3.0.0 (= 3.0.0+dfsg-2) but it is not installed
    fp-units-gtk2 : Depends: fp-units-gtk2-3.0.0 (= 3.0.0+dfsg-2) but it is not installed
    fp-units-rtl : Depends: fp-units-rtl-3.0.0 (= 3.0.0+dfsg-2) but it is not installed
    lcl-gtk2-1.6 : Depends: fpc-abi-3.0.0
    lcl-nogui-1.6 : Depends: fpc-abi-3.0.0
    lcl-units-1.6 : Depends: fpc-abi-3.0.0
    E: Unmet dependencies. Try using -f.

  5. بالنسبة لفري باسكال، هل قُمت بتثبيت مترجم فري باسكال قبل لازاراس؟
    تحتاج للحزم التالية:
    fpc_3.0.2-170225_amd64.deb
    fpc-src_3.0.2-170225_amd64.deb
    إذا كنت تريد تثبيت لازاراس 1.6.4

  6. مترجم فري باسكال مثبت، لا اذكر ما اذا قمت بتثبيته بصورة منفصلة او انه نزل مع لازروس ، لا توجد مشكلة في لازروس فهي تعمل بصورة جيدة.
    كيف تقوم انت بتثبيت لازروس هل تثبتها من المستودعات (عادة تكون نسخة قديمة) ام تنزل ملفات deb من موقع لازاروس.؟
    ما هي الطريقة التي تستخدمها لتثبيت البرامج عموماً ؟
    ubuntu software center
    Synaptic
    sudo apt-get
    ما هي نسخة اوبنتو التي تستخدمها الان؟ هل هي 64 ام 32 بت ؟

  7. sudo dpkg –purge –force-all lazarus
    dpkg: error: need an action option

    Type dpkg –help for help about installing and deinstalling packages [*];
    Use ‘apt’ or ‘aptitude’ for user-friendly package management;
    Type dpkg -Dhelp for a list of dpkg debug flag values;
    Type dpkg –force-help for a list of forcing options;
    Type dpkg-deb –help for help about manipulating *.deb files;

    Options marked [*] produce a lot of output – pipe it through ‘less’ or ‘more’ !

  8. ماهي نُسخة fpc لابد أن تكون نفس النُسخة المرتبطة بنفس نُسخة لازاراس، إما أن تقوم بتثبيت لازاراس و فري باسكال من مستودع لينكس أو تقوم بتثبيت كليهما في شكل ملف حزمة .deb
    استخدم synaptic في أوبونتو سطح المكتب واستخدم أيضاً apt-get كثيراً واحياناً استخدم dpkg لتثبيت لازاراس مثلاً والطريقة اﻷخيرة يحدث بسببها أحياناً نفس مشكلتك، لكن غالباً يتم حلها بواسطة install -f السابقة الذكر أو بحذف الحزمة التي تسببت في المشكلة
    أما للمخدمات استخدم فقط apt-get

  9. fpc 3.0.0
    lazarus 1.6
    وكما قلت سابقا لازروس نعمل من دون مشاكل.
    يبدو انني اخطات بعدم تثبيت synaptic اولا قبل لازروس. (التعامل مع سطر الاوامر متعب)

  10. سطر اﻷوامر به إمكانات أكبر synaptic ذو الواجهة الرسومية.
    إحدى ميزاته أنك إذا بحث عن حل مثلا تثبيت وتهيئة مخدم subversion فمكن للكاتب أن يعطيك الخطوات بسهولة، مثلاً يقول لك قم بتثبيت subversion و apache2 باستخدام هذا اﻷمر
    sudo apt-get install apache2 subversion
    ثم عمل تثبيت برنامج كذا بواسطة اﻷمر التالي، وهكذا
    بالنسبة لمن يرد تنفيذ هذه الخطوات ماعليه إلا نسخ اﻷوامر من المدونة أو الكتاب أو صفحة النت ثم لصقها مباشرة في سطر اﻷوامر دون أن يكتب أي شيء، فتكون طريقة سريعة ودقيقة لعمل اﻹعدادات لنظام معين
    كذلك يمكن تحويل عدد من الخطوات إلى script لتنيفذها في أكثر من مخدم مثلاً عند تهيئة نظام معين بطريقة أسرع وأسهل

  11. سأحاول التدرب اكثر على سطر الاوامر ان شاء الله ، في محل عملي يستخدمون لينكس ايضاً، ربما اقوم باعادة تثبيت اوبنتو
    شكرا جزيلا.

  12. > في محل عملي يستخدمون لينكس ايضاً
    لقد زرت محل عملك مرتين قبل بضعة أعوام 🙂
    ربما لاقيتك هُناك في كيلو 10 ولم أعرفك
    بمناسبة الكهرباء لدي مشكلة كبيرة في تحويل عداد المنزل إلى 3phase بدأت اﻷجراءات في شهر نوفمبر الماضي ولم تنتهي إلى اﻵن

  13. السلام عليكم الاحخ عزوز

    أوافقك الراي فلي نفس التجارب بالظبط وكانك كنت تكتب عن تجربتي الشخصية فسبحان الله.
    أنا لا أذكر اني احتجت لنظام وندوز في اخر ثلاثة سنين.

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s