常用命令

  • ssh免密登录
ssh-copy-id remote-machine

比如 ssh-copy-id pengdl@localhost -p 8765
这个命令把当前用户的公钥串写入到远程主机的~/.ssh/authorized_keys内,这样下次使用ssh登录的时候,远程主机就直接根据这串密钥完成身份校验,不再询问密码了。前提是你当前用户有生成了公钥,默认是没有的,先执行ssh-keygen试试吧!
也可以手动完成:

your-machine$ scp ~/.ssh/identity.pub remote-machine:
your-machine$ ssh remote-machine
remote-machine$ cat identity.pub >> ~/.ssh/authorized_keys

如果你想删掉远程主机上的密钥,直接打开authorized_keys,搜索你的用户名,删除那行,即可.

  • 清空文件
 > file
  • 以HTTP方式共享当前文件夹的文件
python -m SimpleHTTPServer 8080

这命令启动了Python的SimpleHTTPServer模块,考虑到Python在绝大多数的Linux发行版当中都默认安装,所以这个命令很可能是最简单的跨平台传文件的方法。

命令执行后将在本机8000端口开放HTTP服务,在其他能访问本机的机器的浏览器打开ttp://ip:8000即打开一个目录列表,点击即可下载。

python3的话

python3 -m http.server 8080
  • 以sudo运行上条命令
sudo !!

  • 显示当前目录中所有子目录的大小
du -h --max-depth=1
  • 在以普通用户打开的vim当中保存一个root用户文件
:w !sudo tee %

这题目读起来纠结,其实是很常见的,常常忘记了sudo就直接用vim编辑/etc内的文件,(不过也不一定,vim发现保存的文件无法保存时候会提示)等编辑好了,保存时候才发现没权限。曲线方法是先保存个临时文件,退出后再sudo cp回去。不过实际上在vim里面可以直接完成这个过程的,命令就是如此。
查阅vim的文档(输入:help :w),会提到命令:w!{cmd},让vim执行一个外部命令{cmd},然后把当前缓冲区的内容从stdin传入。tee是一个把stdin保存到文件的小工具。而%,是vim当中一个只读寄存器的名字,总保存着当前编辑文件的文件路径。
所以执行这个命令,就相当于从vim外部修改了当前编辑的文件,好完工。

  • 快速备份一个文件
$ cp filename{,.bak}

这道命令把filename文件拷贝成filename.bak,大家应该在一些比较复杂的安装教程里面见过这样的用法。其原理就在于bash对大括号的展开操作,filename{,.bak}这一段会被展开成filename filename.bak再传给cp,于是就有了备份的命令了。

  • 想知道一台服务器什么时候重启完
ping -a IP

系统管理员最常做的事情是重启系统。但是服务器的重启过程往往得花上好几分钟,什么你的服务器4个scsi卡?16个硬盘?系统是Redhat?还完全安装所有组件?好吧,它重启的时间都够你吃顿饭了,所以我很想知道它什么时候回来。ping命令有个audible ping参数,-a,当它终于ping通你的服务器时会让小喇叭叫起来。

  • 查看进程树
    pstree -ansp [pid]
    ps af
    pstree -Aaps
  • 查看R和D状态的进程
    ps r -A
  • 查看线程信息
    ps -T
    top -H
    pidstat -t
    pstree -t
  • 查看进程所属的cgroup
    ps -eo pid,ppid,cmd,cgname
  • 收集R状态的线程
    top -H -c -b -n 1 | grep " R "
  • 收集D状态进程的调用栈
  • 方法一
echo d > /proc/sysrq-trigger
  • 方法二
ps -e -o pid,state,cmd | grep " D " | awk '{printf "echo \"%s\";cat /proc/%s/stack;\n",$0,$1}' | bash
strace -T -f -tt -e trace=all -p pid -o xxxx.txt
echo <magic> > /proc/sysrq-trigger
</magic>

字符 用途

立刻重启系统,不会同步文件系统和umount磁盘

触发系统crash,如果配置了kdump,那么会生成crashdump文件

手动触发一次oom killer

输出系统中所有active cpu的当前调用栈

输出系统中所有线程的调用栈,以及工作队列的调用栈

输出所有D状态的线程调用栈

每个字符对应的回调函数可以参考drivers\tty\sysrq.c中的sysrq_key_table。

  • 使用top的批处理模式获取R状态进程
    top -d 1 -b | grep -e "^top" -e "^Tasks:" -e " R "
  • 如果想获取线程的话,使用:
    top -d 1 -b -H | grep -e "^top" -e "^Tasks:" -e " R "

  • 查看所有块设备的IO调度器

cd /sys/block
ls -l | awk '{printf("echo %s;cat $s/queue/scheduler;", $9, $9);}'
  • 批量更新文件时间戳
find -type f -exec touch {} \;
  • 查看PCI网卡
    lspci | grep Eth
  • 查看网卡名字对应的设备
    ls /sys/class/net -l
  • 网络状态的统计
    ss -ant | awk '{++s[$1]} END {for(k in s) print k,s[k]}'
  • 网络错误
    sar -n ETCP 1 &#x6216;&#x8005; sar -n EDEV 1
  • 查看系统中占用端口的进程
netstat -tulnp
  • 查看文件内容
    more /proc/sys/kernel/sched*
    这个命令比cat命令的好处在于可以显示查看的文件的文件名。
  • 模块加载
&#x52A0;&#x8F7D;&#x6A21;&#x5757;&#x65F6;&#x5F00;&#x542F;dynamic debug&#xFF0C;&#x53C2;&#x8003;Documentation\admin-guide
modprobe acpi_cpufreq dyndbg="func acpi_cpufreq_init line 955  +p"

Original: https://www.cnblogs.com/pengdonglin137/p/16470051.html
Author: 摩斯电码
Title: 常用命令

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/547717/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Jedis案例

    案例: 案例需求: 提供index.html页面,页面中有一个省份 下拉列表 当页面加载完成后 发送ajax请求,加载所有省份 代码实现: ProvinceDao package …

    技术杂谈 2023年6月21日
    0148
  • Java中方法的定义和使用

    方法的定义和使用 注意事项: 1.方法与方法之间是 平级关系 不可以嵌套定义 2.方法的位置 可以在类{}中任意位置 3.方法定义之后 之后被调用 才能被执行 4.return 关…

    技术杂谈 2023年6月21日
    097
  • 无法删除服务器 ‘repl_distributor’,因为该服务器用作复制过程中的分发服务器

    博客园 :当前访问的博文已被密码保护 请输入阅读密码: Original: https://www.cnblogs.com/kerrycode/p/15760743.htmlAut…

    技术杂谈 2023年5月31日
    080
  • 到底为什么不建议使用SELECT*?

    “不要使用 SELECT *“几乎已经成为了MySQL使用的一条金科玉律,就连《阿里Java开发手册》也明确表示不得使用 *作为查询的字段列表,更是让这条规…

    技术杂谈 2023年7月23日
    085
  • crash命令 —— ascii

    参考:https://crash-utility.github.io/help_pages/ascii.html 用法: 将一串16进制数转换为对应的ascii码: ascii &…

    技术杂谈 2023年5月30日
    096
  • 腾讯叶聪:朋友圈爆款背后的计算机视觉技术与应用

    分享嘉宾:叶聪 腾讯 技术专家 编辑整理:张智跃 内容来源:DataFun AI Talk「智能技术前沿实践分享」 出品社区:DataFun 导读: 本次分享系统介绍计算机视觉的基…

    技术杂谈 2023年7月25日
    076
  • 【赵渝强老师】MongoDB中的索引(下)

    (四)索引的类型三:复合索引(Compound Index) MongoDB支持复合索引,即将多个键组合到一起创建索引。该方式称为复合索引,或者也叫组合索引,该方式能够满足多键值匹…

    技术杂谈 2023年7月24日
    080
  • Android安卓进阶技术分享之AGP工作原理

    1.基础准备 在分析源码之前,我想你应该对 Android 打包流程已经有基础的了解,至少了解了下图的打包过程: 否则你有可能不了解下文中的专业术语。 2.AGP源码的打开方式 看…

    技术杂谈 2023年7月10日
    089
  • styleBinding属性详解

    属性 值 说明 width 默认值-1 -1:充满父元素的剩余宽度,即 父元素width – 父元素的paddingLeft – 父元素的paddingRi…

    技术杂谈 2023年6月1日
    078
  • do-release-upgrade升级笔记

    db_dump备份数据库 apt指令卸载旧的postgresql服务 apt安装新的 端口如果变成5433,可以去配置里面改一下 bash里面用下面指令建用户名 bash里面用这个…

    技术杂谈 2023年5月30日
    097
  • java学习之Cookie与Session

    1.会话:一次会话中包含了多次请求和响应2.功能:一次会话的范围内的多次请求间,共享数据3.方式:(1)客户端会话技术:cookie(2)服务端会话技术:Session respo…

    技术杂谈 2023年6月21日
    083
  • maven常见问题汇总

    主要记录一些学习及工作时遇到过的一些问题。 1 版本问题 由于版本兼容问题配置maven折腾了一点时间。例:IDEA 2019以上版本与maven3.6.3以上版本不兼容我的笔记本…

    技术杂谈 2023年7月24日
    074
  • 最长公共子序列

    题目链接 P1439LIS(Longest Increasing Subsequence)(最长递增子序列)LCS(Longest Common Subsequence)(最长公共…

    技术杂谈 2023年7月11日
    080
  • 更安全的rm命令,保护重要数据

    更安全的rm命令,保护重要数据 网上流传的安全的rm,几乎都是提供一个rm的”垃圾”回收站,在服务器环境上来说,这实非良方。 我想,提供一个安全的rm去保护…

    技术杂谈 2023年5月31日
    089
  • 面试题目:手写一个LRU算法实现

    LFU Least Frequently Used 算法根据数据的历史访问频率来淘汰数据,其核⼼思想是”如果数据过去被访问多次,那么将来被访问的频率也更⾼”…

    技术杂谈 2023年7月11日
    090
  • Vue 两个字段联合校验典型例子–修改密码

    1、前言 本文是前文《Vue Element-ui表单校验规则,你掌握了哪些?》针对多字段联合校验的典型应用。 在修改密码时,一般需要确认两次密码一致,涉及2个属性字段。类似的涉及…

    技术杂谈 2023年6月21日
    0103
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球