Linux 基础
? 原 创 不 易 , 还 希 望 各 位 大 佬 支 持 一 下 👍 点 赞 , 你 的 认 可 是 我 创 作 的 动 力 ! ?? 收 藏 , 你 的 青 睐 是 我 努 力 的 方 向 ! ?? 评 论 , 你 的 意 见 是 我 进 步 的 财 富 !
前言
为什么要学习Linux
- 对于绝大多数的企业来说,服务器一般安装在linux上
- 现在主流的云计算包括大数据,等等都是默认支持linux系统
- 面试岗位需求
Linux 学习方法
- C语言可以当做是一门技能,大量的练习,但是Linux绝大部分的内容是需要理解,一般练习也就是 基础命令的练习
- 学习方法:理解记忆+看书 (上课理解,下课巩固+扩展),这样子可能学习效率更高
1.Linux介绍
- linux(类unix系统):多用户多任务的操作系统
- unix系统:贝尔实验室1969年开发,unix7系统时候,发现unix的商业价值,就开始收回授权,最终在1982年发布了第一个完全商业版本unix system 3 芬兰的一个教授因为unix的版权原因,就准备开发一个类unix的操作系统,Minix(微型unix系统), 主要是用来教学和教育机构。
- linus(林纳斯·托瓦兹),学习Minix源代码,半年后,开发一个linux内核(最初的版本)。
- GNU,革奴计划:理查德斯托曼,致力于开发一个完全免费,自由,开源的并且兼容unix系统的操作系 统GNU,
但是这个计划发展了10来年,唯独缺少一个内核,当然这个计划有内核,叫hurd(只不过,一直在开发 中)
刚好GNU缺少内核,Linux缺少配套工具,刚好合在一起就是一个完整的操作系统 所以有人认为linux应该叫做GNU/Linux
- GPL协议:理查德斯托曼在89年和一群律师一起起草了 一份协议,这个协议规定linux 的派生版本必须也免费
2. Linux简介
Linux系统开源,Window不开源 Linux主要应用于服务器上,Window主要应用于个人电脑 Linux主要用命令行操作,Window主要用图形化操作界面 linux免费,window免费
linux是多用户系统,Window是单用户系统
Linux内核版本:www.kernel.org
2.1 查看自己的内核版本号
5.代表主版本号,13是次版本号,0代表修订版本号,35代表修订版本的第几次微调(一般数字越大,内核越新)
2.2 linux的发行版本
- 1.红帽子公司 全球最大的开源技术厂商,提供非常广泛的linux套件,提供全球技术支持(收费)。 有企业版(RHEL),有社区版本(centos),还有一个桌面版本(Fedora)
- 2.debian公司 企业版本(debian) 社区版本(ubuntu) ubuntu系统一款基于debian派生出来的一个产品,对最新的软件兼容性很好,大多数认为ubuntu和fedora系统都是非常好的linux系统
优点:
- ubuntu系统广泛应用于电脑,服务器,物联网,云… 既适合家庭使用环境,也适合商业环境, ubuntu系统拥有良好的安装及操作系统ubuntu系统承诺免费(没有技术支持)
2.3 桌面介绍
2.3.1开关机(尽可能通过这里)
2.3.2 终端的打开
- 在桌面上通过鼠标右边可以打开这个终端
- ctrl+alt+t
- stu:用户名;
- stu-virtual-machine:主机名
- ~/Desktop 当前所在目录的路径
- $ 代表普通用户 #超级管理员
2.3.3 怎么控制终端的大小
- 扩大:ctrl shift ‘+’
- 缩小:ctrl ‘-’
- 进入管理员权限:sudo su
- 退出管理员权限:exit
3. Linux目录结构
- window:将存储空间分为多个盘符:C,D,E,F。。。。
- linux:只有一个根目录,倒立的属性结构,所有文件都是从根目录开始向下存储
3.1 linux的文件目录结构图
3.2常用目录介绍:
- /bin 存放常用的命令(二进制可执行程序)(重点)
- /boot 存放系统内核及启动相关的文件,类似于window里面的C盘,很重要,一般不会让别的人 去挤压它的存储空间(重点)
- /dev 存放我们的设备文件(重点)
- /etc 存放系统配置文件(重点)
- /home 家目录(所有普通用户的家目录)
- /lib 存放库文件
- /proc 存放虚拟文件系统目录,保存进程在内存中的信息(重点)
- /usr 存放系统应用文档和程序 例如QQ微信(重点)
- /var 存放系统运行中经常修改的文件,例如系统日志
- /root 存放管理员的家目录
- /mnt 临时挂载点
- /tmp 存放临时文件,所有用户都可以访问
3.3相对路径和绝对路径
绝对路径:在linux系统中是从系统根目录开始向下遍历到指定位置的路径,中途用我们的‘/’隔开
- 例如:stu的桌面的绝对路径:/home/stu/Desktop
- teacher的用户的桌面的一个叫做main.c:/home/teacher/Desktop/main.c
相对路径:从当前路径开始向下遍历到指定位置的路径
- “.”:代表当前位置
- “…”:代表上一层的位置
- “-”: 代表上一次的位置
- 假设,我们现在用绝对路径描述main.c这个普通文件:/home/stu/Desktop/main.c
- 假设,我们现在就在stu的桌面上,那么此时用相对路径描述main.c这个普通文件:./main.c
相对路径和绝对路径的选择,具体情况具体分析,那个方便用那个。
4. Linux系统文件类型和文件权限
4.1 文件类型
Linux系统认为一切皆文件 所以Linux将所有的东西都看做文件,所以将其分了这些类:
- 普通文件 “-”
- 目录文件 “d” (directory)
- 管道文件 “p” (piping)
- 链接文件 “l” (link)
- 设备文件(块设备“b”(block), 字符设备“c”(char))
- 套接字文件 “s” (socket)
分别解释下什么意思:
- 管道文件:进程间通讯的一种手段
- 链接文件:软链接(字符链接)和硬链接,软链接可以认为是windows下的快捷方式
- 设备文件:块设备:可以从任意位置读取一定长度的设备:例如磁盘,U盘,TF卡等等
- 设备文件:字符设备:只能一字节一字节的读取,不能随机读取,例如鼠标,键盘等等
- 套接字文件:网络通讯的一种方式
linux系统不以后缀名去区分文件类型,后缀名的作用就是帮助我们确定用哪个软件打开它。
4.2 文件权限
- r 读权限 值:4
- w 写权限 值:2
- x 执行权限 值:1 (对于普通文件代表执行权限,对于目录文件,代表可进入权限)
- 无权限 值:0
- u:user 属主的访问权限(拥有者)
- g:group 属组的访问权限(和拥有者同小组的人)
- o:other 其他人的访问权限
4.3 如果修改文件权限
这里有两个修改方法:
4.3.1 文字设定法
chmod 修改权限的命令 u:user 属主的访问权限(拥有者) g:group 属组的访问权限(和拥有者同小组的人) o:other 其他人的访问权限 a:all 所有人 +:添加权限 — :去掉权限 =:表示直接赋值权限 注意:如果想同时给属主,属组,其他人修改权限,用逗号隔开即可
例如:当前文件权限如下: 此时我如果想给main2这个可执行文件进行权限修改,去除掉属主的执行权限,命令如下:
然后,又想给属主减一个r权限,对属组减去一个w权限,对其他人添加一个w权限,命令如下
然后,又想让属主,属组 ,其他人权限都没有,命令如下: 最后,我想让main2恢复到开始的权限(rwxrwxr-x),命令如下:
4.3.2 数字设定法
- r:read 值4(100)
- w:write 值2 (010)
- x:execute 值1 (001)
- chmod XXX filename (0<=x<=7)
- 0 :没有权限
- 1:–x(001)
- 2:-w- (010)
- 3:-wx(011)
- 4:r–(100)
- 5:r-x(101)
- 6:rw-(110)
- 7:rwx(111)
touch filename 创建普通文件 mkdir dirname 创建目录文件
5. 总结
Linux应该理解记忆,加上练习使用,把它当作需要使用的一个软件一样,切记不可死记硬背,那样就本末倒置了,可能会忘得很快,需要我们经常看书,经常复习,这样我们就会掌握好Linux。
|