Linux操作系统的使用

Linux 操作系统

镜像源

  • 更新镜像源
sudo  apt-get  update
  • 安装软件
sudo  apt  install  [-y]  <softName>

# 安装 ssh 服务,用来给 linux 客户端软件提供链接服务
sudo  apt  install  openssh-server

切换操作系统启动级别

  • 进入 多用户命令模式
sudo systemctl set-default multi-user.target
  • 进入 图形化 界面 命令模式
sudo systemctl set-default graphical.target

安装网络工具库

sudo  apt  install  net-tools

# 查看 IP 地址 
ifconfig

命令

  • pwd 命令 : 查看 命令所在的 磁盘路径
  • who 命令: 查看当前是谁
  • whereis : 查找 指定名字 所在的 磁盘位置
  • history : 查看 历史命令
  • man : 查看 指定命令的帮助文档

文件夹 / 目录 常见的 命令

  • ls : 查看 文件夹 内容信息
ls   -la   [<path>]  :   查看 指定目录下 的所有 内容

ls  -ld  [<path>]  :   查看 指定目录 的信息 ,而非 里面的内容 

ll  [<path>]  :   是 ls 的一种简写, 该命令不是一个 标准命令。
  • mkdir : 创建 文件夹
mkdir  abc   :   在当前目录下 新建一个 abc 文件夹 , 如果 abc 已经存在,也会报错。

mkdir  a  b  c  :   在当前目录下 创建 a 文件夹、  b文件夹 、  c 文件夹

mkdir  a/b/c  :  在当前目录下 创建 a/b/c 文件夹 ,  如果 a  或者 b 目录 不存在,则 无法创建 

mkdir -p  a/b/c  :  在当前目录下, 创建 a/b/c 文件夹, 如果 a 或 b 目录 不存在,则创建 它们。
  • rmdir : 删除 空文件夹
rmdir  abc  : 删除 abc 空文件夹 

rmdir -p  a/b/c  :   等价于  rmdir  a/b/c   a/b   a

文件 常见的命令

  • 查看 文件内容
    • cat : 查看文件内容 , -n 可以用来显示行号
    • nl : 查看文件内容, 会自动显示行号,但空白行 不作为 行号标记。
    • tali : 通常配合 -f 参数 可以实时监控 日志。
  • touch : 新建文件 、 如果文件已经存在, 则 更新 文件的最后修改时间
touch  a.txt :  新建 文件 
  • rm : 删除 文件 / 文件夹
rm   a.txt   :  删除 文件 , 如果文件 不存在, 则 报错 

rm  -i  a.txt  :   删除 文件 前 进行 友好提示 , 防止 误操作 。 

rm -f  a.txt  :  删除文件 永不提示。

rm  -d  <dir>  : 删除 指定的 空目录 ,等价于 rmdir 

rm -r  <dir>  :   递归删除 目录下的 内容 

rm -v  a.txt :  删除 文件、并进行 删除内容信息展示

rm  -rf  /  :   删除整个磁盘 
  • 编辑文件 ( vim 编辑器 ) sudo apt install vim -y

    • 命令模式

      在该模式下,主要可以通过一些 命令 操作文件,例如 删除行 、复制行等操作

      使用 vim 打开 文件 会 自动进入 命令模式 , 在 编辑 模式下, 按下 ESC 会从 编辑模式 进入 到 命令模式

      nG : 定位光标到 第 n 行

      gg : 定位光标到 第一行

      G : 定位光标到 最后 1行


    dd : 删除光标所在行的内容

    ndd: 从 光标所在行 删除 n 行

    d$ : 从 光标所在行的 位置 删除到 行的 尾部。

    d0 : 从 光标所在行的 位置 删除到 行的 头部

    x  :   删除 光标 后的 一个字符 
    
    nx :  删除 光标 后的  n 个字符 
    
    X  :  删除光标 前的 一个 字符 
    
    nX  :  删除光标前的 n 个 字符 
    

    yy : 复制光标所在 行的内容

    nyy : 复制 n 行

    y$ : 复制光标所在位置到行尾的内容

    y0 : 复制光标所在位置到行首的内容

    p : 粘贴 内容到 光标所在行的下一行 ,

    P : 粘贴内容到 光标所在行的 上一行


    /xyz : 从上到下、依次查找 xyz 匹配的内容 。 输入查找内容后,按下 回车键、 按下 n 向下继续查找

    ?xyx : 方向查找,用法和 /xyz 相同。 按下 N 继续向上查找

    • 编辑模式

      在该模式下、可以通过键盘 对文件进行编辑修改 。

      编辑模式 只能从 命令模式 进入 , 进入的方法可以通过 以下操作

      • 按下 i 键 , 在 光标 前 插入 内容 , I (大写i) , 在 光标所在 行的 头部插入 内容
      • 按下 a 键 , 在 光标 后插入 内容 , A 在 光标所在行的 尾部插入内容
      • 按下 o 键 , 在光标所在行的下方 新建一空白行,插入内容。 O 在光标所在行的 上方 新建 一 空白行, 插入内容。
    • 命令底线模式

      在该模式下、主要可以完成 对 文件的保存、取消等操作。

      命令底线模式 必须在 命令模式 下 , 输入 : 进入 命令底线模式 。

      w : 保存

      q : 退出

      wq  :  保存并退出
      
      w!  ,   q! ,  wq!   :   强制
      

    %s/old/new/pattern : 全部内容替换 语法 % 替换范围为整个文档 , : 替换光标所在行 , s 替换 , old 替换前的内容,支持正则表达式 , new 替换成的内容 , pattern 替换模式, 比较常用的 模式 是 g(全部), c (是否询问)

    %s/k/Q/g : 将整个文档中的 k 字符串 替换成 Q

    %s/k/Q/ : 将整个文档中的 每一行的 第一个 k 替换成 Q

    😒/k/Q/ : 替换 光标所在行 中的 第一个 k 为 Q

    😒/k/Q/g : 替换 光标所在行 中 所有 k 为 Q

    :m,ns/k/Q/g : 替换 从 m ~ n 行中 所有 k 为 Q , m 和 n 代表 行数, m < n, 如果 要 替换到文档尾部,则 n 可以使用 $ 表示


set nu : 显示 行号 , set nonu : 隐藏行号


文件/目录 复制

  • 拷贝 文件 到 指定的 文件中
cp    a.txt    b.txt     :  如果 b.txt  不存在, 则创建, 否则  覆盖。
  • 拷贝 文件 到 指定的 目录 中

    cp   a.txt   test    :  test 目录 必须存在 ,如果不存在 , test 会作为 文件 的方式 被 创建出来。
    
  • 拷贝 目录

    cp  -r  源目录  目标目录 (目录必须存在) 
    
  • 拷贝 目录下的内容 到 指定的目录

    cp  -r  源目录/*   目标目录  (目录必须存在)
    
    cp  -r  源目录  目标目录  (目录必须不存在)
    

文件/目录 移动

  • 剪切 文件 到 指定的 文件中 (重命名)

    mv  a.txt  b.txt 
    
  • 剪切 文件到 指令的目录 中

    mv  a.txt  test  (目录必须存在)
    
  • 剪切 目录 到 指定的 目录

    mv  源目录  目录目标  (目录存在)
    
    mv  源目录  目录目标  (目录不存在,  重命名)  
    


用户 操作

  • 添加用户 useradd
  • -d : 设置 用户的 根目录
  • -m : 创建用户的 根目录
  • -g : 设置用户 所属 组名, 默认名 和 当前用户名保持一致
  • -p : 设置 密码
  • -s : 设置 shell 脚本 , /bin/bash 通用 , /usr/sbin/nologin (禁止登陆)
sudo  useradd  用户名  -d  /home/用户名  -m   -s   /bin/bash 


sudo  passwd  用户名  :  修改密码

su  用户名  :  切换账户


exit :  退出登录

id  用户名 :  查看 用户信息
  • 修改用户 usermod : 用法和 useradd 相同
  • 删除用户 userdel
    sudo userdel -r  java
    

组 Group 操作

  • 添加 组 groupadd
    sudo  groupadd  组名 
    
  • 修改组 groupmod
    sudo   groupmod -n  新组名  原组名
    
  • 删除组 groupdel
    sudo groupdel 组名
    

更改 文件 / 目录 的 拥有者

  • 更改 文件 / 目录 的 拥有者
sudo  chown  用户名   文件名/目录名 , 如果要更改目录下内容的拥有者, 需要添加  -R 选项
  • 更改 文件/目录 的 所属组

    sudo  chgrp  组名  文件名/目录 ,  如果要更改目录下内容的所属组, 需要添加  -R 选项
    
  • 同时 修改 拥有者 和 所属组

    sudo  chown  -R   用户名:组名    文件名/目录   
    

修改 读写可执行 权限

  • r (读权限 、 4 )
  • w (写权限 、 2)
  • x (可执行权限、 1)

一个 文件 或者 目录 拥有的 最大权限 是 rwx 或者 7 , 一个 文件/目录 拥有 三个权限,分别是 主权限 、 组权限 、 其它权限 , 所以 最大权限 表示 为 rwxrwxrwx 或者 数字 777 , 最小权限是 --------- , 对应的数字 是 000


字符授权

u ( 主权限 ) 、 g (组权限) , o (其它权限) , a (所有权限)

sudo  chmod  u+r   a.txt   :     a.txt 文件 给 主权限 添加 读操作 

sudo  chmod  u-r  a.txt    :     a.txt 文件 给 主权限读操作 

数字授权

sudo  chmod  777  a.txt   :   给 a.txt 设置 最大权限

管道符 |

grep : 过滤 行

cat a.txt | grep d    :  显示 a.txt 中 每一行 包含 d  字符的 所有行 

cat a.txt | grep -v d   :   显示 a.txt 中 每一行 不包含 d  字符的 所有行 

ps  -ef | grep  ssh  :  查询 进程名 包含 ssh 的 进程。 

sudo lsof -i:22  : 查询 指定的端口号 占用 情况 

sudo netstat -nltp| grep 22    查询 指定的端口号 占用 情况 

sudo  kill  -9  进程号 :  杀死指定的进程 。

安装 JDK

  • 下载 JDK 安装包

    wget https://download.java.net/openjdk/jdk17/ri/openjdk-17+35_linux-x64_bin.tar.gz
    
  • 解压 到 指定位置

    tar -zxvf openjdk-17+35_linux-x64_bin.tar.gz -C ~/app
    
  • 创建软连接

    ln -s jdk-17 jdk
    
  • 配置 环境变量

    sudo vim /etc/profile 
    
    -- 在 文件 尾部 添加 
    
    export  JAVA_HOME=/home/huo/app/jdk;
    export  PATH=$PATH:$JAVA_HOME/bin;
    export  CLASSPATH=.;
    
    
  • 使环境变量生效

    source  /etc/profile
    
  • 检查 JDK 是否 配置成功

    javac  -version
    
    java -version
    

安装 tomcat

  • 创建一个 tomcat 账户 ,禁止 登录

    sudo useradd tomcat -s /usr/sbin/nologin
    
  • 在 安装 tomcat 的 目录中,将 tomcat的 拥有者和组 设置为 tomcat

    sudo chown -R tomcat:tomcat tomcat
    
    sudo chown -R tomcat:tomcat apache-tomcat-9.0.78/
    
    
  • 修改 /home/huo/app/tomcat/bin/catalina.sh , 添加 了 JAVA_HOME

    JAVA_HOME=/home/huo/app/jdk;
    
  • 配置 开启 自动启动 的配置文件 /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/tomcat.service

    [Unit]
    Description=tomcat9
    After=network.target auditd.service
    
    [Service]
    PIDFile=/home/huo/app/tomcat/temp/tomcat.pid
    ExecStart=/home/huo/app/tomcat/bin/startup.sh
    ExecStop=/home/huo/app/tomcat/bin/shutdown.sh
    Type=forking
    RuntimeDirectoryMode=0750
    User=tomcat
    Group=tomcat
    
    [Install]
    WantedBy=multi-user.target
    Alias=tomcat.service
    
  • 添加到 开机 启动的服务中

    sudo  systemctl  enable  /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/tomcat.service
    
  • 启动 tomcat

    sudo  systemctl start tomcat
    
  • 关闭 tomcat

    sudo systemctl stop tomcat
    
  • 查看 tomcat 启动日志

    sudo tail  -f  /home/huo/app/tomcat/logs/catalina.out
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值