如何将wifi密码移至新安装


17

我有一台目前正在运行Jolicloud的Acer Aspire ZG5上网本,但我已决定不适合我,并计划切换到Lubuntu或Xubuntu。

但是,我经常出差,并且为不同的办公室,酒店,咖啡馆,餐馆,朋友和亲戚的房屋等保存了许多wifi密码。不得不要求并重新输入所有这些密码会很烦人。

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


您解决了这个问题吗?
pl1nk 2012年

Answers:


8

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

1
不适用于14.04
Marc

在Ubuntu 16.04至16.10上也可以完美工作。我从16.04复制了文件,并在16.10中恢复了密码,它们在会话重新启动后显示在网络管理器中(没有尝试使用stop / start网络管理器,也可以使用)。没有wifi网络可以实际查看它们是否自动连接,但是当它们出现在那儿时,它们也应该连接。
conualfy

network-manager如果您使用以下方法,也可以停止/启动服务:(sudo /etc/init.d/network-manager startstop
conualfy 2016年

start/ stop用于initctl与Upstart初始化守护进程进行通信。使用系统方式:sudo systemctl stop NetworkManager.service
巴勃罗·比安奇

7

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

3

您的密码存储在中~/.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

不幸的是,这种方法对我不起作用。我的测试用例异常,因此希望它对您有用。

建立新连接

如果以上方法都不适合您,请在您的旧计算机上:

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

(您也可以创建连接并修改其uuid以匹配现有密码,但是除非您可以编写脚本,否则这将花费太多精力。)


很高兴您能详细介绍我以前的帖子。
混淆使用

Xubuntu没有.gconf / system / networking / connections
Kangarooo

1
  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以启动小程序。

可能已经过时了。


仅当您具有针对不同网络的特定设置(您使用网络管理器编辑连接以更改MTU,DHPC设置等)时,才需要gconf设置。我所有的密码都存储在我的钥匙圈中。
idbrii 2011年

上次我检查时,两者都是必要的。
混淆使用

你是对的。除非gconf设置中有匹配的uuid,否则network-manager不会费心查看钥匙串。
idbrii 2011年

1

JoliCloud 基于10.04,因此我假设它使用网络管理器来组织无线密码。该配置的大部分存储在.gconf/system/networking/-不确定密码是否存储在此处或其他位置。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.