linux笔记

  • 桥接模式:

    1. 会遇到ip不够用(只有255-2个)
    2. 不安全,同一网段的都能访问
  • NAT网络转换模式:

    1. 不会和主机在同一个网段,所以安全
    2. 但可以通主机(产生了虚拟网卡)
  • 仅主机模式网络

    1. 无法上网
  • 万物皆文件

  • 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
  • 用户组

    • 类似于角色,统一管理
    • 新增组
      • 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 下载安装
  • 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

      • 1589304082446
      • 修改字符集

        • 将/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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值