Fix lỗi locale trên Ubuntu
Cách sửa lỗi locale trên Ubuntu
Lỗi locale trên Ubuntu
Khi bị lỗi về locale, bạn sẽ gặp lỗi không thể dùng pip
để cài thêm package được. Lỗi in ra như sau:
$ sudo pip install --upgrade pip
Traceback (most recent call last):
File "/usr/bin/pip", line 11, in <module>
sys.exit(main())
File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 215, in main
locale.setlocale(locale.LC_ALL, '')
File "/usr/lib/python2.7/locale.py", line 581, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting
Gõ lệnh locale để kiểm tra thì nó in ra:
$ 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=vi_VN
LC_TIME=vi_VN
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=vi_VN
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=vi_VN
LC_NAME=vi_VN
LC_ADDRESS=vi_VN
LC_TELEPHONE=vi_VN
LC_MEASUREMENT=vi_VN
LC_IDENTIFICATION=vi_VN
LC_ALL=
Chú ý dòng cuối cùng, LC_ALL
chưa được set giá trị!
Cách fix lỗi locale trên Ubuntu
Mình tìm kiếm trên mạng và theo hướng dẫn nhiều cách nhưng vẫn không fix được. Duy chỉ có cách sau dùng một lệnh đã fix được như ý.
$ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
Dùng lệnh locale
để kiểm tra lại:
$ locale
LANG=en_US.UTF-8
LANGUAGE=
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
Để ý dòng cuối đã được set thành công về en_US.UTF-8
:D. Vậy là đã fix xong, có thể dùng pip
để cài đặt và dùng Ubuntu bình thường.
Tham khảo: