Linux学习日记·SSH篇

一直在用Linux服务器,姜辰选用的是Debian作为梦幻辰风的居住环境。折腾这么久,突然想总结点什么,一来以备未来不时之需,二来,相互借鉴。菜鸟之作,请大佬指点。

SSH是连接Linux服务器的通道之一,随着慢慢习惯ssh,以至于我的站点已经没有了ftp,毕竟传文件可以使用sftp直接传输,快捷,方便。

常用的ssh连接工具有putty,Xshell等。不做过度解释。

使用ssh连接远程服务器的时候,如果长时间没有操作,远程连接就有可能中断。正在执行的程序和vim等缓冲区数据都会丢失。因此,我们需要不掉线的ssh,使用putty设置如下:

找到Connection -> Seconds between keepalives ( 0 to turn off ), 默认为0,改为60。

在服务器配置修改如下:

修改ssh配置文件/etc/ssh/sshd_config,添加或者修改ClientAliveInterval为“ClientAliveInterval 60”。这个参数的是意思是每1分钟,服务器向客户端发一个消息,用于保持连接。保存后记得重启ssh服务。


远程链接已经ok,有时候需要下载一个目录很多文件,命令如下:

需要下载某个目录下面的所有文件。命令如下

wget -c -r -np -k -L -p www.mhcf.net/test/

在下载时。有用到外部域名的图片或连接。如果需要同时下载就要用-H参数。

wget -np -nH -r –span-hosts www.mhcf.net/test/

-c 断点续传

-r 递归下载,下载指定网页某一目录下(包括子目录)的所有文件

-nd 递归下载时不创建一层一层的目录,把所有的文件下载到当前目录

-np 递归下载时不搜索上层目录,如wget -c -r www.mhcf.net/test/

没有加参数-np,就会同时下载path的上一级目录pub下的其它文件

-k 将绝对链接转为相对链接,下载整个站点后脱机浏览网页,最好加上这个参数

-L 递归时不进入其它主机,如wget -c -r www.mhcf.net/test/


PHP环境搭建:

  1. apt-get update&&apt-get upgrade -y #更新一下下软件

  2. apt-get install nginx #安装nginx

  3. service nginx start #启动nginx服务

  4. apt-get install php5 php5-fpm php5-mysql php5-curl #安装php环境

  5. mv /etc/nginx/sites-available/default/etc/nginx/sites-available/default.bak #备份默认的nginx文件

  6. vi /etc/nginx/sites-available/default#创建一个新的配置文件

  7. ######以下是文件内容######

  8. server {

  9. listen 80 default_server;

  10. root /home/www;

  11. index index.html index.htm index.php;

  12. server_name www.mhcf.net;

  13. location /{

  14. if(-f $request_filename/index.html){

  15. rewrite (.*) $1/index.html break;

  16. }

  17. if(-f $request_filename/index.php){

  18. rewrite (.*) $1/index.php;

  19. }

  20. if(!-f $request_filename){

  21. rewrite (.*)/index.php;

  22. }

  23. }

  24. location ~.*.php(/.*)*$ {

  25. fastcgi_split_path_info ^(.+.php)(/.+)$;

  26. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  27. fastcgi_pass 127.0.0.1:9000;

  28. fastcgi_index index.php;

  29. include fastcgi_params;

  30. }

  31. }

  32. ######内容结束######

  33. #其中www.mhcf.net可以换成你的域名,支持*.这样的泛解析,多个域名用空格隔开#

  34. vi /etc/php5/fpm/pool.d/www.conf #修改 fastcgi 配置,将 listen 值改为listen = 127.0.0.1:9000即可

  35. vi /etc/php5/fpm/php.ini #找到 cgi.fix_pathinfo=1 这一行,去掉前面的分号, 将 1 改为 0

  36. chmod -R 777/home/www #赋予网站根目录读写权限

  37. service php5-fpm restart #重启 php5-fpm

  38. service nginx restart #重启 Nginx

  39. ######代码来自32mb.space######

  40. ###Mysql安装和创建数据库###

  41. apt-get install mysql-server #安装MySQL

  42. vi /etc/mysql/my.cnf #编辑 my.cnf 文件,修改编码。在 [client] 字段里加入 default-character-set=utf8 在 [mysqld] 字段里加入 character-set-server=utf8 在 [mysql] 字段里加入 default-character-set=utf8。

  43. ###安装完成后,可以通过SSH登录MySQL继续即可。代码如下###

  44. mysql -u root -p #以root用户登录,密码是安装的时候自己设置的~

  45. create database sqlname;#sqlname是你创建的数据库的名字

  46. exit;#退出mysql管理界面

  47. exit#退出SSH

  48. ###以上代码来自32mb.space和网络###

  49. ###在mysql中操作记得带分号,否则命令行无效的节奏###

当然,也可以一键安装包,比如lnmp.org


其它SSH常用命令:

ls:列出目录

mkdir:创建文件夹

mv:移动文件或者重命名文件

cp:复制文件

vi:使用vim编辑文件

cd:进入目录

rm:删除命令,rm -rf 可以删除文件夹,rm -i仅删除文件

unzip:解压zip文件

tar xvf :解压tar格式的文件

gzip -d file.tar.gz:解压.tar.gz文件为.tar文件

tar cfz file.tar.gz file:把file目录打包且压缩为file.tar.gz文件


VIM操作命令:

/:搜索

i:进入编辑模式

ZZ:保存并退出

q!:不保存文件并退出

其它的,我也忘了。。。


修改linux支持中文(转载自cutd博客园)

由于服务器默认是不支持中文的。所以一般需要单独设置一下。

检查本机已有的语言包

locale -a

默认是没有中文的,所以会显示:

C C.UTF-8 POSIX en_US en_US.iso88591 en_US.utf8

安装语言包

首先是修改locale.gen文件

sudo vim /etc/locale.gen

将zh_CN.GBK GBK zh_CN.UTF8 UTF8的注释去掉,或者直接添加这两行内容。

然后使用sudo locale-gen下载语言。

修改默认语言编码

sudo dpkg-reconfigure locales

这一步将会选择默认的系统语言,选择先前安装的即可。

最好sudo reboot重启就可以了。服务器就可以显示中文了。


笔记整理于2017.06.26,如果更新,那就慢慢更新吧~233,本文整理者姜辰,来自梦幻辰风,如果爱折腾,那就继续折腾吧~

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: