LC_CTYPE কে ডিফল্ট লোকালে সেট করা যায় না: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই


54

আমার এ হিসাবে সঠিক প্রশ্ন আছে তবে এর কোনও সমাধান নেই। আমি চেষ্টা করেছি কিন্তু কাজ করে না

আমি আমার লোকাল সমস্যাটি কীভাবে ঠিক করব?

$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=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=

$ locale -a
locale: Cannot set LC_CTYPE to default locale: No such file or directory
C
C.UTF-8
en_US.utf8
POSIX

এটি কি en_US.UTF-8 এবং en_US.utf8 অমিলের কারণে?

কিভাবে ঠিক করবো?


উত্তর:


53

টার্মিনালটি খুলুন এবং নীচের কমান্ডটি ফায়ার করুন:

export LC_ALL="en_US.UTF-8"

এটি কাজ করে, তবে কেন?
ইউ জিয়াও

16
ভেরিয়েবলটি অধিবেশন শেষে ধ্বংস হওয়ার পরে এটি কোনও সমাধান করতে পারে না
ইটিয়েন


এত অল্প কথায় দুর্দান্ত সমাধান। হাঃ হাঃ হাঃ!
রেডবব

1
এই -bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
ভারটি

35

আপনি যখন ম্যাক থেকে লিনাক্স বাক্সে এসএসএস-এ লগইন করেন এবং আপনার টার্মিনালটি স্বয়ংক্রিয়ভাবে পরিবেশের ভেরিয়েবল সেট করে তখন এই একই সমস্যা (এলসি_সিটিওয়াই = ইউটিএফ -8, যা ভুল) হতে পারে। তার জন্য একটি চেকবক্স আছে। এটি চেক করুন, এবং আপনি যেতে ভাল। আইটার্মে এটি প্রোফাইল-> টার্মিনাল ট্যাবে রয়েছে।


2
আইটার্মে চেকবাক্সটি অক্ষম করুন "পছন্দসমূহ> প্রোফাইল> ডিফল্ট> টার্মিনাল> পরিবেশ> লোকেল ভেরিয়েবলগুলি স্বয়ংক্রিয়ভাবে সেট করুন"
ecerulm

1
-1: এটি কাজ করতে পারে তবে এটি অত্যন্ত আক্রমণাত্মক। আপনি আপনার স্থানীয় টার্মিনালের আচরণের পাশাপাশি আপনার সাথে সংযুক্ত প্রতিটি হোস্টের আচরণকেও সম্ভাব্যরূপে প্রভাবিত করে। আপনার অনুসন্ধানগুলি সত্য হওয়া সত্ত্বেও, হোস্টগুলির কাছে সমস্যা রয়েছে বলে পরিচিতদের জন্য LC_ * না পাঠাতে ssh_config ব্যবহার করা আরও ভাল ধারণা।
ম্যাক্স রিড

3
আপনি কী দয়া করে আপনার নিজের উত্তর যুক্ত করতে পারেন, এটি কেন আপনার স্থানীয় টার্মিনালের আচরণে সম্ভাব্যভাবে প্রভাবিত করে এবং কীভাবে এলসি_ * না পাঠাতে ssh_config কে বলতে হবে সে সম্পর্কে আরও ব্যাখ্যা দিয়ে প্রসারিত করুন। কারণ আপনি প্রকৃত ব্যাখ্যা ব্যতিরেকে আমার উত্তরটি -1।
4'18 এ রেয়ার্টস

আপনি যদি টার্মিনালটি ব্যবহার করে ম্যাকওএস থেকে সংযোগ স্থাপন করছেন তবে টার্মিনাল সেটিংস> অ্যাডভান্সড এ যান এবং "শুরুতে স্থানীয় পরিবেশের ভেরিয়েবল সেট করুন" নির্বাচন করুন un
জাভ্যাক্সিয়ান

যা ঘটছে বলে মনে হচ্ছে তা হল: আপনার স্থানীয় সিস্টেমে আপনি কিছু লোকেল ইনস্টল করেছেন, তারপরে আপনি অন্য সিস্টেমে যান, এতে এই লোকেল ইনস্টল করা নেই। টার্মিনাল ক্লায়েন্ট আপনার স্থানীয় অবস্থান কী তা দূরবর্তী সিস্টেমকে জানিয়ে দেবে, এবং অনুরোধ করা ভাষায় রিমোট সিস্টেম উত্তর দিতে ব্যর্থ হবে। এর প্রতিকারের জন্য আপনার দুটি উপায় রয়েছে: হয় আপনি পরিবর্তন করেন, যা অনুরোধ করা হয় অথবা আপনি অনুরোধ করা লোকেল দূরবর্তী সিস্টেমে যুক্ত করেন (যার জন্য রুট অ্যাক্সেসের প্রয়োজন) requires
জানুয়ারী

27

আমার অনুরূপ সমস্যা ছিল এবং আমার /etc/default/localeফাইলে নীচের লাইনগুলি যুক্ত করেছে :

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

আমি এই পোস্ট থেকে পেয়েছি: আমি আমার লোকাল সমস্যাটি কীভাবে ঠিক করব?


3
ঠিক আছে, এটি করে আপনি খুব অগোছালো লোকাল কনফিগারেশনটি শেষ করেন। /etc/environmentউবুন্টুতে লোকাল সেট করার উদ্দেশ্যে নয়; /etc/default/localeহয়। এছাড়াও, কোনও ডেস্কটপের ক্ষেত্রে আপনার কখনও কখনও LC_ALLঅবিচল হয়ে সেট করা উচিত নয় । আপনার পথটি ডেস্কটপে ভাষা / স্থানীয় সেটিং নিয়ন্ত্রণের জন্য ইউআইগুলিকে ভাষা সাপোর্ট, অকেজো করে তুলবে।
গুনার হেজালমারসন

এটি আসলে কাজ করে। একটি রিবুট পরে।
ট্রান্সলুসেন্টক্লাউড

লগআউট এবং লগইন, এটি কাজ করা উচিত
Sand1512


9
export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
sudo dpkg-reconfigure locales

আমি প্রশ্নের মতো ইস্যুগুলি নিয়ে একটি ক্লিন-ক্লিন ভল্টর উদাহরণ চালাচ্ছিলাম, পরিবেশের ভারগুলি দেখেছি এবং সবকিছু ঠিকঠাক দেখাচ্ছে looked যাইহোক, sudo dpkg-reconfigure localesএমন কিছু করেছিলেন যা অবশ্যই অনুপস্থিত ছিল। আমার ssh সেশন এখন ঠিক আছে। ধন্যবাদ!
জোনাস

6

localeকমান্ড থেকে আউটপুট নির্দেশ করে যে আপনার পরিবেশে আপনার এই ভুল লাইন রয়েছে:

LC_CTYPE="UTF-8"

("ইউটিএফ -8" কোনও বৈধ স্থানীয় নাম নয়))

এটি সাধারণত থেকে আসে /etc/default/locale। দয়া করে সেই লাইনটি সরিয়ে দিন, যদি সেখানে থাকে এবং পুনরায় চালু করুন।

যদি এটি সেখান থেকে না আসে তবে এটি আপনার শেল কনফিগারেশন, বা আপনি যদি ক্লায়েন্ট মেশিনের কনফিগারেশন থেকে এসএসএইচের মাধ্যমে দূরবর্তীভাবে লগ ইন করেছেন তবে তা আসতে পারে।


আমি কি LC_CTYPE কে utf8 এ পরিবর্তন করব?
মাভ 13

@ লুকাস: না, এটি ঠিক তত খারাপ হবে। যেহেতু ল্যাং সেট করা আছে, আপনি LC_CTYPE দিয়ে শুরু হওয়া পুরো লাইনটি সরিয়ে ফেলতে পারেন।
গুনার হেজালমারসন

আপনি যদি LC_TYPE সেট করতে চান তবে আপনার এটি "en_US.UTF-8" এ সেট করা উচিত।

যদি এটি ক্লায়েন্ট মেশিনের কনফিগারেশন থেকে আসে তবে আপনি সার্ভারের সাথে লোকালটি যুক্ত করতে পারেন dpkg-reconfigure locales
পল রাউজিউকস

5

এই আদেশগুলি আমার জীবন রক্ষা করেছে

sudo echo "LC_ALL=en_US.UTF-8" >> /etc/environment
sudo echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
sudo echo "LANG=en_US.UTF-8" > /etc/locale.conf
sudo locale-gen en_US.UTF-8

5
ফাইলগুলি আগে খোলা হয় sudo। আপনি ইতিমধ্যে রুট না হলে পুনঃনির্দেশগুলি কাজ করবে না।
মার্টিন থর্নটন

3

/ ইত্যাদি / ডিফল্ট / লোকেল ফাইলের অতিরিক্ত (তবে অপ্রয়োজনীয়) লাইন থাকতে পারে: উদাহরণ ফাইলটি এর মতো দেখতে পারে:

#  File generated by update-locale
LANG=en_US.UTF-8
LANGUAGE="en_IN:en

বাছাই এবং সাফল্যের সাথে লোকাল তৈরি এবং পুনরায় কনফিগার করতে এই ফাইলটি থেকে সমস্ত লাইন অপসারণ বা মন্তব্য করুন:

LANG=en_US.UTF-8

ফাইলটি শেষ পর্যন্ত দেখতে হবে:

#  File generated by update-locale
LANG=en_US.UTF-8
# LANGUAGE="en_IN:en

এর পরে, চালান dpkg-reconfigure locales, লোকেল নির্বাচন করার অনুরোধ জানানো হলে en_US.UTF-8 নির্বাচন করুন এবং আপনার যেতে ভাল হবে। Generation complete.প্রক্রিয়াটি সম্পূর্ণ হয়ে গেলে আপনি একটি বার্তা পাবেন ।


0

আমি একটি নতুন মেশিন home ডিরেক্টরিতে ডট ফাইল মাইগ্রেট এই নিজেকে সৃষ্টি পরিচালিত, এবং আমি জন্য ফাইল অনুসন্ধানের কারণে কিছুদিনের জন্য কারণ চিহ্নিত করতে ব্যর্থ হয়েছে LC_কিন্তু LOC

~/.bashrcফাইল আমি কপি নিম্নলিখিত ছিল:

export LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale

(এখানে নির্দিষ্ট মানটি পুরানো মেশিনে জিএনইউ গুইসের সাথে পূর্বের পরীক্ষাগুলির কারণে ছিল; তবে প্রাসঙ্গিক ঘটনাটি কেবল এই যে পরিবেশের পরিবর্তনশীলটি এখন-অবৈধ পথে সেট করা হয়েছিল))

এটি বিভিন্ন প্রোগ্রাম চলাকালীন নিম্নলিখিত ত্রুটির ফলস্বরূপ:

Warning: locale not supported by C library, locale unchanged

এবং চলার সময় এই ত্রুটিগুলি locale:

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

LOCPATHলাইনটি সরিয়ে (বা মন্তব্য করে) আমার সমস্যার সমাধান করেছে।


0

শুধু নিম্নলিখিত চালান:

sudo apt-get upgrade

এটি সমস্ত লোকেট তৈরি করবে, তারপরে ডিফল্টটিকে মার্কিন যুক্ত করুন:

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