• bench 测试各种 Linux 发行版的网络(下行)和 IO 测试,性能测试
    netnr 2018-11-10 132
    # 网络和 IO 测试 https://teddysun.com/444.html
    wget -qO- bench.sh | bash
    
    # 性能测试 https://teddysun.com/245.html
    wget --no-check-certificate https://github.com/teddysun/across/raw/master/unixbench.sh && chmod +x unixbench.sh
    ./unixbench.sh
    
    wget -qO- --no-check-certificate https://raw.githubusercontent.com/oooldking/script/master/superbench.sh | bash
  • kms 一键安装KMS服务脚本
    netnr 2018-11-10 85
    #安装
    wget --no-check-certificate https://github.com/teddysun/across/raw/master/kms.sh && chmod +x kms.sh && ./kms.sh
    
    #查看端口
    netstat -nxtlp | grep 1688
    
    #启动
    /etc/init.d/kms start
    #停止
    /etc/init.d/kms stop
  • ssh.sh ssh 连接,密钥登录,ssh-keygen
    netnr 2018-11-10 726
    # 生成密钥(RSA 兼容性强)
    ssh-keygen -t rsa -b 4096 -C "netnr" # 生成密钥
    # Git 客户端 v2.33.1 及以上的版本或者 OpenSSH 是 8.8 及以上 RSA 算法被禁用,添加配置 ~/.ssh/config
    Host *
    HostkeyAlgorithms +ssh-rsa
    PubkeyAcceptedAlgorithms +ssh-rsa
    
    # 生成密钥(ED25519 更小更快更安全,需要 OpenSSH 6.5 以上,推荐),密钥均为 256 位
    ssh-keygen -t ed25519 -C "netnr"
  • bbr 快速开启 Google BBR 的方法,BBR 内核要求为 4.9
    netnr 2018-11-10 741
    # 修改系统变量
    echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    
    sysctl -p   # 保存生效
    sysctl net.ipv4.tcp_available_congestion_control    # 查看内核是否已开启 BBR
    lsmod | grep bbr    #查看 BBR 是否启动
    
    #help
    https://www.moerats.com/archives/612/
  • slmgr Windows 软件授权管理 slmgr 命令,KMS 服务激活系统
    netnr 2018-11-05 346
    # 管理员 运行
    
    # 设置服务
    slmgr -skms skms.netnr.eu.org
    
    # 安装秘钥,或者通过操作界面输入秘钥激活也可以的
    slmgr -ipk 输入对应版本的秘钥
    
    # 激活(已安装秘钥)
    slmgr -ato
  • ToTimestamp.cs 将Datetime转换成时间戳,10位,秒
    netnr 2018-11-03 92
    /// <summary>
    /// 将Datetime转换成时间戳,10位,秒
    /// </summary>
    /// <param name="datetime"></param>
    /// <returns></returns>
    public static long ToTimestamp(this DateTime datetime)
    {
        return (datetime.ToUniversalTime().Ticks - 621355968000000000) / 10000000;
    }
  • ToEncode-ToDecode.cs 编码、解码
    netnr 2018-11-03 97
    /// <summary>
    /// 编码
    /// </summary>
    /// <param name="uri"></param>
    /// <param name="charset"></param>
    /// <returns></returns>
    public static string ToEncode(this string uri, string charset = "utf-8")
    {
        string URL_ALLOWED_CHARS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.~";
  • ToDataTable-ToModel.cs 实体转表、表转实体
    netnr 2018-11-03 100
    /// <summary>
    /// 实体转表
    /// </summary>
    /// <typeparam name="T">泛型</typeparam>
    /// <param name="list">对象</param>
    /// <returns></returns>
    public static DataTable ToDataTable<T>(this IList<T> list)
    {
        Type elementType = typeof(T);
        var t = new DataTable();
  • libgdiplus-mkfontscale.sh Linux 安装字体,asp.net core 验证码
    netnr 2018-10-20 106
    # 安装字体
    yum -y install fontconfig
    cd /usr/share/fonts
    
    mkdir cfont # 创建新的字体文件夹
    chmod -R 755 /usr/share/fonts/cfont # 修改 cfont 目录的权限使 root 用户以外的用户也可以使用
    # 拷贝字体到 cfont 文件夹
    yum install mkfontscale 
    mkfontscale && mkfontdir
    fc-cache –fv # 刷新内存中的字体缓存
  • install-vsftpd.sh 安装 FTP
    netnr 2018-10-20 64
    chkconfig –list | grep vsftpd   # 检查是否安装(没任何反应)
    yum install vsftpd  # 安装
    touch /var/log/vsftpd.log   # 创建日志
    chkconfig vsftpd on # 自启动
    
    # 允许 root 登录
    cd /etc/vsftpd && ls
    # 编辑,注释 root,前面添加#
    vi ftpusers
    vi user_list
  • RequesToModel.cs 反射参数为实体
    netnr 2018-09-26 105
    /// <summary>
    /// 反射参数为实体
    /// </summary>
    /// <typeparam name="T"></typeparam>
    /// <param name="model"></param>
    /// <param name="request"></param>
    /// <returns></returns>
    public static T RequesToModel<T>(this T model, HttpRequest request = null)
    {
        if (request == null)
  • ToDataTable.cs 实体转表
    netnr 2018-09-26 98
    /// <summary>
    /// 实体转为表
    /// </summary>
    /// <typeparam name="T">泛型</typeparam>
    /// <param name="list">对象</param>
    /// <returns></returns>
    public static DataTable ToDataTable<T>(this IList<T> list)
    {
        Type elementType = typeof(T);
        var t = new DataTable();
  • OfJson.cs JSON 字符串转义
    netnr 2018-09-26 105
    /// <summary>
    /// 字符串 JSON转义
    /// </summary>
    /// <param name="s"></param>
    /// <returns></returns>
    public static string OfJson(this string s)
    {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < s.Length; i++)
        {
  • mysqldump.sh mysql 备份还原
    netnr 2018-09-21 657
    mysqldump -u 账号 -p 数据库 > 路径  # 备份格式
    
    # 备份库(表结构及数据) -R 包含存储过程、函数和触发器 --no-tablespaces 不包括表空间
    mysqldump -u root -p netnrdb -e -R --no-tablespaces > /netnr/data/netnrdb.sql
    mysqldump -uroot -p123456 netnrdb -e -R --no-tablespaces > /netnr/data/netnrdb.sql
    
    mysqldump -u root -p -d netnrdb > /netnr/data/netnrdb.sql   # 备份库(表结构)(加 -d 不含数据)
    mysqldump -u root -p netnrdb table1 table2 table3 > netnrdb.sql # 备份库(指定表)
    
    mysqldump -u root -p --databases dbname1, dbname2 > backdb.sql # 备份多个数据库
  • drop.sql SqlServer 删除所有表
    netnr 2018-09-21 92
    -- 删除所有表
    DECLARE @sql VARCHAR(8000);
    WHILE EXISTS (SELECT name FROM sysobjects WHERE type = 'U')
    BEGIN
        SELECT @sql = 'DROP TABLE ' + name
        FROM sysobjects
        WHERE (type = 'U');
    
        PRINT (@sql);
  • truncate.sql truncate 清空所有表,mysql 数据库
    netnr 2018-09-21 88
    -- 生成清理所有表语句;
    SELECT CONCAT('truncate TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ';')
    FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA IN ( '数据库名' );
  • Scaffold-DbContext dotnet ef core 生成实体
    netnr 2018-09-21 704
    # 公共依赖
    Install-Package Microsoft.EntityFrameworkCore.Tools
    
    # MySQL
    Install-Package Pomelo.EntityFrameworkCore.MySql
    Scaffold-DbContext "Server=.;Port=3306;Database=netnr;uid=root;pwd=123" Pomelo.EntityFrameworkCore.MySql -Force -UseDatabaseNames -DataAnnotations -NoPluralize -NoOnConfiguring -Context ContextBase
    
    #SQLServer
    Install-Package Microsoft.EntityFrameworkCore.SqlServer
    Scaffold-DbContext "Server=.;Database=netnr;uid=sa;pwd=123" Microsoft.EntityFrameworkCore.SqlServer
  • install-mysql5.7.sh linux 安装 MySQL5.7
    netnr 2018-09-20 656
    wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
    rpm -ivh mysql57-community-release-el7-9.noarch.rpm
    yum install mysql-server
    
    mysqld --initialize # 初始化
    
    chown mysql:mysql -R /var/lib/mysql # 设置权限
    
    systemctl start mysqld  # 启动
    service mysqld restart  # 重启
  • git-guide.sh git 命令指南
    netnr 2018-09-05 697
    # linux 安装
    yum install git-core
    
    # clone项目
    git clone https://github.com/netnr/np.git
    
    # 强制覆盖本地
    git fetch --all 
    git reset --hard origin/master 
    git pull
  • kill-nohup.sh linux 后台运行、关闭进程
    netnr 2018-09-05 692
    nohup dotnet Web.dll &  # 后台运行 dotnet 站点
    
    # 会生成 nohup.out 日志文件,如果不想输出日志 /dev/null 是一个路径黑洞
    nohup dotnet Web.dll > /dev/null &
    
    echo "" > nohup.out # 清空 nohup.out 日志文件
    tail -f nohup.out   # 监听 nohup.out 日志输出
    
    kill $(lsof -t -i :8080) # 根据端口 8080 关闭进程
    kill $(pidof node) # 根据进程名称 node 关闭进程
  • install-nginx.sh linux 上多种方式安装 nginx,LNMP 安装、YUM 安装
    netnr 2018-09-05 685
    # 安装方式:一键安装
    wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz && tar -xvf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh nginx
    ./upgrade.sh nginx  # 升级
    
    # help
    https://lnmp.org/install.html
    
    
    # 安装方式:CentOS7 yum
    rpm -Uvh https://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  • install-openssl.sh linux 上安装 OpenSSL
    netnr 2018-09-05 160
    # 环境
    yum -y install gcc gcc-c++ autoconf automake libtool make cmake
    yum -y install zlib zlib-devel openssl openssl-devel pcre-devel
    
    wget https://www.openssl.org/source/openssl-1.1.1.tar.gz    # 安装包下载地址 https://www.openssl.org/source/
    tar -xzf openssl-1.1.1.tar.gz # 解压
    cd openssl-1.1.1 # 进入安装目录
    mkdir /usr/local/openssl # 创建文件夹
    
    # 卸载升级
  • timezone.sh 修改 linux 时区为上海
    netnr 2018-09-05 765
    # CentOS
    
    # 方式一
    timedatectl list-timezones # 列出时区 
    timedatectl set-timezone Asia/Shanghai # 设置时区
    
    # 方式二
    vi /etc/sysconfig/clock # 编辑,写入
    ZONE="Asia/Shanghai"