Linux知识

📅 2026/8/20 15:28:57
Linux知识
apt下载指定版本的软件#查看候选的软件 apt-cache madison datacenter-gpu-manager/cmake #最后才是要安装的包 #或是apt policy cmake #安装指定版本 apt install datacenter-gpu-manager1:3.0.4查看当前监听的端口号sudo netstat -tunlp #apt install net-tools-t 显示TCP端口。-u 显示UDP端口。-n 显示数字地址而不是解析主机。-l 仅显示监听端口。-p 显示监听进程的PID和名称。仅当以root用户或 sudo 用户身份运行命令时才会显示此信息。Proto套接字使用的协议Local Address进程所监听的IP地址及端口号PID/Program namePID和进程名称也可以使用sudo ss -tunlp内容是差不多的apt install iproute2telnettelnet ip port测试相应ip的端口号是否连通 #apt install telnetncnc -l port临时监听指定tcp端口在服务器上执行之后再使用telnet就可以发送消息了。安装apt install netcatcurl发送get和post请求#发送get请求-H参数可以省略 curl -X GET http://localhost:10001/_health_check -H Accept: application/json #发送post请求 curl -X POST [options] URL curl -X POST -F image/home/user/pic.jpg URL #发送文件 curl http://127.0.0.1:10001/v1/completion -H Content-Type: application/json -d { model: /Baichuan-13B, prompt: 床前明月光, temperature: 0, max_tokens: 30, stream: true }通过http.server实现文件传输#服务器端文件存在的服务器 cd 文件所在的文件夹 python3 -m http.server 80 #客户端下载文件的服务器 #下载文件要保证服务器端运行命令的文件夹下有qwen.zip不能使用服务器上的绝对路径 wget http://114.116.250.138/qwen.zip #下载文件夹 mkdir Qwen-7B-Chat cd Qwen-7B-Chat wget -r -np -nH --cut-dirs1 -P ./本地保存路径 http://114.116.250.138/Qwen-7B-Chatrsync传输文件#使用scp传输文件不仅速度慢并且不支持断点传输。rsync支持 #从远程服务器传输文件到本地 rsync -avz --progress --partial -e ssh 用户名服务器IP:目标路径 本地文件 #从本地传输文件到远程服务器 rsync -avz --progress --partial -e ssh 本地文件 用户名服务器IP:目标路径 #指定2222端口 rsync -avz --progress -e ssh -p 2222 本地文件 用户名服务器IP:目标路径sz/rz传输文件apt install lrzsz -y免密访问远程服务器#前提工作 useradd zhuikefeng #添加用户 passwd zhuikefeng #添加密码 #注册sudo权限 yum install sudo 或者 apt install sudo vim /etc/sudoers 或者visudo #在root ALL(ALL) ALL下面加一行 zhuikefeng ALL(ALL) ALL #在创建账户之后出现不能登录的情况 vim /etc/ssh/sshd_config #在最底下找到AllowUsers这一行在后面添加自己的名字中间用空格分隔 #如果只有AllowGroups则只有指定组才能登录在后面将自己所在组加上或者是将自己改成已存在的组 systemctl restart sshd #创建用户之后ssh能连接但是vscode不能连接这可能是vscode不能在~/.vscode-server下面写文件的错误 #设置免密登录 #在本地机器执行 ssh-keygen -t rsa -b 4096 #生成私钥-b是指定密钥长度默认是2048 vim ~/.ssh/config #填入下面的内容 Host Cloud1 HostName 114.116.250.138 User root Port 22 IdentityFile ~/.ssh/id_rsa ssh-copy-id Cloud1 #将公钥发送到服务器发送的是ssh-ed25519 ssh Cloud1 #在服务器的~/.ssh/authorized_keys可看到公钥 #如果不行使用下方的完成命令发送的是ssh-rsa sh-copy-id -i ~/.ssh/id_rsa.pub root114.116.250.138 #有的时候会碰到即使像上面的步骤上传了密码但是仍然出现登录需要设置密码的方式 #在目标服务器上执行 vim /etc/ssh/sshd_config 把#StrictModes yes改成StrictModes no systemctl restart sshd #自动登录成功之后如何实现sudo -i命令切换root用户时不需要输入密码 vim /etc/sudoers #在apps ALL(root) NOPASSWD: ALL复制一行 zhuikefeng ALL(root) NOPASSWD: ALL #设置root用户自动登出时间 vim /etc/systemd/logind.conf 将 IdleTimeoutinf 添加到 [Login] 部分 systemctl daemon-reload systemctl restart systemd-logind显示文件的指定行数的内容sed -n 5,10p file.txt #显示文件5-10行的内容127.0.0.1和0.0.0.0的区别127.0.0.1和0.0.0.0是两个特殊的IP地址在计算机网络中有着不同的含义和用途。- 127.0.0.1 是一个回环地址Loopback Address通常用于测试本机的网络接口。当一个数据包被发送到这个地址时它将直接返回到发送它的设备不会经过任何网络接口或路由器。这常用于检查网络软件是否能正常工作而不需要物理网络连接。在大多数操作系统中当你尝试连接到127.0.0.1时你实际上在访问自己的计算机其他任何网络设备都无法通过网络访问绑定到127.0.0.1的服务。- 0.0.0.0 通常用作默认网络的特殊地址。它代表当前主机上的所有IPv4地址。在服务器编程中绑定服务到0.0.0.0意味着该服务将在所有可用的网络接口上监听允许来自任何远程客户端的连接。此外它有时也用于表示无特定地址或未知地址。总结区别- 127.0.0.1 指向本地主机用于内部通信和测试。- 0.0.0.0 代表当前主机上的所有网络接口用于监听来自任何外部源的连接。新磁盘的挂载lsblk #查看所有磁盘信息包括名称大小和挂载点 #显示NAME列有sdanvme1n1nvme0n1 #挂载整个磁盘不分区 mkdir /data mount /dev/nvme1n1 /data #如果报错mount: /data: wrong fs type, bad option, bad superblock on /dev/nvme1n1, missing codepage or helper program, or other error. #是因为磁盘还没有格式化没有有效的超级块superblock #使用lsblk -f可以查看所有磁盘的文件类型 mkfs.ext4 /dev/nvme1n1 #格式化为ext4文件系统 #umount /dev/nvme1n1取消挂载如何清除ps -aux中指定名称的进程#清除名字中带有tritonserver的所有进程 pgrep -f tritonserver | xargs kill -9 如果不确定清除的是否正确可以先打印看下满足条件的进程再执行上面的清除语句 pgrep -f tritonserver | xargs echo kill -9如何查看机器PCIe版本sudo lspci -vv #Express (v2)MaxPayload 128 bytes表示是2代即Gen2固定时间内关机并且通知所有用户sudo shutdown -h 1 #1表示1min1min后关机并通知所有用户如果想取消执行shutdown -chadoop操作hadoop fs -ls hdfs:// #查看hdfs上的文件列表 hadoop fs -put 本地文件路径 HDFS目标文件路径 hadoop fs -get hdfs://bipcluster/path/to/file local_folder hadoop fs -rm -r -f hdfs:// #删除hdfs上的文件或者目录tar命令#查看tar包的内容但是不解压 tar -tf yourfile.tar查看文件的md5和sha256md5sum 文件名 sha256sum 文件名 #如果没有安装则先安装 apt-get install coreutils yum install coreutils #mac查看sha256 shasum -a 256 mp_rank_00_model_states_fp8.pt重定向屏幕输出./run.sh 21 | tee output.log ./run.sh 21 | tee -a output.log #追加日志而不是覆盖 ./run.sh output.log 21 #不打印到终端 ./run.sh output.log #同上不打印到终端 nohup ./run.sh output.log 21 #后台运行查看cpu是否是省电模式cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor #performance表示性能模式ondemand表示省电模式 #如何切换模式 apt install cpufrequtils #ubuntu yum install kernel-tools #centos #查看系统支持的调频策略 cpupower frequency-info --governors #切换成性能模式performance表示性能ondemand表示省电但响应快powersave最省电 cpupower frequency-set -g performanceset命令set -e #遇错即停 set -x #打印当前执行的命令统计文件夹的文件数find . -type f | wc -l #统计当前文件夹下的文件数包括递归文件夹 find . -maxdepth 1 -type f | wc -l #统计当前文件夹下的文件数不包括递归文件夹 find . -name *.txt -type f | wc -l #统计文件后缀是txt的文件数