Dropbox命令行工具安装与开机自启动

系统要求
# 2.4 以上版本的C 库
# wget 命令
# Python 2.5
# web 浏览器

Dropbox命令行工具安装与使用的常用命令

cd ~ && wget -O – "http://www.dropbox.com/download?plat=lnx.x86" | tar xzf –
cd ~ && wget -O – "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf –
~/.dropbox-dist/dropboxd
killall dropbox

wget –no-check-certificate https://www.dropbox.com/download?dl=packages/dropbox.py
chmod 755 ~/dropbox.py
python dropbox.py start
python dropbox.py stop
python dropbox.py status

系统开机自启动脚本 /etc/init.d/dropbox

#!/bin/sh
#dropbox service
DROPBOX_USERS="user1 user2"

DAEMON=.dropbox-dist/dropbox

start() {
echo "Starting dropbox…"
for dbuser in $DROPBOX_USERS; do
HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
if [ -x $HOMEDIR/$DAEMON ]; then
HOME="$HOMEDIR" start-stop-daemon -b -o -c $dbuser -S -u $dbuser -x $HOMEDIR/$DAEMON
fi
done
}

stop() {
echo "Stopping dropbox…"
for dbuser in $DROPBOX_USERS; do
HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
if [ -x $HOMEDIR/$DAEMON ]; then
start-stop-daemon -o -c $dbuser -K -u $dbuser -x $HOMEDIR/$DAEMON
fi
done
}

status() {
for dbuser in $DROPBOX_USERS; do
dbpid=`pgrep -u $dbuser dropbox`
if [ -z $dbpid ] ; then
echo "dropboxd for USER $dbuser: not running."
else
echo "dropboxd for USER $dbuser: running (pid $dbpid)"
fi
done
}

case "$1" in

start)
start
;;
stop)
stop
;;
restart|reload|force-reload)
stop
start
;;
status)
status
;;
*)
echo "Usage: /etc/init.d/dropbox {start|stop|reload|force-reload|restart|status}"
exit 1

esac

exit 0

自启动命令:

chmod +x /etc/init.d/dropbox
update-rc.d dropbox defaults

Debian系统可能还需要在脚本前加上:

### BEGIN INIT INFO
# Provides: dropbox
# Required-Start: $local_fs $remote_fs $network $syslog $named
# Required-Stop: $local_fs $remote_fs $network $syslog $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: false
# Short-Description: dropbox service
### END INIT INFO

本文来源及其它LINUX系统的使用方法参考: http://www.dropboxwiki.com/tips-and-tricks/install-dropbox-in-an-entirely-text-based-linux-environment#debianubuntu

Ubuntu系统安装中文UTF-8支持

第一步,安装中文包:

apt-get install language-pack-zh-hant language-pack-zh-hans

第二步,配置相关环境变量:

vi /etc/environment

在文件中增加语言和编码的设置:

LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"

我的配置文件显示如下:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
LANG="zh_CN.UTF-8"
UNZIP="-O CP936"
ZIPINFO="-O CP936"

第三步,重新设置本地配置:

dpkg-reconfigure locales

linux 多账户下实现Apache虚拟主机之间的相互隔离设置

合租了linux服务器,作为管理员以及和合租者都希望将自己的虚拟主机目录和别人的隔离(因为每个用户都有linux登录账户),这个问题起初也烦恼我很久,不过很快我就有了解决办法。

1.假设 有两个站点 siteA 和 siteB(假设这两个站点的目录在/var/www/下)
2.使用root账户登录终端建立两个帐号 userA 和 userB, 要满足使用userA登录时候只能有权限进入siteA目录,登录siteB只能进入siteB目录

useradd userA
useradd userB

3.linux 在新建账户的时候如果没有为此帐号分配组,则默认会建立以该帐号同名的组,于是上面就自动产生了userA 和 userB组
4.然后将siteA 和 siteB这两个目录的所属

cd /var/www
chgrp userA siteA/ #注意这里的userA是同名的组名非帐户
chgrp userB siteB/

5.然后修改两个目录的访问权限,只能同一个组可有访问和修改

chmod 755 siteA/ #755的权限就是文件的创建者和所属组可有读取,写入
chmod 755 siteB/

6.此时我们就实现了不同的用户组账户进入对应的目录的权限,但是此时Apache没有读取这两个目录的权限,因为Apache不属于上述任何组
7.启动Apache的默认账户一般是 apache (如果没有建立一个)
8.如果将Apache账户 分别加入 userA 和 userB组,那么apache 就有权限可有访问到这两个目录了

gpasswd -a apache userA #将apache账户分别加入 userA组和 userB组
gpasswd -a apache userB
service httpd restart

原文:http://blog.css-js.com/linux/linux-centos-apache-dirset.html

Nano编辑器

^G        Get Help
^Y       Prev Page
^V       Next Page
^P       Prev Line
^N       Next Line
^X        Exit
M-Y     Color syntax highlighting enable/disable

备注:
1.^表示Ctrl键
2.M-表示Esc键或者Alt键,Debian下只有Esc键有效
3.^G表示同时按下Ctrl键和G键
4.M-Y表示同时按下Esc键和Y键
5.所有组合键中的字母键无需大写

原文链接:http://godontop.com/63.html

Linux下Wget的用法

Wget可以下载http和ftp网站文件,小命令但功能强,它的参数很多,但常用的不多。
一. 下载整个网站:

wget mirror [ convert-links] http://www.xiaokyun.com/

或短写参数:

wget -m [-k] http://www.xiaokyun.com

mirror或-m:镜像整个网站,它与“-r -l inf -N”这三个参数一起用效果相同
recursive或-r:以递归方式抓取
level=depth或-l depth:递归的深度,缺省最大值为5,0或inf表示无限多
timestamping或-N:时间戳,不知道有什么用
convert-links或-k:在全部下载完成之后,修改已下载页面中的链接,如果链接所指向的文件也下在本地了,就指向这个文件,否则,就指向http上原来的文件
二. 其它有用的参数:
tries=number 或 -t number:指定连接失败时重试次数,0或inf表示无限重试,缺省值为20。但如果遇到“连接被拒绝”或“文件没找到(404)”之类的错误,则不重试
output-document=file或-O file:指定输出文件名。比如:wget http://www.xiaokyun.com/index.html -O abc.htm 将以abc.htm保存文件
no-clobber或-nc:通常在遇到下下来的文件重名,wget将为后下的文件加上‘.1’,‘.2’等加以区分。如果用了这个参数,则一旦后下的文件将与先下的同名,将不再下载后下的文件而保留先下的不变
no-directories或-nd:保存文件时,即使原来不在一起的文件,也不创建文件夹,所有文件全放在当前目录下
page-requisites或-p:下载html文件时,把与它有关的图片,声音,脚本等相关文件一同下下来
* 所有参数都可以根据需要灵活搭配,不是固定的
三. 例子:
1,最简单的用法:

wget http://www.xiaokyun.com/sample.tar.gz

2,指定输出文件名:

wget http://www.xiaokyun.com -O xiaokyun.htm

3,下载html版的‘linux设备驱动’整站:

wget mirror http://www.deansys.com/doc/ldd3/index.html
OR
wget -mk -w 20 http://www.xiaokyun.com/

-w 20代表间隔20秒下载一个文件,这样可以避免网站的访问过于频繁。-m 是镜像
同时也可以使用其他的一些参数:-c 是继续传送 , -p 是下载媒体文件,比如图片, -q 是安静模式, -b 是后台运行
4,批量下载filename.txt 中所有链接

wget -i filename.txt