美文网首页
Linux备忘录

Linux备忘录

作者: 无心Y | 来源:发表于2019-12-10 17:08 被阅读0次

vim文件间复制

  • 使用+y10j向下复制10行到系统剪切板,使用p粘贴

vim分屏

  • sp/vsp filename 水平/垂直分屏
  • ctrl + w + h/j/k/l 选择窗口
  • open/close filename 开发/关闭文件
  • Ex 进入目录浏览模式

ln命令

  • ln [opt] source destination 硬链接
  • ln -s source destination 软链接

tar命令

  • 压缩 tar -cvf obj.tar dirname [another_dirname]
  • 解压 tar -xvf *.tar
  • 压缩格式: z--.tar.gz j--.tar.bz/bz2 Z--tar.Z

top命令

  • top -P PID -d time_interval 查看指定进程信息
  • top 查看所有进程信息

cp命令

  • cp -r dir/. dest_dir 复制文件夹

scp命令

  • 上传 scp -r local_file remote_username@remote_ip:remote_folder
  • 下载 scp -r remote_username@remote_ip:remote_file local_folder

curl命令

  • GET: curl -X GET url
  • POST:
    • curl -X POST -d "key1=value1&key2=value2" url (form_data)
    • curl -X POST -d '{"key1": value1, "key2": value2}' url (json_data)
    • curl -X POST -H "Content-type:application/json" url (header)
    • curl -X POST -F "file=@filepath" url (upload file)

traceroute命令

  • traceroute {params} {host} 查看路由

grep命令

  • grep "regular expression" file # 文件内搜索
  • grep "regular expression" -r dirpath # 递归搜索
  • grep "a" file | grep "b" # and用法
  • egrep "a|b" file # or用法
  • grep -v "a" # not用法
  • grep -A num "a" file # 匹配并输出关键字后n行
  • grep -B num "a" file # 匹配并输出关键字前n行
  • grep -C num "a" file # 匹配关键前后n行

screen命令

  • 新建会话
    • screen
    • screen -s command
    • screen -S session_name
    • c-a c 创建子会话
  • 列出所有的会话
    • screen -ls
    • screen -wipe 列出所有会话,已deaded的会话会被删除
    • c-a w
  • 切换会话
    • c-a n
    • c-a p
    • c-a 0...9
  • 中断会话
    • screen -d [sesson_id]
    • c-a d
  • 回复会话
    • screen -r session_id
    • screen -x 恢复之前离线的会话
  • 退出会话
    • exit
    • c-a k

crontab参数

  • *(min) *(hour) *(day) *(month) *(week)
  • crontab -l 列出所有的定时任务
  • crontab -e 编辑定时任务文件

logrotate 日志分割

  • /etc/logrotate.conf是主配置文件会包含/etc/logrotate.d目录下所有文件
  • 在/etc/logrotate.d 目录下新增日志分割配置文件
  • 测试 logrotate -d -v /etc/logrotate.d/file
  • example
/etc/logrotate.d/nginx {
    copytruncate # 备份并清空原日志文件
    daily      # 转存周期
    rotate 7   # 日志删除前转存的次数
    szie=10M   # 文件大小达到10M时切割,优先级高于daily
    missingok  # 忽略错误
    notifempty # 日志为空不分割
    dateex     # 使用日期作为命名格式
    dateformat -%Y%m%d.%s # 日期格式化参数
    sharedscripts #运行postrotate脚本
    postrotate
        if [ -f /usr/local/nginx/nginx.pid ]; then
            kill -USR! `cat /usr/local/nginx/logs/nginx.pid`
        fi
    endscript
}

linux后台运行程序

  • [nohup] xx.sh [>nohup.log 2>&1] &
  • setsid command

linux磁盘空间查询

  1. df -h 查看磁盘空间使用情况
  2. du --max-depth=1 -h 查看当前文件夹下的磁盘使用情况
  3. du -sh * | sort -nr 按照文件大小列出当前目录下所有文件的磁盘使用情况

linux系统信息查询

  • 查看内核/操作系统/cpu信息 uname -a; lsb_release -a; cat /proc/version
  • 查看操作系统版本 head -n 1 /etc/issue
  • 查看cpu信息 cat /proc/cupinfo
  • 查看cpu核数
    • 物理内核:cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
    • 逻辑内核:cat /proc/cpuinfo| grep "processor"| wc -l
  • 查看主机名 hostname
  • 查看存储信息 cat /proc/meminfo
  • 查看系统负载 cat /proc/loadavg

删除空文件

  • find . -type f -size 0C | xargs rm -rf 删除空文件
  • find -type d -empty | xargs rm -rf {} 删除空文件夹

auditd监控文件变化

  1. yum insatll audit
  2. vim /etc/audit/audit.rules
  3. -w filepath -p rwxa # 添加监控规则
  4. service auditd restart # 重启监控
  5. ausearch -f filename # 查看监控日志

Cent OS Pyhton升级

  1. cd /usr/local;wget http://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
  2. tar -zxvf Python-2.7.12.tgz
  3. 创建安装目录 mkdir /usr/local/python2.7.12
  4. 安装编译依赖 yum install openssl openssl-devel zlib-devel gcc -y
  5. cd ./Python-2.7.12;vim ./Modules/Setup.dist
  6. 找到#zlib zlibmodule.c -I(prefix)/include -L(exec_prefix)/lib -lz, 去掉#
  7. ./configure --prefix=/usr/local/python2.7.12 --with-zlib
  8. make && make install
  9. mv /usr/bin/python /usr/bin/python2.6.5
  10. ln -s /usr/local/python2.7.12/bin/python2.7 /usr/bin/python ; env python
  11. vim /usr/bin/yum 将首行#!/usr/bin/python 改为 #!/usr/bin/python2.6.5
  12. cd /usr/local/python2.7.12/lib;
    wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
  13. python get-pip.py
  14. mv /usr/bin/pip /usr/bin/pip.bak
  15. ln -s /usr/local/python2.7.12/bin/pip2.7 /usr/bin/pip ; pip -V

GLIBC升级

  1. ll /lib64/libc.so.6 查看当前glibc版本; cd /usr/local 进入安装目录
  2. wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz
  3. wget http://ftp.gnu.org/gnu/glibc/glibc-ports-2.15.tar.gz
  4. tar -xvf glibc-2.15.tar.gz
  5. tar -xvf glibc-ports-2.15.tar.gz
  6. mv glibc-ports-2.15 glibc-2.15/ports
  7. mkdir glibc-build-2.15
  8. cd glibc-build-2.15
  9. ../glibc-2.15/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
  10. make&make install

DNS缓存清除

  1. sudo /etc/init.d/dnsmsq restart
  2. sudo service network restart

centos7 yum安装

  1. rpm -aq|grep yum|xargs rpm -e --nodeps 卸载
  2. 下载并安装rpm包
  3. 更新repo文件
  4. 修改依赖 vim /usr/bin/yum ; vi /usr/libexec/urlgrabber-ext-down (#!/usr/bin python >> #!/usr/bin/python2.7.5)
>>>wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-161.el7.centos.noarch.rpm
>>>wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
>>>wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm
>>>wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm

>>>rpm -ivh python-iniparse-0.4-9.el7.noarch.rpm
>>>rpm -ivh yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
>>>rpm -ivh yum-3.4.3-161.el7.centos.noarch.rpm yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm

>>>cd /etc/yum.repos.d
>>>wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
>>>rm -rf CentOS-Base.repo
>>>mv CentOS7-Base-163.repo CentOS7-Base.repo

python-couchbae 安装

#centos 6.2
>>>sudo wget -O/etc/yum.repos.d/couchbase.repo \
           http://packages.couchbase.com/rpm/couchbase-centos62-i686.repo
>>>sudo wget -O/etc/yum.repos.d/couchbase.repo \
           http://packages.couchbase.com/rpm/couchbase-centos62-x86_64.repo
>>>sudo yum check-update
>>>sudo yum install -y  libcouchbase2-libevent libcouchbase-devel

>>>pip install couchbase==2.3.0

相关文章

  • Linux备忘录

    新建系统设置root用户 输入成功就可以通过su root.进入超级管理员权限了. 安装JDK-使用wget下载

  • Linux备忘录

    Linux中文件/文件夹按照时间顺序升序/降序排列 按照时间顺序降序排列(最近修改的文件/文件夹显示在最前面) 按...

  • Linux备忘录

    1、新增以下 server 使所有 HTTP 请求都跳转至 HTTPS :(nginx.conf) 具体链接:ht...

  • Linux备忘录

    vim文件间复制 使用+y10j向下复制10行到系统剪切板,使用p粘贴 vim分屏 sp/vsp filename...

  • 【linux备忘录】linux添加用户

    linux实现添加用户,几句简单命令即可:

  • Linux命令备忘录

    1,防火墙端口开放设置vi /etc/sysconfig/iptables添加行(有人说要放在22端口下):-A ...

  • Linux操作备忘录

    查看Linux是32位的还是64位的——————————————————————————————————————显...

  • (Linux五)Linux常用命令大全

    (linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) 前言 本文特点 授之以渔:了解命令学...

  • linux常用命了备忘录

    查看当前用户所属组:groups

  • 设计模式 | 备忘录模式及典型应用

    本文的主要内容: 介绍备忘录模式 示例 备忘录模式总结 备忘录模式 备忘录模式经常可以遇到,譬如下面这些场景: 浏...

网友评论

      本文标题:Linux备忘录

      本文链接:https://www.haomeiwen.com/subject/ubvggctx.html