【介绍】Linux
目前大部分公司的服务都是部署到Linux上的,学习Linux也是很有必要的。
操作系统
操作系统简介
- 操作系统(Operation System,简称OS)是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石。
- 操作系统本质上是运行在计算机上的软件程序。
- 为用户提供一个与系统交互的操作界面。
- 操作系统分内核与外壳。
操作系统简单分类
- windows:目前最流行的个人桌面操作系统。
- unix:最早的多用户、多任务操作系统,按照操作系统的分类,属于分时操作系统。unix大多被用在服务器、工作站。
- linux:linux是一套免费使用和自由传播的类unix操作系统。linux存在许多不同的linux版本,但他们都使用了linux内核。
初探linux
- 类unix系统
- linux内核
- linux之父:也是GIT的主要开发者。
linux的分类
- 内核版本:linux不是一个操作系统,严格来讲,linux只是一个操作系统中的内核。内核建立了计算机软件与硬件之间通讯的平台,内核提供系统服务,比如文件管理、虚拟内存、设备IO等。
- 发行版本:一些组织或公司在内核版基础上进行二次开发而重新发行的版本。发行版本有很多种:ubuntu、centOS等
linux文件系统概览
linux文件系统简介
在linux操作系统中,所有被操作系统管理的资源,例如网络接口卡、磁盘驱动器、打印机、输入输出设备、普通文件或是目录都被看作是一个文件。
也就是说在linux系统中有一个重要的概念:一切都是文件。其实这是unix哲学的一个体现,而linux是重写unix而来,所以这个概念也就传承了下来。在unix系统中,把一切资源都看作是文件,包括硬件设备。unix系统把每个硬件都看成是一个文件,通常称为设备文件,这样用户就可以用读写文件的方式实现对硬件的访问。
文件目录结构
- /bin:存放二进制可执行文件(ls、cat、mkdir等),常用命令都在这里
- /etc:存放系统管理和配置文件
- /home:存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user
- /usr:用于存放系统应用程序
- /opt:额外安装的可选应用程序包所放置的位置。一般情况下,我们可以讲Tomcat等都安装到这里
- /proc:虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息
- /root:超级用户的主目录
- /sbin:存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序,如ifconfig等
- /dev:用于存放设备文件
- /mnt:系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其它的文件系统
- /boot:存放用于系统引导时使用的各种文件
- /lib:存放着和系统运行相关的库文件
- /tmp:用于存放各种临时文件,是公用的临时文件存储点
- /var:用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件等。
- /lost+found:这个目录平时是空的,系统非正常关机而留下的文件就在这里
linux基本命令
目录切换命令
- cd usr:切换到该目录下usr目录
- cd ..:切换到上一层目录
- cd /:切换到系统根目录
- cd ~:切换到用户主目录
- cd -:切换到上一个所在目录
目录的操作命令
- mkdir 目录名称: 增加目录
- ls或者ll:查看目录信息
- find 目录 参数:寻找目录 (查)
- mv 目录名称 新目录名称:修改目录的名称
- mv 目录名称 目录的新位置:移动目录的位置
- cp -r 目录名称 目录拷贝的目标位置:拷贝目录, -r 代表递归
- rm [-rf] 目录:删除目录
文件的操作命令(增删改查)
-
touch 文件名称: 创建文件
-
cat /more/less/tail 文件名称 文件的查看
-
cat:只能显示最后一屏
-
more:可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
-
less:可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看
-
head -10:查看文件的前10行
-
tail -10:查看文件的后10行
tail -f可以对某个文件进行动态监控。
-
-
vim 文件:修改文件的内容
vim编辑器是linux中强大的组件,是vi编辑器的加强版,vim编辑器的命令和快捷方式有很多。
在实际开发中,使用vim编辑器主要作用就是修改配置文件和编写shell脚本。
vim文件—>进入文件—>命令模式—>按i进入编辑模式—>编辑文件—>按esc进入底行模式—>输入:wq/q!(输入wq代表写入内容并退出,即保存;输入q!代表强制退出不保存。)
-
命令模式
用vim打开一个文件刚开始进入的就是命令模式,在这个模式下我们可以控制光标移动,字符,字或者行的删除,移动复制某段区域,在该模式下可以进入插入模式也可以进入底行模式。
-
编辑模式
在编辑模式下才可以插入文字,按esc进入底行模式
-
底行模式
在底行模式下保存文件或者退出vim
-
-
vim常用命令
-
移动光标
- vim可以使用小写英文字母hjkl分别控制光标左下上右移动,可以使用箭头
- ctrl+b 屏幕往后移动一页
- ctrl+f 屏幕往前移动一页
- ctrl+u 屏幕往后移动半页
- ctrl+d 屏幕往前移动半页
- shift+g == G 移动到文章的最后
- shift+4 == $ 移动到光标所在行的行尾
- shift+6 == ^ 移动到光标所在的行首
- w 光标跳到下个字的开头
- e 光标跳到下一个字尾
- b 光标回到上个字的开头
- ’#’l 例如5l,光标移动到该行的第’#’个位置
- gg 进入到文本的开始
-
删除文字
- x 每按一次删除光标所在唯一的一个字符
- ’#’x 删除光标所在位置的后面(包含自己在内)6个字符
- shift+x == X 每按一次,删除光标所在位置的前一个字符
- shift+#x == #X 删除光标所在位置的前面#个字符
- dd 删除光标所在行
- ’#’dd 从光标所在行开始删除#行
-
复制
- yw 将光标所在之处到字尾的字符复制到缓冲区
- ’#’yw 复制#个字符到缓冲区
- yy 复制光标所在行到缓冲区
- ’#’yy 复制光标所在行下数#行
- p 将缓冲区内的字符贴到光标所在位置
-
替换
- r 替换光标所在处的字符
- R 替换光标所到之处的字符,知道按下esc为止
-
撤销上一次的操作
u 回到上一个操作,可多次
-
更改
- cw 更改光标所在处的字到字尾处
- c#w 更改#个字
-
跳至指定行
- ctrl+g 列出光标所在行的行号
- ’#’G 表示光标到文章的第#行行首
-
压缩文件的操作命令
打包并压缩文件
linux中打包文件一般是以.tar结尾的,压缩的文件一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz 。命令 tar -zcvf 打包压缩后的文件名 要打包压缩的文件 其中
- z:调用gzip压缩命令进行压缩
- c:打包文件
- v:显示运行过程
- f:指定文件名
解压压缩包
- tar [-xvf] 压缩文件
- x:代表解压
linux的权限命令
操作系统中每个文件都有特定的权限、所属用户和所属组。权限是操作系统用来限制资源访问的机制,在linux中权限一般分为读(readable)、写(writable)和执行(excitable),分为三组。分别对应文件的属主(owner),属组(group)和其它用户(other),通过这样的机制限制哪些用户、哪些组可以对特定的文件进行什么样的操作。
文件的类型:
- d:代表目录
- -:代表文件
- l:代表链接(可以理解为window中的快捷方式)
linux中权限分为以下几种:
- r:代表权限是可读,r也可以用数字4表示
- w:代表权限是可写,w也可以用数字2表示
- x:代表权限是可执行,x也可以用数字1表示
修改文件/目录权限的命令:chmod
chmod u=rwx,g=rw,o=r xxx.txt
Chmod 764 xxx.txt
linux用户管理
linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
linux系统用户组的管理
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同linux系统对用户组的规定有所不同,如linux下的用户属于它同名的用户组,这个用户组在创建用户时同时创建。
其它常用命令
- pwd:显示当前所在位置
- grep:要搜索的字符串 要搜索的文件 —color:高亮
- ps -ef/ps aux:这两个命令都是查看当前系统正在运行的进程,两者的区别是展示格式不同。
- kill -9 进程的pid:杀死进程(-9 表示强制终止)