您的位置:首页 > 其它

服务器常用操作

2012-05-23 15:07 204 查看
服务器常用操作

一、防火墙

1、在/etc/sysconfig/iptables里添加

-A RH-Firewall-1-INPUT -m state --state NEW-m tcp -p tcp --dport 8080 -j ACCEPT

2、重启iptables

/etc/init.d/iptables restart

二、拷贝

1、 scp ssh远程拷贝目录

scp -r user@host:path localpath

-P 加端口号

2、 wget http协议下载文件

wget http://xxxxxxxx/xxxx

三、同步文件 rsync

rsync -rvlHpogDtS--password-file=/root/rsyncd.secrets travel_web@60.28.217.45::travel_web /opt/travel/web

1、系统环境

rsync支持大多数的类unix系统,无论是Linux、Solaris还是BSD上都经过了良好的测试。我的系统环境为:

server: FreeBSD 4.3 ip: 192.168.168.52

client: Solaris 8 ip: 192.168.168.137

rsync 版本 2.4.6(可以从http://rsync.samba.org/rsync/获得最新版本)

2、配置server端的/etc/rsyncd.conf文件

bash-2.03# cat /etc/rsyncd.conf

uid = nobody

gid = nobody

use chroot = no # 不使用chroot

max connections = 4 # 最大连接数为4

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log # 日志记录文件

[inburst] # 这里是认证的模块名,在client端需要指定

path = /home/inburst/python/ # 需要做镜像的目录

comment = BACKUP CLIENT IS SOLARIS 8 E250

ignore errors # 可以忽略一些无关的IO错误

read only = yes # 只读

list = no # 不允许列文件

auth users = inburst # 认证的用户名,如果没有这行,则表明是匿名

secrets file = /etc/inburst.pas # 认证文件名

[web]

path = /usr/local/apache/htdocs/

comment = inburst.org web server

3、在server端生成一个密码文件/etc/inburst.pas

bash-2.03# cat /etc/inburst.pas

inburst:hack

出于安全目的,文件的属性必需是只有属主可读。

chmod 600 /etc/inburst.pas

4、在server端将rsync以守护进程形式启动

bash-2.03# rsync --daemon

加入rc.local

vi /etc/rc.d/rc.local

5、从client端进行测试

下面这个命令行中-vzrtopg里的v是verbose,z是压缩,r是recursive,topg都是保持文件原有属性如属主、时间的参数。--progress是指显示

出详细的进度情况,--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。后面的inburst@ip中,

inburst是指定密码文件中的用户名,之后的::inburst这一inburst是模块名,也就是在/etc/rsyncd.conf中自定义的名称。最后的/tmp是备份

到本地的目录名。

在这里面,还可以用-e ssh的参数建立起加密的连接。可以用--password-file=/password/path/file来指定密码文件,这样就可以在脚本中使

用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。

7、修改/etc/crontab做好定时

crontab -e

或者:

bash-2.03# echo "15 4 * * 6 root rsync.sh">>/etc/crontab

四、定时任务 crontd

修改定时任务: crontab –e

格式:15 4 * * * sh/root/rsync.sh

每天4点15分定时执行 sh /root/rsync.sh

五、用户操作

1、 添加用户 useradd

useradd testuser

2、 修改用户密码 passwd

passwd testuser

3、 修改目录所有者

chown testuser /opt/test –R

六、mysql相关

1、登录 mysql –p

2、添加数据库

create database testdb;

3、添加用户(所有权限)

GRANT ALL PRIVILEGES ON testdb.* TO
'username'@'%' IDENTIFIED BY 'password';

flush privileges;

其中%为允许访问的host, %表示不限制,可以为localhost则代表本机才能连接。

4、忘记mysql root密码

关闭mysql

mysqld_safe --skip-grant-table

然后user mysql

update user set password=password("新密码") whereuser="root";

重启mysql

其中mysql_safe在mysql 安装目录下找

5、 mysql 同步

a、设置同步Master

修改 my.cnf 文件,在

# Replication Master Server (default)

# binary logging is required forreplication

添加如下内容:

log-bin=/var/log/mysql/updatelog

server-id = 1

binlog-do-db=test

binlog-ignore-db=mysql

重启MySQL,创建一个MySQL帐号为同步专用

GRANT REPLICATION SLAVE,RELOAD,SUPER, ON*.* TO back@192.168.0.2 IDENTIFIED BY 'back' ;

FLUSH PRIVILEGES ;

b、设置同步Slave

修改my.cnf文件,添加

server-id = 2

master-host = 192.168.0.1

master-user = back

master-password = back

master-port = 3306

replicate-ignore-db=mysql

replicate-do-db=test

重启MySQL

c、启动同步

在主服务器A MySQL命令符下:

show master status/G

slave服务器显示:

show slave status\G

可能出现错误:

mysql> show variables;

查看错误log所在位置

log_error |/var/lib/mysql/localhost.localdomain.err

默认为data目录下的localhost.localdomain.err

/var/log/mysql/mysql-bin.index 需要mysql有权限访问

/var/log/mysql/mysql-bin.log 所在目录需要mysql有权限访问

查看环境变量:

show variables; /d

原文作者:wxb
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: