-
Linux
1、概念
1.1、Linux:通常服务器使用LAMP(Linux+Apache+MySQL+PHP)或LNMP(Linux+Nginx+MySQL+PHP)组合。
1.2、 开机会启动许多程序,在Windows叫“服务”,在Linux叫“守护进程”。
2、 Linux关机指令
Linux中没有错误就表示操作成功。
2.1、sync:将数据由内存同步到硬盘中
2.2、shutdown -h 10:十分钟后关机
shutdown -h now:立马关机
shutdown –h 20:25:今天20:25关机
shutdown -r now:立马重启
shutdown -r 10:十分钟后重启
reboot:重启,等同于shutdown -r now
halt:关闭系统,等同于shutdown -h now和poweroff
3、 系统目录结构
3.1、 一切皆文件。
3.2、根目录所有的文件都挂载在这个节点下。
3.3、/bin:bin是Binary的缩写,这个目录存放着最经常使用的命令。
3.4、/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。(不要动)
3.5、/dev:dev是Device(设备)的缩写,存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
3.6、/etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。(常用)
3.7、/home:用户的主目录,在Linux中,每个用户都由一个自己的目录,一般该目录是以用户的账号命名的。(常用)
3.8、lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。(不要动)
3.9、/lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。(存放突然关机的一些文件)
3.10、media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
3.11、/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。(后面会把一些本地文件挂载在这个目录下)
3.12、/opt:给主机额外安装软件所摆放的目录,比如你安装一个oracle数据库则就可以放到这个目录下,默认是空的。(常用)
3.13、/proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。(不用管)
3.14、/root:该目录为系统管理员,也称作超级权限者的用户主目录。(常用)
3.15、/sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
3.16、/srv:该目录存放一些服务启动之后需要提取的数据。
3.17、/sys:这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统Sysfs。
3.18、/tmp:用来存放一些临时文件的。用完即丢的文件,可以放在这个目录下,安装包。(常用)
3.19、/usr:非常重要的目录,用户的很多应用程序和文件都存放在这里。(常用)
3.20、/usr/bin:系统用户使用的应用程序。
3.21、/usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
3.22、/usr/src:内核源代码默认的放置目录。
3.23、/var:存放着在不断扩充着的东西,习惯将那些经常被修改的目录放在此目录下,包括各种日志文件。
3.24、/run:是一个临时文件系统,存储系统启动以来的信息,当系统启动时,此目录下的文件应该被删掉或清除。
3.25、/www:存放服务器网站相关的资源、环境、网站的项目。
4、常用的基本命令
4.1、cd
切换目录命令;cd ./:当前目录;cd ..:返回上一级目录;cd /:切换至根目录;cd ~:回到当前用户目录,也直接用cd。
4.2、ls
列出目录(最常用的)
-a参数:all,查看全部的文件,包括隐藏文件。
-l参数:列出所有的文件,包含文件的属性和权限,没有隐藏文件。
4.3、pwd
显示当前用户所在的目录。
4.4、mkdir
创建一个目录;mkdir -p test1/test2:递归创建多级目录。
4.5、rmdir
删除目录;rmdir仅能删除空的目录,如果下面存在文件,需要先删除文件,递归删除多个目录用-p参数即可。
4.6、cp
复制文件或目录;cp原来的地方 新的地方。
4.7、rm
移除文件或者目录
-f:忽略不存在的文件,不会出现警告,强制删除。
-r:递归删除目录。
-i:互动,删除询问是否删除。
4.8、mv
移动文件或目录/重命名文件。
-f:强制移动。
-u:只替换已经更新过的文件。
6、文件基本属性
6.1、文件类型
在linux中第一个字母代表这个文件是目录、文件或链接文件等等。
当为[d]则是目录;当为[-]则是文件;当为[l]则表示为链接文档。
接下来的字母中,以三个为一组,且均为rwx的三个参数的组合。
其中,[r]代表可读(read),[w]代表可写(write),[x]代表可执行(execute)。
注意:没有权限,用减号(-)代表。
6.2、格式
文件类型 属主权限 属组权限 其他用户权限
0 1 2 3 4 5 6 7 8 9
d r w x r - x r - x
目录文件 读 写 执行 读 写 执行 读 写 执行
6.3、修改文件属性
6.3.1、chgrp
更改文件属组
chgrp [-k] 属组名 文件名
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
6.3.1、chown
更改文件属主,也可以同时更改文件属组
chown:[-R] 属主名 文件名
chown:[-R] 属主名:属组名 文件名
6.3.2、chmod
更改文件9个属性
用数字表示权限:r:4 w:2 x:1
owner=rwx=4+2+1=7
group=rw-=4+2+0=6
others=---=0+0+0=0
7、文件内容查看
7.1、ifconfig
命令查看网络配置。
网络配置目录:cd /etc/sysconfig/network-scripts(CentOS7)
7.2、cat
由第一行开始显示文件内容,用来读文章,或者读取配置文件,都是用cat。
tac:从最后一行开始显示,可以看出tac是cat的倒着写。
7.3、nl
显示的时候,顺道输出行号,看代码时,想显示行号。
7.4、 more
一页一页的显示文件内容(空格代表翻页,enter代表向下看一行,:f行号)
7.5、less
与more类似,但是比more更好的是,可以往前翻页(空格翻页,上下键代表翻动页面,退出用q命令)
查找字符串:/要查询的字符(向下查询) ?/要查询的字符(向上查询)
h继续搜寻下一个 N向上搜寻。
7.6、head
只看头几行 通过 -n 参数来控制显示几行
7.7、tail
只看尾巴几行,-n 参数,要查看几行。
8、Linux链接的概念
8.1、种类:硬链接、软链接
硬链接:A---B,假设B是A的硬链接,那么他们两个指向了同一个文件,允许一个文件拥有多个路径,用户可以通过这种机制建立硬链接到一些重要文件上,防止误删。
软链接:类似于Windows下的快捷方式,删除的源文件,快捷方式也访问不了。
8.2、创建链接命令
ln f1 f2 (硬链接)
ln -s f1 f3 (软链接)
创建文件命令:touch 文件名
输入字符串命令:echo 字符串 >> 文件名(将字符串输入到文件中)
9、Vim编辑器
9.1、概念
vim通过一些插件可以实现和IDE一样的功能。
vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,尤其是Linux中,必须要会使用vim(查看内容、编辑内容、保存内容)。
9.2、三种使用模式
命令模式、输入模式、底线命令模式
9.2.1、命令模式
用户启动vi/vim,进入命令模式,此状态下敲击键盘动作会被vim识别为命令,而非输入字符。如果此时按下i,并不会输入一个字符,i被当作了一个命令。
以下常用的几个命令:
i:切换到输入模式,以输入字符
x:删除当前光标所在处的字符
::切换到底线命令模式,以在最底一行输入命令。如果是编辑模式,需先按ESC退出编辑模式。
B:输入模式:
Enter:回车键,换行。
Backspace:退格键,删除光标前一个字符。
Delete:删除键,删除光标后一个字符。
方向键:在文本中移动光标。
Home/End:移动光标到行首/行尾
PageUp/PageDown:上/下翻页
Insert:切换光标为输入/替换模式,光标将变成竖线/下划线
Esc:退出输入模式,切换到命令模式。
C、底线命令模式:
在命令模式下按下:(英文冒号)就进入了底线命令模式。
在底线命令模式中,基本的命令:q:退出程序;w:保存文件
按esc键退出底线命令模式。
注意:vim test.txt :如果这个文件存在,那就修改这个文件;如果不存在,那就会新建该文件。
9.2.2、vim/vi工作模式
9.2.3、vim按键说明
h或向左箭头键(←):光标向左移动一个字符
j或向下箭头键(↓):光标向下移动一个字符
k或向上箭头键(↑):光标向上移动一个字符
l或向右箭头键(→):光标向右移动一个字符
ctrl+f:屏幕向下移动一页,相当于PageDown按键
ctrl+b:屏幕向上移动一页,相当于PageDown按键
ctrl+d:屏幕向下移动半页
ctrl+u:屏幕向上移动半页
10、账号管理
linux中一切皆文件,本质上是对/etc/password文件的更新。
10.1、创建用户命令
useradd -选项 用户名,例如:useradd -m liqing
-m:自动创建这个用户的主目录 /home/liqing
10.2、删除用户命令
userdel -选项 用户名
userdel -r liqing:删除用户的时候将他的目录页一并删掉
10.3、修改用户命令
usermod 修改内容 修改用户
usermod -d /home/andy liqing
10.4、切换用户命令
[root@andyret home]#中,root表示当前用户名,andyret表示主机名,home表示当前目录,#表示超级用户。
root用户:
a、 切换用户的命令为:su username(username是用户名)。
b、 从普通用户切换到root用户:sudo su。
c、 输入exit、logout、ctrl+d,可退回到原用户。
d、 切换用户后,想用新用户的工作环境,可在su和username之间加-,例如:su – root。
e、 $:普通用户,#表示超级用户,也就是root用户。
修改主机名命令:
hostname:查看主机名
hostname liqing:修改主机名,修改完毕后重新连接即可
重启服务后,未生效,需修改配置文件。
10.5、用户密码设置
passwd username (超级用户情况)
passwd (普通用户情况)
10.6、锁定账户
passwd -l liqing:锁定之后该用户就不能登录。
passwd -d liqing:没有密码也不能登录。
11、用户组管理
组的增加,删除和修改本质上是对/etc/group文件的更新。
11.1、创建用户组
groupadd 用户组名
创建完用户组后可以得一个组id,这个id是可以指定的,用-g参数,若不指定则自增。例如:groupadd -g 520 用户组名
11.2、删除用户组
groupdel 用户组名
11.3、修改用户组的权限,名字和信息
groupmod -g 666 -n newliqing liqing
修改liqing用户组的id为666,组名为newliqing。
11.4、切换用户组
newgrp root
注意:用cat /etc/passwd 查看用户信息详情如下:
用户名:口令(登录密码,我们不可见):用户标识号:组标识号:注释性描述:登录口令:把真正的加密后的用户口令存放到/etc/shadow文件中,保证密码的安全性。
主目录:登录shell。
用户组的所有信息都存放在/etc/group文件中。
12、磁盘管理
12.1、df
列出文件系统整体的磁盘使用量
df -h:按照M或者G查看
例如:
大小 已用 可用 使用了多少 挂载目录
Filesystem Size Used Avail Use% Mountedon
temfs 869M 0 869M 0% /dev
12.2、du
检查磁盘空间使用量
du -sm /*:检查根目录下每个目录所占用的容量(系统初期最大的就是/usr(用户目录)因为很多文件和程序都在里面)。
du -a:查看隐藏文件使用情况。
12.3、挂载、卸载
用linux挂载一些本地磁盘或者文件
挂载:mount /dev/liqing /mnt/liqing
外部设备liqing挂载到mnt目录下,来实现访问
卸载:umount -f 挂载名字:f表示强制卸载
13、进程管理
13.1、在Linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号。
13.2、每一个进程,都会有一个父进程。
13.3、进程可以有两种存在方式:前台运行和后台运行。
13.4、一般的话,服务都是后台运行的,基本的程序都是前台运行的。
13.5、ps:查看当前系统中正在执行的各种进程的信息。
ps -参数
-a:显示当前终端运行的所有进程信息。
-u:以用户的信息显示进程。
-x:显示后台运行进程的参数
|:在linux中,这个叫管道符
grep:查找文件中符合条件的字符串(过滤符)
例如:ps -aux|grep redis
13.6、ps -xx|grep 进程名字:过滤进程信息
13.7、ps -ef:可以查看到父进程的信息
13.8、查看进程树(目录树):pstree -参数
-p:显示父id
-u:显示用户组
13.9、结束进程:杀掉进程:
kill -9 进程的id:表示强制结束该进程
nohup:代表后台执行程序。
14、VMware的使用
14.1、快照:保留当前系统信息为快照,随时可以恢复,以防未来系统被玩坏,便于恢复以前版本。
14.2、本地网络配置:
需要保证Linux虚拟机和本机处在同一个网段。
Linux查看网络信息:ifconfig
Windows查看网络信息:ipconfig
查看网络服务:service network restart
网络配置文件路径:/etc/sysconfig/network-scripts/ifcfg-ens33
Linux的环境配置文件:修改/etc/profile,使其生效需执行source /etc/profile命令。
解压文件命令:tar -zxvf 压缩包名。
Linux知识点
于 2023-11-25 22:36:04 首次发布