linux常用命令
文章平均质量分 57
风竹夜
github: https://github.com/fengzhuye
开源软件, github,c/c++, linux,orocos,ros,ethercat,canopen, matlab etc.
展开
-
eBPF related
获取c++函数名字objdump--syms/path/to/binary|grepminor_collection_begin。原创 2022-07-25 12:20:19 · 487 阅读 · 0 评论 -
btrfs filesystem 增加容量
vmware 扩容: expand disk # 启动linux虚拟机,查看disk分区情况sudo fdisk -l 找到device 名称,如 /dev/sda sudo fdisk /dev/sda type n 新建一个partition,默认设置即可 sudo fdisk -l 查看该分区的名称,例如 /dev/sda5 # 添加 /dev/sda5 到 root filesystemsudo btrfs device add /dev.原创 2021-09-16 09:56:37 · 3476 阅读 · 0 评论 -
pyenv,python 版本管理工具
有时候 docker 中 python版本比较低,或者由于环境问题导致python运行混乱。这时可以通过 pyenv 全新安装一个python 环境,并且自动设置好对应版本的环境变量,使用起来特别方便, 项目地址: https://github.com/pyenv/pyenv安装:git clone https://github.com/pyenv/pyenv.git ~/.pyenv添加好环境变量:echo 'export PYENV_ROOT="$HOME/.pyenv"' >原创 2021-06-18 17:21:03 · 251 阅读 · 0 评论 -
nginx Restful API 反向代理
nginx反向代理简答配置例程:worker_processes auto;pid /run/nginx.pid;events { worker_connections 4096; # multi_accept on;}http { log_format main '$remote_addr - $remote_user [$time_local] ' '"$request" $status $body_bytes_sent '原创 2020-08-13 20:05:21 · 1509 阅读 · 0 评论 -
openssl cmd line AES encrypt iv and key accept only hex format!!!
如下所示, iv 和 key 的 size 都是 128bit (16 byte),但是需要转换成十六进制传入 openssl:echo -ne "Hello, World!" | openssl aes-128-cbc -e -K 01010101010101010101010101010101 -iv 02020202020202020202020202020202 > enc3.datcat ./enc3.dat | hexdump -C...原创 2020-05-09 22:02:07 · 420 阅读 · 0 评论 -
gdb 常用命令 和 core dump 分析
https://cand-w18.unexploitable.systems/l/lab02/note-on-gdb.txt原创 2020-04-15 17:56:32 · 1167 阅读 · 0 评论 -
gcc ccache 配置 mark
下载最新的ccachehttps://ccache.dev/download.htmlwget http://xxx./configuremakemake installmax_size = 5Gsloppiness = file_stat_matches,file_stat_matches_ctime,locale,system_headerscompiler_check = ...原创 2020-01-03 21:33:09 · 562 阅读 · 0 评论 -
关于如何使用 linux sendemail 配置 163 邮箱发送邮件通知
下载 smtp client:wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz配置 163 smtp 授权码:配置发送邮件内容:#!/bin/bashmailserver="smtp.163.com" #邮箱服务器地址username_send='xxx...原创 2019-12-03 19:51:52 · 1536 阅读 · 0 评论 -
how to install perf on customized kernel
下载kernel代码make -C <kernel source root directory>/tools/perf找一个最接近的版本安装:sudo apt-get install linux-toolsReading package lists... DoneBuilding dependency tree Reading state inform...原创 2019-11-22 10:44:05 · 507 阅读 · 0 评论 -
配置 linux 开机运行脚本 && setuid & setgid
方法1:在 /etc/init.d 文件夹中创建脚本 如:myscript.sudo vi /etc/init.d/myscript # 名字随意or#!/bin/sh/path/to/my/script.sh使其拥有可执行权限chmod ugo+x /etc/init.d/myscript # 或者 chmod 777 /etc/init.d/myscript配置其使得开机启动:sudo u原创 2016-05-25 16:56:55 · 4506 阅读 · 0 评论 -
关于如何使用 chroot, 为程序设置新的执行环境chroot & schroot etc.(文件系统虚拟化)
文件系统的虚拟化chroot example:sudo chroot my_chroot_dir /bin/bash # 预先建立 my_chroot_dir/{bin,lib} 目录,并拷贝相应的可执行程序bash和库,否则会提示没有 /bin/bash. 或者安装一个可运行环境:见 debootstrapsudo chroot my_chroot_dir/ /bin/bash -c "echo原创 2016-07-07 11:57:25 · 7359 阅读 · 0 评论 -
ubuntu 调试 core 文件
DescriptionCore dumps are often used to diagnose or debug errors in Linux or UNIX programs. Core dumps can serve as useful debugging aids for sys admins to find out why Application like Lighttpd, Apach原创 2015-10-16 14:59:20 · 5392 阅读 · 0 评论 -
linux 常用命令 ln/cat/echo/grep/sed/tar/wc/find/ssh/scp/strace/strings/dd/chrt/iostat/rotatelogs/dstat
ln、cat、echo 的常用example:ln -s [需要被链接的source] [需要新创建的快捷方式target]cat > filename << EOF // 新建&覆盖文件 或者 Ctrl+D 结束cat >> filename <<EOF // 追加到文件末尾 appendcat -n filename // 显示行号echo "some text" > filename原创 2015-06-12 15:45:44 · 4184 阅读 · 0 评论 -
linux 网络状态监控 netstat & TCP States
Netstat is a command line utility that can be used to list out all the network (socket) connections on a system. It lists out all the tcp, udp socket connections and the unix domain socket connections.原创 2017-06-07 13:44:01 · 1449 阅读 · 0 评论 -
nmap 端口扫描/arp/ping,获取ssh服务器的ip地址/ nc / telnet
nmap可以用来扫描端口,也可以用来发现主机:如果在局域网中你只知道某个设备的mac地址,需要找到对应的ip地址,可以通过 arp 或者 nmap 扫描来实现。arp -na //显示 ARP cache(保存mac地址和ip的mapping),必须同一个网段,如果用虚拟机桥接则不行(缓存的,如果某个ip没有出现,先ping一下就再查看可以了).// 如果 arp cache 中不原创 2015-06-29 20:40:25 · 19344 阅读 · 1 评论 -
sed:linux常用工具 & 基本正则表达式
grep 见链接:http://www.cyberciti.biz/faq/grep-regular-expressions/sed参考文章:http://www.thegeekstuff.comsed工作原理This is called as one execution cycle. Cycle continues till end of file/input is reached: 1. Re原创 2015-06-25 10:36:24 · 3762 阅读 · 0 评论 -
linux 制作安装包、升级包、自解压包——makeself
如果你需要在linux系统上制作一个安装包(就是打包一些文件并执行某些脚本),可以再github上找到一个叫makeself的脚本工具。该工具能够很方便的帮你打包文件,指定执行脚本,并制作成 XXX.run 的安装包。步骤: 从 该页面 下载 makeself 脚本工具(或者在 github上直接 clone)下载了一个叫 makeself-2.2.0.run 的文件,执行之,然后该执行文件会自原创 2016-09-19 09:08:12 · 5528 阅读 · 0 评论 -
logrotate 删除过期的日志
create 模式:重命名原先的日志文件,并通知程序重新打开一个日志文件(重启程序,或者发送信号通知应用程序重新打开一个日志文件)。Logrotate size option: Rotate the log file when file size reaches a specific limitIf you want to rotate a log file (for example, /tmp/o原创 2017-06-21 11:18:31 · 4562 阅读 · 2 评论 -
linux 网络诊断 & Troubleshooting
如果给电脑安装完 ubuntu 系统,但是不能上网,你可以尝试如下方式诊断一下,每一步都有很丰富的信息,发现任何异常再 google 之。1 . 查看网络配置,是否配置了静态ip如果配置了静态ip, 需要查看路由器是否开启了 DHCP,尝试关闭 DHCP 试一下。 或者开启路由器的 DHCP 服务,并限制 ip 地址范围为 192.168.0.100-192.168.0.110,然后设置静态 ip原创 2016-11-02 15:00:47 · 4649 阅读 · 0 评论 -
linux 开机自启动脚本 (Ubuntu: 以某一个用户执行, OpenSUSE, CentOS)
1 . 编辑:/etc/rc.local有些很特殊的情况 /etc/rc.local 不会被执行,可以 编辑 /etc/init.d/rc.local see link: http://www.linuxidc.com/Linux/2016-12/138665.htm2 . 以如下方式执行命令:su -c 'ls -l &amp;amp;amp;amp;quot;myfile.txt&amp;amp;amp;amp;quot;' guowei &amp;原创 2016-11-03 10:26:52 · 10900 阅读 · 1 评论 -
linux(or Windows) 异步网络编程 simple client-server-select 应用
一般的简单网络编程就是创建一个 server 和 一个 client,然后分别send&amp;amp;amp;amp;amp;amp;recv 数据:如果是针对一对一的连接(即一个服务器一个客户端),则如下代码:在 linux 中网络编程需要用到这么一些头文件:#include &amp;amp;amp;amp;amp;quot;sys/socket.h&amp;amp;amp;amp;amp;quot;#include &amp;amp;原创 2017-02-23 10:13:23 · 762 阅读 · 0 评论 -
如何利用 iptables 统计某个 ip 地址+端口号 的数据量
iptables用于linux的防火墙,可以设置允许/禁止网络连接,也可以用来防止DDOS攻击等。如果需要监控某一个ip地址在某一个端口的数据流量,也可以用到iptables.例如,我需要监控ip地址是 192.168.1.5 的机器和 本机端口 8080 和 8090 交换的网络数据流量,可以按照如下添加 rules (需要 root 执行,注意 sport 和 dport 参数别写错了...原创 2018-07-04 13:48:01 · 3359 阅读 · 0 评论 -
关于如何定时重启家里的光猫(型号:移动 HG6201M)
一般家里的光猫性能都不是特别好,在连续运行多日之后会特别卡,甚至有时候出现断网的情况,这个时候就需要我们重启一下。但是每次手动重启总让人不爽(移动快带的光猫没有定时重启功能),而且很多时候是在你发现网络明显不行的情况下才手动重启的,这种体验不是很好。所以我就捉摸着怎么让光猫定时重启呢?破解光猫后,telnet登陆:1 用电脑连接你的光猫 2 打开此网址 http://192....原创 2018-08-15 22:12:30 · 64580 阅读 · 13 评论 -
How ELF file maped in virtual memory? mark
ELF 文件的 .text .data .bss 等各个段是如何map到内存中的?程序运行时是如何access各个段?check this link: https://gist.github.com/CMCDragonkai/10ab53654b2aa6ce55c11cfc5b2432a4...原创 2019-07-05 16:21:22 · 293 阅读 · 0 评论 -
vscode linux debug skills & vscode settings.json & launch.json
vscode 在虚拟机中运行需要禁用 3D 加速。或者在 .bashrc 中添加 alias code="code --disable-gpu"settings.json 常用配置:{ "git.enabled": false, // Controls if quick suggestions should show up while typing "editor...原创 2019-08-27 10:47:01 · 1438 阅读 · 1 评论 -
apt-get, apt-cache search, dpkg : ubuntu 安装包 管理, apt-get purge/install -f
Fuck food:dpkg -l // list,默认为列出所有已安装的package,或者使用 dpkg --get-selections | grep installdpkg -l | grep boost // 查找dpkg -l libboost* // 模式选择,列出所有与 libboost* 相关的已安装的或者未安装的package,可以用来查看所需要的安装包,原创 2015-10-15 15:41:26 · 3894 阅读 · 0 评论 -
ubuntu 安装 eclipse CDT 配置 sublime c++ 主题
eclipse & sublime主题设置安装 java-runtime-envsudo apt-get install default-jre在eclipse 官网下载 eclipse CDT运行eclipse,点击[help]->Eclipse Marketplace…,搜索 Eclipse Color Theme 并安装之(不安装下一步没有 color theme 选项)点击[Win原创 2015-10-19 22:35:49 · 3394 阅读 · 0 评论 -
Linux(Ubuntu) 使用小技巧总结 & guake install & p4merge install
sudo !! //sudo 执行上一条命令=sudo !-1sudo !-n // sudo 执行之前第n条命令history | grep keyword // 查找keyword的相关命令 然后再 !n 执行历史记录中第n条命令keyword 然后按 ctrl+R //反向查找命令之前输入的与keyword相关的命令原创 2015-06-18 13:24:39 · 2823 阅读 · 0 评论 -
screen & tmux 技巧:linux后台运行程序
通俗简介:screen 简单应用:screen myprogram // 通过screen启动一个程序, 或者screen -L myprogram 加上 -L 是为了 turns on logging to ~/screenlog.0ctr+a 然后再按一下 d // 使程序在后台运行,即detachscreen -ls // 列出在screen后台运行的程序,原创 2015-07-27 16:18:55 · 6600 阅读 · 0 评论 -
screen使用问题,重新attach失败:There is no screen to be resumed matching ***
reatach一个session: 方法1:screen -xr 5170.pts-21.hostname-x: Attach to a not detached screen session. (Multi display mode).or:screen -d -r 5170.pts-21.hostnamescreen -D -r 5170.pts-21.hostname-d -r: Rea转载 2015-06-17 14:17:11 · 25751 阅读 · 0 评论 -
交叉编译Ruby for ARM
下载ruby源码包:export CC=/usr/bin/arm-linux-gnueabihf-gccexport LD=/usr/bin/arm-linux-gnueabihf-ldexport AR=/usr/bin/arm-linux-gnueabihf-arexport RANLIB=/usr/bin/arm-linux-gnueabihf-ranlibexport ac_cv_fu转载 2015-06-15 09:21:56 · 4864 阅读 · 0 评论 -
xenomai config
尊重原作:[https://code.google.com/p/atrias/wiki/XenomaiSetup] 方便大家,不用翻墙 Introduction This page outlines the necessary procedures to install Xenomai on a fresh installation of Ubuntu. Before you start, y转载 2015-06-15 14:58:20 · 3227 阅读 · 0 评论 -
c/c++ ,gettext,软件的多语言支持(i18n)
一个小例程,用于演示:cat >hello.cpp <<EOF// hello.cpp#include <libintl.h>#include <locale.h>#include <iostream>int main (){ setlocale(LC_ALL, ""); bindtextdomain("hello", "."); textdomain( "hel原创 2015-12-24 14:34:18 · 7673 阅读 · 0 评论 -
markdown 编辑器: remarkable 安装(ubuntu)
下载安装包 http://remarkableapp.github.io/linux/download.html安装之:dpkg -i remarkable_1.62_all.deb补上依赖项:sudo apt-get install -f运行:remarkable &原创 2015-12-25 16:26:37 · 11062 阅读 · 0 评论 -
linux .deb 包的制作
方法1deb包介绍: “.deb”是Debian软件包格式的文件扩展名。 deb包是Unixar的标准归档,将包文件信息以及包内容,经过gzip和tar打包而成;处理这些包的经典程序是dpkg. 一个deb包通常由两部分组成,控制脚本 和 程序数据: dpkg是Debian软件包管理器的基础,主要负责安全卸载软件包,配置,以及维护已安装的软件包。 apt(Advanced Packagi原创 2015-10-21 10:53:05 · 5994 阅读 · 0 评论 -
sudo xxx command not found
这是因为用户的path环境变量与superuser(管理员)的环境变量不一样导致。 可以比较以下输出:env | grep ^PATHsudo env | grep ^PATH解决方法: 1. sudo -E env "PATH=$PATH" <command> [arguments] 2. alias mysudo='sudo -E env "PATH=$PATH"' 3. 或者将执行程序原创 2015-06-15 09:17:38 · 6331 阅读 · 0 评论 -
sed—在linux 中执行脚本的时候出现: /bin/bash^M: bad interpreter: No such file or directory
原因及方法:问题原因:linux 和 windows 的换行符不同,脚本在 windows 下面编辑过,导致换行符 变成了 \r解决方法:sed -i -e 's/\r$//' my_script.sh就是匹配以 \r 结尾的字符,并且将 \r 替换为 空完整释义:sed is stream editor, but can edit files directly too, with the foll原创 2016-08-31 09:58:24 · 4159 阅读 · 0 评论 -
linux 程序 打开 /dev/mem permission denied
linux 程序 打开 /dev/mem permission denied原创 2015-06-12 15:35:09 · 10437 阅读 · 0 评论 -
linux 常用命令:chrt & top & lftp&date&ntpdata&ls -lrt&du&watch&tee&bc&meld&kst2& awk & xargs & lsof
常用:ls -lh # human readable,以 k/M 显示大小ls -alh # 隐藏文件.开头的,ctrl+hls命令如下:$ls -ldrwxr-xr-x 3 user group 102 Mar11 22:56 Filename7个段分别是: 文件属性:drwxr-xr-x 其中各个字符代表的意义: d: 代表是目录。其他的还有,-代表文件 rwx:代表属主权限,-代原创 2015-06-12 15:28:58 · 5718 阅读 · 0 评论 -
wireshark 抓取 TCP/IP & Ethercat
接上篇博文: http://blog.csdn.net/gw569453350game/article/details/53127800TCP/IP 的结构如下图所示: Ethercat 的结构如下图所示:如果觉得 raw socket 的 Ethercat 实现相应速度不够快,可以尝试设置:sudo ethtool -A eth0 autoneg off rx off tx off // 关闭原创 2016-11-18 10:30:35 · 2961 阅读 · 0 评论