[小白的服务器之路]-开篇

215 阅读9分钟

本文非常基础,真的是非常基础,大佬们绕道啊~~

看文本文你会有如下收获:

  • 见识到啰里八嗦的人是怎么表达的
  • 浪费人生中宝贵的几分钟看别人装逼
  • 明白这篇文章真的很基础

1、背景

虽然双十一过去这么久了,但是腾讯云和阿里云的双十一活动还未散去,群里充斥各种服务器的促销活动,此刻,我再也忍不住了,我想60块钱,买不了吃亏,买不了上当,对,我下手了,毫不犹豫的下手了。

image.png

接着问题变接踵而至...

2、服务器购选

简单的纠结了下到底该入手阿里云的还是腾讯云的服务器,或者其他选择?这问题我是这么想的,几十块钱的东西,没必要纠结,而且入手之后,两边服务器都可以捣鼓一下,而且作为腾讯和阿里,不至于说服务器之间存在好大差别,终究是殊途同归的吧。所以我选了腾讯云(主要是可以直接从QQ群点开链接....)

至于从来没摸过服务器相关东西的我,打开网站的一刻也是懵逼的,这么多类型,不过终归是行业内的人,深耕开发这么多年,就算完全没接触过服务器,也可以自行尝试理解概念,所以经过我的深思熟虑,最终这个48/年的东西成功的引起了我的注意,“oh my god,买它 买它 买它。”(钱包余额48.1-48=0.1)

image.png

购买的时候发现要选择服务器系统类型,嗯,难不倒我,虽然一脸懵逼,但是从文字上来说,这些东西都看过,不慌。

image.png

最终我选了CentOS 7.6版本,别问为什么,我后面的大佬说低调。

玩笑开过了,正儿八经的说,其实这系统大致一看还是知道个大概,不外乎就是Window系统和Linux系统,Linux又分为Ubuntu和CentOS两类,别说这几个词都不懂,不懂那不是搞计算机的,最终我也确实是咨询了我的室友和我的朋友,他们都建议我上手CentOS,所以我选了CentOS 7.6,而且云服务器的系统后面是可以免费更换的,所以我后来也更换尝试了一下。

3、登录服务器

服务器创建好了,当然接下来就是迫不及待的使用了,废话不多说,开机、登录、打怪升级...

image.png

登录成功的那一刻,我其实有点懵逼,因为界面是这个样子的:

image.png

对,是那个熟悉而又陌生的命令窗口,“我们变成了世上最熟悉的陌生人...”,对,太陌生了,不会。。。我试着在上面打出我仅会的唯一指令--ls,结果什么都没有,有点怀疑人生。

少侠莫慌,云服务器而已,在我脑袋里不过是一台可以在公网中访问的电脑而已,现在我已登录服务器,掌握了控制权,虽然现在啥也没有,正适合我开疆扩土,接下来我们就要搞清楚如何上传和下载文件到服务器,于是我打出了一张“无中生有”。

3.1 登录方式

腾讯云提供了三种登录方式,满足不同场景需求,前面的黑框就是通过一键登录的方式登录的。 image.png

  • 一键登录 该方式使用创建系统时的默认秘钥对登录,所以不需要输入账号和密码就登录进去了。

  • VNC登录 该方式通过Web浏览器远程登录服务器的方式。

  • SSH远程登录 该方式通过SSH远程客户端登录。比如使用electerm这种SSH客户端进行远程登录。

我简单试了下一键登录和VNC登录,后面再尝试SSH客户端远程登录。

image.png

以上为VNC方式,输入自己的账号和密码,然后如上图表示登录成功。 可能有同学就纳闷儿了,这个服务器密码哪里来的呀?

通过远程登录方式之前,先重置下系统密码便可获得:

image.png

服务器登录成功了,接下来就应该把文件上传上去,这样子才能提供对外访问的内容。

关于登录服务器的介绍,其实官方已经提供了很多资料,所以有不懂的看资料就对了:资料地址

4、文件上传

关于文件上传,还是先看官网介绍

在跟我大冉哥的交流过程中,我得到如下信息点: image.png

  • 一般ssh客户端这种就带了文件上下传的功能
  • 作为资深的像大冉哥这样的大佬,用的是scp的命令。

so,虽然我不是大佬,但是我要装,而且官网介绍里面也介绍了SCP方式,所以这个逼我装定了。

image.png

开搞,看下图:

image.png

简单,SO Easy,区区一行命令就完事了,搞起: scp /Users/xxx/Desktop/test.jpg root@【你的云服务器地址】:/Documents/Test/test.jpg 将本地桌面的一张图片,放入云服务器的/Documents/Test目录下,就这么简单。

然后我打开云服务器,输入上述指令,接着让我输入云服务器密码,一步一步走,心里美滋滋,结果提示:No Such File or Directory.

尼玛,草。。曹操呢?难道是姿势不对?于是我翘起二郎腿,这事没这么简单,看提示意思是说没有找到文件或目录,那是不是要先创建目录哦,于是我在云服务器上先创建目录:

image.png

经过上面步骤,我便在云服务器中创建好了对应目录,中间当我创建好Documents目录之后我觉得这么一级一级的创建目录显然不科学,万一我要创建的路径很长咋办,肯定有多级目录创建的方法吧,所以我尝试了mkdirs目录,结果没这指令,后面在搜索。

目录创建好了,我满怀期待的再次执行前面的上传文件命令,然而现实再一次毫不留情的打我脸,问题依旧,我心想要不试试只指定目录地址,问题还是如此,不得已,我再次向冉哥求救。

当我刚把问题描述完发给冉哥,我脑袋一闪,很显然我姿势没对呀,这命令应该是在本地电脑上执行呀,,这个大乌龙。。。然后冉哥的回复也印证了这句话:

image.png

我TM真是该给自己几嘴巴子,这个聊天顺带知道远程服务器拉远程服务文件是这么操作的(当然这也是自然而然的事情,毕竟从本地上传服务器到云服务器,不就是从一台电脑传文件到另外一台电脑么,所以这我懂。)

经过冉哥提点,心想这下总行了吧,我切到本地电脑的Terminals,然后输入密令,提示让我输入云服务器密码,还是原来的配方,原来的味儿,当我敲下Enter键时,我以为一切尽在掌握,结果现实再次无情的给我一巴掌:

image.png

对,很无情,对我这种小白来说很无情。我以为是我敲错了命令,输错了字符,我核对了又核对,也认真看了腾讯文档,再三检查,确实没问题呀,怎么还是这个错误呢(看起来是同个错误,其实现在不是了,错误提示说的是/Documents/Test/test.jpg不存在,是服务器对应的目录不存在)。。。

恰好跟冉哥的聊天还未结束,冉哥也顺带问一赠一,附赠了我一个技巧,奈何还未做笔记,就还没尝试,这种东西,一定要尝试然后做笔记才能消化的;估计是多年未见,冉哥哥也想我了,跟我发了个视频过来(我一开始以为是语音,不然我打死我也不会立马接起来,我肯定要先去洗个澡梳个头),然后冉哥说这个问题很简单,你前面应该增加你登录的用户名,应该是/root,或者你可以在云服务器的目录中执行pwd打印出当前的完整路径,这下懂了。

冉哥附赠技巧: image.png

于是我尝试了pwd,也修改了命令: scp /Users/xxx/Desktop/test.jpg root@【你的云服务器地址】:/root/Documents/Test/test.jpg,然后再输入密码,

image.png

这味儿,正。

一切如预期,搞定,这个文件上传上去了,到服务器上一看,这文件也在了,肾好肾好。

image.png

虽然这个文件上传到云服务器了,但是现在还是无法对外访问的,后面再慢慢整。

这里提个醒,由于我前面遇到问题时先试着在服务器创建了对应目录,以至于最后我执行命令时成功,但是如果要是这个目录一开始不存在,执行命令是无法成功的,也会提示目录或文件不存在。

总结下用到的命令


    //创建目录
    mkdir {file/directory name}
    
    //递归创建多级目录:前面提到之后去搜索理解的
    mkdir -p {name}/{name2}
    //Sample : mkdir -p Test/Test1

    //查看当前目录路径
    pwd
    
    //使用scp上传文件
    ```
    scp 本地文件地址 轻量应用服务器帐号@轻量应用服务器实例公网 IP/域名:轻量应用服务器文件地址
    //Sample:scp /home/Inmp0.4.tar.gz root@129.20.0.2:/{注意这里应该还有一级用户名}/home/Inmp0.4.tar.gz

    //附赠强制删除目录及目录下文件的命令:
    rm -rf {目录名}
    //Sample: rm -rf Test  删除Test及Test下的所有文件和目录。
    //-r 就是向下递归,不管有多少级目录,一并删除
    //-f 就是直接强行删除,不作任何提示的意思
    //需要提醒的是:使用这个rm -rf的时候一定要格外小心,linux没有回收站的
    
    //删除目录:逐级删除会一次询问用户是否删除,输入y表示删除,n表示不删除
    rm -r {目录名}

   
    //强制删除文件:即删除时不会提示用户
    rm -f {文件路径}
    rm {文件路径}

本篇到此结束,等下回。