Linux 基础(上)

本文涉及的产品
云服务器ECS,u1 2核4GB 1个月
云服务器 ECS,u1 4核8GB 1个月
云服务器 ECS,u1 4核16GB 1个月
简介: Linux 基础(上)

引言



Linux 主要的应用场景


1. 服务器领域

2. 嵌入式设备,例如:空调、冰箱…

3. 移动端,例如:Android 内核就是 Linux


Linux 环境搭建


要想学习 Linux,在这之前,我们需要先有一个 Linux 的环境,这里推荐的方式是:使用云服务器,可以直接在 【 腾讯云、或阿里云、或华为云 】等服务器厂商处直接购买一个云服务器。


使用云服务器这样的方式,环境搭建简单。最主要的是,我们部署在云服务器上的项目可以直接被外网访问到,这就和一个公司发布一个正式的网站没有任何区别,也就是说,我们自己通过代码写出来的项目,能够真正地让别人用。


我之前在学校的时候,使用过 VMWare 虚拟机,不过那样很折腾人,此外,也没有什么实际意义。


Linux 重点应该学习什么


1. 基础操作 ( 基于命令行的操作 )


Linux 虽然也有像 Windows 那样的图形化界面,但很少能够用到。


2. 系统编程 + 网络编程


必须明确:一个操作系统的存在,对下,要管理各种硬件设备;对上,要为各种软件提供一个稳定的运行环境。然而,如何编写一个能运行在 Linux 系统上的程序,这是一个很重要的话题。但是,由于 Java 天生就是 " 跨平台 " 的,同样的代码,Windows上怎么写,换到 Linux 上,完全一样!


所以说,这一块的编程内容主要是学习 C++ 的小伙伴需要研究的内容。


3. 部署一个 Java - Web 程序

这就是本篇博客的重点所在。


声明


必须明确:

一个完整的操作系统 = 操作系统内核 + 配套的应用程序。


然而,Linux 严格意义来说只是一个 " 操作系统内核 ",因此,有些公司 / 开源组织又基于 Linux 内核,提供了不同的配套程序,这就构成了不同的 " 发行版 "。


77c5b0b548ae416da136d6ffd8085358.png


然而,本篇博客主要对应的 CentOS 7 这样的发行版。


一、Xshell 常用技巧



Ctrl + insert // 复制
Shift + insert // 粘贴
Ctrl + c  // 中断当前操作,并另起一行重新输入
Tab // 补全 Linux 命令
clear // 清屏


二、文件的类型与权限


下图是我随便截取的一些目录和文件,我们可以看到,一行最开头,形如 " -rw-r–r–" 这样的字母,让我们很难懂是什么意思。此外,一些文件,有些是蓝色的,有些是绿色的,这也是很难懂。


579853f13caa4c30bc0d4e8059ecdd02.png


(1) 我们先来解决第一个问题


一个文件的权限分为三种,可读、可写、可执行。


r 表示可读,w 表示可写,x 表示可执行。
( read, write, execute )


例如:" rwx " 就是一个可读可写可执行的文件。

例如:" -rw " 就是一个可读可写不可执行的文件。


此外,Linux 把用户分成了三类


① 文件拥有者

② 文件拥有者的同组用户

③ 其他用户


那么,10 个字母的 " 2-10 " 位,就分别对应着三类用户的权限。

第一个字母与用户无关,表示文件类型," d " 表示目录," - " 表示普通文件。


请看下图:


4360a504b4d24776ba3e1922817d8027.png

(2) 再来看第二个问题


蓝色的表示目录,白色表示普通文件,绿色表示可执行文件,红色表示压缩包。


(3) 修改文件权限


  • " + " :向权限范围增加权限代号所表示的权限
  • " - " :向权限范围取消权限代号所表示的权限
  • " = " :向权限范围赋予权限代号所表示的权限
  • " u " :拥有者
  • " g " :拥有者同组用户
  • " o " :其它用户
  • " a " :所有用户


格式:


chmod u+x *.txt // 针对拥有者,为 txt 文件加上可执行权限
chmod u-x *.txt // 针对拥有者,为 txt 文件去除可执行权限
chmod a+x *.txt // 针对所有用户,为 txt 文件加上可执行权限
......


展示:


f596e2d61fc649409e65636394625fdd.png


注意:修改文件类型以及某类用户的权限,只有 root 才有这个权力取执行这些操作, root 在 Linux 系统上,具有至高的权力,所以,它也不用遵守上面的一系列规则。


三、Linux 权限


命令提示符


在我们每次输入命令的时候,都会看到前面有个框框,那是什么意思呢?


dfaa210a541945eb92a8ae4a43a40226.png


两类用户


Linux 下有两种用户:管理员(root)、普通用户。

管理员:可以在 Linux 下做任何事情,不受限制。

普通用户:在 Linux 下做有限的事情。


管理员的命令提示符是 " # ",普通用户的命令提示符是 " $ "。

我们的服务器买好了,默认就是 root 用户,但 root 用户权力比较大,一旦使用不当可能会造成严重后果 ( 例如 rm -rf / 操作)。


因此我们在公司中工作的时候,不会直接使用 root 用户来操作服务器。

如果在学习的过程中,一台云服务器属于个人私有,那其实就无所谓 root 的使用。

如果在学校中,几个同学一起使用一台云服务器,那么建议,每个人都要创建一个用户和对应的密码,以此来做到互不干扰。


用户操作


声明:创建某个用户、配置 / 修改某个用户的密码 都仅只可由 root 用户来操作。


1. 创建用户


useradd 用户名

2. 配置密码


passwd 用户名


注意,往命令行输入密码的时候,在控制台中不会有提示,但已经输入进去了。


3. 切换用户


su 用户名


例如:从 root 用户切换到 Jack 用户 【su Jack】

例如:从 Jack 用户切换到 root 用户 【su】/ 【su root】

一般情况下,从 root 切换成 普通用户,不需要输入密码;

从 普通用户切换成 root,需要输入管理员对应的密码。

相关实践学习
ECS云服务器新手上路
本实验会自动创建一台ECS实例。首先,远程登陆ECS实例,并部署应用。然后,登陆管理控制台,并对这台ECS实例进行管理操作。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
Linux Shell
Linux基础:常用命令之echo命令详解(一)
Linux基础:常用命令之echo命令详解(一)
1001 0
Linux基础:常用命令之echo命令详解(一)
|
机器学习/深度学习 Linux Shell
Linux 基础-文本处理命令
Linux 基础-文本处理命令
157 0
|
Linux
Linux 基础-查看 cpu、内存和环境等信息
Linux 基础-查看 cpu、内存和环境等信息
292 0
|
缓存 运维 监控
Linux 基础-查看进程命令 ps 和 top
Linux 基础-查看进程命令 ps 和 top
466 0
|
存储 Unix Linux
Linux 基础-文件权限与属性
Linux 基础-文件权限与属性
138 0
|
算法 Linux Shell
Linux 基础-新手必备命令
Linux 基础-新手必备命令
164 0
|
Linux Shell
Linux 基础-学会使用命令帮助
Linux 基础-学会使用命令帮助
107 0
|
存储 运维 安全
【共读】Linux网络安全精要之基础知
【共读】Linux网络安全精要之基础知
211 0
【共读】Linux网络安全精要之基础知
|
Linux
Linux基础:常用命令之seq命令详解
Linux基础:常用命令之seq命令详解
334 0
Linux基础:常用命令之seq命令详解
|
Linux Shell
Linux基础:常用命令之echo命令详解(二)
Linux基础:常用命令之echo命令详解(二)
510 0
Linux基础:常用命令之echo命令详解(二)