-
桥接模式:
- 会遇到ip不够用(只有255-2个)
- 不安全,同一网段的都能访问
-
NAT网络转换模式:
- 不会和主机在同一个网段,所以安全
- 但可以通主机(产生了虚拟网卡)
-
仅主机模式网络
- 无法上网
-
万物皆文件
-
ext4理论无限创建文件
-
切换用户 su -lewis
-
查看当前所在目录 pwd
-
文件目录
-
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UeUzakzw-1589472575984)(D:\文件_Typora\1589272674521.png)]
-
/bin (/usr/bin,/usr/local/bin)
- 是Binary的缩写,存放着最经常使用的命令
-
/sbin(/usr/sbin,/usr/local/sbin)
- s是Super User的意思,存放系统管理员使用的系统管理程序
-
/home
- 存放普通用户的主目录,每个用户有一个自己的目录
-
-
/root
-
管理员的主目录
-
以上命令在所有地方都能使用(***# echo $PATH***)
-
/lib
-
系统开机所需要最基本的动态链接功效库,其作用类似于Windows里的DLL文件,几乎所有的应用程序都需要用到这些共享库
-
/lost+found
- 这个目录一般情况下是空的,当系统非法关机后,这里就存放一些文件
-
-
/etc
- 所有的系统管理所需要的配置文件和子目录
-
/usr
- 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows下的program files目录
-
/boot
- 这里存放的是启动Linux时使用的一些核心文件,包括一些链接文件以及镜像文件,自己的别安装在这里
-
/proc
- 这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录目录来获取系统信息
-
/srv
- service缩写,该目录存放一些服务启动之后需要提取的数据
-
/sys
- 这是linux2.6内核的一个很大的变化.该目录下安装了2.6内核中新出现的一个文件系统sysfs
-
/tmp
- 存放临时文件
-
/dev
- 类似windows的设备管理器,把所有的硬件用文件的形式存储
-
/media
- linux系统会自动识别一些社贝,例如U盘,光驱等等,当识别后,linux会把识别的设备挂载到这个目录下
-
/run
- 进程产生的临时文件,虚拟机加载光盘映像在:/run/media/root/目录下
-
/mnt
- 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了
-
/opt
- 这是给主机额外安装软件所摆放的目录,比如安装一个oracle数据库,则就可以放到这个目录下,默认是空的
-
-
/usr/local
- 这是另一个给主机额外安装软件所摆放的目录,一般是通过编译源码方式安装的程序
-
/var
- 这个目录存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下.包括各种日志文件
-
常用基本命令
-
* 帮助手册(不知道指令如何使用) * man man date * --help date --help * 日期类 * date * cal * 显示当前目录 * **pwd** * cd切换目录 * cd .. 返回上级目录 * cd / 返回至/ * cd , cd ~ 返回家目录 * cd /etc/sysconfig 通过绝对路径切换 * cd ./sysconfig 通过相对路径 * /根目录 ~家目录 opt某一目录 * ls * -a 全部文件,连同隐藏的文件 * -l 列出详细列表,别名 * -rw------ 标号0~9 * 0位代表文件类型 -代表普通文件 d代表目录 l代表软链接 如(bin -> usr/bin) 两者一样 * 1位2位3位代表权限 r 读 w 写 x * 4位5位6位用户所在组的其他用户对其的权限 * 7位8位9位用户组以外对其的权限 * 所属者 所属组 * grep * 模糊查询 * 配合显示内容的命令,根据跟随的内容显示该行内容 * 例如:ls -l |grep xxx * 也可以查进程 * mkdir * -p 可以一下建多级目录 * 例:mkdir 目录名 * touch * 新建一个文件 * vim也有同样功能 * 例:touch 文件名 * rmdir * 删除一个空目录 * 例:rmdir dirname * rm * 移除文件或目录 * -rvf 递归删除所有目录内容,提示 * -rf 递归删除所有目录内容,不提示 * 例:rm -rf / 删除根目录下所有文件 * cp * cp [要复制的文件] [到哪里] * -r 递归复制整个文件夹 * -v 显示复制过程中文件的列表 * 强制覆盖不提示的方法 * 临时方法:用 \cp * mv * 剪切 * mv oldFileName newFileName 重命名 * mv /temp/movefile /targetFolder 移动文件 * cat * cat 文件名 查看轻量级的文本文件 * cat 文件名 查看轻量级的文本文件 * cat 文件名1 文件名2 连接显示多个文件 * cat 文件名1 文件名2 > 文件名3 合并为新文件 * more * 查看较长的文件 * 空白键(space):代表向下翻一页 * Enter:代表向下翻一行 * q: 代表立刻离开 more , 不再显示该文件内容 * Ctrl + F 向下滚动一屏幕 * Ctrl + B 向上滚动一屏幕 * less * 同more类似, 比more功能更多 * [pagedown] : 向下翻动一页 * [pageup] : 向上翻动一页 * /字串 : 向下搜索[字串]的功能 * ?字串 : 向上搜索[字串]的功能 * n : 重复前一个搜寻 * N : 反向 * tail * 从尾部查看,比较适合查看日志 * -f 跟随查看 * -n200 显示的行数,你可以省略 * history * 查看历史命令 * echo * 输出环境变量 * 在shell脚本中当system.out.print用 * find * 查找文件,提供了丰富的模糊搜索及条件搜索 * find+搜索路径+参数+搜索关键字 * 按文件名 find /home/esop -name ".txt" 根据名称查找/目录下的finame.txt文件 * locate * 查找文件,查询速度更快,使用更方便 * locate /opt/*.conf * 运行前需要执行updatedb来更新文件索引 * df -h * 查询系统整体磁盘使用情况
-
-
软链接
- 也称为符号链接,类似于windows里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径
- 命令 In -s 原文件或目录名 软链接名
- 查询 : 通过 ls -l 就可以查看,列表属性第1位时l,尾部会有位置指向
-
压缩和解压
-
* 压缩文件(**tar**): * tar -zcvf XXX.tar.gz n1.txt * -c 创建一个新归档 * -v 显示详细信息 * -f 指定压缩后的文件名 * -z 通过gzip过滤归档 * 解压文件(**tar**): * tar -zxvf.tar.gz * -x 从归档中解压出文件 * -v 显示详细信息 * -f 指定解压前的文件名 * -z 通过gzip过滤归档 * 压缩文件(zip) * zip mypackage.zip 1.txt 2.txt * zip -r pack.zip pack/* (递归压缩) * 解压文件(zip) * unzip mypackage.zip
-
-
进程类
-
* ps (process) * PID 进程识别号 * TTY 终端机号 * TIME 次进程所消CPU时间 * CMD 正在执行的命令或进程名 * ps -a: 显示当前终端的所有进程信息 * ps -u: 以用户的格式显示进程信息 * ps -x: 显示后台进程运行的参数 * PID TTY TIME CMD * 2174 pts/0 00:00:00 bash 终端 * 2416 pts/0 00:00:00 bash * 2736 pts/0 00:00:00 ps 输入的ps * ps -aux: * UID PID PPID C STIME TTY TIME CMD (三级联动) * 用户ID 进程ID 父进程ID * root 2 0 0 14:54 ? 00:00:00 [kthreadd] * kill + PID 关掉进程 * ps -ef |grep java * kill -9 403
-
-
用户
-
新增用户
- useradd 新用户名
-
设置密码
- passwd 用户名
-
用户是否存在
- id 用户名
-
切换用户
- su - 切换用户名
-
查看当前用户/登陆用户
- whoami/ who am I
-
删除用户
- userdel username (不完全) ,还需要删除
- 在/home目录下的文件
- 在/etc/passwd下的用户
- 在/etc/group下的用户组
- 在/var/spool/mail下的邮箱文件
- 完全删除用户
- userdel -rf username
- userdel username (不完全) ,还需要删除
-
-
用户组
- 类似于角色,统一管理
- 新增组
- groupadd 组名
- 删除组
- groupdel 组名
- 修改用户的组
- usermod -g 用户组 用户名
- 增加用户时直接加上组
- useradd -g 用户组 用户名
-
rpm与yum
- rpm
- 类似于windows里面的setup.exe
- 查询已安装的rpm列表
- rpm -qa|grep xx
- 安装rpm
- rpm -ivh rpm 包名
- -i 安装 install
- -v 查看信息
- -h 查看进度条
- 卸载rpm
- rpm -e RPM软件包
- yum
- 类似于maven工具,可以从镜像网站下载并直接安装
- yum list|grep xx 软件列表
- yum install xxx 下载安装
- rpm
-
vim
-
默认模式: 主要负责查看和一些基础的修剪
按键 效果 dd 删除光标当前行 dnd 删除n行 u 撤销上一步 x/X 删除一个字母Delete/删除一个字母Backspace yy 复制光标当前行 p 粘贴 dw 删除一个词 yw 复制一个词 shift+g 移动到页尾 数字1+shift+g 移动到页头 数字N+shift+g 移动到目标行 shift+6 移动到行头 shift+4 移动到行尾 -
编辑模式
-
要按下 i , a , o 等字母进入编辑模式,左下角又[insert] 或者 [replace]
-
按下[ESC] 退出编辑模式
-
按键 效果 i 当前光标前 a 当前光标后 o 当前光标的下一行 s 删除当前字符并进入编辑 S 删除整行并进入编辑 R 进入替换模式,替换光标后内容
-
-
命令模式
-
可以进行存盘,退出,显示行号,搜索,批量替换等操作
-
要在一般模式下输入"/“或” : " 课进入命令模式
-
命令 含义 :w 保存 :q 退出 :l 强制执行 :%s/old字符/new字符/g 批量替换 /要查找的词 n查找下一个,N往上查找 N查找下一个,n往上查找 :set nu / :set nonu :noh
-
-
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8X5dJY0n-1589472575985)(D:\文件_Typora\1589298040136.png)]
-
-
tomcat
-
cd /opt/apache-tomcat-7.0.70/bin # 开启tomcat ./startup.sh # 关闭tomcat ./shutdown.sh
-
-
mysql
-
mysql服务的启动停止
- 启动:service mysql start
- 停止:service mysql stop
-
设置root用户的密码
- mysqladmin -u root password ‘root’
-
登录mysql
- mysql -uroot -p123123
-
建库
- create database 库名
-
建表
- create table 表名(字段名 字段类型(长度) 约束 …)
-
字符集问题:
-
查看字符集:show variables like ‘character%’;
-
+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+
-
查看mysql的安装位置: ps -ef|grep mysql
-
-
修改字符集
-
将/usr/share/mysql/中的my-huge.cnf拷贝到/etc/下,改名为my.cnf
- tips:mysql启动时,会优先读取/etc/my.cnf文件
-
在[client] [mysqld] [mysql]中添加相关的字符集设置
[client] default-character-set=utf8 [mysqld] character_set_server=utf8 character_set_client=utf8 collation-server=utf8_general_ci [mysql] default-character-set=utf8
-
重启mysql服务,查看字符集
- service mysql restart
-
-
修改已有库表的字符集
- 查看数据库的字符集
- show create database 数据库名;
- 修改表的字符集
- alter table 表名 convert to character set’utf8’;
- 修改库的字符集
- alter database 库名 character set ‘utf8’;
- 查看数据库的字符集
-
远程访问
-
- 列显示select * from mysql.user\G;
- 查询常用字段:select host,user,password,select_priv from mysql.user;
- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wVCyGfhV-1589472575987)(D:\文件_Typora\1589306411995.png)]
- 创建可以远程访问的root用户并授予所有权限
- grant all privileges on . to root@’%’ identified by ‘root’;
- flush privileges;
- 查看防火墙
- systemctl list-unit-files | grep firewalld
-
-
-
修改库的字符集
* alter database 库名 character set ‘utf8’;
* 远程访问
*
* 列显示select * from mysql.user\G;
* 查询常用字段:select host,user,password,select_priv from mysql.user;
* [外链图片转存中...(img-wVCyGfhV-1589472575987)]
* 创建可以远程访问的root用户并授予所有权限
* grant all privileges on *.* to root@'%' identified by 'root';
* flush privileges;
* 查看防火墙
* systemctl list-unit-files | grep firewalld