Linux常用命令与服务器运维,网站发布与维护-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

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

简介: 作为一个程序员,除了会开发项目,还需要懂得发布,并且需要懂得网站日常安全的防护,以及服务器日常维护。如果你们有自己的网站,希望本文对你们有用。 网站的发布与运维都是基于服务器的,而我们使用的服务器大多数都是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

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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章