白荼日记 - linux https://blog.iletter.top/tag/linux/ zh-CN Thu, 06 Nov 2025 22:18:00 +0800 Thu, 06 Nov 2025 22:18:00 +0800 pycharm远程开发 https://blog.iletter.top/archives/501/ https://blog.iletter.top/archives/501/ Thu, 06 Nov 2025 22:18:00 +0800 DelLevin 首先创建新的ssh项目

2025-11-06T14:03:42.png

填写相关参数

2025-11-06T14:04:29.png

这里需要上传linux的安装包,因为下载的话一直失败无法下载成功,我们选择上传和上传路径
2025-11-06T14:05:26.png

pycharm地址:https://www.jetbrains.com/zh-cn/pycharm/download/other.html

破解文件下载地址:ja-netfilter-2025.3.0.zip

弄完之后,会让你填写远程pycharm的验证,在这之前退出一下我们需要填写编辑一下文件

vim pycharm64.vmoptions

里面填写关于破解文件的相关信息

-Xms256m
-Xmx2048m
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-XX:+IgnoreUnrecognizedVMOptions
-XX:CompileCommand=exclude,com/intellij/openapi/vfs/impl/FilePartNodeRoot,trieDescend
-ea
-Dsun.io.useCanonCaches=false
-Dsun.java2d.metal=true
-Djbr.catch.SIGABRT=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off
-Dide.show.tips.on.startup.default.value=false
-Dsun.tools.attach.tmp.only=true
-Dawt.lock.fair=true
-javaagent:/root/ja-netfilter/ja-netfilter.jar
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED

之后再次打开pycharm远程,填写激活码

6ZLWI4KV9Y-eyJsaWNlbnNlSWQiOiI2WkxXSTRLVjlZIiwibGljZW5zZWVOYW1lIjoi5rC45LmF5r+A5rS7IHd3d8K3YWppaHVvwrdjb20iLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IkdPIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSUzAiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRNIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUlNVIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSU0MiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRTIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSRCIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUkMiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJTRiIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJEQlIiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJJSSIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiRFBOIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJEQiIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiREMiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSUiIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUlNWIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IldTIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQU0kiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUENXTVAiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiQUlMIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSUyIsInBhaWRVcFRvIjoiMjAyNS0xMS0yMyIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQUlIiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiRFAiLCJwYWlkVXBUbyI6IjIwMjUtMTEtMjMiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUERCIiwicGFpZFVwVG8iOiIyMDI1LTExLTIzIiwiZXh0ZW5kZWQiOnRydWV9XSwibWV0YWRhdGEiOiIwNDIwMjUxMDI0UFBBTTAwMDAwNUEwMDAwMDBYQyIsImhhc2giOiI3NTkxODgyNy8wOjEzODU1MTE2NSIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJ0cmlhbCI6ZmFsc2UsImFpQWxsb3dlZCI6dHJ1ZX0=-jEJB+XsDL603fDEvkpWiZmuv+g4j7nLQ2jwzghoDP8KuxfCXLPG6LFK4C00mUzUX23i+T9XB9hAp83icdF+YuVESTTbPPxLQVCzk2uIskO8s/g4BZacTQD5IsHVDjRmv5HWtuakqNVUzbatF+yc0ut58PfrPsnKMrp1yFBQEvw3Ch1gghbm85UsTQ4zW2C05QSQDrLSlQB4M/cZ6OTI22NtPSrfJxyfdUhVEnQQqO6uQqrqa7CX8ZuC+ZKsap4tnaXmHG4hfUlZdO7PTlZfV20n9mtJxZSftqZUgeJzreporG7C2bX1mIDlkAECzkMU5gmJzlUQ6499xz2O2Upx7Wg==-MIIETDCCAjSgAwIBAgIBETANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTI0MDkyMDEyMTEyN1oXDTI2MDkyMjEyMTEyN1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyNDA5MjAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7SH/XcUoMwkDi8JJPzXWWHWFdOZdrP2Dqkz2W8iUi650cwz2vdPEd0tMzosLAj7ifkFEHUyiuEcL//q9d9Op7ZsV23lpPXX8tFMLFwugoQ9D8jDLT/XP9pp/YukWkKF5jpNbaCvsVQkDdYkArBkYvhH3aN4v9BkEsXahfgLLOPe4IG2FDJNf9R4to9V1vt+m2UVJB0zV4a/sVMKUZLgqKmKKKOKoLrE3OjBlZlb+Q0z2N5dsW0hDEVRFGmBUAbHN/mp44MMMvEIFKfoLIGpgic92P2O6uFh75PI7mcultL6yuR48ajErx8CjjQEGOSnoq/8hD+yVE+6GW2gJa2CPvAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUb5NERj05GyNerQ/Mjm9XH8HXtLIwSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBALq6VfVUjmPI3N/w0RYoPGFYUieCfRO0zVvD1VYHDWsN3F9buVsdudhxEsUb8t7qZPkDKTOB6DB+apgt2ZdKwok8S0pwifwLfjHAhO3b+LUQaz/VmKQW8gTOS5kTVcpM0BY7UPF8cRBqxMsdUfm5ejYk93lBRPBAqntznDY+DNc9aXOldFiACyutB1/AIh7ikUYPbpEIPZirPdAahroVvfp2tr4BHgCrk9z0dVi0tk8AHE5t7Vk4OOaQRJzy3lST4Vv6Mc0+0z8lNa+Sc3SVL8CrRtnTAs7YpD4fpI5AFDtchNrgFalX+BZ9GLu4FDsshVI4neqV5Jd5zwWPnwRuKLxsCO/PB6wiBKzdapQBG+P9z74dQ0junol+tqxd7vUV/MFsR3VwVMTndyapIS+fMoe+ZR5g+y44R8C7fXyVE/geg+JXQKvRwS0C5UpnS5FcGk+61b0e4U7pwO20RlwhEFHLSaP61p2TaVGo/TQtT/fWmrtV+HegAv9P3X3Se+xIVtJzQsk8QrB/w52IB3FKiAKl/KRn1egbMIs4uoNAkqNZ9Ih2P1NpiQnONFmkiAgeynJ+0FPykKdJQbV3Mx44jkaHIif4aFReTsYX1WUBNu/QerZRjn4FVSHRaZPSR5Oi82Wz0Nj7IY9ocTpLnXFrqkb/Kt3S6B9s2Kol3Lr1ElYA

这一步可能会提示

This license xxxx has been suspended

可以设置一下代理就可以了

2025-11-06T14:15:15.png

]]>
0 https://blog.iletter.top/archives/501/#comments https://blog.iletter.top/feed/tag/linux/
https嵌套http(修改安全策略) https://blog.iletter.top/archives/455/ https://blog.iletter.top/archives/455/ Tue, 26 Aug 2025 12:19:00 +0800 DelLevin 因为需要用到https嵌套http,但是这怎么可能啊?还好那个http有https的协议,所以我们只需要再nginx上操作升级CSP就行了。也就是内容安全策略。

HTTPS页面 (aaa.com)
└── HTTP iframe (bbb.com)
    └── HTTP frame (ccc.com)

大概是这种形式的,所以在第一个a网站是我自己写的,所以我就选择了直接使用http替换成https的了

然后配置b网站

server {
    listen 80;
    server_name www.bbb.com;
    
    # 强制跳转到 HTTPS
    return 301 https://$host$request_uri;
}

# 处理www.bbb.com 的 HTTPS 请求
server {
    listen 443 ssl;
    server_name www.bbb.com;
    
    # SSL 证书配置(你需要配置自己的证书)
    ssl_certificate /path/to/your/certificate.crt;
    ssl_certificate_key /path/to/your/private.key;
    
    # 添加安全头
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
    add_header Content-Security-Policy "upgrade-insecure-requests";
    
    # 代理到后端应用
    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
    
    # 特别处理企业查看接口,确保内容中的HTTP链接被替换
    location /rotech-xyjq-api/api/enterprise/view {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # 替换内容中的HTTP链接为HTTPS
        sub_filter 'http://b-plugin.qixin.com/' 'https://b-plugin.qixin.com/';
        sub_filter 'http://b-plugin.qixin.com' 'https://b-plugin.qixin.com';
        sub_filter_once off;
    }
}

这样就可以再a网站加载c网站的了,可以无限套娃了,前提是每个娃娃都有https这个。

]]>
0 https://blog.iletter.top/archives/455/#comments https://blog.iletter.top/feed/tag/linux/
linux mint22.1安装on my zsh https://blog.iletter.top/archives/429/ https://blog.iletter.top/archives/429/ Sun, 24 Aug 2025 15:42:00 +0800 DelLevin 更新系统并安装必要工具
sudo apt update && sudo apt upgrade -y
sudo apt install zsh git curl wget -y

安装 Oh My Zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

安装 Powerlevel10k 主题

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

配置 Oh My Zsh 使用 Powerlevel10k

编辑 ~/.zshrc

vim ~/.zshrc

注释掉 ZSH_THEME="robbyrussell"

添加 ZSH_THEME="powerlevel10k/powerlevel10k"

安装 Nerd Fonts(解决图标乱码)

# 下载
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/FiraCode.zip
# 解压
unzip FiraCode.zip -d ~/.local/share/fonts/
# 刷新缓存
fc-cache -fv
# 删除
rm FiraCode.zip

安装插件(自选)

Zsh 自动建议(输入历史建议)

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Zsh 语法高亮

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

编辑配置文件

vim  ~/.zshrc

文件-代表删除+代表新增

- plugins=(git)
+ plugins=(
+   git
+   zsh-autosuggestions
+   zsh-syntax-highlighting
+ )

配置完毕后输入
exec zsh
重启终端

持久化配置

which zsh 查看安装位置

2. 永久修改默认 Shell(需要输入密码)

chsh -s $(which zsh)

安装后重启电脑即可

如果想要重新配置可以输入即可

p10k configure
]]>
0 https://blog.iletter.top/archives/429/#comments https://blog.iletter.top/feed/tag/linux/
linux mint命令窗口设置代理 https://blog.iletter.top/archives/428/ https://blog.iletter.top/archives/428/ Sun, 24 Aug 2025 00:18:17 +0800 DelLevin 临时设置

设置代理
export http_proxy="http://127.0.0.1:20171"
export https_proxy="http://127.0.0.1:20171"
取消设置代理
unset http_proxy https_proxy

此方式不支持socket5代理

proxychains

前情提要:因为要按照某个软件,但是有网络监测机制,一直报错,所以就需要通过代理来运行。

安装:
sudo apt update

sudo apt install proxychains -y

配置:

sudo vim /etc/proxychains.conf
在末尾添加
socks5 127.0.0.1 20170

然后就可以使用了。

重要知识点:ping 不能被代理!
ping 使用的是 ICMP 协议,不是 TCP/HTTP/SOCKS。
proxychains 只能代理 TCP 和 UDP 连接(比如 curl, wget, git, ssh 等)。
所以你用 proxychains ping ... 是无效的,而且会报错或被忽略。

正确测试 proxychains 是否工作的命令是使用 curl 或 wget

(base) dellevin@dellevin-G3-3579:~/Desktop/WhiteSur-gtk-theme$ proxychains curl -v google.com
ProxyChains-3.1 (http://proxychains.sf.net)
|DNS-request| google.com 
|S-chain|-<>-127.0.0.1:20170-<><>-4.2.2.2:53-<><>-OK
|DNS-response| google.com is 142.250.189.238
* Host google.com:80 was resolved.
* IPv6: (none)
* IPv4: 142.250.189.238
*   Trying 142.250.189.238:80...
|S-chain|-<>-127.0.0.1:20170-<><>-142.250.189.238:80-<><>-OK
* Connected to google.com (142.250.189.238) port 80
* using HTTP/1.x
> GET / HTTP/1.1
> Host: google.com
> User-Agent: curl/8.12.1
> Accept: */*
> 
* Request completely sent off
< HTTP/1.1 301 Moved Permanently
< Location: http://www.google.com/
< Content-Type: text/html; charset=UTF-8
< Content-Security-Policy-Report-Only: object-src 'none';base-uri 'self';script-src 'nonce-p85NwNurE8Yc0yBkcHZmUQ' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
< Date: Sat, 23 Aug 2025 05:50:49 GMT
< Expires: Mon, 22 Sep 2025 05:50:49 GMT
< Cache-Control: public, max-age=2592000
< Server: gws
< Content-Length: 219
< X-XSS-Protection: 0
< X-Frame-Options: SAMEORIGIN
< 
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>
* Connection #0 to host google.com left intact

这样说明我已经可以正常访问了

]]>
0 https://blog.iletter.top/archives/428/#comments https://blog.iletter.top/feed/tag/linux/
ubuntu server设置samba共享服务 https://blog.iletter.top/archives/399/ https://blog.iletter.top/archives/399/ Fri, 25 Jul 2025 13:17:00 +0800 DelLevin 在 Ubuntu Server 上搭建 Samba 文件共享服务 是一个非常常见的需求,适用于局域网内的文件共享、打印机共享等场景。

下面是一个完整教程 ,帮助你快速搭建一个基础的 Samba 服务,并允许其他用户访问你的共享目录。

第一步:安装 Samba

sudo apt update

sudo apt install samba -y

安装完成后,Samba 会自动启动。

第二步:备份默认配置文件(可选)

Samba 的主配置文件位于:

/etc/samba/smb.conf

建议先做一个备份:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

第三步:添加共享目录配置

你可以选择共享一个现有目录,比如 /home/dellevin/shared

1. 创建共享目录(如果还没有)

mkdir -p /home/dellevin/shared

2. 编辑 Samba 配置文件

sudo nano /etc/samba/smb.conf

在文件末尾添加如下内容(以共享 shared 目录为例):

[Shared]

   comment = Shared Folder

   path = /home/dellevin/shared

   browseable = yes

   read only = no

   writable = yes

   valid users = dellevin
  • [Shared]:共享名称(客户端看到的名字)
  • path:要共享的目录路径
  • read only = nowritable = yes 表示允许写入
  • valid users:允许访问该共享的用户

第四步:设置 Samba 用户密码

你需要为允许访问的用户设置 Samba 密码(即使该用户已存在 Linux 系统中):

sudo smbpasswd -a dellevin

系统会提示你输入并确认 Samba 密码。

⚠️ 注意:这个密码可以和系统密码不同。

第五步:重启 Samba 服务

sudo systemctl restart smbd

第六步:设置开机自启

sudo systemctl enable smbd

第七步:检查是否运行正常

systemctl status smbd

确保服务状态是 active (running)

第八步:从 Windows 或 Linux 客户端访问

Windows 访问方式:

打开“此电脑”或资源管理器,在地址栏输入:

\\你的Ubuntu服务器IP地址

例如:

\\192.168.1.100

然后输入用户名 dellevin 和你在 smbpasswd 中设置的密码即可访问。

Linux 访问方式(如 Ubuntu 桌面):

打开文件管理器(如 Nautilus),按下 Ctrl + L 输入:

smb://192.168.1.100

或者使用命令行挂载:

sudo mount -t cifs //192.168.1.100/Shared /mnt/shared -o user=dellevin

可选:配置防火墙(UFW)

如果你启用了防火墙 UFW,需要开放 Samba 所需端口:

sudo ufw allow 'Samba'

总结:常用命令一览表

操作命令
安装 Sambasudo apt install samba
配置文件位置/etc/samba/smb.conf
添加共享目录在配置文件中添加[ShareName]
设置 Samba 用户密码sudo smbpasswd -a username
重启 Sambasudo systemctl restart smbd
开机自启sudo systemctl enable smbd
查看服务状态systemctl status smbd
客户端访问地址\\IP地址smb://IP地址
]]>
0 https://blog.iletter.top/archives/399/#comments https://blog.iletter.top/feed/tag/linux/
linux注册服务为系统服务并开机自启 https://blog.iletter.top/archives/398/ https://blog.iletter.top/archives/398/ Tue, 15 Jul 2025 22:22:23 +0800 DelLevin 因为安装了frp穿透服务,每次开启都要手动启动, 所以索性注册为系统服务,并实现开机自启。

编写配置文件

sudo vim /etc/systemd/system/frp-panel.service
[Unit]
Description=FRP Panel Service
After=network.target

[Service]
User=root
WorkingDirectory=/home/dellevin/frp
ExecStart=/home/dellevin/frp/frp-panel client -s 4f448b4a-1c0f-486d-9f42-aed90f288da5 -i admin.c.home-services --api-url http://152.136.153.72:9000 --rpc-url grpc://152.136.153.72:9001
Restart=always
RestartSec=10s

[Install]
WantedBy=multi-user.target

说明:

  • User=:运行该服务的用户(这里是 root
  • WorkingDirectory=:程序运行时的工作目录
  • ExecStart=:要执行的完整命令
  • Restart=always:异常退出后自动重启
  • RestartSec=10s:重启前等待 10 秒

重新加载 systemd 配置

sudo systemctl daemon-reexec
sudo systemctl daemon-reload

启用服务开机自启

sudo systemctl enable frp-panel.service

启动服务(或重启系统测试)

sudo systemctl start frp-panel.service

查看运行状态:

sudo systemctl status frp-panel.service

如果显示 active (running),说明服务已成功运行。

日志查看方式

你可以使用 journalctl 查看服务日志:

journalctl -u frp-panel.service -f

取消开机自启的命令

sudo systemctl disable 服务名称

查看当前是否已取消成功

你可以运行以下命令查看该服务的状态:

systemctl is-enabled frp-panel

如果输出是:

disabled

说明已经成功取消开机启动了

]]>
0 https://blog.iletter.top/archives/398/#comments https://blog.iletter.top/feed/tag/linux/
ubuntu-services挂载外置硬盘 https://blog.iletter.top/archives/397/ https://blog.iletter.top/archives/397/ Tue, 15 Jul 2025 22:20:55 +0800 DelLevin 软件包升级
sudo apt upgrade

lsblk命令用于列出所有可用的存储设备及其分区信息

df -h 查看挂载点、文件系统类型、已用空间、可用空间等。

root@dellevin-ubuntu:/# lsblk
NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0                       7:0    0  63.9M  1 loop /snap/core20/2318
loop1                       7:1    0    87M  1 loop /snap/lxd/29351
loop2                       7:2    0  38.8M  1 loop /snap/snapd/21759
sda                         8:0    0 119.2G  0 disk 
├─sda1                      8:1    0     1M  0 part 
├─sda2                      8:2    0     2G  0 part /boot
└─sda3                      8:3    0 117.2G  0 part 
  └─ubuntu--vg-ubuntu--lv 253:0    0 117.2G  0 lvm  /
sdb                         8:16   0 465.8G  0 disk 
└─sdb1                      8:17   0 465.8G  0 part 

root@dellevin-ubuntu:/# df -h
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              578M  1.2M  577M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  115G  7.1G  102G   7% /
tmpfs                              2.9G     0  2.9G   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          2.0G  130M  1.7G   8% /boot
tmpfs                              578M  4.0K  578M   1% /run/user/1000

可以看到sdb并没有挂载

sudo mkfs.ext4 /dev/sdb1 将这块硬盘格式
化为 ext4 文件系统

root@dellevin-ubuntu:/mnt# sudo mkfs.ext4 /dev/sdb1
mke2fs 1.46.5 (30-Dec-2021)
/dev/sdb1 contains a ntfs file system labelled '系统'
Proceed anyway? (y,N) y
Creating filesystem with 122096000 4k blocks and 30531584 inodes
Filesystem UUID: 86424462-d372-4894-89b2-3186bb52b237
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    102400000

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (262144 blocks): 
done
Writing superblocks and filesystem accounting information: done

sudo mount /dev/sdb1 /mnt/500Data 创建挂载点并挂载硬盘

root@dellevin-ubuntu:/mnt# mkdir 500Data
root@dellevin-ubuntu:/mnt# ls
500Data
root@dellevin-ubuntu:/mnt# sudo mount /dev/sdb1 /mnt/500Data
root@dellevin-ubuntu:/mnt# df -h | grep sdb1
/dev/sdb1                          458G   28K  435G   1% /mnt/500Data
root@dellevin-ubuntu:/mnt# df -h 
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              578M  1.2M  577M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  115G  7.1G  102G   7% /
tmpfs                              2.9G     0  2.9G   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          2.0G  130M  1.7G   8% /boot
tmpfs                              578M  4.0K  578M   1% /run/user/1000
/dev/sdb1                          458G   28K  435G   1% /mnt/500Data

设置开机自动挂载

sudo blkid | grep /dev/sdb1 查看硬盘UUID

root@dellevin-ubuntu:/mnt/500Data# sudo blkid | grep /dev/sdb1
/dev/sdb1: UUID="86424462-d372-4894-89b2-3186bb52b237" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="1ea79eea-01"

vim /etc/fstab 然后编辑 fstab 添加一行:

UUID=86424462-d372-4894-89b2-3186bb52b237  /mnt/500Data   ext4   defaults   0   2
]]>
0 https://blog.iletter.top/archives/397/#comments https://blog.iletter.top/feed/tag/linux/
Centos7设置swap内存大小 https://blog.iletter.top/archives/349/ https://blog.iletter.top/archives/349/ Fri, 27 Dec 2024 11:03:02 +0800 DelLevin 创建和配置 2GB Swap 文件
  1. 创建一个空文件作为交换空间​: 使用 dd 命令来创建一个指定大小的文件。我们将创建一个 2GB 的文件 /swapfile

    sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
  2. 设置适当的权限​: 设置正确的文件权限以确保安全,防止非授权访问。

    sudo chmod 600 /swapfile
  3. 初始化交换文件​: 使用 mkswap 命令来设置这个文件为交换空间。

    sudo mkswap /swapfile
  4. 激活交换文件​: 使用 swapon 命令来启用新的交换空间。

    sudo swapon /swapfile
  5. 验证交换空间​: 再次使用 free -h 或者 swapon --show 来确认交换空间已经正确添加。

    free -h
    # 或者
    sudo swapon --show
  6. 使更改永久生效​: 编辑 /etc/fstab 文件,添加一行以确保在系统重启后仍然可以使用新创建的交换空间。 打开 /etc/fstab 文件:

    sudo vi /etc/fstab

    在文件末尾添加如下行:

    /swapfile none swap sw 0 0
  7. 调整 Swappiness 参数(可选)​: 如果你想要调整内核对 swap 的使用倾向,可以通过编辑 /etc/sysctl.conf 文件来设置 vm.swappiness 参数。例如,将其设置为 10 可能是一个合理的选择。

    echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p

完成以上步骤后,系统应该已经有了 2GB 的 swap 空间,并且它会在每次启动时自动加载。

]]>
0 https://blog.iletter.top/archives/349/#comments https://blog.iletter.top/feed/tag/linux/
Centos7部署maven环境 https://blog.iletter.top/archives/348/ https://blog.iletter.top/archives/348/ Fri, 27 Dec 2024 11:01:51 +0800 DelLevin 1、maven 官网下载安装包

maven 官网地址:https://maven.apache.org/download.cgi

下载完成后,上传到 linux

2、安装 maven

创建 maven 文件夹

mkdir -p /usr/local/maven

解压 maven 安装包到 maven 文件夹

tar -zxvf apache-maven-3.8.5-bin.tar.gz -C /usr/local/maven

进入maven 目录

cd /usr/local/maven/apache-maven-3.8.5/

进入 conf 目录

cd conf/

创建 maven 资源库目录

mkdir -p /m2/respository

编辑 settings.xml 文件

vim settings.xml

设置指定的存放位置为

<localRepository>/m2/repository</localRepository>

更改镜像源

<mirror>  
         <id>alimaven</id>  
         <name>aliyun maven</name>  
        <url><http://maven.aliyun.com/nexus/content/groups/public/></url>  
         <mirrorOf>central</mirrorOf>          
</mirror>

3、添加环境变量

vim /etc/profile

添加 maven 环境变量内容

MAVEN_HOME=/usr/local/maven/apache-maven-3.8.5
PATH=$MAVEN_HOME/bin:$PATH
export MAVEN_HOME PATH

重新加载配置文件

source /etc/profile

测试查看版本

mvn -version
]]>
0 https://blog.iletter.top/archives/348/#comments https://blog.iletter.top/feed/tag/linux/
Centos7部署redis https://blog.iletter.top/archives/347/ https://blog.iletter.top/archives/347/ Fri, 27 Dec 2024 11:01:21 +0800 DelLevin 下载Redis

进入官网找到下载地址 https://redis.io/download

右键Download按钮,选择复制链接。

进入到Xshell控制台(默认当前是root根目录),输入wget 将上面复制的下载链接粘贴上,如下命令:

wget <http://download.redis.io/releases/redis-5.0.7.tar.gz>

下载完成后进行解压

tar -zvxf redis-5.0.7.tar.gz

移动redis目录

一般都会将redis目录放置到 /usr/local/redis目录,所以这里输入下面命令将目前在/root目录下的redis-5.0.7文件夹更改目录,同时更改文件夹名称为redis。

mv /root/redis-5.0.7 /usr/local/redis

编译

cd到/usr/local/redis目录,输入命令make执行编译命令,接下来控制台会输出各种编译过程中输出的内容。

make

安装

输入以下命令make PREFIX=/usr/local/redis install

这里多了一个关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,

库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。

启动redis

根据上面的操作已经将redis安装完成了。在目录/usr/local/redis 输入下面命令启动redis

后台启动(在配置文件设置了daemonize属性为yes则跟后台进程方式启动其实一样)

./bin/redis-server& ./redis.conf

显示启动方式

./bin/redis-server ./redis.conf

]]>
0 https://blog.iletter.top/archives/347/#comments https://blog.iletter.top/feed/tag/linux/