অ্যাপ্লিকেশন-টিজডাটা ইনস্টল করুন অযৌক্তিক


100

আমি যখন চেষ্টা করি

apt-get install -y tzdata

সময় অঞ্চল বেছে নেওয়ার জন্য কমান্ড লাইন বিকল্পটি দেখায়। আমি কিছু সেটআপ করার জন্য স্ক্রিপ্টে এটি ব্যবহার করার চেষ্টা করছি, কীভাবে ব্যবহারকারীর ইনপুট ছাড়াই আমি অ্যাপটি চালাতে পারি?

আমি যে tzdata করতে পারি তা পুনরায় কনফিগার করতে জানি

echo "America/New_York" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata

তবে ইনস্টল করার সময় আমার এটির সঠিক সময় অঞ্চল নির্ধারণ না করা সত্ত্বেও পুরোপুরি চালানো দরকার, আমি সর্বদা এটি পুনরায় কনফিগার করতে পারি।

আমি চেষ্টা করেছিলাম

echo 5 | apt-get install -y tzdata

তবে এটি প্রত্যাশার মতো কাজ করছে না।

উত্তর:


170

এটি আমি ব্যবহৃত স্ক্রিপ্ট

(মন্তব্যগুলি থেকে @ এলকুইমাস্টার ইনপুট সহ আপডেট হওয়া সংস্করণ)

#!/bin/bash
export DEBIAN_FRONTEND=noninteractive

ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
apt-get install -y tzdata
dpkg-reconfigure --frontend noninteractive tzdata

ঠিকঠাক কাজ মনে হচ্ছে।

এক লাইনার হিসাবে:

DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata

44
আপনি যদি ইউটিসির সাথে ভাল থাকেন তবে এখানে একটি ওয়ান-লাইনার রয়েছে:DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata
এলকুইমিস্টা

4
এটি এমন ব্যথা। আমার ডিফল্ট টাইমজোন (প্যাকেজ ইনস্টলেশন চলাকালীন কনফিগারেশন প্রম্পট? কার ধারণাটি ছিল?) সেট করার জন্য অনুরোধ জানানো ছাড়া আমি টজডাটা ইনস্টল করতে পারি না এবং আমি প্রথমে tzdata ইনস্টল না করে ডিফল্ট টাইমজোন সেট করতে পারি না। আপনি ইওএফ পাস করলে এটি ইতিমধ্যে ইউটিসি-র কাছে ডিফল্ট হয়। কেন কেবল এটি করা হয় না এবং তারা চাইলে পরে ব্যবহারকারী আপডেট করতে দেয়। বা আমাকে টিজেড এনভায়রনমেন্ট ভেরিয়েবল সেট করতে দিন এবং তার জন্য টজডাটা দেখতে দিন।
theferrit32

4
এরকম ln -fs /usr/share/zoneinfo/America/New_York /etc/localtimeপদক্ষেপ সামনে DEBIAN_FRONTEND=noninteractive apt-get install -y tzdataএকমাত্র উপায় আমি এই W / OA প্রম্পট ইনস্টল করতে পেতে পারে।
fncomp

একইভাবে আমার পক্ষে যায়, ln ​​স্টেটমেন্টটি প্রথমে রাখার দ্বারা এই কাজ করা একমাত্র উপায়। @ পিওয়াইএ
jpruiz114

75

যদি কেউ এটি অর্জন করতে চায় তবে Dockerfileনীচের হিসাবে ব্যবহার করুন।

ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get -y install tzdata

4
এই একটি একক লাইন সম্পন্ন করা যেতে পারে: পরিবর্তনশীল জন্য সেট করা আবশ্যক অংশ। অংশটির জন্য আগে সেট করা থাকলে এটি কাজ করে না । RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends ...DEBIAN_FRONTENDinstall&&update
ড্যানিয়েল স্টিভেনস

6

এর জন্য সমস্ত ক্রেডিট @PYA এ যাওয়া উচিত তবে সঠিক ক্রমটি হওয়া উচিত:

ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
export DEBIAN_FRONTEND=noninteractive
apt-get install -y tzdata
dpkg-reconfigure --frontend noninteractive tzdata

আমি অর্ডার পরিবর্তন প্রতিফলিত করতে মূল উত্তর সম্পাদনা করেছি।
sebisnav

5

আমি সম্প্রতি একটি Dockerfile নিম্নলিখিত সমাধান নির্মাণের পাওয়া যায় Cingulata FHE গ্রন্থাগার:

ln -snf /usr/share/zoneinfo/$(curl https://ipapi.co/timezone) /etc/localtime

এটি টাইমজোন তথ্য পুনরুদ্ধার করতে ipapi.co দ্বারা সরবরাহিত এপিআই মূলত ব্যবহার করে। এটি স্বয়ংক্রিয়ভাবে ডায়ালগটি এড়িয়ে যাওয়া এবং ডিফল্ট (ইউটিসি) ব্যবহারের পরিবর্তে সময় অঞ্চলটি সঠিকভাবে কনফিগার করে।


1

আমি এটি কীভাবে করেছি তা এখানে:

echo 1 > input.txt
echo 1 >> input.txt
apt-get install -y tzdata < input.txt
ln -fs /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
echo America/Los_Angeles > /etc/timezone

প্রথম দুটি প্রতিধ্বনি বিবৃতি একটি পাঠ্য ফাইল তৈরি করে যা ভৌগলিক অঞ্চল মেনু এবং নগর / অঞ্চল মেনুর জন্য নির্বাচন নম্বর ধারণ করে। এই ফাইলটি তখন এপ-গেট ইনস্টল কমান্ডের ইনপুট সরবরাহ করতে ব্যবহৃত হয়। Tzdata প্যাকেজটি কোনও ব্যবহারকারীর ইনপুট না চাইতেই ইনস্টল করা হবে। টাইমজোনটি আফ্রিকা / আবিদজানে এমনভাবে সেট করা হবে যেন আপনি সাধারণত যে অনুরোধ জানাবে তার প্রতিক্রিয়া হিসাবে আপনি 1 এবং 1 লিখেছেন। তারপরে আমি টাইমজোনটি শেষ দুটি কমান্ডের সাহায্যে যা চাই তা পরিবর্তন করি।

1 এবং 1 এর পরিবর্তে আপনি যে ভৌগলিক অঞ্চল এবং নগর / অঞ্চলের আপনি চান তার জন্য প্রকৃত সংখ্যাগুলি ব্যবহার করতে পারেন তবে আমার কাছে মনে হয় যে এই সংখ্যাগুলি পরিবর্তন হতে পারে।

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