Centos项目部署之常用操作命令

190 阅读5分钟

Centos常用命令与操作指南

系统:CentOS 7.9 64位 CPU:2核 内存:4GB 带宽:5Mbps

Xshell 连接服务器出现警告:

WARNING! The remote SSH server rejected X11 forwarding request.

在 Xshell 中禁用 X11 转发即可解决。方法是:打开会话管理器,右键点击相应会话选择 “属性”,找到 “连接”→“SSH”→“隧道”,取消勾选 “转发 X11 连接”,然后重新连接会话即可。

创建目录

mkdir 目录名

例如创建一个softpackage目录:

mkdir softpackage

假设你想创建一个目录结构 /usr/local/myproject/logs

mkdir -p /usr/local/myproject/logs

创建文件

创建一个空文件:

touch 文件名

例如,创建一个名为 example.txt 的文件:

touch example.txt

编辑文件

使用 vim 编辑文件:

vim 文件名
  • i 进入编辑模式。
  • 编辑完成后,按 Esc,然后输入 :wq 保存并退出, :w! 不保存并退出。

查看文件

查看文件内容:

cat 文件名

例如,查看 example.txt 的内容:

cat example.txt

分页浏览文件

分页浏览文件内容:

less 文件名

例如,分页浏览 example.txt

less example.txt

less 中:

  • Enter 向下滚动。
  • 向上滚动。
  • q 退出。

复制文件

复制文件到指定目录:

cp 源文件路径 目标目录

例如,复制 file1.txt/home/user

cp file1.txt /home/user

移动文件

移动文件到指定目录:

mv 源文件路径 目标目录

例如,将 file1.txt 移动到 /home/user

mv file1.txt /home/user

文件重命名

重命名文件:

mv 原文件名 新文件名

例如,将 file1.txt 重命名为 file2.txt

mv file1.txt file2.txt

文件夹重命名

重命名文件夹:

mv 原文件夹名 新文件夹名

例如,将 folder1 重命名为 folder2

mv folder1 folder2

复制文件夹及子文件

复制文件夹及子文件到指定目录:

cp -r 源文件夹路径 目标目录

例如,复制 folder1/home/user

cp -r folder1 /home/user

下载文件

下载文件到指定目录:

wget -P /保存文件目录 文件下载地址

解压文件

将文件解压到指定目录:

tar -zxvf 文件名.tar.gz

例如,解压 Nginx 到当前目录:

tar -zxvf nginx-1.16.1.tar.gz

例如,解压 Nginx 到 /usr/local

tar -zxvf nginx-1.16.1.tar.gz -C /usr/local

查找文件

查找系统中指定文件的路径:

find / -name 文件名

查找文件内容

vim 中:

  • :/daemonize 查找 daemonize
  • n 显示下一个,shift+n 显示上一个

显示行号

vim 中:

:set number

查看端口

查看系统中所有 TCP 端口的使用情况:

netstat -ntlp

查看特定服务的端口:

sudo netstat -tuln -p | grep 服务名

例如,查看 Java 服务的端口:

sudo netstat -tuln -p | grep java

查看 MySQL 服务的端口:

netstat -tunple | grep 3306

查看服务状态

查看特定服务是否启动成功,检查是否有相关进程:

ps -ef | grep 服务名

例如,查看 Redis 服务是否启动成功:

ps -ef | grep redis

关闭服务

关闭特定服务:

sudo systemctl stop 服务名

例如,关闭 Redis 服务:

sudo systemctl stop redis

检查与卸载软件

检查是否安装了特定软件:

rpm -qa | grep -i 软件名

例如,检查是否安装了 MariaDB:

rpm -qa | grep -i mariadb

卸载已安装的软件:

sudo yum remove 软件包名

例如,卸载 MariaDB:

sudo yum remove mariadb-libs-5.5.68-1.el7.x86_64

文件上传与下载

安装文件上传下载工具 lrzsz

sudo yum install lrzsz

下载文件:

sz 文件名

例如下载 file1.txt 文件:

sz file1.txt

上传文件:

rz

解压 ZIP 文件

安装 ZIP 文件解压工具:

sudo yum install -y unzip zip

解压 ZIP 文件到当前目录:

unzip 文件名.zip

设置文件或目录权限

设置文件或目录的权限:

chmod 权限模式 文件或目录路径

权限模式

  • u 表示用户(user)
  • g 表示组(group)
  • o 表示其他用户(others)
  • a 表示所有用户(all)

权限类型

  • r 表示读权限(4)
  • w 表示写权限(2)
  • x 表示执行权限(1)

示例

  • 给文件 example.txt 设置读写权限:
chmod u+rw example.txt
  • 为所有用户给文件 script.sh 设置执行权限:
chmod +x script.sh # 等同于 chmod a+x script.sh 
  • 假设你想给文件所有者(u)和其他用户(o)添加读(r)、写(w)和执行(x)权限,但不改变所属组(g)的权限,可以使用以下命令:
chmod uo+rwx script.sh
  • 给目录 myproject 设置读写执行权限:
chmod 755 myproject
  • 所有用户都可以读、写和执行,给text.txt设置权限
chmod 777 text.txt

这是设置文件权限的命令,777 是一个八进制数,表示权限:

  • 第一个数字(7):表示 文件所有者(user) 的权限。
    • 7 = 4(读权限)+ 2(写权限)+ 1(执行权限)
  • 第二个数字(7):表示 文件所属组(group) 的权限。
    • 7 = 4(读权限)+ 2(写权限)+ 1(执行权限)
  • 第三个数字(7):表示 其他用户(others) 的权限。
    • 7 = 4(读权限)+ 2(写权限)+ 1(执行权限)

因此,chmod 777 text.txt 会将文件 text.txt 的权限设置为 所有用户都可以读、写和执行

如果你想使用符号模式(symbolic mode)来设置权限,可以这样写:

chmod a+rwx text.txt

这条命令的含义是:

  • a:表示 所有用户(all)
  • +:表示 添加权限
  • rwx:表示 读(r)、写(w)、执行(x)权限

这条命令的效果与 chmod 777 text.txt 是相同的,都会将文件 text.txt 的权限设置为 所有用户都可以读、写和执行

总结

  • chmod 777 text.txt:使用 八进制数字 设置权限,将文件的权限设置为所有用户都可以读、写和执行。
  • chmod a+rwx text.txt:使用 符号模式 设置权限,效果与 chmod 777 text.txt 相同。
  • chmod a+777 text.txt:这是 错误的用法chmod 不支持这种组合。

查看权限

查看文件或目录的权限:

ls -l 文件或目录路径

例如:

ls -l example.txt

这将显示文件的权限、所有者、组和其他详细信息。

系统重启

重启系统:

sudo reboot