সেন্টোসে সিস্টেম স্টার্টআপে কীভাবে কোনও স্ক্রিপ্ট স্বয়ংক্রিয়ভাবে চালানো যায়


8

আমি সফলভাবে টিম সিটি ইব সেন্টস 6.2 ন্যূনতম ইনস্টল করেছি। আমি সিস্টেম স্টার্টআপে স্বয়ংক্রিয়ভাবে স্ক্রিপ্ট চালানোর চেষ্টা করতে আটকে আছি:

/opt/TeamCity/bin/teamcity-server.sh start

আমি প্রায় googled এবং বিভিন্ন পদ্ধতি যা সব ব্যর্থ বলে মনে হচ্ছে চেষ্টা করেছি। বেশিরভাগ পদ্ধতি rc.local ফাইলগুলির মধ্যে একটিতে স্টার্টআপ স্ক্রিপ্ট যুক্ত করার দিকে ইঙ্গিত করে:

/etc/rc.d/rc.local
/etc/rc.local

আরসি.লোকালের বিষয়বস্তুতে লাইনটি রয়েছে:

/opt/TeamCity/bin/teamcity-server.sh start

যার কোনটিই টিমসিটি সার্ভারটি শুরু করবে না

আমি স্ক্রিপ্টটি ম্যানুয়ালি চালালে কোনও সমস্যা নেই।

সহজ মনে হচ্ছে তবে আমি কীভাবে অটো চালাতে শেল স্ক্রিপ্ট পাব?


1
আপনি 'যার কোনটিই কাজ করে না' দ্বারা আপনার অর্থ কী তা বর্ণনা করতে হবে। কারণ এটি ছাড়া, সবাই অনুমান করে। সম্ভবত আপনি কী করেছেন এবং কোন আউটপুট বা ব্যর্থতা বার্তা বা ইভেন্টগুলি ঘটেছে তা আরও বিশদে বর্ণনা করুন?
এইটবিটটনি

এটি স্থাপন করার জন্য এটি সঠিক জায়গা, সুতরাং দেখে মনে হচ্ছে যে কোনও কিছু /etc/rc.d/rc.local এন্ট্রি বা স্ক্রিপ্টের সাথেই কোশার নয়। আপনি কি স্ক্রিপ্ট এবং rc.local এর বিষয়বস্তু পোস্ট করতে সক্ষম? এছাড়াও, আপনি যখন ম্যানুয়ালি এটি করেন তখন টিমসিটি-সার্ভার.শেল স্ক্রিপ্টটি কি চালিত হয়?
কুইন মারফি

হ্যাঁ, টিমসিটি-সার্ভার ম্যানুয়ালি দুর্দান্তভাবে চালায়। প্রতিবার সার্ভারটি পুনরায় চালু হওয়ার পরে এটি করা ব্যবহারিক নয় ...
atp03

এটিকে ম্যানুয়ালি চালিত করা তবে আরসি.লোকালের মাধ্যমে নয় পরিবেশগত পার্থক্য বোঝায়। তোমার পথ কি? অন্য কোন এনভির ভেরিয়েবল?
সিজেসি

@cjc 'पथ' বলতে কী বোঝায় তা নিশ্চিত নন - তবে আমি যদি /etc/rc.d/rc.local ম্যানুয়ালি চালাই তবে টিমসিটি সার্ভারটিও সূক্ষ্ম সূচনা করতে পারে। এটি কি এখনও একটি পার্থক্য করে?
atp03

উত্তর:


15

যদি টিমসিটি শুরুর স্ক্রিপ্টটি কোনও এলএসবি- সম্মতিযুক্ত থ্রি স্ক্রিপ্ট হয় (এটি যদি স্টার্ট , স্টপ এবং অন্যান্য যুক্তি সরবরাহ করে ) তবে আপনি কেবল স্ক্রিপ্টটি /etc/init.dফোল্ডারে অনুলিপি করতে পারেন এবং চালাতে পারেন (মূল হিসাবে):

# chkconfig --add <script_name>
# chkconfig <script_name> on

ফাইলের জন্য একটি প্রতীকী লিঙ্কটিও ঠিক আছে। সুতরাং চেষ্টা করুন (মূল হিসাবে):

# ln -s /opt/TeamCity/bin/teamcity-server.sh /etc/init.d/teamcity-server
# chkconfig --add teamcity-server
# chkconfig teamcity-server on

যদি এটি সূচনাটি শুরু হয় না, তবে সমস্যা ছাড়াই ম্যানুয়ালি শুরু হয়, আপনার চেক করা উচিত:

  1. অনুমতি (সম্ভবত প্রোগ্রামটি রুট হিসাবে চালানো যাবে না root রুট হিসাবে লগ ইন করার চেষ্টা করুন এবং এটি চালনা করুন), এবং;
  2. আপনার পাঠ (সম্ভবত স্ক্রিপ্টটির জন্য কিছু প্রয়োজন তবে এটি কোথায় তা জানেন না)।

আপনার পথের বিষয়বস্তু মুদ্রণের জন্য কেবল চালান:

echo $PATH

স্ক্রিপ্টটি শুরু না হওয়ার কারণটি প্যাথ থেকে শুরু করে দেখুন, চেষ্টা করুন:

$ cd /
$ PATH= /opt/TeamCity/bin/teamcity-server.sh

এই আদেশটি আপনার PATH অস্থায়ীভাবে সাফ করবে এবং কমান্ডটি চালাবে। তাহলে কমান্ড প্রয়োজন পাথ এটা ব্যর্থ হবে কিছু নির্দিষ্ট তথ্য (ঠিক চালানোর জন্য সতর্কতা অবলম্বন উপরে বর্ণিত হও, আছে এর মধ্যে একটি স্থান পাথ = এবং কমান্ডের অবশিষ্ট)।


6

ফেডোরা 17 কমান্ডে

# chkconfig --add teamcity-server

বলুন: সার্ভিস টিমসিটি-সার্ভার chkconfig সমর্থন করে না আপনার যেমন শিরোনাম যুক্ত করা উচিত:

#! /bin/bash
# chkconfig: - 10 90

শুধুমাত্র তার পরে প্রথম কমান্ড চালান।


2
এবং আপনার স্ক্রিপ্টটি অবস্থিত রয়েছে তা নিশ্চিত করুন /etc/init.d/:-)
বার্ট ডি ভোস

2

স্ক্রিপ্টটি ম্যানুয়ালি চালিত হলে এটি সঠিকভাবে কাজ করে। কিন্তু, স্বয়ংক্রিয়ভাবে চালানো গেলে এটি কার্যকর হয় না।

আমি অপরাধীকে খুঁজে পেয়েছি: টিম সিটি ব্যবহারকারীর অধীনে চলে teamcity। এটি অবশ্যই /etc/sudoersফাইলে উপস্থিত থাকতে হবে এবং আপনার visudoএই জাতীয় একটি লাইন ব্যবহার করে যুক্ত করা উচিত :

Defaults:teamcity !requiretty
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.