linux基础
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux基础,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含25564字,纯文字阅读大概需要37分钟。
内容图文
1:Linux 操作系统简介
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、
应用程序和网络协议。它支持32位和64位硬件。Linux 继承了Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
1991年的10月5日,Linux 创始人林纳斯.托瓦兹(Linus Torvalds) 在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生,
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL ( General Public License的缩写,
是一份GNU通用公共授权)协议。
2:Linux具有如下优点:
1:稳定、免费或者花费少(免费开源,)
2:安全性高(比windows安全性高很多,linu设计的时候严谨性很高,linux全是英文界面,)
3:多任务,多用户(一台linux系统上面可以运行多个任务,几十个上百人同时登录系统使用)
4:资源消耗少
5:由于内核小,所以它可以支持多种电子产品 如:androd手机和pda等,(安卓手机很多都是基于linux内核版本来研发的)
3:linux的使用范畴
Linux:主要使用在网站,大数据和虚拟化和企业其他这方面。开源免费的系统,
基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统,
windws:pc机器
4: Linux 发展趋势
随着IT产业的不断发展,用户对网站体验要求也越来越高,而目前主流网站后端承载系统都是Linux系统,
目前Android手机全部基于Linux内核研发。企业大数据、云存储、虚拟化等先进技术都是基于Linux系统。
2010年据有关权威部门统计:将来几年内我国软件行业的从业机会十分庞大,中国每年对软件人才的需求将达到50万人左右。
而对于Linux专业人才的就业前景,更是广阔:据悉在未来5-10年内Linux专业人才的需求将达到120万+!尤其是有经验的资深的Linux工程师目前非常的缺乏,
薪资也是非常诱人,平均月薪都是15-20K,能力强的薪资更高。
5: Linux 系统安装
在安装Linux系统之前,先来了解windows系统结构,windows 系统一般是安装在 C盘系统盘,
同样Linux也有类似的系统盘(/根分区),Linux通常分区为(根分区、swap 分区),
Linux系统以文件的存储方式,所有的文件都是存储在某个目录下的,类似于windows的文件夹。
对于文件系统的属性来说,windows 文件系统类型一般是ntfs、fat32 等,
而Linux文件系统类型则为ext2、ext3、 ext4等(文件系统:是操作系统用于明确磁盘或分区上的文件的方法和数据结构,
文件系统由三部分组成:与文件管理有关软件、被管理文件以及实施文件管理所需数据结构。)
安装Linux 系统是每一个初学者的第一个门槛。在这个过程中间,最大的困惑莫过于给硬盘进行分区。虽然现在各种发行版本的Linux 已经提供了友好的图形交互界面,
但是很多人还是感觉无从下手。这其中的原因主要是不清楚Linux 的分区规定。就好比如果我们了解linux分区原则,系统盘c,数据盘d,就很好分区了
在Linux中规定,每一个硬盘设备最多只能有4个主分区(其中包含扩展分区)构成,
任何一个扩展分区都要占用一个主分区号码,也就是在一个硬盘中,主分区和扩展分区-共最多是4个。
下面正式来安装Linux系统,安装系统前需要准备如下软件:
VMware workstation 10.0 虚拟机
CentOS 6.5 x86_ i386.iso
CentOS是redhat的一个开放版本,CentOS是子版本
6:linux目录结构
目录文件大体功能:进入任何一个目录执行命令,目录的命名也是标准和规范,自己也可也新建一个临时的目录,也是可以的,
/ 根目录
/bin 存放必要的命令
/boot 存放内核以及启动所需的文件/dev存放设备文件
/etc 存放系统配置文件
/home 普通用户的宿主目录,用户数据存放在其主目录中
/lib 存放必要的运行库
/mnt 存放临时的映射文件系统,通常用来挂载使用。
/proc 存放存储进程和系统信息
/root 超级用户的主目录
/sbin 存放系统管理程序
/tmp 存放临时文件
/usr 存放应用程序,命令程序文件、程序库、手册和其它文档。
/var 系统默认日志存放目录
7:root用户和普通用户
进入系统,我们会看到这样的字符: [root@localhost ~]# ,
其中#代表当前是root用户登录,
如果是$表示当前为普通用户。root用户能执行系统的任何东西,普通用户只能在自己的数组目录,自己家目录操作文件,
8:linux用户权限
在Linux操作系统中,root 的权限是最高的,相当于windows 的administrator,拥有最高权限,能执行任何命令和操作。
在系统中,通过UID来区分用户的权限级别,UID等于0,表示此用户具有最高权限,也就是管理员。其他的用户UID依次增加,
通过/etc/passwd 用户密码文件可以查看到每个用户的独立的UID.
每一个文件或者目录的权限,都包含一个用户权限、一个组的权限、其他人权限,例如下:(三种角色对自己文件都有特定的权限)
标红第一个root表示该文件所有者是root用户,第二个root代表该文件的所属的组为root组,其他用户这里默认不标出。
[root@node1 ~]# ls -l monitor log.sh
-rw-r--r-- 1 root root 91 May 7 20:21 monitor log.sh
[root@node1 ~]#
如果我们想改变某个文件的所有者或者所属的组,可以使用命令chown(继承的意思)
chown -R test:test monitor_ log.sh 即可。
每个Linux文件具有四种访问权限:可读(小)、 可写(w)、 可执行(x)和无权限(-).
利用ls-1命令可以看到某个文件或目录的权限,它以显示数据的第一个字段为
准。第一个字段由10个字符组成,如下:
-rw-r--r-- 1 rootroot 91 May 720:21 monitor _log-.sh
第一位表示文件类型,表示文件,d表示目录;后面每三位为一组。
第一组: 2-4位表示文件所有者的权限,即用户user权限,简称u
第二组: 5-7 位表示文件所有者所属组成员的权限,group 权限,简称g
第三组: 8-10 位表示所有者所属组之外的用户的权限,other权限, 简称。
从上面这个文件,我们可以看出,monito log.sh 文件对应的权限为:
root用户具有rw读和写的权限,root组具有r读的权限,其他人具有r读的权限。
Monitor log.sh 权限可以表示为: 644
chmod o+w test.txt 给o(other其他用户)增加test.txt的w(写)的权限
chmod u+x test.txt 给u(用户增加x(执行权限))
chmod u=rwx,g=rwx,o=rwx test.txt 设置u-所有者是root用户,g-该文件的所属的组为root组,o-其他用户 三个一起设置权限
为了能更简单快捷的使用和熟悉权限,rwx权限可以用数字来表示,分别表示为r(4)、w(2)、x (1)
u的权限rw,r=4,w=2,所以用户三种权限加起来设置为6,----644,用户6的权限rw,组4的权限r,其他人4的权限r
chmod 777 test.txt 可以把test.txt文件的三个权限全部设置成rwx
第一个数字代表用户,第二个数字代表组,第三个数字代表其他人的权限
chmod 777 test.txt 可以把test.txt文件的三个权限全部设置成rwx
第一个数字代表用户,第二个数字代表组,第三个数字代表其他人的权限
9:linux网络配置,
ifconfig linux查看ip,windows:ipconfig
ifup eth0 启动eth0网卡,linux ip网卡命名是eth0
linux所有的东西都是以文件方式存储的,设置网络的文件,修改内容文件
cd /etc/sysconfig/netwodk-scripts/ 在这个文件夹下的 ifcfg-eth0 默认是dhcp获取的,可以改成静态的,BOOTPROTO属性改成static静态
ONBOOT 系统开启或者服务重启,这个网卡是启动还是关闭,我们设置成功yes打开
IPADDR=192.168.10.129
NETMASK=255.255.255.0
GETWAY=192.168.10.1
上面设置网络信息----谨记,上面设置网络参数不能有空格,
然后重启network网卡服务:/etc/init.d/network restart
linux都是在操作系统里面的东西,权限,创建删除,
10:操作系统的作用
管理硬件和程序的一套系统软件,
处理器管理
内存管理
文件系统管理
进程管理
外设管理
用户管理
等等
11:计算机软件
计算机软件:系统软件+应用软件+操作系统(操作系统也是软件,对下对接硬件,对上提供接口给应用软件调用,系统调用)
操作系统:调度管理,管理底下的硬件,给应用软件提供服务器
12:linux内核:
操作系统的内核:负责cpu的调度,内存的管理非常重要最核心的功能,内核还不是完整的操作系统,GUN项目:
13:终端的概念:
远古时期:硬件设备
个人电脑时代:虚拟终端设备
网络时代:远程终端:软件模拟出一个终端设备来,软件模拟窗口,显示器一样显示东西,通过键盘输入命令,鼠标也可也操作,linux主机在机房,云服务器
我们一般就是通过远程终端软件模拟器连接---直接通过pytty连接服务器(pytty)
ssh协议登录上去的,linux主机ip地址,端口号默认ssh的22端口,服务端的ssh需要起来,用户名+密码太短时是否有提示
netstat -an|grep 22 linux查看sshd的服务器,绑定在22端口这个端口上,正在监听在这个端口上,
必须要有这个ssh这个服务xshll等终端(客户端)才能连接进去。网络协议ssh协议
14:交互式的命令提示行
[root@worker1 ~]# root用户名 worker主机名 #代表root权限用户 ~当前用户的home目录
15:shell与命令
用户通过命令和Linux进行交互
Linux是通过Shell来解释执行命令
Shell是一个程序
Shell的种类
标准shell (sh),
Bourne Again SHell (bash) 主流的linux,主要围绕这个讲解
Korn shell (ksh)
C shell (csh) unix环境用的多
远程登录,通过字符终端命令方式和linux进行交互,命令输入过去,linux接收到命令作出反应后返回结果,
人机交互,通过命令的方式和linux操作系统进行交互操作系统接收用户命令,是通过Shell来解释执行命令,
交互式窗口:远程终端输入命令,shell接管了,远程终端输入的命令都被shell程序接收了,
人通过终端设备输入命令,敲给shell,shell接收到终端命令之后首先判断这个命令需要什么样的程序去执行,
然后再把这些程序调用起来执行用户的命令,返回执行结果----大概的过程
命令通常也是一个个的可执行程序(ls,psw等)
每个命令执行具体任务完成一个功能,
16:命令的格式
command 参数1 参数2.....参数n conmand命令名字+一个个参数,参数个数可变
linux命令由一个命令和零到多个参数构成,命令和参数之间,以及参数与参数之间空格隔开
命令和参数都是区分大小写的 PS和ls/Home
选项参数可以合并
ps -e-f = ps-ef
17:linux文本编辑器
vi编辑器
VI/VIM概述
Vi是所有Linux系统都提供的文本编辑器,它提供了一个窗口,通过它可以编辑文本文件
vim是vi的增强版本支持vi全部的功能
增加命令
增强功能包括颜色标记功能
远程登录方式基本只能用vi编辑器了,vim是vi增强版本,码农基本都是vim编辑。不需要使用键盘,
vi的全部功能vim都是有的,还增强了一些功能,分屏。增加了一些命令,常用的代码文件python,shell,
java都增加了高亮显示,识别了文本文件所属的语言,加颜色标记---看起来清晰明了
centos安装的vi都是vim,敲的vi的命令实际上显示的是vim
vi 输出:VIM - Vi IMproved ,增强版vi
18:VI编辑创建文件
在Linux终端中,直接输入vi就可以打开vi工具,这个时候默认的是命令模式
如果vi后面接具体的文件名,表示打开该文件进行查看和编辑
编辑一个已经存在的文件(看底部提示
编辑一个不存在的文件(看底部提示)
vi+文件名 vi编辑文件,如果文件不存在,新建这个文件编辑,如果文件存在,打开已经存在的文件进行编辑保存
没有鼠标,纯键盘操作(和Windows记事本比较)
远程登录linux主机,shell里面敲vi命令就可以打开了,
19:VI操作模式
vi可分为三种操作模式,分别是
1.命令模式(command mode)
2.插入模式(Insert mode)
3.底线模式(Last line mode)
三种工作状态,完成不同的任务,各个状态下完成不同的任务,
一:命令(COMMAND)模式(刚进入vi编辑器就是命令模式,)
刚进入时的缺省状态
此时不可以直接去添加文字
不能用退格删除文字
控制屏幕光标的移动, 定位要编辑的区域,输入字符
字符的删除、复制、粘贴
进入插入模式
进入底线模式
刚进入vi编辑器就是命令模式,不能输入字符,主要功能:
1:控制屏幕光标的移动,字符的删除、复制、粘贴
2:进入插入模式
3:进入底线模式 (文本导航,删除复制黏贴)
二:插入模式insert模式(可以输入了)
在插入模式下面可以对文件内容进行编辑
插入模式下底部有个 INSERT 标记
在命令模式下,可以输入下面的字符进入插入模式(命令模式进入插入模式一般按i底部出现insert--进入插入模式)
i :插入,从目前光标所在之前插入所输入的字符 (光标前面插入insert)
a :增加,目前光标所在的下一个字符处开始插入字符 (光标后面插入,往后添加)
o:插入新的一行,从行首开始输入文字 (o-open new line 插入新行,光标跳入下一行)
插入模式下,按Esc键,插入模式切换到命令模式,这时候本身没有保存,esc不会退出vi,只是切换回命令模式
三:底线模式(底行模式) 只有命令模式才能进入底线模式
先按Esc键进入命令模式后,再输入shift+冒号:进入底线模式 命令模式按冒号,(底下出现冒号和光标,底行模式)
在底线模式下,可以完成对文件的保存、内容替换、显示格式的设置等工作,输入命令后点击回车就是执行了命令,
再按Esc键又退回到命令模式
set nu :底线模式显示行号命令
set nonu:底线模式取消行号
进入vi首先进入命令模式 ——>输入i,a,o进入插入模式,编辑和输入字符 ——>输入esc 又退回到命令模式
——>shift+冒号,命令模式进入底线模式 >——>esc又能退回命令模式
插入模式不能和底线模式互相切换的,需要命令模式中转站
底线模式下:q 退出vi,文本不保存退出
vi编辑是存键盘操作,不需要使用鼠标,命令快捷键进行光标移动
命令模式功能-光标移动功能
按G: 移动到文件的最后一行 shitf+g就是大g-退到最后一行
按gg : 移动到文件的开头 第一行
按0或^: 光标移动到所在行的行首
按$: 光标移动到所在行的行尾
光标的上下左右移动:
使用键盘上的方向键
或者kjhl对应上下左右
按ctrl+f往下翻一页 文件很大才需要翻页。系统log文件查找问题, forward前
按ctrl+b往上翻一页 backward后
vim pageup pagedown也能翻页
命令模式功能-删除、复制
x:删除 vi编辑大小写敏感,按大x往前删,小x往后删
小x删除当前光标所在的字符,相当于delete键删除 大X相当于backspace退格键,命令模式下退格键相当于左移
只有插入模式下退格键才可以删除,按大x往前删,小x往后删
x与X(del与backspace )
3x表示删除光标所在位置后的3个字符,包括光标所在的位置
如果不小心先按了数字键,按ECS取消
dw:删除光标所在处到词尾的内容
dd:删除光标所在的行,3dd表示删除光标所在位置往下的3行,包括光标所在的行(删除三行)
yw:复制光标所在处到词尾的内容(空白和(括号都认为是单词的间隔) yw:word复制一个单词
p:黏贴(包括前面复制操作或者删除操作的内容) paste黏贴,复制到光标所在的下一行
vi里面假如一行很长,会换行显示,虽然显示多行其实还是一行,
复制多行,数字的操作,
vi命令模式下数字键要特别小心:vi里面数字键代表几次操作,比如 3+x会执行删除三个字符,这样的情况
命令模式下按 u 键就是撤销上一步操作,恢复(undo) 不小心按了数字键,按esc撤销刚才数字按底的操作,再输入操作
命令模式功能一替换、撤销
r:取代光标所在处的字符 repalce,输入r后输入1
R:连续取代字符直到按Esc为止 R后不停输入1,替换多个字符
u:假如误操作一个指令,可以马上按u,进行撤销,可以连续按u ,散销多个之前做过的操作(等于windows下面ctrl+z)
Ctrl+r: 重做被撤销的操作(等于windows下面ctrl+y) redo--再做一次
插入模式:也可以上下左右。插入模式的退格键才是删除,命令模式的退格键不会删除
插入模式功能:
注意:
上下左右键也可以导航
退格键可以删除字符
终端模拟器,比如PuTTY,xhell。中的复制粘贴 使用终端模拟器复制再插入模式里面黏贴进去
底线模式功能: 查找、定位(控制功能),在命令模式下面输入冒号进入底线模式
set nu:会在文件的每一行前面列出行号 ,log文件看日志显示行号 set nu是set number的缩写,set number也是可以的
set nonu 取消行号,
#是你要输入的数字,再按回车,将跳到数字指定的行,比如找到log日志的1000行, 输入冒号进入底线模式,
直接输入20跳到20行,输入的数字比文件还多,跳最后一行 #表示一个数字,直接数字就行,跳转100输入100行,跳转1000输入1000
/关键字 : 先按/,再输入你要寻找的字,vi关键字查找,/下划线,正斜杠,比如查询查询bit / bit 输入inter bit高亮显示,
也可也不按冒号进入底线模式,命令模式下直接/bit也可也查找
查找到很多bit可以按键盘的n(next) 跳转到下一个bit,往回找(shift+n也就是大N往回找)
可以输入n,进行向下连续查找,
N是往上查找
set ic:忽略大小写 不管大小写都要找,冒号进入底线模式,敲set ic (ic-ignorecase缩写)忽略大小写,大写的也能找到
set noic:不忽略大小写
底线模式功能-字符替换
在底线模式下输入1, $s/string/replace/g会将全文的string字符串取代为replace字符串
1, $s/string/replace/g string准备替换的字符,replace要用来替换的字符
文档中所有的str替换成replace 文档中所有的str替换成replace
1,$表示从第一行到最后一行 $ vi里面表示最后的意思 s表示替换 g表示每行全部替换
str一行出现多次,不带g这个参数就只替换每一行第一次出现的这个字符,后面出现的str不会替换了
或者%s/string/replace/g 也能替换文档中的内容
1, 20s/string/replace/g: 将1至20行间的string替relpace字符串
5s/gog/pig/g 现在只替换第五行的,不是每行都被替换
# w filename 如果您想摘取文章的某一段,存成另一个文件,可用这个指令#代表行号,例如30,50 w nice
使用vi看日志,使用vi编辑配置文件---大部分都是这种使用,不会编辑大型文件
底线模式功能-保存、退出
w write, 写入磁盘。 1,3w bbb 把当前文件的1-3行写入另外一个文件bbb
q 退出
q! 强制退出
w a1 当前文件保存后需要另外文件另存一份,w+文件名 写到a1文件,当前正在编辑的文件还是for——vi
file 查看当前编辑文件的属性(当前编辑的哪个文件)
w filename (将文件保存为filename)
wq (保存文件并且退出vi)
q! (强制退出vi并不保存当前更改的内容)
w! (强制写文件,如果该文件属性为只读,那么也强制更改该文件,并退出)
f 查看当前文件信息
edit 在vi里面打开另一个文件 edit bbb 当前文件跳转到bbb文件
! 强制的意思,
文件只读,不一定能写进去,加!,强制写进去,当前用户必须对文件有操作权限,但是文件只是只读
打开vi查看查看编辑另外一个文件,
模式之间的切换,删除,光标的导航,保存----重点了解
20:linux文件系统
分区和文件系统的概念
linux目录结构,文件系统挂接
绝对路径和相对路径
一:分区和文件系统的概念
Windows.上的分区和文件系统:
新机器分区、格式化(选择文件系统NTFS) ,隐藏文件系统结构数据文件系统的理解类比国家划分、选择管理制度
如果只分配了一个c盘,其他的都没利用起来,空白磁盘不能不用,-----磁盘分区,windows基本都是文件系统ntfs格式,
如果把磁盘比作地球空间,分区把各个区域按照国家划分下来,------大分区,小分区
有了区域需要管理好,管理制度,不同的区域可能管理制度不一样,管理制度对应我们分区上创建文件系统的操作,文件系统是管理文件的系统
它除了文件数据存放在文件系统,还有一些需要的管理数据,这个数据看不见,摸不着,操作系统划分完分区会有隐藏的数据存在磁盘
那是操作系统用来管理的管理型数据,----档案管,隐藏的数据文件结构
WINDOWS文件系统特点:
Windows的文件结构是多个并列的树状结构,
最顶部的是不同的磁盘(分区)如: C, D, E等盘文件路径都是从盘符开始
Windows文件系统里面都是磁盘文件或目录
Windows文件路任是大小写不区分的
linux上的分区和文件系统:
linux支持的常见的文件系统种类:ext2 ext3 ext4 不同管理方式不同的文件系统 文件系统驱动的概念
LINUX文件系统目录特点:
Linux文件系统目录里面不都是磁盘文件
Linux中,文件是个非常广泛的概念:
磁盘上的文本,图片,视频文字,Linux文件不单单只磁盘上的文件,图片,视频,
还包括硬件设备在系统里让命令访问到它,也是用一个文件系统路径一样的东西来去访问
比如打印机、终端设备: /dev/try 设备文件,并不止磁盘文件,
一些抽象的概念比如管道等: /proc
改变思维定式:看到文件路径就是磁盘上的存储的目录或文件对应起来。
linux文件不一定是磁盘上的东西,可能是存在内存里面一个抽象的对象
牛角尖: /dev, /proc 到底存在哪里?
LINUX文件目录结构的建立与挂接
文件结构不是从盘符开始的,而是从/根的目录开始,文件系统目录结构操作系统在引导的过程当中首先一步一步创建起来的
创建一个初始文件系统目录结构(包括mount到/文件系统)
初始化程序:挂接文件系统(mount /etc/fstab)
手动也可以mount命令
linux文件系统目录结构
/ 根(底下把子目录给创建出来如下,有的子目录对应磁盘上的文件,有的是不对应的)
对应磁盘上的根目录,挂接到根节点,根节点对应磁盘上的一个分区
除了磁盘分区文件,还有其他一些文件也挂接到根节点下面,不是这个磁盘上对应的文件系统,比如:proc 目录,不对应磁盘上的文件,
dev 设备,不对应磁盘上的,指的设备文件 ,这就是和windows不同的地方 不是每个分区分配一个盘幅,都是从 /根节点开始。
至于这个分区上的文件怎么访问,看磁盘挂在哪个地方,比如磁盘分区---sda1分区,挂接到根目录下的opt目录下面,挂接好了之后
这个分区下面有a1 a2 a3三个文件,挂接上opt好了之后,就在这个opt目录下面了,可以 /opt/a1这样访问文件路径
分区没有挂接之前没法访问的,必须挂接到文件目录结构中去才能访问 ----挂接,挂上去
挂接操作怎么完成:装机装好了之后在分区的过程中会让选择,比如分了个区,让挂到根目录下,至少挂到根目录下
也可能还一些分区挂到opt 或者其他目录,挂上去后,安装过程软件会记录到一张表文件上面:mount /etc/fstab,记录下来。
哪个分区挂在哪个地方了,---启动过程中读取这个文件:执行挂接操作,也就是mount操作
初始化程序干这个事情,已经挂好之后,挂载是程序的一些操作,程序可以调用系统文件挂载上去----手工也可也执行mount命令进行挂载
比如新插了个磁盘上去,不自动挂载的话需要mount命令手动挂载(底层系统调用)--文件系统连接到某个目录
现在的虚拟机接个光盘:centsos会自动检测光盘mount上去,操作系统管理程序发现一个光盘被插入了,然后它调用mount操作,mount到文件系统上去
通过mou命令也可也执行挂接:nt 命令查看挂接的操作,
/dev/sr0 on /media/CentOS_6.5_Final type iso9660 (ro,nosuid,nodev,uhelper=udisks,uid=0,gid=0,iocharset=utf8,mode=0400,dmode=0500)
dev/sr0 光盘设备 /media/CentOS_6.5_Final 挂接的目录 ,创建了这么一个目录挂接上去了
type iso9660 光盘的文件系统 格式iso9660,
df 查看光盘挂载的目录,可以通过挂机点访问文件系统
linux命令执行挂接操作:
1:umount 反挂接,弄下来,不让他挂接目录,现在没法访问: umount /media/CentOS_6.5_Final/ /media/CentOS_6.5_Final
2:mkdir 创建目录 mkdir dog 光盘可以是物理光盘,也可以是image文件,虚拟光盘文件,iso文件
3:man mount 查看mount挂接文件系统命令的用法
4:mount 设备名称(文件系统) 挂接地址名称 如下:
mount /dev/sr0 /home/jcy/test/dog 只有root用户才能挂接 挂接文件系统的命令
linux系统上的目录结构
/bin存放必要的命令
/boot存放内核以及启动所需的文件/dev存放设备文件
/etc存放系统配置文件I
/home普通用户的宿主目录,用户数据存放在其主目录中
/lib存放必要的运行库
/mnt存放临时的映射文件系统,通常用来挂载使用。
/proc存放存储进程和系统信息
/root超级用户的主目录
/sbin存放系统管理程序
/tmp存放临时文件
/usr存放应用程序,命令程序文件、程序库、手册和其它文档。
/var系统默认日志存放目录
linux文件结构是单个的树状结构,没有C,D,E盘符,一切都是从 / 根目录开始,根目录下面有些东西是磁盘上的内容,没有挂接的话磁盘上的内容不能访问
挂接到哪个挂接点上,文件就从那挂接点的路径开始访问
linux操作系支持哪些文件系统的格式(靠操作系统的安装的文件系统驱动)
:ext3(内置的,安装各种文件系统驱动模块识别挂接其他的格式,如ntfs,都是靠驱动) nfs proc vfat
LINUX下磁盘分区特性:磁盘分区都必须挂载到目录树中的某个具体的目录上才 能进行读写操作 (否则就像Windows下 而分区没有盘符)
可以挂接到任何文件系统的盘符,很长的文件结构都行/a/b/c/d,----都可以通过这个路径访问文件系统
df -ahT 查看linux系统磁盘分区情况,ahT加这个参数查看得比较详细,可以查看文件系统的类型,T=Type h=可读性很好的情况展示结果
filesystem 对应的文件系统所在的设备是什么----分区
proc 虚拟文件系统,不是真正磁盘的文件系统,-------/dev/打头的一般对应磁盘分区文件
21:文件名与特殊文件
Linux文件名称:大小写敏感,无专用扩展名
/opt/al 和/opt/A1 是两个文件
ls命令查看文件和目录 xhsell里面蓝色是文件夹,其他颜色是文件),列出文件内容
ls; ls- a-1; a:all 查看更详细信息 l:list 列排序
/ 表示根目录
. 表示当前目录
.. 表示当前目录的父目录
.字符串 表示隐含文件,如".bash_ profile" 文件 ,linux .+文件 ,表示这个文件隐藏了,ls不加a参数查看不到
22:LINUX系统常用目录: 经常访问的目录
/ Linux系统的根目录
/etc 系统管理和配置文件 操作web服务器,大量配置文件都在etc这个目录下
/home 用户主目录,比如用户user的主目录就是,多用户系统,每个用户都有自己的主目录,刚登录的时候都是进入到自己主目录里面去的,
比如用户user,用户主目录一般都是home/user下,这个home/user给自己用的,自己创建文件,目录,给用户用的
/home/user
/boot Linux系统的内核文件放在该目录下面,读取内核文件执行
/sbin 系统管理命令,这里存放的是系统管理员使用的管理程序,bin =binary 二进制代码文件,给cpu之间读取的,可执行程序
/root 系统管理员的主目录
/bin 常用可执行文件,主要有: cat,chmod,chown, date,ImV,mkdir, cp,bash等等(基本是单人维护模式下还能够被操作的指令)
/dev 设备文件,如/dev/cd0 设备文件一般放这下面
/usr 用户级应用程序 和文件几乎都在这个目录下面
/proc 一个虚拟文件系统,放置的数据都是在内存当中。例如系统核心、进程信息(process)、设备的状态及网络状态等等(放系统信息,进程信息)
/tmp 公用的临时文件存储点,存放一些临时文件,清除了也没关系
/mnt 系统提供这个目录是让用户临时挂载其他的文件系统,光盘一般挂这上去,临时挂载的东西
/lib 一些库文件。不可以删除,删了系统跑不起来了(库,可执行程序必须要加载一些库才能执行)
23:绝对路径与相对路径
当前目录(工作目录) 我们直接工作的目录(shell目录,shell本身在的目录就是当前目录)很多操作都是基于当前目录的
当用户刚登录系统时,当前目录是用户的家目录(home 目录)
用户家目录在创建用户的时候会产生,一般是/home/用户名:比如你是用户limin,家目录一般是/home/limin 一般用户只能在家目录写文件,其他目录不行
当前目录下面的所有文件都可以直接访问, 假设当前目录下面有个文件,a. txt。 要用vi编辑它,就可以直接执行vi a. txt
绝对路径(全路径):
开始于根目录,紧跟着目录树的一个个分支,一直到达所期望的目录或文件 /home/jcy/test 从/根目录开始的就是全路径 ls /home/jcy/test 绝对路径显示
相对路径
开始于当前目录,紧跟着目录树的一个个分支,一直到达所期望的目录或文件。 进入到想要显示的文件输入:ls 当前路径显示 这就是相对路径
. 代表当前目录 ls ./test/log 和ls test/log效果一样的,因为.代表当前路径,.有的时候作为程序脚本运行需要的,
./hell.sh 表示告诉shell在当前路径下找程序hell.sh运行执行,不然shell程序找不到脚本
..代表当前目录的父目录 python ../hello.py 代表执行当前目录下的上一层目录下的hello.py 的python文件
相对路径谨记:不能 cd /aaa/bbb/ 这样写,最前面不要加/,最前面加/代表根目录开始找 需要 cd aaa/bbb 这样写 或者cd ./aaa/bbb 这样写
24:看文本文件内容
cat less vi more head tail
25:通配符 有的时候经常用的*或者?匹配一系列文件
模式 匹配对象
* 所有文件,匹配任意字符 ls * 列出当前目录下的所有文件
g* 文件名以”g“开头的文件,可能是g文件,可能是g1 ls y* 列出当前目录下y开头的文件或者y开头的文件夹里面的内容
b*.txt 以"b"开头,中间有零个或任意多个字符,并以".txt"结尾的文件 rm -rf *.log 删除所有的.log结尾的日志文件
Data??? 以"Data"开头,其后紧接着3个字符的文件 ?匹配一个字符。三个?匹配三个字符 ls a?
[abc]* 文件名以"a","b",或"c"开头的文件
26:文件链接
类似windows快捷方式,把文件用一种类似快捷方式,再另外一个目录再创建一个名字,看起来和文件一样,其实是一个链接
为什么需要链接
巨大的文件、目录,复制占空间,
不能移动,那个位置也有用
和复制的区别:文件在磁盘中只有一个拷贝,节省磁盘空间
硬链接、软链接
ln dog dog-hard; 硬链接、软链接dog要链接的文件的名字(链接源文件) dog-hard要参数链接的名字,链接文件的名称
ln-s pig pig-soft 软链接
内容总结
以上是互联网集市为您收集整理的linux基础全部内容,希望文章能够帮你解决linux基础所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。