0%

创建用户

  1. adduser 用户名
    passwd 用户名
    优点:自动为用户创建指定的主目录以及系统的shell版本。

  2. useradd
    注意:创建的时候,需要加上参数

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1、格式

      useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name

    2、主要参数

      -c:加上备注文字,备注文字保存在passwd的备注栏中。

      -d:指定用户登入时的主目录,替换系统默认值/home/<用户名>

      -D:变更预设值。

      -e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。

      -f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.

      -g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。

      -G:指定用户所属的附加群组。

      -m:自动建立用户的登入目录。

      -M:不要自动建立用户的登入目录。

      -n:取消建立以用户名称为名的群组。

      -r:建立系统账号。

      -s:指定用户登入后所使用的shell。默认值为/bin/bash。

      -u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。

    赋予sudo权限

    1. 编辑/etc/sudoers配置文件

    2. 在root ALL=(ALL) ALL下添加sysadm ALL=(ALL) ALL(注意:格式一定对)

    3. 检验权限是否添加完成

    免除密码登录以及批量添加sudo权限

    1. 若想免除密码登录的话,修改成:sysadm ALL=(ALL) NOPASSWD:ALL

      1
      2
      3
      ## Allow root to run any commands anywhere
      root ALL=(ALL) ALL
      sysadm ALL=(ALL) NOPASSWD:ALL
    2. 若多个用户都需要sudo权限的话,一个一个添加不方便,这样的话需要实现批量添加 即可以将用户加到用户组下
      步骤:将#%wheel ALL=(ALL) ALL的前面 注释#去掉

      1
      2
      3
      ## Allows people in group wheel to run all commands

      %wheel ALL=(ALL)       ALL

      之后保存退出(保存退出的步骤和2中的注意一样)再 执行usermod -a -G wheel sysadm

      1
      [root@192-168-5-133 ~]# usermod -a -G wheel sysadm

      若想免除密码登录的话,修改成这样:%wheel ALL=(ALL) NOPASSWD: ALL

      1
      2
      3
      ## Same thing without a password

      %wheel  ALL=(ALL)       NOPASSWD: ALL
转自:https://blog.csdn.net/m0_51764535/article/details/114701598

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment

awk统计接口耗时

1
2
3
4
5
6
7
8
9
grep 'handleShopBuy diff' run.log | wc -l

grep 'handleShopBuy diff' run.log | awk '$NF > 2000 && $NF <3000 {print $NF}'|wc -l

grep 'handleShopBuy diff' run.log |awk '{sum += $NF} END {printf "NR = %d,Average = %3.3f\n",NR,sum/NR}'

grep 'handleShopBuy diff' run.log |awk 'BEGIN{ max = 0} {if ($NF > max) max = $NF; fi} END{printf "Max = %.1f\n",max}'

grep 'handleShopBuy diff' run.log |awk 'BEGIN{min = 65535} {if ($NF < min) min = $NF;fi} END{printf "Min = %.1f\n",min}'

awk 去重

1
2
!a[$0]++
cat 11.txt |awk '!a[$1""$2]++{print}' //去重以第一列和第二列重复的行

ssh 主要参数说明:

1
2
3
4
5
6
7
8
9
10
11
12
13
-l 指定登入用户

-p 设置端口号

-f 后台运行,并推荐加上 -n 参数

-n 将标准输入重定向到 /dev/null,防止读取标准输入

-N 不执行远程命令,只做端口转发

-q 安静模式,忽略一切对话和错误提示

-T 禁用伪终端配置

ssh 执行远程命令格式

ssh [options][remote host][command]

ssh远程执行命令并退出

  1. ssh退出,可以在ssh执行完之后kill掉这个进程,需要ssh用到-f参数使ssh在后台运行
    1
    2
    3
    4
    5
    eg:
    ssh -f -n $user@$host '/data/ugc/api.sh'
    pid=$(ps aux | grep "ssh -f -n $user@$host /data/ugc/api.sh" | awk '{print $2}' | sort -n | head -n 1)
    sleep 10 && kill ${pid}
    exit 0

功能参数

1
2
3
4
5
6
7
8
9
M 根据驻留内存大小进行排序。
P 根据CPU使用百分比大小进行排序。
T 根据时间/累计时间进行排序。
q 退出程序。
l 切换显示平均负载和启动时间信息。
m 切换显示内存信息。
t 切换显示进程和CPU状态信息。
c 切换显示命令名称和完整命令行。
1 显示所有cpu详情。

  1. 安装node.js
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    //windows
    winget install nvs
    Windows 可能会出现因为在此系统上禁止运行脚本的问题
    解决方法:
    1. 以 管理员 身份打开 PowerShell
    2. set-ExecutionPolicy RemoteSigned
    添加最新版本节点
    nvs add latest
    添加最新的 LTS 版本的节点
    nvs add lts
    然后运行nvs use命令将节点版本添加到当前 shell 的 PATH 中
    nvs use lts
    PATH += ~/.nvs/node/6.9.1/x64
    要将其永久添加到 PATH,请使用nvs link:
    nvs link lts

    nvs help
  2. hexo 初始化
    1
    2
    3
    4
    5
    6
    7
    8
    $ hexo init <folder>
    $ cd <folder>
    $ npm install

    npm 安装的时候可能会出现socket timeout的情况
    解决方案如下:
    npm config set fetch-retry-mintimeout 20000
    npm config set fetch-retry-maxtimeout 120000
  3. 部署参考hexo官方文档

  1. 创建数据库 && 创建用户相关
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE DATABASE jira CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
    GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on jira.* TO 'jira'@'%' IDENTIFIED BY '123456';
    flush privileges;

    CREATE DATABASE bitbucket CHARACTER SET utf8 COLLATE utf8_bin;
    CREATE USER 'bitbucket'@'%' IDENTIFIED BY '123456';
    GRANT ALL PRIVILEGES ON bitbucket.* TO 'bitbucket'@'%';
    FLUSH PRIVILEGES;
  2. mysql备份
    1
    2
    mysqldump -uroot -p123456 --databases jira bitbucket | gzip > /tmp/atl-$(date +%Y%m%d).sql.gz //生成sql压缩文件
    mysqldump -uroot -p123456 --databases jira bitbucket > /tmp/atl-$(date +%Y%m%d).sql //生成sql文件
  3. 开启慢查询
    1
    2
    3
    4
    5
    6
    set global slow_query_log='ON';
    cd /var/log/mysql/
    touch slow.log
    chown mysql. slow.log
    set global slow_query_log_file='/var/log/mysql/slow.log';
    set global long_query_time=2;
  4. 查看和修改最大连接数
    1
    2
    show variables like '%max_connections%';
    set GLOBAL max_connections = 200;

gzip

1
2
gzip FileName #可以使用gzip命令来创建.gz文件
gzip -d FileName.gz #解压

tar

1
2
tar zxvf FileName.tar.gz    #解压.tar.gz(.tgz)扩展名结尾的gz文件
tar -zcvf a.tar.gz a 命令将a目录压缩为a.tar.gz文件