linux服务器入门使用教程

编辑于:2019年04月20日
linux服务器入门使用教程

制作一个网站或者搭建某种代理工具,无论目的是什么,对一直使用Windows或OS X桌面系统的我们,在初次接触 linux、ECS、VPS、脚本和命令时,对这些概念一片茫然。

虫子虽然目前连门都没入,但经过最近几年折腾“网站”,稍微积累了一些linux服务器的使用经验,纯小白的经验,分享给同样是小白的你们;请大神们略过。

硬件概念

购买“服务器”时可能会遇到网页空间VPSECS独立服务器这些名词,它们大致分为3类。

网页空间

拥有的权限非常小,通常只能通过FTP上传类似wordpress的程序来搭建一个小网站,目前已经很少见了,不推荐使用。

云服务器

不同厂家叫法不同,像vultr搬瓦工等叫VPS,阿里云叫ECS,腾讯云叫CVM,谷歌云叫VM,亚马逊云叫EC2。可以简单的理解为把一台或多台完整的服务器分成独立的几部分,比如一台10核20GB内存500GB硬盘的服务器,分成5个2核4GB内存100GB硬盘的VPS。

云服务器拥有和独立服务器相同的权限,多数支持弹性伸缩,例如你感觉2核不够用了,可以云端升级到4核,而部署在云服务器上的网站或业务不受影响。

独立服务

这个很好理解,就是一台完整的服务器不和任何人共用,如同租赁了一台服务器放到机房托管,机房为你供电和提供公网IP、宽带,你拥有这台服务器的几乎所有的管理权限。

独立服务器的配置一般都比较高,和云服务器相比,相同配置的独立服务器价格较为便宜,适合部署大型业务。

软件概念

linux与Windows、os X一样,是一种操作系统,logo是一只可爱的企鹅。这里有两个概念,linux内核linux发行版

linux内核操作系统的核心,负责控制硬件、管理文件系统、程序进程。
linux发行版是在linux内核基础上,集成各种系统管理软件或应用工具软件,最终组成的一套完整的操作系统

常见的linux发行版有CentOSUbuntuDebianArch Linux等等,虫子个人建议,搞网站可以选择CentOS(最新版是CentOS 7)、搭建网络代理工具可以选择Debian(最新版是Debian 9 代号stretch)

常用工具

SSH客户端

服务器所在地远的在海外,近的也在国内各省市,在家中如何控制呢?我们一般称这些软件为SSH 客户端

  • WindowsXshell、PuTTY;
  • Mac:可用系统自带 [终端];
  • 安卓:JuiceSSH、Termius;
  • iOS:Termius、HyperApp。

上传下载

使用FTP客户端可以从服务器下载文件到本地电脑,或从本地电脑上传文件到服务器。

Windows系统推荐使用Xftp,它和Xshell同出一个公司,从Xshell启动Xftp时不需要再次输入账号密码,非常方便。

代码编辑

电脑自带的记事本可以编辑PHP、js等格式的文件,但和专业的编辑器相比不支持代码高亮和检错等功能,体验非常差,建议安装一些专用的代码编辑器,例如

执行命令

在服务器上,linux发行版多数是命令行界面(CLI),没有Windows这种图形用户界面(GUI)不能通过鼠标点点点来操作。

我们通过SSH客户端连接服务器,然后在SSH客户端输入命令行对服务器进行控制。像虫子这种小白对命令行非常不熟悉,有时候看别人教程中的命令行截图,不知道哪些是需要输入到客户端的命令行,哪些服务器执行命令行后反馈的结果,如何看懂这些教程呢?

我们以执行查询句柄数的命令ulimit -n为例,它在不同教程中可能会有如下写法

#开头

[root@server05 ~]# ulimit -n
1024
  • root:是用户名(一般root权限账号的名字都是root),
  • server05:是服务器名字(不同服务器的名字可能不同),
  • ulimit -n:#后面的 ulimit -n 就是输入到SSH客户端命令,是我们跟着教程要在SSH客户端输入并执行的内容,注意不需要将 # 输进去。
  • 1024:则是执行完 ulimit -n 这条命令后服务器的反馈也就是执行后的结果。

除了上述的形式,有些教程可能不展示[root@server05 ~],而是直接写作如下形式:

# ulimit -n
1024

$开头

$ ulimit -n
1024
  • $ ulimit -n:一般$ 后的内容 ulimit -n 是输入到SSH客户端的命令,注意不需要将 $ 输进去。
  • 1024:服务器执行命令后的反馈。

#和//

//查询句柄数
ulimit -n
#查询句柄数
ulimit -n

在上述两个例子中,有//和#符号,并且符号后面通过文字作了说明

  • //和#:在这里一般是注释符号,用来解释说明下方命令的作用。注意不要和第一种形式的“#开头”混淆,比如#做注释时后面跟的是中文
  • ulimit -n:要执行的命令

常见问题

wget: command not found

wget是一个从网络上自动下载文件的自由工具,command not found 的意思是没有找到命令,合在一起就是没找到wget无法执行这个命令。

一般是系统太干净,我们给服务器安装wget工具,然后在执行之前的wget命令就不会提示wget: command not found了。

这里需要重点说明,比如执行 screen 命令时,提示 screen: command not found,或者其它命令反馈 命令+: command not found,多数是指缺少这个“工具”,那么先安装这个工具再去执行命令一般就不会报错了。

不知道如何安装这些“工具”?非常简单,直接网上搜索服务器反馈的提示,例如搜索“wget: command not found”,可以找到很多关于导致这个提示的原因和解决办法的文章。一定要善于使用搜索,未经搜索就发帖和留言询问,是极不负责也是最低效的解决办法。

apt-get 与 yum

还是以wget为例,根据提示发现服务器缺少wget工具,我们需要单独安装。不同linux发行版本使用的安装方法是不同的

CentOS一般使用yum,例如安装wget的命令是

yum -y install wget

Ubuntu、Debian一般使用apt-get,例如安装wget的命令是

apt-get install -y wget

sudo -i

有些脚本或命令的执行,需要root管理员权限,如果你登陆SSH使用的账号密码没有root权限(登录时用户名不是root)将无法执行,所以需要临时获取root权限。

在SSH执行 sudo -i 命令,可以让你临时获取root权限,之后可以正常执行需要root权限的脚本或命令

sudo -i

时间

某些程序对时间有严格的要求,服务器需时间如果不正确需要进行调整。

[root@server05 ~]# date -R
Tue, 30 Oct 2018 22:40:44 +0800

+0800是东八区时区也就是北京、上海时间;如果显示的时区是+0000,则是格林威治标准时间;显示时区是+0100则是东一区。同一时间,不同的时区显示的时间会不同,具体你可以网上搜索转换。只要转换后的时间是对,时区不一样没关系。

假如时间不对,可以通过执行时间修改命令:

[root@server05 ~]# sudo date --set="2018-10-30 22:40:44"
Tue, 30 Oct 2018 22:40:44 +0800

相关推荐

Debian/Ubuntu开启TCP BBR加速

Debian/Ubuntu开启TCP BBR加速

Debian9 系统默认的是编译了 TCP BBR 的 4.9版内核,所以采用了Debian9系统的服务器可以不用进行繁琐的安装,仅通过几条简单的参数命令就能开启BBR加速。

CentOS 如何开启 BBR 加速?

CentOS 如何开启 BBR 加速?

Google 开源的 BBR 拥塞控制算法,可以改善网络传输速度,尤其是海外服务器和中国之间的网络传输。BBR 从Linux 4.9开始内置,因此如果系统的内核版本高于 4.9 就可以很方便的启用,如果低于4.9 就需要先升级内核 ...

Linux 重置 root 密码

Linux 重置 root 密码

Linux 重置用户密码的操作非常简单,以重置 root 用户的密码为例,只需要在服务器执行命令passwd root,根据提示输入新的密码(输入的密码不会再屏幕上显示)。 重置命令 如果以非 root 用户登录,但要更改 root ...

暂无评论