Single

【linux入门教程】Linux学习日记——SSH篇

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

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

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

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

在服务器配置修改如下:

  1. >修改ssh配置文件/etc/ssh/sshd_config,添加或者修改ClientAliveInterval为“ClientAliveInterval 60”。

这个参数的意思是每1分钟,服务器向客户端发一个消息,用于保持连接。保存后记得重启ssh服务。

  1. >需要下载某个目录下面的所有文件。命令如下
  2. wget -c -r -np -k -L -p www.mhcf.net/test/
  3. 在下载时。有用到外部域名的图片或连接。如果需要同时下载就要用-H参数。
  4. wget -np -nH -r –span-hosts www.mhcf.net/test/
  5. -c 断点续传
  6. -r 递归下载,下载指定网页某一目录下(包括子目录)的所有文件
  7. -nd 递归下载时不创建一层一层的目录,把所有的文件下载到当前目录
  8. -np 递归下载时不搜索上层目录,如wget -c -r www.mhcf.net/test/
  9. 没有加参数-np,就会同时下载path的上一级目录pub下的其它文件
  10. -k 将绝对链接转为相对链接,下载整个站点后脱机浏览网页,最好加上这个参数
  11. -L 递归时不进入其它主机,如wget -c -r www.mhcf.net/test/
  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。

  1. >ls:列出目录
  2. mkdir:创建文件夹
  3. mv:移动文件或者重命名文件
  4. cp:复制文件
  5. vi:使用vim编辑文件
  6. cd:进入目录
  7. rm:删除命令,rm -rf 可以删除文件夹,rm -i仅删除文件
  8. unzip:解压zip文件
  9. tar xvf :解压tar格式的文件
  10. gzip -d file.tar.gz:解压.tar.gz文件为.tar文件
  11. tar cfz file.tar.gz file:把file目录打包且压缩为file.tar.gz文件
  1. >/:搜索
  2. i:进入编辑模式
  3. ZZ:保存并退出
  4. q!:不保存文件并退出

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

检查本机已有的语言包

  1. locale -a

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

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

安装语言包

首先是修改locale.gen文件

  1. sudo vim /etc/locale.gen

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

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

修改默认语言编码

  1. sudo dpkg-reconfigure locales

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

暂无评论

发表评论