关于Linux
背景
最先出现的是Unix操作系统,这种操作系统收费,而且适用于大型机上面。
Linus想做一个免费的,传播自由的操作系统。他就仿照Unix的操作,做了一个类Unix系统:Linux内核。
注意:Linux不是一个操作系统,只是一个内核。
Linux衍生版本
Linux只是一个内核,但在内核外面做封装后就可以成为一个操作系统。
- Ubuntu
- Redhat/CentOS
- SUSE
- Fedora
- 深度deepin
Linux的特点
- Linux的哲学:一切皆文件。(比如,目录也是一个文件)
Linux的内核版本
Linux的内核版本由3个数字组成:r,x,y
- r:目前发布的Kernel主版本。
- x:偶数代表稳定版本,奇数代表开发中的版本。
- y:错误修补的次数
比如:CentOS使用的Linux内核版本是3.10.0
名词解释
Kernel: 是Linux内核的名字。
CentOS 和 RHEL
- RHEL与CentOS是Linux的衍生版本
- 它们都是Redhat公司商业发行
- RHEL:Red Hat Enterprise Linux,主要面向企业用户
- CentOS:一个开源软件共享者和用户的社区。(为了用户熟悉它的操作系统)
Linux的操作系统的组成
Computer Resources:计算机资源,即硬件资源。如CPU,内存。
Kernel:Linux内核。
Shell:壳。包裹在内核外面。接收用户命令,处理后交给Kernel执行。
文件系统:文件的管理。如文件的存储,文件的创建与删除。
应用程序:分为系统程序和用户程序。
安装Linux
想要在自己电脑上安装Linux可以借助rufus。
这里介绍的是虚拟机安装。
主流的虚拟化软件
下载VMware:https://www.vmware.com/go/getworkstation-win
CentOS7
下载地址:https://mirrors.tuna.tsinghua.edu.cn/centos/7.7.1908/isos/x86_64/CentOS-7-x86_64-Minimal-1908.iso
安装步骤
配置硬件
(遇到没有说的步骤就是按默认即可)
- 点击VMware主页面的+号,创建新的虚拟机。
- 选择自定义安装。
- 选择"稍后安装操作系统"。
- 选择Linux-> CentOS 64位
- 虚拟机命名:如CentOS7_1。单独设置一个存放此虚拟机的目录(不要带有中文),目录名最好也叫CentOS7_1。
- 处理器数量选择1,核心选择4.
- 内存选择2048MB。
- 网络类型选择NAT。
- 磁盘:40G。选择“将虚拟磁盘存放为单个文件”。
- 最后选择"自定义硬件" -> 选择CD/DVD -> 选择"使用ISO镜像文件" -> 浏览选择你的CentOS镜像路径。
- 确定 -> 开启此虚拟机。
配置CentOS
- 选择安装过程中的语言: 按默认即可。
- 选择NETWORK & HOST NAME。打开网络开关,等待几秒,获取ip。最后点击Done。
- 选择DATE & TIME。在地图中点击上海的位置。(Region变成了Asia,City变成了Shanghai),最后点击Done。
- 选择LANGUAGE语言,将中文项的“简体中文勾选”。最后点击Done。
- 选择“Installation Destination”,因为只有一块硬盘,所以默认帮我们选择了,直接点击Done即可。
- 点击Begin,Installation。
- 安装过程中点击"ROOT PASSWORD",设置root的密码。如果设置的是简单密码,需要点击两次Done。
远程连接工具
我们通常都不会去直接操作服务器,而是远程连接它。
好处:可以复制粘贴,可以开启多个终端,可以在自己的电脑上控制远程服务器。
xshell远程连接教程
- 点击左上角的+号。新建会话。
- 名称:会话的名称,比如CentOS7_1,MyAliVPS。
主机:填写服务器的ip地址。
端口号:默认是22. - 点击"用户身份验证"。输入用户名和密码。
- 连接。
xftp
这个远程连接工具专门用于传输文件,传输服务器和个人电脑之间。
好处:速度快。方便。
- 左边是本机的文件,右边是服务器的文件。
- 两者之间传输文件:直接拖过去。
Linux系统入门
用xshell连接后:
- root表示当前登录的用户。
- ali_vps是主机名,默认是localhost。
- 表示当前所在的目录名。(特指/root)
快照
快照相当于一个照片,可以将虚拟机的状态定格在某一刻。
当我们某一天把虚拟机玩蹦之后,可以点击恢复快照,这样虚拟机就会回到这个时刻。
注意:一定要先关机,再拍摄快照!否则就会保存内存中的无用信息。因为开机的时候,内存中是有数据的,也属于虚拟机当前的状态,所以也会被保存。
操作技巧
- 使用Tab补全
Linux中很多命令可以Tab补全。只需要输入前面的字母就可以了。
- 回到命令的首位和末尾
如果想修改命令的首位,可以按Ctrl+A。
按Ctrl+E回到末尾。
- 打断命令
Ctrl+C可以打断命令,命令不会被执行。
- 在Xshell上复制粘贴
复制:按Ctrl+insert
粘贴:按Shift+insert
- 历史命令
上下键即可翻阅历史命令
history #输出命令历史
!998 #运行历史命令中998号命令
!his #运行最近的一个以his开头的命令
- 断线后重新登录
在xshell断开与服务器的连接之后,可以使用
Ctrl+Shift+R
重新登录
root用户
root是Linux的超级管理员,拥有至高无上的权限。
家目录
每个用户都有自己的家目录。
超级用户root的家目录在/root。其他用户的家目录在/home。比如,user1的家目录为/home/user1。
用户登录之后,默认所在的目录就是家目录。
Linux中用~特指家目录。
绝对路径和相对路径
- 根目录
Linux里所有的文件都是挂载到根目录下的。
- 绝对路径
绝对路径是以/开头的,和当前所在路径无关。
- 相对路径
相对路径是依赖于当前所在路径的。
比如,当前路径为/root,有文件123.txt。想要删除,直接rm 123.txt
,而不是rm /root/123.txt
系统命令
poweroff #关机
reboot #重启
logout #退出当前登录
安装软件
yum –y install net-tools #安装net-tools
#-y的意思是不再询问是否安装,直接yes
网络命令
ip address #查看ip地址等网络信息
ifconfig #查看ip地址等网络信息(需要安装net-tools)
ping baidu.com #ping百度(Ctrl+C打断)
操作文件与目录
- 查看目录下的文件
ls #查看当前目录文件
ls -l #查看当前目录文件,并显示详细信息
ll #与ls -l作用相同
- 切换路径
change directory用于改变当前所在目录
Linux中用.来表示当前目录,用…表示上一级目录。
cd /root #切换到/root目录下
cd ~ #切换到家目录
cd #切换到家目录
cd - #返回刚才的目录
cd .. #切换到上一级目录
- 查看文件内容
cat 123.txt #查看文件123.txt的内容
- pwd
pwd #查看当前所在目录的路径
- 创建文件
touch 456.txt #创建一个普通文件
mkdir dir1 #创建一个目录(make directory)
- 删除文件
rm 123.txt #删除123.txt(会询问是否删除,按y确认删除)
-f #不再询问是否删除普通文件
rm -rf dir1/ #删除目录(r表示递归删除)
- 移动和重命名文件
mv 123.txt dir1/ #将123.txt移动到dir1里
mv 123.txt dir1/456.txt #将123.txt移动到dir1里,并重命名为456.txt
mv 456.txt 123.txt #重命名文件
- 复制文件
cp -a 123.txt 456.txt #将123.txt复制,复制为456.txt
#-a的意思是复制文件所有的属性(比如属主)