Avatar

Organizations

  • 基于 CentOS 7

    让Linux系统与Windows系统之间,支持机器名访问,需要Linux安装NetBIOS。 而安装NetBIOS,不一定必须安装Samba,安装过程如下:

    安装库

    # 注意 这里并不会安装完整的samba
    $ yum install samba-winbind
    

    修改配置文件

    ; Nano /etc/nsswitch.conf
    ; add wins
    hosts:  files <wins> dns myhostname
    

    验证安装

    $ ll /etc/<lib|lib64>/libnss_winbind.so
    

    配置生效

    $ ldconfig
    

    配置服务

    $ systemctl start winbind
    $ systemctl status winbind
    

    参考

    wins netbios centos linux Created Wed, 23 Oct 2024 13:04:27 +0800
  • 配置文件

    ; ~/.tmux.conf
    # 启动鼠标支持
    set -g mouse on
    set -g mode-keys vi
    
    # WindTerm需在 会话 --> 首选项 --> 设置 --> 终端 --> 鼠标追踪 --> 追踪事件
    # 取消勾选:
    # - 移动事件
    # - 点击事件
    # - 右键单击事件
    # WindTerm使用鼠标修改面板大小,受WindTerm限制无法实现
    
    # 禁用 WindTerm 的默认鼠标行为(防止冲突)
    set -g terminal-overrides 'xterm*:smcup@:rmcup@'
    # 1. 禁用左键释放自动复制(改为仅选择)
    bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-selection-and-cancel
    # 2. 右键复制已选文本(需先左键选择)
    bind -T copy-mode-vi MouseDown3Pane send-keys -X copy-pipe-and-cancel \
      "xclip -i -selection clipboard 2>/dev/null || \
       pbpaste 2>/dev/null || \
       win32yank.exe -i 2>/dev/null"
    # 3. 右键直接粘贴系统剪贴板内容(跨系统支持)
    bind -n MouseDown3Pane run-shell \
      "tmux set-buffer -- \"$(xclip -o -selection clipboard 2>/dev/null || \
                              pbpaste 2>/dev/null || \
                              win32yank.exe -o 2>/dev/null)\"; \
       tmux paste-buffer"
    
    # 解除默认的鼠标调整绑定(可选)
    unbind-key -T root MouseDrag1Border
    # 重新绑定鼠标拖动调整大小
    bind -n MouseDrag1Border resize-pane -M
    
    # status line
    set -g status-justify centre
    set -g status-left "#{session_name}"
    set -g status-right "%F %R"
    # 窗口编号自动重新排序
    set -g renumber-windows on
    
    # status line > window list
    set -g window-status-format "#{window_index}:#{window_name}"
    set -g window-status-separator " | "
    set -g window-status-current-format "#{window_index}:#{window_name}"
    set -g window-status-current-style bold,italics
    
    # pane
    set -g pane-border-format " #{pane_index}:#{pane_title} $ #{pane_current_command} "
    set -g pane-border-status top
    set -g history-limit 10000
    
    # 更新配置,不需要关闭tmux,直接运行马上生效
    tmux source-file ~/.tmux.conf
    

    快捷键操作

    Prefix = Ctrl + b

    cli tmux linux Created Wed, 21 Feb 2024 16:08:32 +0800
  • Proxmox VE 官方提供的 Centos 7 模板是有问题的无法正常使用,现在给出解决方案。

    安装

    安装完成后,容器可以启动,但无法关闭、网络无法使用、控制台无法使用,这些都是我们要解决的问题。

    解决方法

    1. ssh登录进入PVE主机
    # 查看 CT 容器列表
    $ pct list
    # 进入 CT 容器
    $ pct enter <VMID>
    
    1. 打开网络
    # 启动网络,从DHCP拿IP地址
    $ ifup eth0
    
    1. 更新 yum 库
    $ curl -o /etc/yum.repos.d/jsynacek-systemd-backports-for-centos-7-epel-7.repo https://copr.fedorainfracloud.org/coprs/jsynacek/systemd-backports-for-centos-7/repo/epel-7/jsynacek-systemd-backports-for-centos-7-epel-7.repo
    $ yum update
    # 安装 sshd
    $ yum install -y openssh-server
    $ systemctl start sshd.service
    $ systemctl enable sshd.service
    
    1. 退出 CT 容器
    $ exit
    $ pct stop <VMID>
    
    1. 重新启动 CT 容器,一切正常—
    CT Container lxc centos 7 linux proxmoxve Created Wed, 31 Jan 2024 21:37:49 +0800
  • NcFTP 是 Linux 上常用的 FTP客户端工具,非常好用,这里记录它的常见用法。

    ncftp

    FTP浏览工具

    $ ncftp
    # 一定注意参数顺序
    ncftp > open -u <username> -p <password> <remote-host>
    # 使用被动模式传输
    ncftp > set passive yes
    ncftp > put <local-files>
    

    ncftpput

    FTP上传命令行工具

    # 一定注意参数顺序
    # 使用被动模式传输
    $ ncftpput -u <username> -p <password> -F <remote-host> <remote-path> <local-files>
    # or
    $ ncftpput -f ftp.cfg -F <remote-path> <local-files>
    
    ; ftp.cfg
    host ftp.server.com
    user myusername
    pass mypasswd
    
    ftp ncftp linux Created Fri, 26 Jan 2024 11:30:57 +0800
  • 安装

    $ yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
    
    # 安装服务端包
    $ yum install postgresql10-server postgresql10
    

    配置

    # 初始化数据库,设置自启动
    $ /usr/pgsql-10/bin/postgresql-10-setup initdb
    $ systemctl enable postgresql-10
    $ systemctl start postgresql-10
    
    # 设置防火墙规则
    $ iptables -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT              #开放Postgresql 5432端口
    
    $ service iptables save   # 保存防火墙规则
    

    配置远程访问

    # 切换至用户
    $ su - postgres
    
    ; ./10/data/postgres.conf
    - #listen_address
    + listen_address
    
    ; ./10/data/pg_hba.conf
    ; 允许所有IPv4地址
    + host all all 0.0.0.0/0 scram-sha-256
    

    登录数据库

    $ psql -U postgres
    
    -- 设置数据运行参数
    ALTER SYSTEM SET listen_addresses = '*';
    ALTER SYSTEM SET port = 5432;
    ALTER SYSTEM SET password_encryption = 'scram-sha-256';
    
    --  修改默认用户密码
    ALTER USER postgres with encrypted password '你的密码';
    
    -- 退出数据库
    \q
    
    -- 退出用户
    exit    
    

    重启服务

    systemctl restart postgresql-10
    
    postgresql centos database Created Fri, 19 Jan 2024 13:37:15 +0800
  • 1、安装Composer镜像

    $ docker pull composer:1.9.0
    

    2、安装laravel

    # 启动Composer镜像
    $ docker run --rm \
                    -it \
                    -v ${PWD}:/app \
                    composer:1.9.0 /bin/bash
    
    # 创建composer.json文件
    $ composer init -n
    
    # 使用国内 Packagist镜像
    $ composer config repo.packagist composer https://mirrors.aliyun.com/composer/
    
    # 添加laravel包
    $ composer require -vvv \
                        --prefer-dist \
                        --prefer-stable \
                        laravel/installer
    
    # 看到以下输出,说明添加成功。
    Writing lock file
    Generating autoload files
    
    # 在当前目录覆盖安装laravel
    $ ./vendor/bin/laravel new
    
    # 看到以下输出,说明安装成功。
    Package manifest generated successfully.
    Application ready! Build something amazing.
    
    # 退出Composer镜像
    $ exit  
    

    将当前目录下的storage目录权限,设为757

    php docker centos laravel Created Fri, 19 Jan 2024 13:26:15 +0800
  • 因为阿里的弹性WEB托管,使用php 5.5.30版本,所以只能安装Laravel 5.2版本。

    本教程使用WSL + docker环境安装,除完整的laravel环境外,不会在本地留下任何痕迹。

    1、本地安装Composer镜像

    $ docker pull composer:1.9.0
    

    2、配置Composer镜像

    # 启动Composer镜像
    $ docker run --rm \
                    -it \
                    -v ${PWD}:/app \
                    composer:1.9.0 /bin/bash
    
    # 使用国内 Packagist镜像
    $ composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
    
    $ composer create-project -vvv \
                                --prefer-dist \
                                --no-scripts \
                                --keep-vcs \
                                laravel/laravel:5.2.31 \
                                YSME
    
    # 看到以下输出,说明安装完成。
    
    Writing lock file
    Generating autoload files
    
    # 退出Composer镜像
    $ exit  
    

    4、安装到虚拟主机

    copy YSME目录下的全部内容,到虚拟主机的目录下即可。

    5、测试

    访问 http://你的域名/YSME/public/ 如果显示 Laravel 5 字样,说明安装成功!

    php docker laravel Created Fri, 19 Jan 2024 13:18:15 +0800
  • 使用snap 的过程中经常遇到无法链接的情况。

    $ sudo snap install code --classic
    error: unable to contact snap store
    

    这是因为SnapCraft将软件包放在自己的海外服务器上,因为众所周知的原因,访问速度异常缓慢,不加代理的情况下,基本无法使用。

    Linux上的一些应用程序会通过读取环境变量 http_proxy 和 https_proxy 来应用代理服务器设置,典型的有Chrome。

    然而,Snap比较特别,它不会从环境变量中上述环境变量中读取代理服务器设置,因此直接使用

    export http_proxy=[代理服务器地址]
    export https_proxy=[代理服务器地址]
    

    是不起作用的。

    网上有一些修改配置文件的方法,个人觉得很麻烦,也容易出错,所以选了最简单可靠的命令行模式。

    1. 设置命令

    $ sudo snap set system proxy.https="http://代理服务器地址:代理端口"
    $ sudo snap set system proxy.http="http://代理服务器地址:代理端口"
    

    参考文档

    proxy Snap Created Fri, 19 Jan 2024 13:15:15 +0800
  • Rime/中州韵 输入法是一个跨平台的输入引擎,非常强大优秀。 它在不同的平台有不同的名字:

    • Linux: 中州韵 (ibus-rime, fcitx-rime, fcitx5-rime)
    • Windows: 小狼毫 (Weasel)
    • MacOS: 鼠鬚管 (Squirrel), 小企鹅 (fcitx5-macos)

    东风破 (plum) 是为Rime用户设计的,用于安装和更新Rime开发者维护的默认配置数据包集合

    Windows

    配置输入法

    • 输入法设定>获取更多输入方案>在打开的命令行窗口
    • 输入 “wubi_pinyin” 回车

    配置P站风格配色主题

    # weasel.custom.yaml
    patch:
      # P站风格配色主题
      "style/color_scheme": "Pornhub"  
      "preset_color_schemes/Pornhub":
        author: "周庸生"
        back_color: 0x000000
        border_color: 0x000000
        candidate_text_color: 0xffffff
        comment_text_color: 0xffffff
        hilited_back_color: 0x009bff
        hilited_candidate_back_color: 0x009bff
        hilited_candidate_text_color: 0x000000
        hilited_comment_text_color: 0x000000
        hilited_lable_color: 0x000000
        hilited_text_color: 0x000000
        label_color: 0xffffff
        name: Pornhub
        text_color: 0xffffff
    

    Debian

    安装 fcitx5

    killall ibus-daemon \
    && apt remove ibus \
    && apt update \
    && apt install -y fcitx5 fcitx5-config-qt fcitx5-chinese-addons fcitx5-rime fcitx5-material-color
    

    安装 东风破/plum/ 配置工具

    # 因为fcitx5-rime是fcitx5团队代为开发的,所以要指定第三方Rime发行版本
    # 注意:此命令会默认配置所有预设置项
    curl -fsSL https://raw.githubusercontent.com/rime/plum/master/rime-install | rime_frontend=fcitx5-rime bash
    # 更新 plum
    rime_frontend=fcitx5-rime bash rime-install plum
    

    安装 五笔拼音混合输入法

    cd ~/plum/
    rime_frontend=fcitx5-rime bash rime-install wubi pinyin-simp
    # 也可以直接安装输入法,不配置预设置项
    curl -fsSL https://raw.githubusercontent.com/rime/plum/master/rime-install | rime_frontend=fcitx5-rime bash -s -- wubi pinyin-simp
    

    配置输入法

    # ~/.local/share/fcitx5/rime/default.custom.yaml
    patch:
      schema_list:
        - schema: wubi_pinyin # 只保留五笔拼音混合输入法
      "ascii_composer/switch_key/Shift_L": noop # 关闭左右Shift切换,居然操作麻烦,但可以解决按键冲突的问题
      "ascii_composer/switch_key/Shift_R": noop
    

    可惜Linux版本无法配置自定义样式

    Rime Created Fri, 19 Jan 2024 13:11:15 +0800
  • Windows 10 自带输入法,没有候选字栏

    > DISM /Online /Add-Capability /CapabilityName:Windows.Client.ShellComponents~~~~0.0.1.0
    

    卸载预装应用

    # 查看所有预装应用
    > Get-AppxPackage | Select Name, PackageFullName
    
    # 移除指定应用(例如 Xbox)
    > Get-AppxPackage *xbox* | Remove-AppxPackage
    
    # 移除所有用户的应用(加 -AllUsers)
    > Get-AppxPackage -AllUsers *Microsoft.YourPhone* | Remove-AppxPackage -AllUsers
    
    # 彻底禁用自动安装(防止更新后恢复)
    > Set-Content -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableWindowsConsumerFeatures" -Value 1 -Type DWord
    

    自定义命令

    Set-Alias -name ll -value Get-ChildItem -Force
    
    输入法 windows Created Mon, 08 Jan 2024 11:49:59 +0800