পার্ল থেকে লোকেল সেটিংয়ের সতর্কতা কীভাবে ঠিক করবেন?


595

আমি যখন দৌড়ে যাই তখন আমি perlসতর্কতাটি পাই:

পার্ল: সতর্কতা: লোকেল নির্ধারণ ব্যর্থ।
পার্ল: সতর্কতা: আপনার লোকেল সেটিংস পরীক্ষা করে দেখুন:
    ভাষা = (আনসেট করা),
    LC_ALL = (আনসেট),
    ল্যাং = "en_US.UTF-8"
সমর্থিত এবং আপনার সিস্টেমে ইনস্টল করা হয়।
perl: সতর্কতা: স্ট্যান্ডার্ড লোকালে ফিরে ("সি")।

আমি কীভাবে এটি ঠিক করব?


আপনি ত্রুটি বার্তার মতো লোকেল সেটিংস পরীক্ষা করে যখন কী ঘটেছে?
ব্রায়ান ডি ফয়েজ

3
লোকেল ইনস্টল করার পরিবর্তে, আপনি লোকেলটিও পরিবর্তন করতে পারবেন। আমার উবুন্টু বাক্সে, এটি ব্যবহারকারীর জন্য সম্পাদনা করে সম্পন্ন করা হয়েছে~/.pam_environment
জানুস ট্রয়লসেন

আমার ওড্রয়েড-সি 1 চলমান উবুন্টুতে সমস্যাটি প্রকৃতপক্ষে ~ / .pam_en पर्यावरण ফাইল ছিল। কিছু ভেরিয়েবল ছিল en_US.UTF-8 এর পরিবর্তে es_US.UTF-8। ধন্যবাদ.
f1vefour

আমি সাইগউইন \ বাবুন এ পেয়েছি। পার্লের কেবল একটি পুনরায় ইনস্টলই এটি স্থির করেছে।
লুকাস সোয়ারস

উত্তর:


448

আপনার ওএস সম্পর্কে জানে না en_US.UTF-8

আপনি কোনও নির্দিষ্ট প্ল্যাটফর্মের কথা উল্লেখ করেননি, তবে আমি আপনার সমস্যার পুনরুত্পাদন করতে পারি:

% uname -a
ওএসএফ 1 হান্টার 2 ভি 5.1 2650 আলফা
% পার্ল-প্রস্থান
পার্ল: সতর্কতা: লোকেল নির্ধারণ ব্যর্থ।
পার্ল: সতর্কতা: আপনার লোকেল সেটিংস পরীক্ষা করে দেখুন:
    LC_ALL = (আনসেট),
    ল্যাং = "en_US.UTF-8"
    সমর্থিত এবং আপনার সিস্টেমে ইনস্টল করা হয়।
perl: সতর্কতা: স্ট্যান্ডার্ড লোকালে ফিরে ("সি")।

আমার ধারণা আপনি একটি নতুন ডেস্কটপ মেশিন থেকে এই পুরানো হোস্টের সাথে সংযোগ করতে ssh ব্যবহার করেছেন। এটি /etc/ssh/sshd_configধারণ করা সাধারণ

AcceptEnv LANG LC_*

যা ক্লায়েন্টদের সেই পরিবেশের ভেরিয়েবলের মানগুলি নতুন সেশনে প্রচার করতে দেয়।

সতর্কতা আপনাকে ফুল-আপ লোকেলের প্রয়োজন না হলে কীভাবে এটি স্কোলেচ করবেন সে সম্পর্কে একটি ইঙ্গিত দেয়:

% এনভ ল্যাং = সি পার্ল-প্রস্থান
%

বা ব্যাশ সহ:

ANG ল্যাং = সি পার্ল-প্রস্থান
$ 

স্থায়ী সমাধানের জন্য, যেকোন একটি বেছে নিন

  1. পুরানো হোস্টে, LANGআপনার শেলের প্রারম্ভিককরণ ফাইলটিতে পরিবেশ পরিবর্তনশীল সেট করুন।
  2. আপনার পরিবেশকে ক্লায়েন্টের পক্ষে পরিবর্তন করুন, উদাহরণস্বরূপ , ssh hunter2কমান্ডটি ব্যবহার না করে LANG=C ssh hunter2
  3. আপনার যদি অ্যাডমিনের অধিকার SendEnv LANG LC_*থাকে তবে স্থানীয় /etc/ssh/ssh_config ফাইলে লাইনটি মন্তব্য করে পরিবেশের ভেরিয়েবলগুলি প্রেরণ করা বন্ধ করুন sh ( এই উত্তরের জন্য ধন্যবাদ । আরও জন্য ওপেনএসএইচ-এর জন্য বাগ 1285 দেখুন ))

22
ধন্যবাদ! আমার সার্ভারের সাথে গিটের সাথে সংযোগ করার সময় আমার এই ত্রুটি বার্তাটি ছিল। De_CH.UTF-8 যুক্ত করার পরে (সেখানে সমর্থিত হয়নি তবে স্থানীয়ভাবে ব্যবহৃত হয়েছিল) dpkg-reconfigure localesবার্তাটি দিয়ে গেছে।
সাইমন এ। ইউগস্টার

82
আমার বয়েস ধরে এই সমস্যা ছিল, ... sshd_config থেকে "AcceptEnv LANG LC_ *" সরানোর পরে অবশেষে এটি সমাধান হয়েছে। ইঙ্গিতটির জন্য ধন্যবাদ!
ম্যাড্যাক

2
@ গ্রেগ বেকন, এমন কোনও পরিস্থিতি কি নেই যেখানে আপনি পরিবেশের ভেরিয়েবল সিস্টেমকে প্রশস্ত করতে চান, উদাহরণস্বরূপ একটি / ইত্যাদি / এনভায়রনমেন্ট ফাইল তৈরি করে? help.ubuntu.com/commune/…
ফ্রেমচার

25
@ হারমানইংজালডসন, কমপক্ষে উবুন্টুতে (12.10), সার্ভারটি পুনরায় বুট করার দরকার পড়েনি ("অ্যাকসেপ্টইএনভি ল্যাং এলসি_ *" অপসারণের পরে)। আমি কেবল এসএসএস কনফিগারটি পুনরায় লোড করেছি: এটি service ssh reloadএকটি সেকেন্ডের একটি ভগ্নাংশ গ্রহণ করে এবং বর্তমান এসএসএস সেশনটিও শেষ করতে দেয় না।
noamtm

3
ক্লায়েন্ট সিস্টেমে 'এক্সপোর্ট এলসি_এলএল = সি' এর পরে 'উত্স ~ / .bashrc' যুক্ত করুন সমস্যাটি সমাধান করুন।
EffectiveMatrix

476

এটি ম্যাক ওএস লায়ন (10.7) বা সাইগউইন (উইন্ডোজ 10) এ কীভাবে সমাধান করবেন তা এখানে রয়েছে:

হোস্ট মেশিনে আপনার বাশার্ক বা ব্যাশ_প্রফাইলে নিম্নলিখিত লাইনগুলি যুক্ত করুন:

# Setting for the new UTF-8 terminal support in Lion
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8

আপনি যদি zsh ব্যবহার করছেন তবে zshrc সম্পাদনা করুন:

# Setting for the new UTF-8 terminal support in Lion
LC_CTYPE=en_US.UTF-8
LC_ALL=en_US.UTF-8

6
ধন্যবাদ, আমি দীর্ঘদিন ধরে এই সমস্যার জন্য একটি সমাধান অনুসন্ধান করেছি এবং আমি সর্বদা ভেবেছিলাম এটি আমার উবুন্টু সার্ভার কনফিগারেশনে একটি সমস্যা, এবং দেখে মনে হয়েছিল যে কোনও সমাধান হয়নি যা (যে সমস্ত dkpg-পুনরায় কনফিগার করার উপাদান রয়েছে)
Teemu Kurppa

5
যেহেতু LC_ALLঅন্যান্য সমস্ত ভেরিয়েবলগুলি ওভাররাইট করে, আমি বরং সেট করতে চাই LANG=de_AT.UTF-8এবং পৃথক ভেরিয়েবলগুলি পছন্দ করি LC_MESSAGES=en_US.UTF-8। যদি কোনও ভেরিয়েবল সেট না করা থাকে তবে তা পিছনে পড়ে LANG। আপনি উদাহরণস্বরূপ করতে পারেন। unset LC_CTYPEএটি পিছনে পড়তে বাধ্য LANG
ডেভিড

4
.Bashrc এ সেই লাইনগুলি স্থাপন করা কার্যকর হয়নি, তবে বাশ_ প্রোফাইল এটি সমাধান করেছে! আমাকে ফাইলটি তৈরি করতে হয়েছিল।
হারমান ইনজালডসন

5
এই লাইনগুলি ~/.bashrcসমাধান করার জন্য এটি আমার জন্য সমাধান করা ... তারপরে অবশ্যই পুনরায় লোড করা উচিত source ~/.bashrc... ধন্যবাদ <3
এনিসে

5
ধন্যবাদ, ZSH এই কাজ সূক্ষ্ম এবং উহু-মাই-zsh প্লাগইন Mac OS X এর এল ক্যাপটেনের অধীনে, ~ / .zshrc নীচে: LC_CTYPE = en_US.UTF -8 LC_ALL = en_US.UTF -8
Valerio Schiavoni

207

আপনি যদি ডিবাটস্ট্র্যাপ ব্যবহার করে কোনও রুটফ তৈরি করে থাকেন তবে আপনাকে লোকেলগুলি তৈরি করতে হবে। আপনি চালিয়ে এটি করতে পারেন:

# (optional) enable missing locales
sudo nano /etc/locale.gen

# then regenerate
sudo locale-gen

এই টিপটি https://help.ubuntu.com/commune/Xen থেকে এসেছে


28
এটি আমার পক্ষে আসল স্থিরতা।
আফ্রিজা এন আরিফ

5
লোকেল-জেন কোনও আর্গুমেন্ট গ্রহণ করে না (কমপক্ষে ডেবিয়ান স্থিতিতে)। পরিবর্তে, আপনার পছন্দসই স্থানীয় অবস্থানগুলিকে সঙ্কলিত করতে /etc/locale.gen সম্পাদনা করুন, তারপরে sudo লোকেল-জেন চালান
স্যাম ওয়াটকিন্স

2
স্থিরUbuntu Server
পাসচালিস

5
ডেবিয়ান-এ আপনাকে $ echo en_US UTF-8 >> /etc/locale.genপ্রথমে করার দরকার হতে পারে ।
আখমেদ

1
জেন্টুতে (কমপক্ষে), locale-genযুক্তি নেবে না। এটা থেকে পড়া /etc/locale.gen
পিস্তোস

142

ব্যবহার করুন:

export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_CTYPE=en_US.UTF-8

এটি ডেবিয়ানের পক্ষে কাজ করে । আমি জানি না - তবে লোকেল-জেনের কোনও ফল ছিল না।

গুরুত্বপূর্ণ! এটি একটি অস্থায়ী সমাধান। এটি প্রতিটি সেশনের জন্য চালাতে হবে।


13
এই আমার জন্য কাজ করে। আমি কেবল এটি আমার .bashrcফাইলে রেখেছি ।
অনিরুদ রমনাথন

2
আমার জন্যও কাজ করেছেন। আমাকে কেবল দুটি সেটিংস (ভাষা এবং এলসি_এল) সেট করতে হয়েছিল যা পার্ল সতর্কতার মধ্যে আনসেট হিসাবে উপস্থিত হয়েছিল
লরেন্ট

2
ডেবিয়ানে, local-genকেবলমাত্র লোকালগুলিতে প্রক্রিয়া করা হয় যা নিরবিচ্ছিন্ন /etc/local.gen। আপনার echo en_US UTF-8 >> /etc/locale.genপ্রথমে করার দরকার হতে পারে ।
আখমেদ

এটি আমার জন্য প্রাথমিক ওএস ফ্রেয়ায় কাজ করেছে (উবুন্টু ভিত্তিক)
ভালকিরিলভ

1
LC_ সি প্রকার হতে পারে?
মিশ্রিত করুন

139

এর অর্থ সাধারণত আপনি নিজের লিনাক্স বাক্সে লোকাল সঠিকভাবে সেট আপ করেন নি।

ডেবিয়ান বা উবুন্টুতে, এর অর্থ আপনার করা দরকার

do সুডো লোকেল-জেন
$ sudo dpkg- পুনরায় কনফিগার করা লোকেল

আরও দেখুন মানুষ স্থানীয়ের জনক


30
সমস্যাটি এখানে ঠিক করে না
সোমটিক

6
dpkg-reconfigure
লোকেলস

4
dpkg-reconfigure লোকালগুলি একই পার্ল লোকেলের ত্রুটি বার্তাগুলি দিয়ে নিজেকে ব্যর্থ করে যে কোনও একটি প্রথম স্থানে ফিক্স করার চেষ্টা করছে !!!!
ম্যাটোও

10
এটি উবুন্টুতে আমার জন্য কাজ করেছে ১৪.০৪, যদিও আমাকে প্রথমে নিখোঁজ লোকেলটি যুক্ত করতে হয়েছিলsudo locale-gen es_UY.UTF-8
২f

2
@ ম্যাটটিও ত্রুটিটি ঠিক করার আগে কেবল প্রথমবার। আবার চেষ্টা করুন, এবং এটি ঠিক করা উচিত।
জিরো 3

91

শুধুমাত্র ম্যাকস এবং ম্যাক ওএস এক্স ব্যবহারকারীদের জন্য

গিট ব্যবহার করার সময় আমি একই সতর্কতা পেয়েছিলাম

এই সতর্কতাটি সমাধান করার জন্য বিকল্পটি আনচেক করুন Set locale environment variable on startupএবং আপনার টার্মিনালটি পুনরায় চালু করুন। স্ক্রিনশট নীচে আমার টার্মিনাল সেটিংস প্রতিনিধিত্ব করে।

enter image description here


3
বাহ, এত সহজ এবং আমার সমস্যাগুলি স্থির! ধন্যবাদ!
মিশাল

3
আমি অন্য সকলকে চেষ্টা করেছিলাম কিন্তু এটি আমার জন্য তা করেছে। আমি আইটির্ম ব্যবহার করি এবং এটিতে একই অক্ষর এনকোডিং বিকল্প রয়েছে।
মাইকেল মরিসন

2
দুর্ভাগ্যক্রমে এটি জেডএসএইচ ব্রেক করে (ট্যাবিং কাজ বন্ধ করে দিয়েছে)
খ্রিস্টান

1
এটি ম্যাক ওএসের জন্য সম্পূর্ণ কৌশলটি করে। যাইহোক, ম্যাকোস সিয়েরাতে আপগ্রেড হওয়ার পরেই আমার সাথে এটি শুরু হচ্ছে। এবং এটি আমার জন্য এই সমস্যাটি ঠিক করে দিয়েছে।
পাওলো মালওয়ার

1
এই আমার সমস্যা স্থির। সিয়েরা থেকে ম্যাক ওএস এক্স হাই সিয়েরাতে আপডেট করার পরে এটি আমার কাছে ঘটতে শুরু করে।
লুসিয়ান আইরিমি

36

উবুন্টুতে এটি সহজ সমাধান। কমান্ড লাইন থেকে নিম্নলিখিত কমান্ডগুলি চালনা করে আপনাকে স্ক্র্যাচ থেকে লোকেলগুলি তৈরি করতে হবে:

sudo locale-gen en_US en_US.UTF-8
sudo dpkg-reconfigure locales

এটিতে লোকেলগুলি তৈরি করা উচিত এবং তারপরে সেগুলি পুনরায় কনফিগার করা উচিত।


এমনকি এটি ব্যবহার করে আমার পক্ষে ভাল কাজ করেছে pt_BR pt_BR.UTF-8- ধন্যবাদ।
মার্কোস ফ্রেইটাস 21

29

/etc/environmentডেবিয়ান এবং উবুন্টুতে আমার জন্য সমস্যাটি স্থির করতে নিম্নলিখিতগুলি যুক্ত করা (অবশ্যই আপনি যে স্থানীয় অবস্থানটি ব্যবহার করতে চান তার সাথে মেলে পরিবর্তন করুন):

LANGUAGE=en_US.UTF-8
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
LC_CTYPE=en_US.UTF-8

7
..আমি একটি সতর্কতা পেয়েছিলাম যে লোকেলটি সেটিংয়ের মান হ্রাস /etc/environmentকরা হয়েছে এবং তার পরিবর্তে সেট করা উচিত /etc/default/locale। দুজনেরই আপাতত কাজ করার কথা মনে হচ্ছে।
জস্কোর্সন

হওয়া উচিতLC_CTYPE
aexl

25

আমি এখন এটি ব্যবহার করছি:

$ cat /etc/environment
...
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8

তারপরে এসএসএইচ সেশন থেকে লগ আউট করুন এবং আবার লগ ইন করুন।

পুরানো উত্তর:

কেবল এটিই আমাকে সহায়তা করেছিল:

$ locale
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=en_US.UTF-8
LC_NUMERIC=ru_RU.UTF-8
LC_TIME=ru_RU.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=ru_RU.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=ru_RU.UTF-8
LC_NAME=ru_RU.UTF-8
LC_ADDRESS=ru_RU.UTF-8
LC_TELEPHONE=ru_RU.UTF-8
LC_MEASUREMENT=ru_RU.UTF-8
LC_IDENTIFICATION=ru_RU.UTF-8
LC_ALL=

$ sudo su

# export LANGUAGE=en_US.UTF-8
# export LANG=en_US.UTF-8
# export LC_ALL=en_US.UTF-8

# locale-gen en_US.UTF-8
Generating locales...
  en_US.UTF-8... up-to-date
Generation complete.

# dpkg-reconfigure locales
Generating locales...
  en_AG.UTF-8... done
  en_AU.UTF-8... done
  en_BW.UTF-8... done
  en_CA.UTF-8... done
  en_DK.UTF-8... done
  en_GB.UTF-8... done
  en_HK.UTF-8... done
  en_IE.UTF-8... done
  en_IN.UTF-8... done
  en_NG.UTF-8... done
  en_NZ.UTF-8... done
  en_PH.UTF-8... done
  en_SG.UTF-8... done
  en_US.UTF-8... up-to-date
  en_ZA.UTF-8... done
  en_ZM.UTF-8... done
  en_ZW.UTF-8... done
Generation complete.

# exit

$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

উবুন্টু 15.04 এ এটি আমার পক্ষে ভাল কাজ করেছে, অনেক ধন্যবাদ।
গোক ওবসা

22

ডেবিয়ান উপর অনেক অনুসন্ধান পরে এই কৌশলটি করেছে।

প্রথম:

sudo apt-get purge locales

তারপর:

sudo aptitude install locales

এবং বিখ্যাত:

sudo dpkg-reconfigure locales

এটি লোকালগুলির সিস্টেমে রাইড দেয়, তারপরে লোকেলগুলি পুনরায় ইনস্টল করে এবং 2.19 থেকে 2.13 পর্যন্ত libc6 কে ডাউনগ্রেড করে যা এটি ইস্যু। তারপরে আবার লোকেলগুলি কনফিগার করে।


4
dpkg-reconfigure localesপ্রয়োজন হয়। sudoআপনি যদি একটি সুডো টাইপ লোক হন বা এটি মূল হিসাবে করুন। তারপরে আপনার শেল পরিবেশে আপনার যা আছে সে অনুযায়ী আপনার লোকেল নির্বাচন করুন।
mknaf

6
dpkg-reconfigure লোকেলগুলি যা প্রয়োজন তা করা উচিত। আপনি এটি চেষ্টা করে 100 বার চেষ্টা করার পরে এবং ইন্টারনেটে ঘুরে দেখার পরে এবং আপনি যা দেখেছেন এবং সমস্যাটি এখনও সমাধান করবেন না উপরের চেষ্টা করে দেখুন try তারপরে ফিরে আসুন এবং এটিকে উপবিষ্ট করুন। :)
tkjef

1
অবশেষে এই সমস্যার একটি নন-হ্যাক উত্তর, অবশ্যই গ্রহণযোগ্য হওয়া উচিত!
php_nub_qq

17

এটি একটি দ্রুত উত্তর। আমরা এমন লোকেলগুলি সেট করব যা পুনরায় বুটের পরে সেট না করে। প্রথমে বাশ ফাইলটি খুলুন এবং সম্পাদনা করুন:

nano .bashrc

এই লাইনগুলি ফাইলটিতে যুক্ত করুন:

export LC_ALL="en_US.UTF-8"
export LANG="en_US.UTF-8"
export LANGUAGE="en_US.UTF-8"

পুনরায় লোড করে পরিবর্তন সক্রিয় করুন:

source ~/.bashrc

পরীক্ষার ফলাফল :

locale

কেবলমাত্র আমার জন্য কাজ করে, রাস্পবিয়ান এবং উবুন্টু সার্ভার 16.04 :)
লিসো

13

উবুন্টু এটি ব্যবহার করার জন্য,

#export LANGUAGE=en_US.UTF-8
#export LC_ALL=en_US.UTF-8
#export LANG=en_US.UTF-8
#export LC_TYPE=en_US.UTF-8

আমার জন্য কাজ করেছেন।


এটি ফাইলের সমস্ত সামগ্রী মুছে ফেলা /etc/default/localeএবং কেবল ওয়ারগুলির সংজ্ঞা (শব্দ এক্সপোর্ট অপসারণ) এবং সার্ভার পুনরায় চালু করেও আমার পক্ষে কাজ করেছিল
এডেনশো

12

আপনি যদি সার্ভার লিনাক্সে সংযোগ রাখতে ম্যাক ওএস এক্স ভি 10.10 (ইয়োসেমাইট) বা তার বেশি ব্যবহার করেন তবে আপনি এই পদক্ষেপগুলি চেষ্টা করতে পারেন।

  1. আপনার ফাইল / etc / ssh / sshd- কনফিগারেশন আসল রাখুন

  2. আপনার ~ / .Bash_ প্রোফাইলে রাখুন

    export LANG="en_US"
    export LC_ALL=$LANG.UTF-8
  3. চালান

    dpkg-reconfigure locales

    এবং "en_US.UTF-8" নির্বাচন করুন


10
sudo nano /etc/locale.gen

আপনি যে লোকেলগুলি ব্যবহার করতে চান তা অচিহ্নিত করুন (উদাঃ en_US.UTF-8 UTF-8):

তারপরে চালান:

sudo /usr/sbin/locale-gen

সূত্র: http://people.debian.org/~schultmc/locales.html


আমি মার্কিন যুক্তরাষ্ট্রে যে সংস্থার জন্য কাজ করি তার একটি গিট সার্ভার হোস্ট করে যার আন্তর্জাতিক গ্রাহক রয়েছে। জিবি ভিড় অভিযোগ করেছে যে লোকাল পার্থক্যের কারণে তাদের গিট ক্লোনগুলির এসএসএসের ওপরে সমস্যা হবে। এটি সার্ভারে প্রয়োগ করা তাদের জন্য এই সমস্যাটি স্থির করে।
থেরালস্টুবট

10

আপনাকে লোকাল যথাযথভাবে কনফিগার করতে হবে /etc/default/locale, লগআউট, লগইন করতে হবে এবং তারপরে নিয়মিত কমান্ডগুলি চালানো উচিত

root@host:~# echo -e 'LANG=en_US.UTF-8\nLC_ALL=en_US.UTF-8' > /etc/default/locale
root@host:~# exit
local-user@local:~$ ssh root@host
root@host:~# locale-gen en_US.UTF-8
root@host:~# dpkg-reconfigure locales

4
এই পদক্ষেপগুলি আমার জন্য কাজ করেছে (উবুন্টু সার্ভার 14.04)। মূল পয়েন্টটি ছিল লগআউট এবং আবার লগইন করা।
স্বাধীনভাবে

9
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_ALL to default locale: No such file or directory

সমাধান:

এটি ব্যবহার করে দেখুন ( uk_UA.UTF-8 আমার বর্তমান লোকেল your আপনার লোকেল লিখুন, উদাহরণস্বরূপ en_US.UTF-8 !)

sudo locale-gen uk_UA.UTF-8

এবং এই.

sudo dpkg-reconfigure locales

এটি করার পরে এবং পুনরায় ইনস্টল করার পরে, আমার সমস্যার সমাধান করার জন্য আপনাকে ধন্যবাদ।
ম্যাডপ্রপস

7

আমার জন্য .bashrc ফাইলটি রফতানি সম্পাদনা করার জন্য এই ত্রুটিটি আমি ঠিক করেছি। প্রাথমিক মন্তব্য পরে যুক্ত করুন।

ভাষার সাপোর্ট যোগ করুন।

export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_TYPE=en_US.UTF-8

দয়া করে


6

সঠিক লোকেল যোগ করার পদ্ধতি ~/.bashrc, ~/.bash_profile, /etc/environmentমত সমস্যার সমাধান হবে, তবে এটা বাঞ্ছনীয় নয়, যেমন তা থেকে সেটিংস ওভাররাইড করে /etc/default/locale, যা শ্রেষ্ঠ সময়ে বিভ্রান্তিকর হয় এবং লোকেল না নাহয় ধারাবাহিকভাবে প্রয়োগ করা হচ্ছে হতে পারে।

পরিবর্তে, একজনকে /etc/default/localeসরাসরি সম্পাদনা করা উচিত , যা দেখতে এরকম কিছু দেখায়:

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=en_US

পরবর্তী সময় আপনি লগ ইন করার পরে এই পরিবর্তনটি কার্যকর হবে You আপনি এটির মাধ্যমে সোর্স করে একটি বিদ্যমান শেলটিতে নতুন লোকেলটি পেতে পারেন /etc/default/locale:

$ . /etc/default/locale

1
এই পদক্ষেপের পরে সিস্টেমটি পুনরায় চালু করতে হবে
ঘনশ্যাম বাগুল

আপনি কেবল "/etc/locale.gen" এ চালানোর জন্য পছন্দসই লোকালয়ে মন্তব্য করতে পারেন:locale-gen
ডেভ এভারিট

5

যে কেউ MacOS হাই সিয়েরায় iTerm2.app থেকে ডিজিটাল ওসন বা অন্য কোনও ক্লাউড হোস্টিং সরবরাহকারীর সাথে সংযোগ করছেন এবং কিছু আদেশে এই ত্রুটিটি পেয়েছেন:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_CTYPE = "UTF-8",
    LANG = "en_US.UTF-8"
  are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").

এটি আমার জন্য সমস্যাটি স্থির করে:

এখানে চিত্র বর্ণনা লিখুন

আমি জানি যে এই থ্রেডটি পুরানো তবে সম্ভবত কেউ এটি দরকারী বলে মনে করবেন। আমি জানি এটি কতটা বিরক্তিকর হতে পারে।


হ্যাঁ ইটার্ম 2 এ এই সেটিংটি ছিল! ধন্যবাদ!
ব্রায়ান ওলসেন

4

গৃহীত উত্তর অনুসরণ:

ল্যাং = সি এসএস হান্টার 2।

এলসি_এলএল = সি এসএস শিকারি 2 2

ক্লায়েন্ট পক্ষ থেকে আমার জন্য কৌতুক করেছেন।


ওএসএক্স 10.10.3 এ আমার জন্য কাজ করেছেন, যখন কেবল "LANG = C" যথেষ্ট ছিল না। ধন্যবাদ অ্যালেক্স!
খ্রিস্টান

4

Zsh ohmyzsh এর সাথে আমি এটিতে যুক্ত করেছি .zshrc:

 # You may need to manually set your language environment
 LANGUAGE=en_US.UTF-8
 LANG=en_US.UTF-8
 LC_CTYPE=en_US.UTF-8
 LC_ALL=en_US.UTF-8

লাইনটি সরিয়ে দিয়ে export LANG=en_US.UTF-8

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


3

যোগ LC_ALL="en_GB.utf8"করার জন্য /etc/environmentএবং পুনরায় বুট করুন। এখানেই শেষ.


2

সর্বদা হিসাবে, শয়তান বিস্তারিত হয় ...

উপর Mac OS X এর v10.7.5 (লায়ন), কিছু ঠিক করতে জ্যাঙ্গো , ত্রুটি আমার মধ্যে ~/.bash_profileআমি করেছি সেট:

export LANG=en_EN.UTF-8
export LC_COLLATE=$LANG
export LC_CTYPE=$LANG
export LC_MESSAGES=$LANG
export LC_MONETARY=$LANG
export LC_NUMERIC=$LANG
export LC_TIME=$LANG
export LC_ALL=$LANG

এবং দীর্ঘ সময়ের জন্য পার্ল ব্যবহার করার সময় আমি সেই সতর্কতা পেয়েছিলাম।

আমার খারাপ! আমি অনেক পরে বুঝতে পেরেছি, আমার সিস্টেমটি en_US.UTF-8! আমি এটিকে সহজভাবে পরিবর্তন করে ঠিক করেছি

export LANG=en_EN.UTF-8

প্রতি

export LANG=en_US.UTF-8


2

পূর্ববর্তী সমস্ত উত্তর ভুল। বার্তাটি পরিষ্কার - লোকেল অনুপস্থিত। সমাধানটি হ'ল উপযুক্ত লোকেল যুক্ত করা। আপনি এটি /etc/locale.gen ফাইল সম্পাদনা করে, লোকাল অনুপস্থিত হিসাবে রিপোর্ট করা লোকটির সামনে # সাইনটি সরিয়ে তারপর কমান্ড জারি করে:

$ sudo locale-gen

এটি /etc/locale.gen এ উল্লিখিত লোকেলগুলি প্রকৃতপক্ষে উত্পন্ন করবে এবং সুতরাং বার্তাটি প্রদর্শিত হবে না।


এই কেবল হয় উত্তর এবং আমার জন্য প্রাচীন ডেবিয়ান (6) কাজ করতেন। বাকিগুলি অতিরিক্ত জটিল এবং কিছুটা অফ ট্র্যাক।
ডেভ এভারিট

2

আমার ক্ষেত্রে, ডিবিয়ান ৮..6 সহ, আমাকে এতে সেটিংস পরিবর্তন করতে হয়েছিল:

/etc/ssh/ssh_config জন্য #AcceptEnv LANG LC_*

এবং sshd_configজন্য#SendEnv LANG LC_*

তারপরে ssh পরিষেবাটি পুনরায় চালু করুন।

শেষ পর্যন্ত, না

locale-gen en_US.UTF-8 এবং dpkg-reconfigure locales


2

.বাশ_প্রোফাইলে অনুপস্থিত লোকালগুলি যুক্ত করুন

echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile

তারপরে আপনার .bash_profile উত্স করুন

source ~/.bash_profile


1

sshডিফল্টরূপে এলসি লোকেল ভেরিয়েবলগুলি ওভাররাইট করে। দেখুন /etc/ssh/sshd_config:

AcceptEnv LANG LC_*

সুতরাং আপনার নিজের স্থানীয় শেলটিতে আপনার এই ভেরিয়েবলগুলি সেট করতে হবে।


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