文章目录
Linux
1 概念
Linux 内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。
Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
发行版本:
Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS
优势:
跨平台的硬件支持;
丰富的软件支持;
多用户多任务;
可靠的安全性;
良好的稳定性;
完善的网络功能;
开源(相对闭源 安全)
远程操控:
所需要的工具:Putty,xshell,filezilla…
系统目录:
三个重要的目录,不要删除,无法恢复!!!
/etc
存放所有的系统管理所需要的配置文件和子目录。更改了某个文件就可能导致系统不能启动。
/opt
给主机额外安装软件所摆放的目录。比如你安装一个 ORACLE 数据库则就可以放到这个目录下。默认是空的。
/var
存放不断扩充的文件,经常被修改的文件:日志文件;另外,mail的预设放置在这里。
2 文件的基本属性
多用户系统,用户拥有不同的权限,为了保护系统的安全性,Linux系统对不同的用户访问同一文件的权限做了不同的规定。
2.1 文件是什么?
当为[ d ]则是目录
当为[ - ]则是文件
若是[ l ]则表示为链接文档(link file);
若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置); 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
2.2 文件权限
均为rwx的三个参数的组合,其中,[ r ] 代表可读(read)、[ w ] 代表可写(write)、[ x ] 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号[ - ]而已。
第 0 位确定文件类型
第 1-3 位确定属主(该文件的所有者)拥有该文件的权限
第 4-6 位确定属组(所有者的同组用户)拥有该文件的权限
第 7-9 位确定其他用户拥有该文件的权限
2.3 更改属性
1 chgrp
更改文件属组
chgrp [-R] 属组名 文件名
注意参数: -R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R 的参数,那么该目录下的所有文件的属组都会更改。
新增属组:groupadd java502
改变文件的属组:chgrp java502 lxy.txt
2 chown
更改文件属性,也可以同时更改文件属组
chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
改变属主:chown lxy lxy.txt
3 chmod
更改文件权限
Linux 文件属性有两种设置方法,一种是数字,一种是符号。
Linux 文件的基本权限就有九个,分别是 owner/group/others 三种身份各有自己的read/write/execute 权限。
数字来代表各个权限,各权限的分数对照表如下:
r:4
w:2
x:1
以数字改变: chmod 777 文件名(上帝模式,可读可写可执行,通常是755可读可执行)
以符号改变:
增加权限:chmod +x aaa.txt
减少权限:chmod -x aaa.txt
chmod o=r aaa.txt:o改成可读
2.4 新增用户
cd home/:进入home查看用户
useradd --help:查看帮助命令
useradd lxy:新增用户lxy
passwd lxy:修改用户lxy密码为123123
普通用户$,超级管理员#
用户的权限操作
- touch 文件名:新增文件
管理员中新建文件:touch lxy.txt
vim lxy.txt:进入lxy.txt文件,vim编辑器的上古神器,哈哈哈,输入字母a就可以编辑了。写完之后按esc键,输入:wq(保存并退出)
cat lxy.txt:文件预览
设置文件为chmod 754 lxy.txt,普通用户只读
然后到普通用户的界面(实时更新,不用重启),编辑文件,就有以下界面,显示只读,强行键入a进行修改,就会报错,更加不能去删除咯!
普通用户可以在自己的目录下新增和删除文件,超级管理员就可以在任何地方操作了。
su:就会让你输入密码,这就是要输入超级管理员的密码,然后就进入超级管理员的界面,输入exit就退出了管理员模式。
3 文件和目录管理
3.1 常用命令
-
ls: 列出目录
-
cd:切换目录
-
pwd:显示当前的目录
-
touch 文件名:新增文件
-
mkdir:创建一个新的目录
mkdir [-mp] 目录名称
-m :配置文件的权限
-p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
如:同时创建多层级文件夹:mkdir -p test1/test2/test3/test4
创建文件夹的同时赋予权限:mkdir -m 711 test2 -
rmdir:删除一个空的目录(删除非空用rm),rm -rf test:递归删除非空文件夹test
-
cp: 复制文件或目录
-a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
-d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
-f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
-i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用) ,交互模式
-l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
-r:递归持续复制,用於目录的复制行为;(常用)
-s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;
语法: cp [-adfilprsu] 来源档(source) 目标档(destination)
cp -ai lxy.txt /lxy:把文件lxy.txt复制到文件夹lxy
cp -ai lxy.txt /lxy/lxy2.txt:把文件lxy.txt复制到文件夹lxy,并改名为lxy2.txt -
rm:移除文件或目录
-f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
-i :互动模式,在删除前会询问使用者是否动作
-r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
rm -rf / :删除整个系统,服务器 -
mv:剪切
mv [-fiu] source destination
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
-u :若目标文件已经存在,且 source 比较新,才会升级 (update)
3.2 解压缩(tar)
linux 环境中压缩文件的拓展名:
⚫ *.Z-------------------compress 程序压缩的文件
⚫ *.gz------------------gzip 程序压缩的文件
⚫ *.bz2-----------------bzip2 程序压缩的文件
⚫ *.tar------------------tar 程序打包的数据,并没有压缩
⚫ *.tar.gz---------------tar 程序打包的文件,其中经过 gzip 的压缩
⚫ *.tar.bz2--------------tar 程序打包,其中经过 bzip2 的压缩
Linux 上常用的压缩命令就是 gzip 和 bzip2,制语 compress 已经不再流行,但是这些压缩命令只能针对一个文件进行解压缩,要是很多文件要一起解压缩怎么办?这个时候 tar 命令就显得很重要了,tar 命令可以将很多文件打包。
gzip
gzip 是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出".gz"的扩展名。
命令格式:
gzip [参数] [文件或者目录]
参数:
⚫ -c 将输出写到标准输出上,并保留原有文件。
⚫ -d 将压缩文件解压。(要解压加上这个参数)
⚫ -t 测试,检查压缩文件是否完整。
⚫ -v 对每一个压缩和解压的文件,显示文件名和压缩比。
⚫ -num 用指定的数字 num调整压缩的速度,
◼ -1 或–fast 表示最快压缩方法(低压缩比),
◼ -9 或–best 表示最慢压缩方法(高压缩比)。系统缺省值为 6。
bzip2
bzip2 的压缩比 gzip 更高,压缩效果更好,用法基本和 gzip 一致。
参数:
⚫ -c:将输出写到标准输出上,并保留原有文件;
⚫ -d:执行解压缩;
⚫ -f:bzip2 在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖。请使用此参数;
⚫ -k:bzip2 在压缩或解压缩后,会删除原始文件。若要保留原始文件,请使用此参数;
⚫ -v 或——verbose:压缩或解压缩文件时,显示详细的信息;
⚫ -z 或——compress:强制执行压缩;
⚫ -num 用指定的数字 num调整压缩的速度,
◼ -1 或–fast 表示最快压缩方法(低压缩比)
◼ -9 或–best 表示最慢压缩方法(高压缩比)。系统缺省值为 6。
tar
tar 的参数非常多,我们记住下面几个用法即可:
⚫ 压缩:tar –[j|z]cv -f filename.tar.[bz2|gz] 要被压缩的文件或目录
⚫ 查询:tar –[j|z]tv -f filename.tar.[bz2|gz]
⚫ 解压缩:tar –[j|z]xv -f filename.tar.[bz2|gz] -C 解压到的目录
参数:
⚫ -c: 建立压缩档案
⚫ -x:解压
⚫ -t:查看内容
⚫ -z:有 gzip 属性的
⚫ -j:有 bz2 属性的
⚫ -f: 使用档案名字,切记,这个参数是最后一个参数(建议单独写一个参数 -f ),后面只能接档案名。
⚫ -C 指定目录
4 vim使用
三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
4.1 命令模式
用户启动vim,就进入了命令模式
此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符。比如我们此时按下 i,并不
会输入一个字符,i 被当作了一个命令。
若想要编辑文本:启动 Vim,进入了命令模式,按下 i,切换到输入模式。
命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。
4.2 输入模式
在命令模式下按下 i 就进入了输入模式。
在输入模式中,可以使用以下按键:
⚫ 字符按键以及 Shift 组合,输入字符
⚫ ENTER,回车键,换行
⚫ BACK SPACE,退格键,删除光标前一个字符
⚫ DEL,删除键,删除光标后一个字符
⚫ 方向键,在文本中移动光标
⚫ HOME/END,移动光标到行首/行尾
⚫ Page Up/Page Down,上/下翻页
⚫ Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
⚫ ESC,退出输入模式,切换到命令模式
4.3 底线命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号):
⚫ q 退出程序
⚫ w 保存文件
⚫ wq 保存并退出
⚫ q!强制退出不保存
⚫ :! command 暂时离开 vi 到指令行模式下执行 command 的显示结果!例如『:! ls /home』即可在 vi 当中察看 /home
底下以 ls 输出的档案信息!
⚫ :set nu 显示行号,设定之后,会在每一行的前缀显示该行的行号
⚫ :set nonu 与 set nu 相反,为取消行号!
按 ESC 键可随时退出底线命令模式。
4.4 三种模式总结
来源:CSDN
作者:莫小夕儿呀
链接:https://blog.csdn.net/weixin_45044097/article/details/103581309