Linux常用命令与服务器运维,网站发布与维护

----------------------------------------------------------------------------------------------------

学习更多编程技术,请关注 “吾要编程” 微信公众号

----------------------------------------------------------------------------------------------------

作为一个程序员,除了会开发项目,还需要懂得发布,并且需要懂得网站日常安全的防护,以及服务器日常维护。如果你们有自己的网站,希望本文对你们有用。

网站的发布与运维都是基于服务器的,而我们使用的服务器大多数都是Linux系统。对于Linux系统主要是以命令为主,但是命令是在太多,不是专业人员几乎记不住,所以我们不需要全部都懂,我们只要知道基本的一些常用命令就足够运用了,好了不多说,现在列出一些我们常用到的命令。

基本命令:

创建文件夹

mkdir 文件夹名称

创建文件

touch /文件夹/test.log

编辑文件

vi 或 vim /文件夹/test.log

按 i 键

查看文件内容的命令:

cat 由第一行开始显示内容,并将所有内容输出

tac 从最后一行倒序显示内容,并将所有内容输出

more 根据窗口大小,一页一页的现实文件内容

less 和more类似,但其优点可以往前翻页,而且进行可以搜索字符

head 只显示头几行

tail 只显示最后几行

nl 类似于cat -n,显示时输出行号

tailf 类似于tail -f

编辑文件命令

vim 与vi

覆盖文件内容

echo "内容" >文件

> 是重写,覆盖式

>>是尾部追加

退出编辑状态

按Esc键

退出文件

按Shift + : 键

输入q

保存并退出文件

按Shift + : 键

输入wq

把文件设置为可执行

chmod -R +x /xxx.sh

删除文件

rm ./xxx.txt

强制删除文件

rm -rf ./xxx.txt

查看文件内容

cat ./xxx.txt

查看文件内容并显示行号

cat -n ./xxx.txt

实时查看日记记录文件(*.log、*.out等)

tail -f /tomcat/logs/catalina.out

查看所在目录

pwd

安装软件

yum install 插件

下载文件

wget 文件地址

压缩

tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg

tar –czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar –cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux

zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux

解压

tar –xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2 //解压 tar.bz2

tar –xZvf file.tar.Z //解压tar.Z

unrar e file.rar //解压rar

unzip file.zip //解压zip

Linux下*.tar.gz文件解压缩命令

1.压缩命令:

命令格式:tar -zcvf 压缩文件名.tar.gz 被压缩文件名

可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。

2.解压缩命令:

命令格式:tar -zxvf 压缩文件名.tar.gz

解压缩后的文件只能放在当前的目录。

你可以使用 zip 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:

zip -r filename.zip file1 file2 file3 /usr/work/school

压缩单个目录命令zip -r filename.zip filename

上面的命令把 file1、file2、 file3、以及 /usr/work/school 目录的内容(假设这个目录存在)压缩起来,然后放入 filename.zip 文件中。

运维命令:

查看内存使用情况

free -m

或者

free -g

查询硬盘挂载路径

fdisk -l

挂载硬盘

mount 路径

查看硬盘挂载情况

df -h

查看进程

top 或 top -c 或 top -p 等等

对进程进行排序(按消耗内存大小)

Shift + m

将某个程序或进程详细展现出来

ps -ef | grep mysql*

命令拆解:

ps:将某个进程显示出来

-A  显示所有程序。

-e  此参数的效果和指定"A"参数相同。

-f  显示UID,PPIP,C与STIME栏位。

grep命令是查找

中间的|是管道命令 是指ps命令与grep同时执行

这条命令的意思是显示有关Apachejetspeed有关的进程

UID PID PPID C STIME TTY TIME CMD

各相关信息的意义:

UID: 程序被该 UID 所拥有

PID :就是这个程序的 ID

PPID :则是其上级父程序的ID

C: CPU 使用的资源百分比

STIME :系统启动时间

TTY: 登入者的终端机位置

TIME: 使用掉的 CPU 时间

CMD :所下达的指令为何

对进程进行停止

kill 进程名(如:mysql)

强制停止进程

kill -9 进程Pid(如:1234)

查看内核版本

uname -a

查看Linux防火墙

iptables -L -n

检查是否已安装crond(定时器)

rpm -qa|grep cron

或service crond status

安装crond

rpm -ivh vixie-cron-4.1-72.el5.i386.rpm

查看定时任务

service crond status

启动定时任务

service crond start

停止定时任务

service crond stop

重启定时任务

service crond restart

重新加载定时任务配置

service crond reload

添加mongodb定时备份脚本( 每天晚上6点开始)

crontab -e

i

输入

0 18 * * * /home/mongo_bak.sh

运行sync将dirty的内容写回硬盘

Linux手动释放内存

echo 1 > /proc/sys/vm/drop_caches

drop_caches的值可以是0-3之间的数字,代表不同的含义:

0:不释放(系统默认值)

1:释放页缓存

2:释放dentries和inodes

3:释放所有缓存

释放完内存后改回去让系统重新自动分配内存

echo 0 >/proc/sys/vm/drop_caches

网站简单启动命令:

1、redis启动

/usr/local/bin/redis-server /usr/local/redis-3.0.7/redis.conf

2、mysql启动

service mysql start

3、mongodb停止

/usr/local/mongodb-2.6.11/bin/mongod --config /usr/local/mongodb-2.6.11/mongo.conf --shutdown

4、mongodb启动

/usr/local/mongodb-2.6.11/bin/mongod -f /usr/local/mongodb-2.6.11/mongo.conf

5、tomcat启动

sh /usr/local/tomcat/bin/startup.sh

6、nginx启动

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

以上都是一些基本的命令操作,详情需要具体再做分析,往后会写一些关于开发的以及框架方面的文章,希望对大家有用!

----------------------------------------------------------------------------------------------------

学习更多编程技术,请关注 “吾要编程” 微信公众号

----------------------------------------------------------------------------------------------------

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180615G117SM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券