网络代理下Dropbox的同步问题

虽然装了代理,原理还是不太明白。Dropbox也没法同步。原本是要查如何在服务器上开socks同步的,发现不用了😄。直接在Dropbox的网络设置里设置代理服务器。代理首选项中选择 SOCKS5,服务器填 127.0.0.1:1080 即可,如下:

image


通过PhpMyAdmin修改MySQL的root密码

今天在本地装了xampp,发现默认root的密码竟然为空。进入PhpMyAdmin时也提示了尽快修改。

image

以前也遇到了好几次这样的问题,都是测试环境其实没什么要紧的。不过上了生产环境之后迟早要修改的,于是现在就来尝试一下了。

修改MySQL root密码

首先用root账号登陆phpmyadmin,然后点击左侧进入mysql数据库,在顶部点击“mysql”进入sql输入界面。输入以下命令:

update user set password=password('123456') where User='root'

其中123456为你希望修改的密码,切记不要在数据库中直接手工修改密码。

image

然后点击右下角的“执行”,看到“影响了x行”,就表示修改成功。

修改配置文件

接着修改config.default.phpconfig.inc.php文件。通过如下命令寻找到这两个文件:

sudo find / -name 'config.default.php'
sudo find / -name 'config.inc.php'

Mac下的安装路径为/Applications/XAMPP/xamppfiles/phpmyadmin/libraries/config.default.php
/Applications/XAMPP/xamppfiles/phpmyadmin/config.inc.php

找到$cfg[‘Servers’][$i][‘password’] = ‘ ‘, 修改为

$cfg['Servers'][$i]['password'] = '123456'; 

重启mysql后新密码生效。

同时还要修改www目录下你的工程的配置文件config.php,修改以下两项

'DB_USER'=>'root', 
'DB_PWD'=>'123456', 

至此,修改完成。


pureftp的卸载,以及ANPQY的意思

卸载

lnmp 1.2下的pureftp有问题,php超时导致nginx出现502错误。于是按照如下方法卸载。

/etc/init.d/pureftpd stop
rm -rf /home/wwwroot/ftp/
rm -rf /usr/local/pureftpd/

debian:  update-rc.d pureftpd remove 或centos: chkconfig pureftpd off

rm -f /etc/init.d/pureftpd

然后删除ftpuser数据库。

引用页:http://bbs.vpser.net/thread-2735-1-1.html

ANPQY

ANPQY 是 All, No, Prompt Off, Quit, Yes 的意思。 (一些ftp服务器返回的信息)

关于 Prompt Off 的意思,可以man ftp得到


Mac 中 Zsh 下 PATH 环境变量的设置

前段时间切换到zsh,今天试着在本地运行jekyll时竟然显示

zsh: command not found: jeykll

感觉是环境变量出了问题。查了一下果然是这方面的原因。总结了一些容易遇到的问题:

  • 自己添加的路径总是被放到系统路径之后
  • 环境变量中的部分路径重复了两遍

先说我的解决办法: 在~/.zshrc的末尾添加

export PATH=$PATH:/Library/Ruby/Gems/2.0.0/gems/jekyll-2.5.3/bin

下面转载一些资料,探讨一下这个问题。

zsh启动顺序

zsh 启动过程中会依次读取以下文件:

  • /etc/zshenv
  • $ZDOTDIR/.zshenv($ZDOTDIR 未设置时默认为 $HOME)
  • 如果是 non-login shell,读取 /etc/zprofile, $ZDOTDIR/.zprofile
  • 如果是 interactive shell,读取 /etc/zshrc, $ZDOTDIR/.zshrc
  • 如果是 login shell,读取 /etc/zlogin, $ZDOTDIR/.zlogin

login shell 是用户登陆时,输入用户名和密码后启动的 shell
non-login shell 是登录以后所打开的 shell
interactive shell 在终端上执行,shell 等待你的输入,并且立即执行你提交的命令,跟用户存在交互
non-interactive shell 以 shell script(非交互)方式执行。

Mac下zsh问题探讨

纯转载

那么问题来了,在 Mac OS X 中打开 iTerm.app 或者 Terminal.app 启动的 shell 是什么类型呢?通常来说,应该是 interactive, non-login shell,但实际上却是 interactive, login shell,至于为什么这样就不深究了。下面的测试代码可以证明:

[[ -o login ]] && echo 'yes' || echo 'no'
[[ -o interactive ]] && echo 'yes' || echo 'no'

所以,打开 iTerm.app 或者 Terminal.app 启动的 shell 会读取上述1-5中存在的所有文件,如果其中多个文件均对 PATH 环境变量作过设置,那么最终呈现的 PATH 环境变量就会比较复杂,部分路径重复也就不足为奇了。

查看 /etc/zshenv,会发现调用的是/usr/libexec/path_helper,而它加载的正是系统路径,并且将系统路径放在最前。
如果接下来用户在 $ZDOTDIR 中的文件中加载了自己设置的路径并置于最前,再接下来再加载的 /etc/zprofile、/etc/zshrc 可能还会调用/usr/libexec/path_helper,又造成了系统路径重新被放到最前面,形成了奇葩的 PATH 环境变量系统路径、自设路径、系统路径交错的现象。

了解了这么多,解决方法也很简单,那就是上述1-5中仅让必要的文件涉及 PATH 环境变量。比如在 /etc/zshenv 中通过调用/usr/libexec/path_helper设置系统路径,$ZDOTDIR/.zshenv 中将自设路径放在最前,其余文件均不涉及 PATH 环境变量设置。

参考资料


在Linux上使用dropbox

需要在Linux服务器和本地下载东西时,ftp什么的也可行,但我常常在服务器上下载pt资源,每次都下载到本地也是麻烦。索性直接扔到网盘让本地自动同步还更方便。

说到网盘,脑子里闪现出来的只有谷歌、微软和dropbox了。不过能同时支持Linux和Mac的,就只剩下dropbox了。虽然dropbox空间比较小,不过以前有做过活动,我的dropbox有8G的空间,所以还是蛮足够了的。

安装的方法只看dropbox的官网上就有说明了。

image

你可以以命令行安装无外设模式的dropbox,对于服务器来说维护起来更加方便。也可以以桌面安装的方式安装,符合习惯,并且可以选择同步位置。当然两者混合着来也ok。下面把两种方式都写下来。

命令行安装

Dropbox 守护程序可在所有 32 位与 64 位 Linux 服务器上正常运行。若要安装,请在 Linux 终端运行下列命令。

32-bit:

cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -
64-bit:

cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf - 接着,从新建的 .dropbox-dist 文件夹运行 Dropbox 守护程序。

~/.dropbox-dist/dropboxd

如果是首次在服务器上运行 Dropbox,系统会要求您将类似于下面的链接复制并粘贴到运行的浏览器中,以便创建一个新的帐户或将服务器附加到现有帐户上。

https://www.dropbox.com/cli_link?host_id=XXXXXXXXXXXXXXXXXXX

操作完成后,系统会在您的主目录中创建 Dropbox 文件夹。下载这个 dropbox.py 脚本,通过命令行控制 Dropbox。 操作完成后,系统会在您的主目录中创建 Dropbox 文件夹。下载这个 dropbox.py 脚本,通过命令行控制 Dropbox。

为了方便访问,我把这个脚本放入Dropbox目录下,使用下面的命令将快捷方式添加到系统中:

echo "alias dr='python ~/Dropbox/dropbox.py'" >> ~/.bashrc

之后就可以很方便的使用dr这个命令对dropbox进行操作了,直接输入dr就可以看到相关的命令了。

image

普通安装Dropbox

使用上面的方法已经可以安装使用dropbox了。然而无界面的dropbox的不便就是,设置dropbox目录地址不方便。所以可以直接下载deb文件进行安装。当然,服务器上必须要有桌面环境才可。

服务器管理员们常常懒得安装桌面环境,毕竟性能损耗大,也显得没必要。如果环境里没有的话,参考我这一篇《使用vnc/xrdp连接你的Debian》,安装轻量级的桌面环境jwm即可。

如果你使用的桌面环境是GNOME这类的高级桌面环境的话,就可以略过下面这个步骤,直接双击安装就OK了。是jwm的话,还得用命令行安装:

dpkg -i xxx.deb

按照提示安装完成是在应用程序栏里会显示的。jwm并不显示。没关系,直接找到application menu文件夹查看启动命令即可。

vi /usr/share/applications/dropbox.desktop

[Desktop Entry]
Name=Dropbox
GenericName=File Synchronizer
Comment=Sync your files across computers and to the web
Exec=dropbox start -i
Terminal=false
Type=Application
Icon=dropbox
Categories=Network;FileTransfer;
StartupNotify=false

于是使用dropbox start -i启动ui界面,点击下一步安装即可。安装过程中也会提醒你安装的位置。

image

启动完成之后,dropbox就会显示在桌面上啦。

image


参考链接


git提示Agreeing to the Xcode/iOS license...,不能启动的问题

今天使用git的时候,提示:Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo,发现原来是刚更新了xcode,但是一直没有启动,还影响到命令行下git的使用。

解决的办法有两个,一个是命令行下运行如下命令

$ sudo xcodebuild -license

另一个方法就是打开xcode,按照步骤同意协议,点击下一步即可。

不过这样子感觉还是不爽呀,不同意你xcode的协议,就不能用git?有点扯啊~


开启小米的开发者模式

MIUI的开发者模式真是好找啊⊙﹏⊙b专门网上查了才找到了开启的方法。小米社区也有帖子提到,不过在我的红米2上不太一样。http://bbs.xiaomi.cn/t-8411215

▼首先进入设置选择“关于手机”

image

▼进入后手快速点击“MUI 版本”3次 会有提示,直到出现“您已处于开发者模式”

image

▼然后退出,重新进入设置菜单,“开发者选项”已经出现了

image image