之前在博客有一篇文章解决16GB入门级IPAD或IPHONE容量的尴尬,多种扩容方式探讨(无线硬盘/直接访问)
写的是如何在win系统下使用filelizza这个软件搭建FTP服务器,然后建立一个无线局域网,让平板终端连接以后,访问电脑硬盘的文件。
如果是只在win7环境下,一切都很简单,按照上文提供的教程就可以实现。
但是上个月升级了笔记本,用的是华硕S4000UA,i7处理器。Intel对win7 不再更新驱动,找了很久也没有合适的驱动。所以干脆就用win10系统,觉得win10还是非常好用的,除了不够稳定以外,其他都可以接受,况且应用商店还可以听Podcast,各种国外原滋原味的广播,学习英语正好,素材丰富,这个win7是没有的。win8的情况,和win10一样,网卡不稳定,平板连上以后频繁掉线。所以想起来看看是否可以在Linux系统下实现,虽然耗费了一番周折,但结果终究是圆满的。
今天想对前三天的工作做个总结,:
- Day one:在win10的环境下安装Linux系统,版本是Ubantu 17.04。
- Day two:在Ubantu系统下开启FTP服务器,设置访问文件的权限。
- Day three:在Ubantu系统下创建Android可用的热点,搭建无线局域网。
一、win10下安装Ubantu双系统
这个在网上有许多教程,可以找一篇照着做。我的做法,笔记本是固态+机械双硬盘,机械硬盘是为了增加笔记本容量,后来加上去的,1T的容量。在安装过程中,建议卸载掉。固态硬盘完全是用来给双系统服务的,100G给了win10,70G给了Ubantu,剩下70G留着存些文件。做了一个Linux的U盘启动盘,这里有一个插曲,用大白菜制作启动U盘的时候,忘了还连接着移动硬盘,结果把移动硬盘识别为U盘,格式化了,好在移动硬盘只是备份的数据,损失不大,重新下载即可。把两个系统全部安装在一个磁盘上的考虑也是如此,担心安装系统,不小心把硬盘格式化了。这样就相当于将系统和文件分开了。
安装过程中还有一个问题,选择安装选项的时候,不要选第一个,与win10共存。选最后一个,其他选项,然后自行分区。如果看不到可用的容量,只要删除分区,就变成可用容量了,然后点击左下角下面的+号,开始分区,后面的安装就很简单了。有教程提示,安装完再进win10系统,用easyBCD引导。其实,我安装完以后,直接就是grub引导的界面,可以选择win10还是Ubantu。
二、在Ubantu系统下开启FTP服务器,设置访问文件的权限
这里也参考前面两篇文章:
第一篇文章应该已经解决了FTP的问题,第二篇文章是因为我的机械硬盘访问不了,所以需要更改下权限。
三、在Ubantu系统下创建Android可用的热点,搭建无线局域网
一、网卡选择
不同于windows上,大部分的网卡都支持软AP ,linux下的网卡需要支持mode master的才可以做软AP 。具体识别方法如下
1、iwconfig识别
- [root@localhost ~]$ sudo iw list
- ........略........................
- Supported interface modes:
- * IBSS
- * managed
- * AP
- * AP/VLAN
如果「Supported interface modes」中有「AP」的话,那么恭喜你,你的无线网卡可以架设虚拟AP 。如果没有则不支持。
- [root@localhost ~]$ sudo ethtool -i wlan0
- driver: iwlagn
- version: 3.0-ARCH
- firmware-version: 8.83.5.1 build 33692
- bus-info: 0000:03:00.0
- supports-statistics: no
- supports-test: no
- supports-eeprom-access: no
- supports-register-dump: no
例如上面的示例中使用的驱动为iwlagn,通过http://wireless.kernel.org/en/users/Drivers AP模式支持的驱动列表里的查找AP项为yes的未发现iwlagn ,证明其不支持。
即然如此,如何在未购买网卡前选择一款一定支持的网卡呢?wireless.kernel.org也给我们提供了一个方法 ,通过http://wireless.kernel.org/en/users/Devices 硬件列表 (该页按pci、usb、pcmcia接口类型做了区分,点开相应的类型即可查看具体的硬件)。当然,这个表里列出的并不完全,也并不能保证是最适合做软AP的硬件 。是否识合请参查看上面的三个方法。
二、hostapd+dnsmasq配置
选择好网卡,接下来就是linux下的软件配置。以linux mint为例(基于ubuntu ,以下的示例同样适用于ubuntu)
1、安装软件
- [root@localhost ~]$ sudo apt-get install hostapd dnsmasq
Dnsmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络 。如果网络环境内的机器较多,建议换用dhcpd 。
2、hostapd配置
- [root@localhost ~]$ sudo vim /etc/hostapd/hostapd.conf
- interface=wlan0
- driver=nl80211
- ssid=My_wifi
- channel=6
- hw_mode=g
- ignore_broadcast_ssid=0
- auth_algs=1
- wpa=3
- wpa_passphrase=11111111
- wpa_key_mgmt=WPA-PSK
- wpa_pairwise=TKIP
- rsn_pairwise=CCMP
以上是一个示例配置,配置了一个AP名称为My_wifi,密码为8个1的wpa加密方式的软AP 。配置完成后可以通过hostadp /etc/hostapd/hostapd.conf检测文件配置 。配置文件正常的话可以通过/etc/init.d/hostapd start启动,启动前,请确认以下行是否增加,如果该行值为空的话,请按下面修改
- # sudo vim /etc/init.d/hostapd
- 将文件中 DAEMON_CONF 的值改成下面这样:
- DAEMON_CONF=/etc/hostapd/hostapd.conf
3、dnsmasq配置
- #sudo vim /etc/dnsmasq.conf
- interface=wlan0
- listen-address=192.168.100.1
- #no-dhcp-interface=
- dhcp-range=192.168.100.50,192.168.100.150,12h
- server=/google/8.8.8.8
上面配置了dnsmasq 监听的接口,该接口的IP、dhcp地址的范围、租期长短、dns等。如果想使用dhcpd也可以,这里省略dhcpd.conf的配置
配置无线接入点IP
sudo ifconfig wlan0 192.168.100.1 netmask 255.255.255.0 up
到此为止,笔记本应该有wifi信号了,Android终端可以搜索到,如果没有,在笔记本右上角连接一下隐藏网络。
其实最终的配置因人而异,根据问题需要不断的去网上查找解决方案,由于Linux系统初学,还很不熟悉。
文章中的wlan0是网络接口,可以通过命令ifconfig -a找到自己的接口,比如我的是wlp3s0.
参考文章:linux软AP--hostapd+dhcpd
原文链接:https://blog.csdn.net/cupidove/article/details/38845049