Linux常用指令
1. 查看某个进程所述用户
ps -p 12345 -o user=
2. 查看端口信息
sudo lsof -i:端口号
3. 打开某个端口指令
sudo ufw allow 端口号
4. 本地与远程传输数据
# 远程到本地
scp -P port_id host_name@host_ip:/home/.../utils.py local_path
# 本地到远端
scp -P port_id local_path_file host_name@host_ip:/home/.../
5. screen程序后台运行
screen -ls #当前所有screen会话的列表
screen -S name #命名后台运行名称
screen -r name # 启动后台运行名称
python main.py #运行对应的python脚本
screen -S screenID -X quit(screen离线时)#杀掉会话
6. 查看文件夹下所有文件大小,并按大到小排序
#du -h 显示每个目录的大小
#--max-depth=1 限制显示深度为当前目录下的一级子目录。
#sort -rh 按大小逆序排序。
du -h --max-depth=1 /hom/path | sort -rh
7. docker相关指令
#查看正在运行的模型
docker exec ollama ollama ps
#查看模型列别
docker exec ollama ollama list
# 下载或运行某个模型
docker exec -it ollama ollama run model_name
8. 新建用户及sudo权限设置
# step1. 在root用户下,创建名为esUser的新用户,并在/home目录下创建相应的文件夹
useradd -d /home/esUser -m esUser
# step2. 设置密码
passwd esUser
# step3. 授权root权限
cd /etc/ #找到sudoers文件夹,但是没有写入权限
chmod u+w sudoers #给sudoers文件添加可写的权限
vi sudoers #进入配置文件
esUser ALL=(ALL) ALL # 设置权限
chmod u-w sudoers #将sudoers文件的权限关掉
9. Linux文件夹授权用户
# 将文件夹/path/to/folder的拥有者更改为用户username
sudo chown username /path/to/folder
#递归地更改文件夹及其所有子文件和子文件夹的拥有者
sudo chown -R username /path/to/folder
# 授予所有用户文件夹/path/to/folder读写执行权限
sudo chmod 777 /path/to/folder
# 授予所有用户文件夹/path/to/folder、子文件读写执行权限
sudo chmod -R 777 /path/to/folder
10. 网络重启
#systemctl restart network
service network-manager restart
# 防火墙
sudo ufw status # 查看防火墙状态
sudo ufw disable # 关闭防火墙
sudo systemctl disable ufw # 禁止ufw服务在系统启动时自动启动
sudo netstat -anp # 看下服务监听端口
11. ssh服务
# 安装ssh
sudo apt install openssh-server
# 检查SSH服务是否正在运行
service ssh status
# 或者
systemctl status ssh
# 检查SSH服务是否在启动时自动启动
systemctl is-enabled ssh
12. rsync服务
# 安装rsync
sudo apt-get install rsync
# 启动服务
sudo systemctl start rsync
# 将本地的rumenz日录拷贝到远程rumenz.com服务器的tmp日录
rsync -r rumenz rumenz@rumenz.com:/tmp
#把rumenz.com服务器上的rumenz日录拷贝到192.168.0.111服务器上
rsync -r rumenz@rumenz.com:/tmp/rumenz/ root@192.168.0.111:/home/
#排除某个目录,--exclude后面的路径不能为绝对路径,必须为相对路径才可以,否则匹配不上,就不会被排除掉
rsync -r --exclude=rumenz/bin rumenz@rumenz.com:/tmp/rumenz root@192.168.0.111:/home
rsync av -e ssh --exclude='*.out' /path/to/source/ user@hostB:/path/to/dest/
"""
-a :递归到目录,即复制所有文件和子目录。另外,打开归档模式和所有其他选项(相当于 -rlptgoD)
-v :详细输出
-e ssh :使用 ssh 作为远程 shell,这样所有的东西都被加密
"""
--exclude='*.out' :排除匹配模式的文件,例如 *.out 或 *.c 等。
13. mv
# 将source_path文件夹内容整体复制到des_path,且文件名同名
mv source_path des_path
14. diff
diff [选项] 文件夹1 文件夹2
'''
常用选项
-r:递归比较子文件夹中的文件。
-q:只报告文件是否不同,不显示具体内容差异。
-N:将不存在的文件当作空文件处理,这样可以比较两个文件夹中独有的文件。
-u:以统一格式显示文件差异。
'''
# 比较两个文件夹的所有内容,包括子文件夹
diff -r folder1 folder2
# 只报告文件是否不同
diff -rq folder1 folder2
15. docker
docker-compose up -a #开启服务
docker-compose down #关闭服务
docker logs -f ollama #查看开启ollama容器服务时的日期
docker exec -it ollama ollama list #查看ollama容器下的模型列表
docker exec -it ollama ollama pull model_name #拉取模型到ollama容器下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?