Apt-get update с ошибкой @ в пароле


15

Я хочу обновить Ubuntu 11.04 через apt-get. Поэтому я добавил следующие строки вapt.conf

export http_proxy=http://username:password@proxyserver.net:port/
export ftp_proxy=http://username:password@proxyserver.netport/

export http_proxy=http://deepak:Deepak@123@12.1.1.1:3128

Мой вопрос: как мне вставить специальные символы в имя пользователя или пароль?

Например: мой пароль для прокси-сервера Deepak @ 123, и он получает ошибку.


6
Э-э ... это действительно твой пароль?
Натан Осман

Вы можете экспортировать настройки прокси в .bashrc. В apt.confвы должны использовать это
Nemo

Ответы:


23

Вам нужны escapeспециальные символы. Так что поместите \перед @вот так:

export http_proxy=http://deepak:Deepak\@123@12.1.1.1:3128

Вы также можете использовать Alernative %40.


Полный список кодов символов HTML obkb.com/dcljr/charstxt.html
BBK

Онлайн-кодировщик / декодер: meyerweb.com/eric/tools/dencoder
Жан-Реми Реви

inside /etc/apt/apt.conf% 40 работ
albfan

Кодировка URL отсюда: w3schools.com/tags/ref_urlencode.asp работает для меня, смотрите здесь: stackoverflow.com/questions/9282186/… Протестировано на Ubuntu 10.04.4 LTS.
AjayKumarBasuthkar

4

Нажмите на

  1. Тире домой
  2. Поиск настроек системы
  3. Выберите сеть
  4. Выберите сетевой прокси
  5. Выберите ручной метод
  6. Установите свой прокси и порт

Престижность Вы сделали, если вы установили правильно


4

Если ваш пароль или имя пользователя содержит, @вы можете кодировать его в процентах (также называемый URL-кодированием), как %40в URL прокси. Для более специальных символов смотрите здесь


0

Еще проще и надежнее!

Общий синтаксис:

sudo {http,https,ftp}_proxy=http://<username>:<password>@<proxy_url/_proxyip>:<port>/ wget --timeout=5 --no-check-certificate http://<website_url>

Пример:

[root@localhost ~]# sudo {http,https,ftp}_proxy=http://username:password-123@proxy.example.com:6050/ wget --timeout=5 --no-check-certificate http://google.com

{http, https, ftp} _proxy -> http, https, ftp urls. Разделяется запятой.

--timeout = 5 -> Соединение, которое будет поддерживаться в течение нескольких секунд.

-no-check-Certificate -> Игнорировать SSL / Проверка сертификата.

--spider -> Если вы хотите проверить подключение без загрузки файла.

Примечания:

Онлайн конвертер:

Замените специальные символы на эквивалентный шестнадцатеричный юникод. Список юникодов можно найти на сайте https://unicode-table.com (или) http://unicodelookup.com.

Локальный конвертер с использованием Python:

Справка: преобразование пароля «p @ s # w: E» в юникод будет следующим:

@ = %40
$ = %24
# = %23
: = %3A
p@s#w:E = p%40s%23w%3AE

Входные данные:

[root@localhost ~]# python -c "import sys, urllib as enc; print enc.quote_plus(sys.argv[1])" "p@s#w:E"

Выход:

p%40s%23w%3AE
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.