У меня есть нетбук Acer Aspire ZG5, который в настоящее время выполняет Jolicloud, но я решил, что это не для меня, и запланируйте переключиться на Lubuntu или Xubuntu.
Однако я делаю партию перемещения и имею много сохраненных паролей Wi-Fi для различных офисов, отелей, кафе, ресторанов, здания друзей и родственников и т.д. Это было бы очень раздражающим, чтобы должным быть попросить и повторно войти во все эти пароли.
Существует ли способ передать мои сохраненные пароли Wi-Fi от старой установки до новой?
Ваши пароли хранятся в ~/.gnome2/keyrings
. По умолчанию они защищены с Вашим паролем входа в систему. Если Вы копируете ту папку в свою новую систему и используете тот же пароль входа в систему, то у Вас должны быть все Ваши пароли, включая Ваши соединения Wi-Fi.
Вы видите свои пароли в приложении Паролей и Ключей шифрования. Они должны находиться под названным брелоком для ключей login
. Можно искать "Сетевой секрет" для показа только паролей Wi-Fi.
mv ~/.gnome2/keyrings ~/old_keyrings
cp ~/backup/keyrings ~/.gnome2/keyrings
Однако, чтобы администратор сети использовал Ваш пароль, ему нужен gconf, устанавливающий с идентификационным номером соответствия. Можно сделать это два пути: скопируйте свои старые gconf настройки или создайте новые соединения и измените их идентификационные номера.
Это действительно просто:
# network-manager will overwrite your changes if you don't terminate it
sudo stop network-manager
# back up old settings
mv ~/.gconf/system/networking/connections ~/old_connections
cp /media/old_install/.gconf/system/networking/connections ~/.gconf/system/networking/connections
sudo start network-manager
К сожалению, этот метод не работал на меня. Мой тестовый сценарий является аварийным, так надо надеяться, он работает на Вас.
Если вышеупомянутое не работает на Вас, то на Вашей старой машине:
(Вы могли также создать соединения и изменить их uuid для соответствия текущему паролю, но это - слишком много работы, если Вы не можете написать сценарий его.)
Закройте NetworkManager
sudo /etc/init.d/network-manager stop
pkill nm-applet
Перезапустите администратора сети:
sudo /etc/init.d/network-manager start
Нажмите Alt+F2 и введите nm-апплет - см - отключает для запуска апплета.
Могло бы быть litte устаревшее.
JoliCloud основан 10.04, таким образом, я предположил бы, что он использует Администратора сети для организации беспроводных паролей. Большая часть той конфигурации хранится в .gconf/system/networking/
- Не уверенный, если пароли хранятся там или в другом месте.
В моих 12,04 системах соединения WiFi и пароли (в ясном) были сохранены в текстовых файлах в/etc/NetworkManager/system-connections/
Остановка администратора сети, копирование этих файлов к новой машине, восстановление полномочий и перезапуск администратора сети работали на меня.
sudo stop network-manager
sudo cp /backup/path/etc/NetworkManager/system-connections/* /etc/NetworkManager/system-connections/
sudo chown root.root /etc/NetworkManager/system-connections/*
sudo start network-manager
На Ubuntu 16.04, копируя файлы с /etc/NetworkManager/system-connections/
был недостаточно. Файлы содержат MAC-адрес интерфейса wlan, и я также должен был исправить это, чтобы заставить его работать.
Следующая процедура работала на меня для импорта беспроводных конфигураций от моих старых 12,04 систем до новых 16,04 установок.
# Stop Network Manager
sudo /etc/init.d/network-manager stop
# copy the files from your old system (adapt as needed)
sudo rsync -va -c /media/$YOUR_OLD_SYSTEM/etc/NetworkManager/system-connections/ /etc/NetworkManager/system-connections/
# Get your new MAC address, and verify it is right.
# For example, this should work if you have only one wireless interface
export MAC=$(iw dev | grep addr | awk '{print $2}')
echo $MAC
# Replace the MAC address in all the system-connections files
sudo perl -i.bak -pe 's/^(mac-address=)(.*)/$1$ENV{MAC}/' /etc/NetworkManager/system-connections/*
# Restart NetworkManager, and wait for nm-applet to also start and connect
sudo /etc/init.d/network-manager start
# Delete the backup files with the old MAC addresses
sudo rm /etc/NetworkManager/system-connections/*.bak
Если по некоторым причинам требуется сохранить исходные метки времени файлов системных соединений вместо метки времени при изменении MAC-адреса вот альтернатива, которая предполагает, что у Вас есть 2 отдельных папки с Вашими старыми и текущими файлами соединения:
old=/etc/NetworkManager/system-connections.old
new=/etc/NetworkManager/system-connections
for f in $old/*; do b="$(basename "$f")"; perl -pe 's/^(mac-address=)(.*)/$1$ENV{MAC}/' "$f" > "$new/$b"; touch -r "$f" "$new/$b"; done