Linux简介
Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。
Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux安装
虚拟机安装向导时,不可在这里选择镜像文件,会打开简易安装略过一些系统的选择设置,如果安装后不是图形化桌面,可以看一下是否在这里选择的镜像
选择第一行回车即可,第二行为测试
安装完成后,就可以进行系统设置
在软件选择位置,进入选择带GUI的服务器
完成自己想要的设置后,开始安装即可
这里会提示设置ROOT密码和用户
等待安装完成,重启就可进入系统
Linux目录结构
系统启动必须
- /boot
存放的启动Linux 时使用的内核文件,包括连接文件以及镜像文件 - /etc
存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动 - /lib
存放基本代码库(比如c++库),其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库 - /sys
该目录下安装文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中
指令集合
- /bin
存放着最常用的程序和指令 - /sbin
只有系统管理员能使用的程序和指令
外部文件管理
- /dev
Device(设备)的缩写, 存放的是Linux的外部设备。
注意:在Linux中访问设备和访问文件的方式是相同的 - /media
类windows的其他设备,例如U盘、光驱等等,识别后linux会把设备放到这个目录下 - /mnt
临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了
临时文件
- /run
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run - /lost+found
般情况下为空的,系统非法关机后,这里就存放一些文件 - /tmp
这个目录是用来存放一些临时文件的
账户
- /root
系统管理员的用户主目录 - /home
用户的主目录,以用户账户命名 - /usr
用户的应用程序和文件放在此目录 - /usr/bin
系统用户使用的应用程序和指令 - /usr/sbin
超级用户使用比较高级的管理程序和系统守护程序 - /usr/src
内核源代码默认的放置目录
运行过程中使用 - /var
存放经常修改的数据,比如程序运行日志 - /proc
管理内存空间
虚拟的目录,是系统内存的映射,可以直接访问这个目录来,获取系统信息。这个目录的内容不在硬盘上而是在内存里,也可以直接修改里面的某些文件来做修改
扩展 - /opt
默认为空,可以安装额外软件放入 - /selinux
这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的 - /srv
存放服务器启动后需要的数据
Linux文件基本属性
Linux 中可以使用以下两个命令来修改文件或目录的所属用户与权限
- chown (change owner) : 修改所属用户与组
- chmod (change mode) : 修改用户的权限
使用ll
或者ls -l
命令来显示一个文件的属性以及所属的用户和组
图片中,bin文件的第一个属性用d
表示,d
在linux种代表文件时一个目录文件
在linux中第一个字符代表这个文件时目录、文件或连接文件等等
- 当为
d
则是目录 - 当为
-
则是文件 - 当为
l
则表示为链接文档(link file) - 当为
b
则表示为装置文件里面的可提供存储接口设备 - 当为
c
则表示为装置文件里面的串行端口设备
接下来的字符中,以三个为一组,且均为rwx
的三个参数的组合。其中,r
代表可读(read)、 w
代表可写(write)、x
代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已
每个文件的类型由左边第一部分的十个字符来确定
更改文件属性
- chgrp:更改文件属组
chgrp [-R] 属组名 文件名
- R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改
- chown:更改文件属主,也可以同时更改文件属组
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
进入/root目录(~)将一个文件拥有者改为bin这个用户
将刚才更改的文件改回root
- chmod:更改文件9个属性
Linux文件属性有两种设置方法,一种是数字,一种是符号。
Linux 文件的基本权限就有九个,分别是 owner/group/others(拥有者/组/其他) 三种身份各有自己的 read/write/execute 权限
文件的权限字符为:rwxrwxrwx
, 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下: - r=4
- w=2
- x=1
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: rwxrwx
分数则是:
- owner = rwx = 4+2+1 = 7
- group = rwx = 4+2+1 = 7
- others= — = 0+0+0 = 0
所以等一下我们设定权限的变更时,该文件的权限数字就是 770
chmod [-R] xyz 文件或目录
- xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加
符号类型改变文件权限
可以使用 u, g, o 来代表三种身份的权限
a 则代表 all,即全部的身份。读写的权限可以写成 r, w, x
尝试把上面的实验对象改回默认,可以使用 chmod u=rw,g=,o= 文件名