tcp/ip协议也是应运而生的!
linux是天生的网络操作系统
内核版本:https://www.kernel.org/ 定期更新
发行版本:redhat,centos,ubuntu,红旗Linux…等等
Apache是一个基金会,里面有很多开源的项目
开源不代表免费(仅仅是开放源代码),但开源软件绝大多数都是免费的,可自由传播,改良,甚至销售
开源带来的好处:产品越来越优秀,越来越安全(因为,有更多的人参与进来。)
1、各种网站的后台操作系统:
比如:https://searchdns.netcraft.com
这个网站可以查看,某个网站使用的系统
2、嵌入式应用
智能家电,航空系统,智能卡,手机,相机…等等
各个目录的功能(大部分都是一种规范约定)
目录名 | 目录作用 |
---|---|
/bin |
存放系统命令的目录,普通用户和超级用户都可以执行,不过放在/bin下的命令在单用户模式下也可以执行 |
/sibn |
保存和系统环境设置相关的命令,只有超级用户可以使用这些命令镜像系统环境的设置,但有些命令可以允许普通用户查看 |
/uer/bin/ |
存放系统命令的目录,普通用户和超级用户都可以执行,这些命令和系统启动无关,在单用户模式下不能执行 |
/usr/sbin/ |
存放根文件系统不必要的系统管理命令,例如多数服务程序,只有超级用户可以使用,其实,在Linux中,在sbin目录中的命令只有超级用户能用,bin下的所有用户都可以用 |
/boot/ |
系统启动目录,保存系统启动相关的文件,如内核文件和启动引导程序文件(grub)等 |
/dev/ |
设备文件保存位置,一些硬件文件,硬盘等等 |
/etc/ |
配置文件保存位置。系统内所有采用默认安装方式(rpm安装)的服务的配置文件全部在这个目录保存,如:用户账号密码,服务启动脚本,一些服务的配置文件 |
/home/ |
普通用户的家目录,每个用户都要有一个默认登录位置,这个位置就是该用户的家目录,所有普通用户的家目录就是在/home下建立一个和用户名相同的目录,如:用户user的家目录:/home/user |
/lib/ |
系统调用的函数库保存位置 |
/lost+found/ |
当系统意外崩溃或者机器意外关机,而产生的一些文件碎片放在这里,当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统,这个目录只在每个分区中出现,例如 /lost+found/就是根分区的备份恢复目录,/boot/lost+found/ 就是/boot分区的备份恢复目录 |
/media/ |
挂载目录,系统建议是用来挂载媒体设备的,例如软盘和光盘 |
/mnt/ |
挂载目录,早起Linux中只有这一个挂载目录,并没有细分,现在这个目录系统建议挂载额外设备,例如,u盘,移动硬盘和其他系统的分区 |
/misc/ |
挂载目录,系统建议用来挂载NFS服务的共享目录 |
/opt/ |
第三方安装的软件保存位置,这个目录就是防止和安装其他软件的位置,比如 jdk,tomcat…,但也不强迫,有的人喜欢放到usr下也是可以的 |
proc |
虚拟文件系统,该目录中的数据并不保存到硬盘中,而是保存在内存中,主要保存系统的内核,进程,外部设备状态和网络装填灯 |
/sys/ |
虚拟文件系统,和/proc目录相似,保存在内存中,保存内核相关信息 |
/root/ |
超级用户的家目录,即 / |
/srv/ |
服务数据目录,一些系统服务启动之后,可以在这个目录中保存所需要的的数据 |
/tmp/ |
临时目录,系统存放临时文件的目录,该目录下所有用户都可以访问和写入,我们建议此目录中不能重要数据,每次开机最好清空此目录 |
/usr/ |
系统软件资源目录,注意usr不是user的缩写,而是“Unix Software Resource”的缩写,所以不是存放用户数据,而是存放系统软件资源的目录,系统中安装的软件大多保存这里 |
/var/ |
动态数据保存位置,主要保存缓存和日志以及软件运行所产生的的文件 |
proc和sys是存放在内存中的两个目录,重启会消失。不要往里面写东西,东西一来不会保存,而且当你写满以后就会系统就会出错
usr,系统软件资源目录(system,software,resource)类似于windows的windows目录
注意事项:
1、远程服务器不允许关机,只能重启
2、重启服务应该关闭运行着的服务!!
3、不要在服务器访问高峰运行高负载命令:高负载命令:进行大数据的操作,压缩,扫描复制等等
4、远程配置防火墙的时候记得对自己开放,防火墙甄别是通过:ip地址,端口号,net地址,包数据
5、数据和日志的定时备份,权限的合理分配(最小分配,够用就行),密码的强壮性和定时更新,系统启动的服务越少越好
命令的基本格式:
命令 -选项 参数
比如:ls -la /etc
简化选项和完整选项:-a --a
,单杠和双杠
个别命令可能不遵循此格式
每一个文件都有一个i节点号,每个进程都有一个进程号,每个用户都有一个标识号码
`ls` ls ->(类比于) list ,查看当前目录的所有文件
`ls -a` 所有文件 -> list -all,包括隐藏文件
`ls -l` l -> long 文件的完整信息
`ls -ld` 查看某个目录的详细信息,比如 ls -ld /etc
`ls -h` 人性化的显示数据,比如文件大小,不加h显示的是字节数
`ls -i` 查看文件的inode号(inode存储文件的详细信息),即i节点
完整信息7个部分,分别是:文件类型和权限,文件基数,文件所属者,文件所属组,文件大小,文件最后更新时间,文件名
`mkdir` 创建目录
`mkdir -p` 递归创建目录,即同时创建多个目录
`cd` 切换目录
`pwd` 显示当前目录
`.` 当前目录
`..` 上级目录
`rmdir` [目录名] 删除空目录
`cp 文件目录或文件` (-p保留的文件属性,比如时间等等)
`touch [文件名]` 创建文件,文件名可以含有空格(加双引号),但尽量不要这样做。
`cat [文件]` 查看文件内容
`cat -n [文件]` 显示行号
`tac [文件]` 倒叙查看
`more [文件]` 来查看很多内容的文件这时进入查看文件的状态,
空格或者f来翻页,回车一行行的浏览找到以后,使用q退出浏览状态
`less [文件]` less不仅含有more的所有功能,而且可以使用↑来向上翻行,
pageUp向上翻页,在浏览状态下输入 /log ,
这样他就会在这个文件中搜索log,并且高亮显示。(即可搜索关键字)
`head -n [文件]` 查看文件的前n行内容(n为数字)
`tail -n [文件]` 查看文件的末尾n行内容(n为数字)
`tail -f [文件]` 动态显示文件最后一行的内容,常用来查看日志动态的变化
`ln -s [软链接名]` ln -s /tmp/sjt 在tmp目录下创建sjt软链接(软链接即快捷方式),
软链接的权限都是rwx rwx rwx,不加 -s 生成的是硬链接,
硬链接不可以跨分区,不允许生成指向目录的快捷方式
只有所有者和管理员才能更改权限
{ugoa}
u:所属者,g:所属组,o:其他人,a:所有人
{±=}
+:增加权限,-:减少权限,=:重新授予权限(不管原来是什么,现在就是我授予的权限)
{rwx}
r:可读权限(4) ,w:可写权限(2) ,x:可执行权限(1)
最前面的一个字符含义:
可以同时对几个用户来分配权限,用逗号隔开即可
只有管理员才能改变文件或者目录的所有者
`chown [用户] [文件或者目录]` 更改所属者
`chgrp [用户组] [文件或者目录]` 更改所属组
find [搜索范围] [匹配条件]
`find / -name init` 在根目录下按照文件名来搜索名叫init的文件
`find / -iname init` -iname,不区分大小写查询,* 可以模糊匹配,?可以匹配单个字母
#按文件大小来查找
`find / -size +204800` 在根目录下查找文件大于100M的文件
`find / -size -204800` 在根目录下查找文件小于100M的文件
在linux中,文件的大小要换算成“数据块”
一个数据块 512字节 0.5k
即 1k=2个数据块
100M=102400K=204800个数据块
`find / -user [username]` 根据所有者查找
`find / -group [groupname]` 根据所属组查找
超过5分钟的可以用+
多条件查询:
根据文件类型查找:
find找到的结果,可以再追加命令-exec
或者-ok
,在追加你想要的命令,这样就可以把你find出来的东西,执行你的命令,-exec
是立刻执行,-ok
是一一确认。
`locate [文件名]` 查找系统文件,但要注意一些临时目录是查不着的,要定期维护更新数据,
`updatedb` 更新数据表
`which [命令]` 查看命令所在的目录
man
和 info
是大同小异的
`man ls` 使用命令man查看 ls 命令的解释
`whatis [命令]`
`whereis [命令]`
`apropos [配置文件]` 查看配置文件的帮助信息,(不写配置文件的绝对路径)
进入以后有些ls的信息,按q
退出
Linux中数字1代表命令的帮助,5代表配置文件的帮助,两者都有的话优先显示命令的帮助,你也可以man 5 passwd
`[命令] --help` 查看该命令的一些选项
`help umask` 查看一些内置命令的帮助
什么是内置命令,你使用which
和whatis
的时候,显示不出来帮助的一些信息
`useradd [用户名]` 这一步其实只是创建了一些文件,想要登录系统,还需要设置密码
`passwd [用户名]` 这里就设置了密码,即用户可登录你的系统。
`who` 查看登录的用户
用户,登录终端(tty表示本机,pts表示虚拟终端),时间(系统ip地址)
w
命令
Linux中的压缩格式,.gz
.zip
文件格式,Linux和windows中都可以识别
`gzip [文件名]` 压缩该文件,注意,gzip只能压缩文件,不能压缩目录
`gunzip [压缩的文件]` 解压该文件
`gzip -d [压缩的文件]` 解压该文件
`tar [参数] [目录]` 打包(压缩)目录,比如 `tar -zcf [目录]`
`tar -xf [目录]` 解包(解压缩)目录,和上面的压缩,只有 `-c`和`-x`(解包)的区别
`zip sjt.zip sjt` 压缩文件sjt
`zip -r sjtD.zip sjtD` 压缩目录sjtD
`unzip [文件或者目录]` 解压缩
bzip2的压缩度很高,一般用来压缩大文件,bunzip2
解压缩
总结如下:
`w` 查看当前在线用户 ,who也可以
`write [用户名]` 给该在线用户发送一条消息,写错了,`ctrl+backspace`来删除,直接删除,删除不掉。写完以后`Ctrl+D`来保存发送。
`wall [内容]` 广播一些东西,所有在线用户都可以收到
`ping [ip地址]` 查看地址是否通畅
`ping -c 4 [ip地址]` ping4次目标地址
`ifconf` 查看当前计算机的网卡信息
`mail [用户名]` 发送邮件给用户,在线与否都可以
`mail` 接收查看当前的邮件,然后直接输入邮件的序列号,就可以查看该邮件,h查看邮件列表,`d [序列号]` 删除邮件,`q` 退出
`last` 查看所有用户的登录情况,包括多次登录的用户,只要来过就会记录
`lastlog` 查看所有用户的最后一次登录情况
`lastlog -u [用户的id]` 查看指定用户最后一次登录的信息
`traceroute [ip地址或者域名]` 显示数据包到主机间的路径
`netstat -anop` 查看监听的地址及其端口和状态
netstat
命令的选项和常用示例
mount
命令来挂载光盘
关机之前需要注意,停止机器上的服务
`shutdown [选项] [时间]` 选项 -c,-r,-h
`shutdown -r now` 立即重启
`shutdown -r 20:30` 晚上八点半重启
`shutdown -h now` 立即关机
`shutdown -h 20:30` 晚上八点半关机
`shutdown -c` 取消上一个关机命令
`logout` 退出登录
还有一些其他的关机重启操作,但是shutdown
更加安全
vim是功能强大的全屏幕文本编辑器,它的作用是建立,编辑,显示查看文本文件
vim没有菜单,只有命令
定位命令和删除命令是在编辑模式进行的
命令模式下
编辑模式下:
:r [文件的绝对路径] 可以将该文件的内容导入到光标处
:r ![命令] 可以将命令的执行结果写入到本文件的光标处
k 向上(↑)移动光标
j 向下(↓)移动光标
h 向左(←)移动光标
l 向右(→)移动光标
软件包分类:
使用yum
命令来管理rpm包,自动下载依赖的rpm包
这样就会自动下载依赖并且自动确认安装该包
yum -y undate [包名] 升级对应的包名
yum -y update 更新所有的软件包,包括Linux的内核,这样可能会导致系统宕机
yum -y remove [包名] 卸载对应的包名,卸载包的时候,要注意,卸载这个包时,这个包的依赖也都会卸载,其他包(甚至系统)
也可能依赖已经卸载的这个包的依赖包,这样就会导致其他软件不可用或者系统崩溃,
所以用这个命令一定要小心,最好不要使用...
service