2015年11月

curl_百度搜索提交

虽然百度一如既往的烂,但是还是目标位于国内的个人网站还是需要注意一下SEO,毕竟在国内某个G开头的公司已经不存在了
这里可以写一个脚本,如果有兴趣的可以搭配Py写一个爬虫,每天抓一次网站的静态链接然后整理成txt提交给百度。



sudo apt-get install curl #安装curl工具
具体网站的接口需要到查询http://zhanzhang.baidu.com/linksubmit/index
curl -H 'Content-Type:text/plain' --data-binary @urls.txt "http://data.zz.baidu.com/urls?site=www.cutinlove.com&token=××××××××××××V&type=original"

curl -H 'Content-Type:text/plain' --data-binary @urls.txt(这里填urls.txt的位置,可以自定义文件夹) "http://data.zz.baidu.com/urls?site=www.cutinlove.com&token=××××××××××××V&type=original"

成功会返回消息
格式为
{
"remain":4999998,#今天剩余可推送条数
"success":2,#成功提交条数
"not_same_site":[],#url.txt里面不属于该域名的条数
"not_valid":[]#不合域名规则的条数
}

在lnmp下搭建wordpress——要求FTP登录问题

1.环境为lnmp:http://lnmp.org/ 主要调用的也是里面的脚本

LNMP一键安装包是什么?

LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora、Debian/Ubuntu/Raspbian VPS(VDS)或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常用缓存组件的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。

执行:lnmp vhost add 出现如下界面:

这里要输入要添加网站的域名,我们已添加www.vpser.net域名为例,如上图提示后输入域名 www.vpser.net 回车后提示

这里询问是否添加更多域名,输入 y 回车后添加,如不添加输入 n 会有如下提示:


如果需要添加更多域名或加上 vpser.net ,输入后回车确认。

(注:带www和不带www的是不同的域名,如需带www和不带的www的域名都访问同一个网站需要同时都绑定)。

下面需要设置网站的目录,网站目录不存在的话会创建目录。也可以输入已经存在的目录或要设置的目录(注意如要输入必须是全路径即以/开头的完整路径!!!)。不输入直接回车的话,采用默认目录:/home/wwwroot/域名


伪静态可以使URL更加简洁也利于SEO,如程序支持并且需要设置伪静态的话,如启用输入 y ,不启用输入 n 回车。

默认已经有了discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等常用的Nginx伪静态配置文件,可以直接输入名称进行使用,如果是二级目录则需要对应配置文件里的二级目录的名称。


这一步是设置日志,如启用日志输入 y ,不启用输入 n 回车。

再输入要设置的日志的名称,默认目录为:/home/wwwlogs/ 默认文件名为:域名.log 回车确认后,会询问是否添加数据库和数据库用户。


如果需要启用输入 y ,不启用输入 n 回车。

需要验证MySQL的root密码
提示Enter database name: 后输入要创建的数据库名称,要创建的数据库用户名会和数据库同名,回车确认。

提示Please enter password for mysql user 数据库名: 后输入要设置的密码,回车确认。

如果安装了FTP服务器会询问是否添加FTP账号

如果需要添加输入 y ,不添加输入 n 回车。

提示Enter ftp account name: 后输入要创建的FTP账号名称,回车确认。

提示Enter password for ftp account FTP账号: 后输入要设置的密码,回车确认。

提示 Press any key to start create virtul host... 后,回车确认便会开始创建虚拟主机。

添加成功会提示添加的域名、目录、伪静态、日志、数据库、FTP等相关信息,如下图:


——————————————————————————————————————————————————————————————————————————————————————————
下载wordpress
cd /tmp
wget http://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
mv ./wordpress/* /home/wwwroot/yourdomainname#自己修改
关键
chmod -R 755 /home/wwwroot/yourdomainname#有一个user.ini不用管,那是Lnmp用chatter锁定了的文件,防止多用户跨目录用的
chown -R www /home/wwwroot/yourdamainname#修改文件所有者

然后把域名解析到该目录 就可以进行著名的五分钟安装了
———————————————————————————————————————————————————————————————————————————————————————————
由于当时在编译lnmp的时候忘了添加伪静态规则,导致新建的blog固态链接指向错误 ,404.现在利用本博客的wordpress修复
vi /usr/local/nginx/conf/vhost/域名.conf
在下面找到一行 include other.conf #这里应该修改为wordpress的 把这里修改为wordpress2.conf 避免和本博客的规则重复
cp /usr/local/nginx/conf/wordpress.conf /usr/local/nginx/conf/wordpress2.conf#拷贝一份
然后进wordpress修改一次固定链接,wordpress会自动更新conf,不再出现404

Debian开放AP热点

文章已收入wiki-debian
——————————————————————————————————————————————————————————————————————————————————————————————————

  • 4.Debian开放AP热点
  • Ubuntu建立AP热点 由于Ubuntu和Debian那暧昧的关系,我天真的以为能够照搬这个教程。结果出现了卡在Starting wifi这个步骤。 分析原因有: 1.Debian的源里面没有ap-hotspot的包,而Ubuntu有。我在Debian上是在百度搜索了一个DEB安装上的,所有可能是版本冲突。 2.AP-hotspot在Debian上有兼容问题。 3.由于我在Ubuntu下无线网卡驱动是修改了设置,而在Debian中是编译安装了新的网卡驱动,可能存在AP-hotspot和网卡驱动的兼容问题。 在Debian下,Gnome自带的热点管理器默认的是AP模式,不再是Ubuntu下的AD-hoc模式,所以用gnome的热点管理器也可以正常工作的。 不过有以下问题: 1.热点采用WEP加密,远不如WPA2方式安全。 2.密码随机,不能自己更改。 3.没有提示,设备断开或者连入,或者管理设备都没有。 4.感觉信号比用hotspod建立的差。

    所以在将就了几天后决定还是回到AP-hostpod。(链接到github)
    然而:

    While it may still work, AP-Hotspot is abandoned. That's because there are too many things that depend on the hardware and since I can only test it on one device, that makes the script unreliable for others and for me, pretty much impossible to fix some issues.

    For a more currently maintained project, take a look at create_ap. https://github.com/oblique/create_ap

    Automatically creates an infrastructure (Access Point mode) wireless hotspot in Ubuntu that should work with Android and Windows Phone devices


    大意是:AP-hotspot已经被废弃了,尽管它仍然能正常工作。由于作者只能在一台电脑上测试,但是这个软件的运行很大程度上依靠着硬件的使用。(也就是作者发现这个在其他电脑上会出现各种各样的问题)。于是作者就废止了这个项目,重新发行了新的creat_ap项目。(应该是代码重构了?)。然而作者只说了它在Ubuntu上运行良好(这难道又会开坑吗)

    好,我决定尝试一波。跳转到Creat_ap
    看了一下依赖,其核心依然是依赖于hotspod,由于手上并没有ubuntu,不过我怀疑它是否真的能在ubuntu上运行良好。毕竟AP-hostspot必须锁hotspot版本才能运行的惨痛案例现在还没解决呢。
    上代码

    cd /tmp#我喜欢在tmp下进行操作
    git clone https://github.com/oblique/create_ap
    cd create_ap
    make install
    #Archlinux可以用yaourt -S create_ap安装
    #如果这里有依赖缺失的话就sudo apt-get install -f吧  我这里依赖是齐全的
    

    然后输入代码:

    create_ap wlan0 eth0 MyAccessPoint MyPassPhrase
    

    就可以启动了,wlan0和eth0对应的都是设备,不需要修改。

    你以为这样就解决了?too young too simple,sometimes naive
    我潇洒的敲完命令,然后回车,果断拿出手机准备连热点了。然而十秒钟过去了,并没有任何反应。
    仔细阅读了下返回信息,先不说三个warning,大意是你的网卡“not fully support”,还好,不是"not support"。
    再往下

    RTNETLINK answers: Operation not possible due to RF-kill
    

    直接Impossible了好吗!我这种萌新完全傻眼了。百度了一波,意料之中的没有任何有价值的信息,没错,百度就是这么垃圾。
    还是谷歌吧。具体过程略过,筛选出来两篇文章,一个是arch社区的,一个是关于ubuntu的个人博客记载的。

    [SOLVED] Wireless hard Blocked && rfkill not found Linux WiFi: operation not possible due to RF-kill

    不多说,上代码吧。

    sudo apt-get install rfkill #安装rfkill
    sudo rfkill list all# 列出所有状态
    0: hp-wifi: Wireless LAN
    Soft blocked: yes
    Hard blocked: no
    1: phy0: Wireless LAN
    Soft blocked: yes
    Hard blocked: no
    

    根据archlinux社区某网友的解释,soft block是指系统控制wifi的开关,blocked表示禁止软件随意开启关闭wifi。而Hard block是指buttons on your computer to control。就是这里的soft block阻止了热点的启动。
    这个就好解决了。
    rfkill unblock wifi
    再列出来看看,是不是全是unlock了。

    然后我在github中看到一条命令可以指定某网卡运行,于是输入代码
    create_ap --driver rtl871xdrv wlan0 eth0 MyAccessPoint MyPassPhrase
    然而出现了错误,提示
    Error: Failed to run hostapd, maybe a program is interfering.
    然后给出的意见

        rfkill unblock wlan```
    于是我又运行了这两条命令,然后按照常规办法
    ```create_ap wlan0 eth0 MyAccessPoint MyPassPhrase```
    这次终于看见wlan0: AP-ENABLED 了  打开手机,找到热点了。成功连上。
    
    再补充一点,ap-hotspot启动后关闭终端不会影响热点,而creat-ap关闭终端后热点就关掉了。
    于是我写了个脚本 
    ```bash
    vim ~/openap.sh
    #输入  sudo nohup create_ap wlan0 eth0 XXXXX   XXXXXX &   后台运行
    sudo chmod +x /home/panda/openap.sh
    

    这样启动的时候就可以不用输入代码了~
    备注:不小心前台运行了,如何把一个进程转入后台运行
    ctrl+z #挂起
    bg1#将该终端丢入后台运行,作业号为1
    fg1#把作业号1的任务调入前排
    可以用kill 1 杀掉该作业

    在编写脚本时候/运行命令的时候,可以用nohup command & 来后台运行某程序,终端关闭会继续运行。

    ubuntu14.04建立AP热点

    Ubuntu默认的热点是AD-hoc模式,大多数Android手机没办法识别。
    ——————————————————————————————————————————————————————————————————————————
    说到这个也是怨念不断啊,只能说幸亏当时记下了一部分笔记,不然这个又得折腾半天,不知道谷歌上能不能找到相关的,至少百度垃圾一搜要么是零几年的,要么就是各种坑爹教程。
    比如某坑爹教程居然让我们安装KDE的网络管理器,但是KDE的网络管理器又依赖于KDE的环境,所以这么一折腾等于安装了一个KDE+unity, 这TM确定不是坑爹?
    ——————————————————————————————————————————————————————————————————————————————
    可以用ap-hotspot开热点,但是ubuntu的源里面的hostapd版本有问题,没办法开热点——这就是ubuntu的坑爹之处

    需要去下一个旧版本的hostapd,强制锁定版本,然后再安装ap-hostpod.
    ——————————————————————————————————————————————————————————————————-————————————
    cd /tmp
    wget http://old-releases.ubuntu.com/ubuntu/pool/universe/w/wpa/hostapd_1.0-3ubuntu2.1_amd64.deb #谷歌了半天才找到,旧版本的hostapd
    sudo dpkg -i hostapd*.deb #本地安装
    sudo apt-mark hold hostapd#锁定版本,不让更新


    #然后再来安装ap-hotspot
    sudo add-apt-repository ppa:nilarimogard/webupd8 添加源
    sudo apt-get update
    sudo apt-get install ap-hotspot#安装
    sudo ap-hotspot configure
    #两次enter 然而开始输入热点名字和密码


    最后
    sudo ap-hotspot start

    ——————————————————————————————————————————————————————————
    如果嫌每次开热点麻烦,可以写一个脚本

    ubuntu开机自动挂载

    由于SSD空间不足,有部分软件被我软链接到了HDD中,如果没有挂载会出现各种问题,所以设置一个开机自动挂载。
    做个笔记。

    sudo mkdir /media/panda/HDD1 #在media目录下建立一个新的空文件夹作为挂载点
    df -h #看需要挂载的盘的编号
    #/dev/sdb6 51G 19G 29G 40% /home
    #/dev/sdb1 46G 32G 15G 69% /media/panda/9CB29608B295E754
    #/dev/sda5 311G 101G 210G 33% /media/panda/HDD 这个就是需要挂载的

    sudo vim /etc/fstab #编辑fstab
    /dev/sda5 /media/panda/HDD ntfs defaults 0 0 #复制入这一行 最后两个参数 第一0表示不备份,第二个表示不校验。
    mount-a #必须测试一次,如果输错了有可能开不了机