作为一个后台开发人员,经常需要和服务器打交道,所以不得不经常使用一些linux命令,这里记录一下我使用过的一些命令,防止自己以后使用的时候忘记。
1、关于文件的一些常用命令
mkdir 文件夹名(创建文件夹)
mkdir -p 递归创建文件夹
cp 文件 新的文件地址(复制文件)
rm 文件名(删除文件)
rm -r 文件夹(删除文件夹及文件夹中的所有东西)
vi/cat 文件(编辑/查看文件内容)
chmod 777 文件(修改文件权限)
chmod 777 * -R 文件夹(修改文件夹及其里面所有文件和文件夹的权限)
ls -l 文件夹(查看文件夹下的所有文件)
rz(把本机文件导入到服务器)
find / -name abc*(从根目录查找所有名字前三个字母为abc的文件)
2.关于用户的一些命令
su 用户名(切换用户)
sudo 命令(让普通用户去执行一些root命令,前提是管理员给了你执行sudo命令的权限)
w/who(查看当前登录的用户)
cut -d : -f 1 /etc/passwd(查看所有用户)
3.关于软件下载的一些命令
wget http://yum.baseurl.org/download/3.2/yum-3.2.28.tar.gz(下载yum安装包)
tar xvf yum-3.2.28.tar.gz
touch /etc/ yum.conf(创建yum.conf文件)
cd yum-3.2.28
yummain.py install yum(安装yum)
yum check-update(检查是否有软件包更新)
yum update(更新软件包)
yum clean all(删除所有缓存数据)
rpm -qi 软件名(查看软件信息)
yum list install 软件名*(查看软件所有可安装的版本信息)
4.关于定时器的一些命令
rpm qa|grep vixie-cron
rpm qa|grep crontabs(查看是否安装了这两个软件)
yum install vixie-cron(安装cron主程序)
yum install crontabs(安装crontabs,crontabs是用来安装,卸载,列举cron驱动列表守护进程的列表)
crontab -e(添加cron定时任务,会进行一些语法的检查)
分 时 日 月 周 命令(添加定时任务的语法)
service crond status(查看cron的运行状态)
service crond start(启动cron服务)
service crond stop(停止服务)
service crond restart(重启服务)
service crond reload(重新载入配置)
crontab -u abc -l(列出所有abc用户设置的定时任务,默认是当前用户)
5.关于防火墙的命令
iptables -A INPUT -p tcp --dport 22 -j ACCEPT ##添加一个开放端口22的输入流的规则
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT ##添加一个开放端口22的输出流的规则
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #开放ssh端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放web服务端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT #开放ftp服务端口
iptables -A INPUT -p icmp -j ACCEPT #允许icmp包通过,也就是允许ping
iptables -A INPUT -i lo -p all -j ACCEPT #允许loopback
/etc/init.d/iptables save ##保存防火墙规则,如果不进行保存的话 重启iptables之后规则将消失
iptables -L -n ##查看当前防火墙规则
service iptables start/stop/status/restart ##开启/关闭/查看/重启 防火墙
6.mysql的安装
yum list install mysql*(查看所有可安装mysql的版本)
rpm -qi mysql(查看电脑是否安装mysql)
yum install mysql版本号(安装mysql数据库)
service mysqld status(查看mysql是否启动)
service mysqld start(启动mysql服务)
mysqladmin -uroot password root(创建初始用户root)
mysql -hlocalhost -uroot -proot(mysql使用用户名和密码登录)
mysqladmin -uroot -p旧密码 password新密码(mysql修改密码)
有的时候可能会出现 can't connect to local MySQL server through socket 'var/run/mysqld/mysqld.sock'这种问题,解决办法:
重启mysql服务
7.Redis安装
$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz
$ tar xzf redis-2.8.17.tar.gz
$ cd redis-2.8.17
$ make
安装好之后进入目录把redis.conf复制到/etc/,
-
-
vi /etc/redis.conf
-
#查找daemonize no改为
-
#以守护进程方式运行
-
daemonize yes
-
#修改redis.conf中的dir ./为绝对路径,
-
#默认的话redis-server启动时会在当前目录生成或读取dump.rdb
-
#所以如果在根目录下执行redis-server /etc/redis.conf的话,
-
#读取的是根目录下的dump.rdb,为了使redis-server可在任意目录下执行
-
#所以此处将dir改为绝对路径
-
dir /usr/local/redis
-
#修改redis.conf中的appendonly为yes
-
#指定是否在每次更新操作后进行日志记录,
-
#Redis在默认情况下是异步的把数据写入磁盘,
-
#如果不开启,可能会在断电时导致一段时间内的数据丢失。
-
#因为 redis本身同步数据文件是按上面save条件来同步的,
-
#所以有的数据会在一段时间内只存在于内存中。默认为no
-
appendonly yes
-
#将redis添加到自启动中
-
echo "/usr/local/bin/redis-server /etc/redis.conf" >> /etc/rc.d/rc.local
-
#启动redis
-
redis-server /etc/redis.conf
-
#查看redis是否己启动
-
ps -ef | grep redis -
-
【开放redis端口】
[html] view plaincopy
-
#关闭防火墙
-
service iptables stop
-
vi /etc/sysconfig/iptables
-
#添加
-
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
-
#重启防火墙
-
service iptables restart