نصب fcron در نوکیا N900 – پیشنیاز اسکریپت های آینده.
توسط: vahit
سلام
یه مدت بود نبودم به دلیل گرفتاری ها ولی خب بی کار نبودم.
بحث امروزمون هم در مورد نصب fcron در tablet phone نوکیا N900 هست. حالا چرا من گیر دادم به گوشیم بحث مفصله اگر خیلی نگرانید یادم بندازید بعداً توضیح می دم. درمورد اینکه چرا fcron رو نصب می کنم چون لازم دارم که یه تعداد از اسکریپت هام سر یه وقت معین اجرا بشن و در پست های آینده بیشتر در موردش بحث خواهیم کرد. بله می دونم توی پست قبلی هم به پست های بعدی ارجاع داده بودم و باید بگم که اون پروژه گسترش پیدا کرده و هنوز کار داره و بعد از اتمام حتماً پست معرفی و … می زنم.
امّا چرا برای نصب یه برنامه یه پست جدا داد؟ دلیلش اصلیش این هست که این برنامه توی مخازن قرار نداره و باید از روی سورس کد کامپایل بشه و دلیل ثانویه این هست که یه خورده دنگ و فنگ داشت وقتی من نصب می کردم و این پست رو می نویسم تا نصبش برای بقیه راحتتر بشه.
۱. این هست که پیش نیاز های اون رو نصب می کنیم. بسته های که من بهشون نیاز پیدا کردم اینها بودن:
1 2 3 |
grep-gnu sendmail make |
این بسته ها رو می تونیم به راحتی با یک دستور از داخل مخازن نصب کنیم:
1 |
apt-get install grep-gnu make sendmail |
۲. سورس کد رو از سایت رسمی برنامه دانلود می کنیم. این کار رو از این آدرس انجام میدیم. از قسمت download بسته fcron-3.0.6.src.tar.gz رو دانلود کرده و در جایی از گوشی ذخیره کنیم.
۳. محتویات فایل رو استخراج می کنیم. چون فایل tar.gz هست به این شکل عمل می کنیم:
1 |
tar -xzf fcron-3.0.6.src.tar.gz |
حالا باید پوشه این به اسم fcron-3.0.6 در همون مسیر داشته باشیم.
نکته: برای انجام مراحل بعد باید این پوشه در مسیری قرار داشته باشد که امکان اجرای برنامه روی اون وجود داشته باشه. یعنی باید مسیری غیر از /home/user/MyDocs/ باشد. چون این پارتیشن از نوع fat هست و در این نوع پارتیشن ها امکان تغییر پرمیشن و اجرای برنامه وجود نداره. من برای انجام این کار کارت حافظه ی جانبی رو به شکل ext2 قالب بندی (format) کردم و این گونه کارهام رو روی اون انجام می دم. اگر امکان همچین کاری برای شما وجود نداره می تونید از خود مسیر /home/user/ استفاده کنید.
۴. پرمیشن فایل configure و تمام فایلهای موجود در مسیر scripts رو تغییر می دیم و دسترسی اجرایی بهشون می دیم:
1 2 |
chmod 755 configure chmod -R 755 scripts |
۵. دستور configure رو اجرا می کنیم.
۶. دستور make و در ادامه دستور make install رو با سطح کاربری root اجرا می کنیم.
۷. حالا fcron کامل نصب شده، کاربرش اضافه شده و کاری که ما باید انجام بدیم این هست که کاربر و گروه fcron رو به مسیر /var/spool/fcron/ اختصاص بدیم:
1 |
chown -R fcron:fcron /var/spool/fcron |
در این لحظه کار نصب تموم شد و باید اسکریپت هامون سر ساعت اجرا بشن. امّا نه اجرا نمی شن!
[بعد از مدتی] مشکل این هست که با دستور
1 |
/etc/init.d/fcron start |
خود fcron اجرا نمی شه. امّا به چه دلیل؟ [بعد از چند دقیقه] آها دلیلش این هست که داخل این فایل مسیر دستور fcron اشتباه وارد شده و باید دستی ویرایش کنیم. اگر شما هم این مشکل رو دارین به این شکل حل می کنیم. ابتدا خروجی دستور زیر رو پیدا می کنیم:
1 |
which fcron |
فایل
1 |
/etc/init.d/fcron |
رو ویرایش کرده و در خط ۱۵ مقدار متغیر DAEMON رو به خروجی دستور قبل تغییر می دیم، تغییرات رو ذخیره می کنیم. در این حالت وقتی دستور
1 |
/etc/init.d/fcron start |
رو اجرا کردیم باید fcron اجرا بشه یعنی خروجی دستور
1 |
ps ax | grep -i fcron |
باید چیزی شبیه به این باشه:
1 2 |
12769 root 1872 S /usr/local/sbin/fcron -b 12834 root 2088 S grep -i fcron |
تبریک می گم نصب تمام شد. :)
[…] راه حل دوّم: می دونم در سیستم گنو/لینوکس هر فایل یا پوشه ای که اسمش با نقطه (. – dot) شروع بشه در فایل منیجر نشون داده نمی شه حتی هنگام لیست گیری فایل ها تو ترمینال برای دیدنشون باید از آپشن های a یا A (با هم فرق دارن) استفاده کنیم. خب tracker گوشی هم به فایل ها و پوشه های مخفی دسترسی نداره. پس من میتونم یه اسکریپت بنویسم که به همین روش عکس هام رو مخفی کنه. حالا فقط یه مسئله می مونه، اونم اجرای دستی اسکریپت هست. این مشکل رو چند روز پیش حل کردیم. یادتون نیست؟ «نصب fcron در نوکیا N900 – پیشنیاز اسکریپت های آینده.» […]