分类目录归档:技术文献

update-rc.d使用

在Linux系统下,一个Services的启动、停止以及重启通常是通过/etc/init.d目录下的脚本来控制的。然而,在启动或改变运行级别时,是在/etc/rcX.d中来搜索脚本。其中X是运行级别的number。本文将解释如何启动、关闭和修改服务的运行。当你在Debian下安装一个新的服务,比如Apache2,安装完成后,默认情况下它会启动,并在下一次重启后自动启动。但是如果你不是一直需要这个服务,只在需要的时候启用它,你可以禁用它。直到你需要使用的时候,执行如下指令:
/etc/init.d/apache2 start
要实现这个目的,你需要先在/etc/rcX.d目录中删除所有apache2的符号链接,但这个方法操作麻烦,且效率低下。因此,我们建议你使用update-rc.d命令来实现这个功能。
1、删除一个服务
如果你想手动的完全禁用Apache2服务,你需要删除其中的所有在/etc/rcX.d中的单一链路。但是如果使用update-rc.d,则非常简单:
update-rc.d -f apache2 remove
参数-f是强制删除符号链接,即使/etc/init.d/apache2仍然存在。 Note:这个命令仅仅禁止该服务,直到该服务被升级。如果你想在服务升级后仍然保持被禁用。应该执行如下的命令:
update-rc.d apache2 stop 80 0 1 2 3 4 5 6 .
2、增加一个服务
如果你想重新添加这个服务并让它开机自动执行,你需要执行以下命令:
update-rc.d apache2 defaults
并且可以指定该服务的启动顺序:
update-rc.d apache2 defaults 90
还可以更详细的控制start与kill顺序:
update-rc.d apache2 defaults 20 80
其中前面的20是start时的运行顺序级别,80为kill时的级别。也可以写成:
update-rc.d apache2 start 20 2 3 4 5 . stop 80 0 1 6 .
其中0~6为运行级别。 update-rc.d命令不仅适用Linux服务,编写的脚本同样可以用这个命令设为开机自动运行

Ubuntu 安装 端口转发工具rinetd

1,下载 第一中方式 用 apt-get install rinetd 或者从官网下载http://www.boutell.com/rinetd/
2,配置,端口转发的配置在 /etc/rinetd.conf
配置规则

0.0.0.0 8080 172.19.94.3 8080
0.0.0.0 2222 192.168.0.103 3389
1.2.3.4 80 192.168.0.10 80

说明一下(0.0.0.0表示本机绑定所有可用地址)
将所有发往本机8080端口的请求转发到172.19.94.3的8080端口
将所有发往本机2222端口的请求转发到192.168.0.103的3389端口
将所有发往1.2.3.4的80端口请求转发到192.168.0.10的80端口

命令格式是
bindaddress bindport connectaddress connectport
绑定的地址 绑定的端口 连接的地址 连接的端口

[Source Address] [Source Port] [Destination Address] [Destination Port]
源地址 源端口 目的地址 目的端口

3,打开

启动程序
pkill rinetd ##关闭进程
rinetd -c /etc/rinetd.conf ##启动转发
把这条命令加到/etc/rc.local里面就可以开机自动运行 好像不添加也行

备份与还原Linux系统

备份系统:
cd /mnt
tar -cvpjf /mnt/hbnhbnhbn/backup.tar.bz2 --exclude=hbnhbnhbn *
还原系统:
tar -xvpjf /media/xxx/backup.tar.bz2 -C /tmp/root

备份MBR:
dd if=/dev/sda of=/tmp/mbr bs=1048576 count=1

 

快速
tar cvpzf backup.tgz / --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys
高品质
tar cvpjf backup.tar.bz2 / --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys

远程连接Ubuntu Server 的图形界面

方法一:

安装xfce4图形桌面环境:

sudo apt-get install xfce4

安装vncserver服务:

sudo apt-get install vnc4server

安装成功后,开启vnc服务

如果你想访问root用户的桌面环境就用sudo vncserver,如果访问当前普通用户的环境就直接vncserver即可,首次启动会要求设置密码,用来在客户端访问时使用,后面可以使用vncpasswd 修改。

启动vnc成功后,会在主目录下产生一个.vnc目录。

修改.vnc中的xstartup文件:(如不修改,vnc连接后只能显示终端,修改后可以用xfce4显示)

#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &

sesion-manager & xfdesktop & xfce4-panel &
xfce4-menu-plugin &
xfsettingsd &
xfconfd &
xfwm4 &

 

重启该服务:

vncserver -kill :1

vncserver :1

 

开机自动运行:

vim /etc/init.d/vncserver

#!/bin/bash
PATH="$PATH:/usr/bin/"
export USER="root"
DISPLAY="1"
DEPTH="16"
GEOMETRY="1024x768"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"
. /lib/lsb/init-functions

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

stop)
log_action_begin_msg "Stoping vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;

restart)
$0 stop
$0 start
;;
esac
exit 0

设置文件权限 与 开启服务
chmod +x /etc/init.d/vncserver && service vncserver start

update-rc.d vncserver defaults

 

方法二:(已经不用了,客户端比较大,在Windows 7上无法使用)

想要远程连接你的Ubuntu服务器的图形界面么?这里有个简单的指导告诉你如何使用X2Go来实现,这是一个NX远程桌面协议的衍生版本。
你所需要做的就是在服务器上面安装X2Go服务端和桌面环境,在客户机上安装X2Go的客户端。
在Ubuntu服务器上面的操作:
可以在Ubuntu 14.04 LTS, Ubuntu 12.04 LTS 和 Ubuntu 10.04 LTS 通过PPA找到最新的X2Go服务端版本。先连接上你的Ubuntu服务器,使用下面的命令来安装PPA和相关的包。
在添加PPA之前,需要先安装这个 add-apt-repository:
sudo apt-get install python-software-properties software-properties-common
添加PPA :
sudo apt-add-repository -y ppa:x2go/stable
刷新包列表:
sudo apt-get update
安装X2Go服务器端
sudo apt-get install x2goserver x2goserver-xsession
在这个例子里面我会使用XFCE4作为Ubuntu服务器的桌面环境,安装Xfce4 :

sudo apt-get install xfce4
最后执行 reboot 命令来重启服务器 。

如果你的Ubuntu服务器没有设置主机名,在连接的时候会报错。因此执行下面的命令来设置主机名,把plato替换成你需要的名字:

echo "plato" > /etc/hostname
hostname -F /etc/hostname

Windows远程链接工具下载:http://wiki.x2go.org/doku.php/doc:installation:x2goclient

 

安装Firefox

打开终端:
sudo add-apt-repository ppa:mozillateam/firefox-next
sudo apt-get update
sudo apt-get install firefox

 

安装中文字体

#“文泉驿”字体:
sudo apt-get install ttf-wqy-zenhei ttf-wqy-microhei

Ubuntu 服务器配置

一、设置root密码

1.在终端键入sudo passwd;
2.会提示你要输入当前用户密码,按照提示输入,回车;
3.设置root密码,这时就会提示你键入root的密码,按照提示输入;
4.确认密码,会提示你再次输入密码确认;
5.登录root用户:su root,回车输入密码;
6.成功

二、开启 root ssh 登录

1.开启root远程登录权限
sudo vi /etc/ssh/sshd_config
将PermitRootLogin without-password 修改为PermitRootLogin yes
2.重启ssh服务
service ssh restart

三、升级与清理垃圾命令  --  最好更换源,用国内的;

sudo apt-get update
sudo apt-get dist-upgrade(耗时较长)

sudo apt-get autoclean 清理旧版本的软件缓存
sudo apt-get clean 清理所有软件缓存
sudo apt-get autoremove 删除系统不再使用的孤立软件

四、修改配置 samba

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vim /etc/samba/smb.conf

[share]
path = /home/martin/samba_share
available = yes
browseable = yes
public = yes
writable = yes

[home]
path = /home
valid users = root
public = no
writable = yes
printable = no
create mask = 7777

设置目录权限
mkdir /home/martin/samba_share
sudo chmod 777 samba_share/

五、vsftpd本地用户root无法登录的问题

在etc目录下有个ftpuser文件,是用来记录不允许连接的用户列表,其中root也包含在里面。注释root这一行,再重新连接,就可以了。

六、增加用户

adduser self

七、设置固定ip地址

http://jingyan.baidu.com/article/e5c39bf5bbe0e739d7603396.html

八、pptpsetup命令行连接pptp vpn | 拨号

apt-get install pptp-linux
添加一个vpn连接,执行

pptpsetup -create vpnname -server xxx.xxx.xxx.xxx -username username -password passwd -encrypt (记得改一下)
PS:更多选项运行”pptpsetup –help”

这样其实是写入了/etc/ppp/peers/ 这个目录下面(网上有在这个目录新建文件的方法,看来不如这个方便)

/etc/ppp/chap-secrets 用户名密码写入到了这个文件

上线:

pon vpnname
下线:

poff vpnname (全部下线poff -a)
然后ifconfig查看一下多了ppp0这个网络

现在还不能通过vpn来走

因为并不知道数据该怎么走,很明显要配一下路由

#route 查看现在的默认路由,下面两条操作将默认路由改为vpn的地址,删除原来的默认路由

route add default gw 10.19.1.1
route delete default gw xxx.xxx.xxx.yyy
或者这样更简便

route del default
route add default dev ppp0 (Linux设置默认路由,如果不用vpn当默认出口可以不用设置)
route add -net 192.168.2.0 netmask 255.255.255.0 dev ppp0

这样就能通过vpn来做事了。

九、开机自动运行

vim /etc/rc.local

十、DLNA服务器

a、使用apt-get安装
sudo apt-get install minidlna
b、修改minidlna配置
sudo gedit /etc/minidlna.conf
参数名 说明
port 服务端口,默认为8200。如果有防火墙配置,需要开放。
media_dir 媒体目录可以设置多个,如:media_dir=V,/noah/videos(逗号前为类型标识:A音频,P图片,V视频)
friendly_name 服务名称,在其它设备中看到的名称
inotify 设置为true,将自动发现媒体目录中的新文件

一般也就设置以上的参数就可以了。

c、重启minidlna服务
sudo /etc/init.d/minidlna force-reload       如果发现没有显示出文件,可以执行它;

十一、USB摄像头WEB界面视频

sudo apt-get install motion
sudo vim /etc/motion/motion.conf

Daemon = on 配置的时候改成off
webcam_localhost = off
webcam_port 8082 #默认8081不修改出现无法访问
sudo vim /etc/default/motion

start_motion_daemon=yes #开机自动运行
sudo /etc/init.d/motion start
sudo du -h /tmp/motion/ #这个目录产生好多照片
sudo netstat -anl |grep 8082 #查看
http://192.168.0.36:8082 #访问视频监控画面

如何借助Motion操控Linux监控摄像头:http://os.51cto.com/art/201407/445709.htm

十二、防止重启自动清空tmp

vim /etc/default/rcS
TMPTIME=0 改成TMPTIME=7 一周清理一次
TMPTIME=-1 永远不自动清理

十三、迅雷远程下载

Linux环境下使用迅雷下载(Xware):http://my.oschina.net/u/1382972/blog/285129
Linux(x86)下安装教程,以及init.d服务脚本,可自启动:http://luyou.xunlei.com/thread-3290-1-1.html

十四、修改时区

默认时区是Etc/UTC,和我们的北京时间相差8个时区,需要修改系统的时区,以下有两种简单方式修改系统时区:
1.使用命令行交互界面修改.
sudo dpkg-reconfigure tzdata
选择相应的时区.
2.修改/etc/timezone文件
vi /etc/timezone
把Etc/UTC改成Asia/Shanghai,然后保存(:wq),重启机器.

十五、crontab设置

*/1 * * * * SHELL=/bin/bash DISPLAY=:0.0 /home/test.sh

十六、百度云

下载安装包:https://github.com/LiuLang/bcloud-packages

安装命令:dpkg -i file.deb ,会 提示需要安装python,按照提示安装就可以了;

十七、流量监控

Linux VPS流量查看/监测工具 -- vnStat

十八、SVN

Ubuntu Server搭建svn服务以及迁移方法

十九、修改ssh端口号
/etc/ssh/sshd_config 将Port 22这一行取消注释,改成自定义的即可。注意别忘了修改iptable防火墙设置。
自定义端口选择建议在万位的端口(如:10000-65535之间)
重启 ssh 命令:service sshd restart

二十、Linux 系统实时监控的瑞士军刀 —— Glances (Ubuntu上目前还没有安装)

译文:https://linux.cn/article-2782-1.html

原文:http://www.tecmint.com/glances-an-advanced-real-time-system-monitoring-tool-for-linux/

 

 

OpenWRT Chaos Calmer 15.05

安装中文
opkg update
opkg install luci-i18n-base-zh-cn luci-i18n-commands-zh-cn luci-i18n-diag-core-zh-cn luci-i18n-firewall-zh-cn

pptp外拨失败的解决办法
opkg install kmod-nf-nathelper-extra

配置 PPTP(VPN客户端)

opkg update
opkg install ppp-mod-pptp
opkg install luci-proto-ppp

编辑 /etc/config/network 文件,添加如下内容
config 'interface' 'vpn'
option 'proto' 'pptp'
option 'ifname' 'vpn'
option 'username' 'vpnuser'
option 'password' 'vpnpass'
option 'server' 'vpn.example.org'