如何将wifi密码移动到新安装

我有一台Acer Aspire ZG5上网本,目前正在运行Jolicloud,但我认为它不适合我,并打算转用Lubuntu或Xubuntu。

但是,我做了很多旅行,并为不同的办公室,酒店,咖啡馆,餐馆,朋友和亲戚家等提供了许多保存的wifi密码。要求并重新输入所有这些密码会非常烦人。

有没有办法将我保存的wifi密码从旧安装转移到新安装?

在我的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 

您的密码存储在~/.gnome2/keyrings 。 默认情况下,它们受您的登录密码保护。 如果您将该文件夹复制到新系统并使用相同的登录密码,那么您应该拥有所有密码,包括您的WiFi连接。

你的密码

您可以在密码和加密密钥应用程序中查看密码。 它们应该在一个名为login的密钥环下。 您可以搜索“网络密码”以仅显示wifi密码。

 mv ~/.gnome2/keyrings ~/old_keyrings cp ~/backup/keyrings ~/.gnome2/keyrings 

但是,要使网络管理员使用您的密码,它需要具有匹配ID号的gconf设置。 您可以通过以下两种方式执行此操作:复制旧的gconf设置或创建新连接并更改其ID号。

复制旧的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 

不幸的是,这种方法对我不起作用。 我的测试用例是exception的,所以希望它适合你。

创建新连接

如果以上内容对您不起作用,那么在您的旧机器上:

  1. 打开密码和加密密钥
  2. 右键单击您的默认钥匙串
  3. 选择更改密码
  4. 将密码设置为空白
  5. 将〜/ .gnome2 / keyrings / default.keyring复制到〜/ old_passwords.keyring
  6. 现在您可以连接到网络并在〜/ old_passwords.keyring中查找密码(因为您删除了密码,它将是纯文本文件)。

(您也可以创建连接并修改其uuid以匹配现有密码,但除非您可以编写脚本,否则这样做太多了。)

Ubuntu 16.04上 ,从/etc/NetworkManager/system-connections/复制文件是不够的。 这些文件包含wlan接口MAC地址 ,我还必须更正它以使其工作。

以下过程可以帮助我从原来的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 
  1. 关闭NetworkManager

     sudo /etc/init.d/network-manager stop pkill nm-applet 
  2. 复制$ {HOME} /。gconf / system / networking / connections /
  3. 重启网络管理器:

     sudo /etc/init.d/network-manager start 

    按Alt + F2并输入nm-applet –sm-disable以启动applet。

可能是一个过时的litte。

JoliCloud 基于10.04 ,所以我假设它使用网络管理器来组织无线密码。 大部分配置存储在.gconf/system/networking/ – 不确定密码是存储在那里还是其他地方。

Interesting Posts