Linux是自由、开源的操作系统,安装在计算机的硬件之上,是用来操作计算机硬件和软件资源的系统软件,一般应用于专业的web服务器上,具有以下特性
-
Linux注重系统的安全性,对文件访问权限有严格设定,最高权限账户为root
用户,可以操作一切,详见第三章
-
自由和可定制性非常高,可以根据需求对Linux 核心内核进行修改
-
可视化界面相对较差,不太符合普通人使用习惯,软件支持欠缺
一、Linux入门
Linux:开源的操作系统的不同发行版
开源资料推荐
由于开源,Linux也有了很多的发行版本,下面简单介绍一下常用的Linux发行版,相对社区活跃,软件资源丰富
Ubuntu
- UI好看,但是相对不稳定,适合自用或者Windows开始转用Linux系统
- 包管理工具:
apt
- 性能略差于CentOS
centos
搭建一个Linux学习环境
两种方式搭建Linux学习环境
- 通过VMware等软件安装虚拟机,再安装CentOS镜像
- 从云服务器提供商租赁云服务器
云服务器搭建Linux环境(推荐)
注:
- 云服务器的方式更接近真实开发,并且本地虚拟机配置较为繁琐
- 我们需要用到以下两个工具来连接和管理远程虚拟机
-
Xshell
:用于连接远程机,连接后可用命令行操控远程机
-
Xftp
:用于本机和远程机传输文件时使用
-
购买云服务器
分享几点个人意见
-
前期学习,购买轻量应用服务器和云服务器均可
-
善用Google找到当前最合适的优惠
几个常见的优惠
-
腾讯云教育优惠地址
-
Amazon会有时间很长的试用,但是有一定门槛
-
阿里云免费试用1个月的活动
-
进入云服务器控制台,进行以下操作,之后我们可以用Xshell
(会话管理工具)连接到这个服务器
- 重置实例密码,用做与XShell连接时的登录密码
- 记住公网ip,用作填写新建会话时的主机号
- 进行安全组配置,开放端口号(例:22端口号就是Xshell远程登录端口号)
-
Xshell新建会话,连接远程服务器
需要修改几点
- 名称:自定义,可以修改为过期时间
- 主机:刚刚购买的公网ip地址
- 端口号:默认22端口
- 密码:重置后的实例密码
-
点击连接,默认用户名是root,密码就是你重置的密码
使用Xftp进行文件管理和传输
至此,一个远程Linux环境搭建完毕
VMWare搭建一个Linux虚拟机
前置操作
步骤如下
-
VMware Workstation创建一个新的虚拟机,通过自定义方式安装,注意以下设置
- 硬件兼容性:默认
- 资源分配:根据自己电脑配置
- 网络类型:网络地址转换NAT
- IO控制器、磁盘类型:默认
- 选择磁盘:创建新的虚拟磁盘
- 选择下载好的Iso镜像文件,然后开启虚拟机,根据提示安装即可
- VMWare搭建好虚拟机后,需要进行网络配置,才可以在外网使用Xshell连接并管理这台主机,详情请参考Xshell连接VMware虚拟机中的CentOS
图:Kubuntu系统在虚拟机中安装成功
使用docker在windows上搭建Linux环境
详情请参考这篇文章
Linux系统目录结构以及功能
登录系统后,在当前命令窗口下输入命令
ls /
注:
- 下图中的箭头指向该文件夹的的实际位置,可以理解为Windows中的快捷方式,Linux通过**
挂载
**实现这个功能
以下是对这些目录的解释:
-
/bin:
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
-
/boot:
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
-
/dev :
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
-
/etc:
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
-
/home:
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。
-
/lib:
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
-
/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
-
/media:
linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
-
/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
-
/opt:
opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
-
/proc:
proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
-
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。
-
/sbin:
s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。
-
/selinux:
这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
-
/srv:
该目录存放一些服务启动之后需要提取的数据。
-
/sys:
这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs
sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。
该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
-
/tmp:
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
-
/usr:
usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
-
/usr/bin:
系统用户使用的应用程序。
-
/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。
-
/usr/src:
内核源代码默认的放置目录。
-
/var:
var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
-
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
-
/etc:
上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
-
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在 /bin/ls 目录下的。
-
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给 root 使用的指令。
-
/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里
Linux系统开关机
Linux系统在开机时会自启动许多程序。它们在Windows叫做服务(service
) , 在Linux就叫做守护进程 (daemon
)
启动后,用户的登录方式有三种:
- 命令行登录
- SSH登录远程操作
- 图形界面登录(GHOME桌面)
关机
在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。
关机指令为 shutdown
,默认不是马上关机,需要等待一分钟,这样做是为了在关机前执行一个sync
操作
sync #将数据由内存同步到硬盘中,这个操作可以防止断电丢失数据
shutdown #关机指令,你可以man shutdown 来看一下 帮助文档。例如你可以运行如下命令关机:
shutdown -h 10 #这个命令告诉大家,计算机将在10分钟后关机
shutdown -h now#立马关机
shutdown -h 20:25 #系统会在今天20:25关机
shutdown -r now #系统立马重启,也会执行sync操作
shutdown -r +10 #系统十分钟后重启
reboot #就是重启,等同于shutdown -r now
halt #停机不断电,内存中数据还在,这样可以使系统处于一个低功耗状态
总结:不管是重启还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中,执行命令之后没有返回消息则表明运行成功
Vim:文本编辑器
Vim 是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,由于Linux操作系统通常为了性能考量,没有图形化界面,所以文本的编辑就需要用到Vim了
Vim编辑器有三种模式
一般模式:用户刚刚启动 vi/vim,便进入了一般模式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)