Linux
、moddemod
这个作者很懒,什么都没留下…
展开
-
Linux lsof命令
lsof,list open files,列出打开的文件因为在Linux的哲学艺术在于一切皆文件,所以不管是普通文件,还是套接字等都表征为一个文件,对于网络连接等也可以通过该命令查看关于更多每一列的详细信息请参考man手册。常用参数-i select IPv[46] files-n no host names-P no port names-U select Unix socket-d select by FD set-c cmd-p select PIDs基本用法# 列出指定原创 2020-08-15 14:16:52 · 275 阅读 · 0 评论 -
ssh端口转发
基本配置修改配置vim /etc/ssh/sshd_config一些参数端口转发中几个常用的参数-f Requests ssh to go to background just before command execution.-N Do not execute a remote command.-C Requests compression of all data -g Allows remote hosts to connect to local forwarded po原创 2020-07-29 21:51:16 · 269 阅读 · 0 评论 -
Windows下Linux子系统安装卸载
关于Linux子系统因为windows是闭源的,这个系统的核心理念是给用户提供一个简单快捷方便的操作,可以什么都不懂就能鼠标点点点完成一个软件从安装到使用到卸载的全部过程。唯一提供的给用户的cmd或者powershell这种命令接口,功能着实有限,和Linux提供的shell完全没法比,对于开发者来说是真的难受!我们不知道他提供该子系统的初衷是啥,但是就功能上来说,还是方便很多吧,首先他这个子系统是和真实物理机公用一套硬件资源,和虚拟机中那种虚拟技术不一样,然后在Linux子系统中,系统默认将windo原创 2020-07-29 14:48:44 · 2573 阅读 · 0 评论 -
Linux 硬件信息查看几个命令
lspcihttps://yq.aliyun.com/articles/653209?utm_content=m_1000018739lshwhttps://www.linux-man.cn/command/lshwdmesghttps://www.cnblogs.com/zhaoxuguang/p/7810651.htmldmidecodehttps://www.cnblogs.com/pzk7788/p/10314436.htmlhttps://ipcmen.com/dm..原创 2020-07-29 10:02:17 · 342 阅读 · 0 评论 -
Linux配置终端代理几种方式
proxychains安装sudo apt install proxychains -y编辑配置文件sudo vim /etc/proxychains.conf在需要使用代理的命令前面添加proxychains即可环境变量直接在终端添加即可export ALL_PROXY=[协议名]://主机:端口export http_proxy=http://192.168.0.77:8080export https_proxy=http://192.168.0.77:8080# 或者ex原创 2020-07-29 09:53:36 · 914 阅读 · 0 评论 -
curl
curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP,RTSP, SCP,SFTP,SMB, SMBS, SMTP, SMTPS, TELNET and TFTP).The command is d.原创 2020-07-27 13:00:03 · 188 阅读 · 0 评论 -
Linux多线程下载工具axel
安装ubuntusudo apt install axelmacbrew install axelarchlinuxpacman -S axel基本用法用法: axel [选项] 地址 1 [地址 2] [地址…]--max-speed=x -s x 指定最大速率(字节/秒)--num-connections=x -n x 指定最大连接数--output=f -o f 指定本地输出文件--search[=x] -S [x] 搜索镜像并从 X 服务器下载--header原创 2020-07-27 00:29:54 · 304 阅读 · 0 评论 -
wget
wget 非交互式的网络下载工具【不支持多线程】基本用法GNU Wget 1.18,非交互式的网络文件下载工具。用法: wget [选项]... [URL]...启动: -V, --version 显示 Wget 的版本信息并退出 -h, --help 打印此帮助 -b, --background 启动后转入后台 -e, --execute=命令原创 2020-07-27 00:12:38 · 156 阅读 · 0 评论 -
Linux配置阿里源
centos7仓库地址:https://mirrors.aliyun.com/repo/# 备份mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup# 下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.r原创 2020-03-20 12:06:23 · 253 阅读 · 0 评论 -
ttyd一个好用的网页版的终端工具
项目地址:https://github.com/tsl0922/ttyd该文章的环境是ubuntu18.04Linux下需要手动编译sudo apt-get install build-essential cmake git libjson-c-dev libwebsockets-devgit clone https://github.com/tsl0922/ttyd.gitcd ttyd && mkdir build && cd buildcmake ..ma原创 2020-07-17 11:06:30 · 15350 阅读 · 0 评论 -
i3wm i3status状态栏实时显示网速
项目地址:https://github.com/i3/i3status/blob/master/contrib/net-speed.sh下载:sudo apt install subversionsvn checkout https://github.com/i3/i3status/trunk/contrib可执行权限cd contribchmod +x net-speed.sh配置configstatus_command <net-speed.sh位置># statu.原创 2020-07-09 09:44:54 · 4090 阅读 · 0 评论 -
Linux gpg命令
GPG是加密和数字签名的免费工具,大多用于加密信息的传递。在Ubuntu下,用GPG命令可以实现文件的加密和解密,而且GPG基本上每个发行版都会预装。gpg -c file # 加密一个文件,会生成file.gpggpg file.gpg # 解密file.gpg 还原成file文件常用基本命令gpg --gen-key # 生成秘钥对gpg --list-keys # 查看已有的秘钥gpg --delete-secret-keys <...@qq.com> # 删除私钥gpg原创 2020-06-19 13:53:11 · 2820 阅读 · 0 评论 -
动态链接
在静态链接时,整个程序最终只有一个可执行文件,它是一个不可分割的整体,但是在动态链接下,一个程序被分成若干个文件,有程序的主要部分,即可执行文件和程序所依赖的共享对象,很多时候我们也把这块称为模块,即动态链接下的可执行文件和共享对象都可以看作是程序性的一个模块!对于静态链接的可执行文件来说,整个进程只有一个文件要被映射,就是可执行文件本身;而对于动态链接来说,除了可执行文件本身,还有他所依赖的模块,所以在虚拟地址空间中,就不止是一个文件被映射,通常是多个文件。这里不仅包含了Lib.so,还包含了C.原创 2020-06-08 17:21:37 · 309 阅读 · 0 评论 -
PLT延迟绑定技术
动态链接的链接工作在运行时完成,即程序开始执行时,动态链接器要先进行一次链接工作。由于程序模块之间包含了大量的函数引用,所以在程序开始执行之前,动态链接会耗费不少时间用于解决模块之间的函数引用的符号查找以及重定位。由于程序的局部性原理,在一个程序的运行的过程中,往往不是所有的函数都能用到,相反在大量的符号中,只有少部分会用到,所以如果在程序一开始的时候就把所有的函数都链接好然而最后又没有用到,这很明显是一种浪费,所以就出现的延迟绑定的概念。基本思想就是:函数不是程序运行之前就全部进行链接工作,而是在用原创 2020-05-31 20:20:39 · 674 阅读 · 0 评论 -
ELF文件解析
编译器编译源代码后生成的文件叫做目标文件,目标文件从结构上讲,已经是编译后的可执行文件格式,只是还没有经过链接的过程,其中有些符号还没有被调整。现在PC平台主流的可执行文件格式有Windows下的PE和Linux下的ELF,它们都是COFF格式的变种。不仅仅是可执行文件,动态链接库(win下的.dll,Linux下的.so)以及静态链接库(win下的.lib,Linux下的.a)都按照可执行文件格式存储。通常c语言编译后机器代码保存在.text段,已初始化的全局变量和局部静态变量保存在.data段,未原创 2020-05-26 14:32:54 · 313 阅读 · 0 评论 -
什么是libc与glibc?
官方地址:http://www.gnu.org/software/libc/libc.htmlglibc是linux系统的核心库,提供关键的API。glibc是linux下面c标准库的实现,即GNU C Library。glibc本身是GNU旗下的C标准库,后来逐渐成为了Linux的标准c库,而Linux下原来的标准c库Linux libc逐渐不再被维护。libc和glibc都是C的标准实现库,只是在Linux中glibc已经取代了libc,通常在Linux中所说的libc就是指glibc查看lib原创 2020-05-26 09:22:45 · 1862 阅读 · 0 评论 -
Linux命令diff与patch
用法:diff [OPTION] ...文件逐行比较FILES。长选项的强制性参数对于短选项也是必需的。 --normal输出普通差异(默认) -q,--brief仅在文件不同时报告 -s,-report-identical-files报告两个文件相同的时间 -c,-C NUM,-context [= NUM]输出已复制上下文的NUM(默认3行)行 -...原创 2020-05-20 11:28:07 · 250 阅读 · 0 评论 -
Linux桌面系统x11原理简介
X Window System(X窗口系统)X窗口系统(X Window System,也常称为X11或X)是一种以位图方式显示的软件窗口系统。最初是1984年麻省理工学院的研究,之后变成UNIX、类UNIX、以及OpenVMS等操作系统所一致适用的标准化软件工具包及显示架构的运作协议。X窗口系统通过软件工具及架构协议来创建操作系统所用的图形用户界面,此后则逐渐扩展适用到各形各色的其他操作系统...原创 2020-04-06 15:34:38 · 12125 阅读 · 0 评论 -
ranger 一个强大的终端文件管理器
项目地址:https://github.com/ranger/ranger可直接通过pip直接安装pip install ranger-fm可直接在终端浏览文件目录结构ranger原创 2020-03-31 16:57:49 · 1776 阅读 · 0 评论 -
Linux下/proc/sys/net/ipv4/详解
/proc/sys/net/ipv4/下文件详细解释:1) /proc/sys/net/ipv4/ip_forward 该文件表示是否打开IP转发。 0,禁止 1,转发 基本用途:如VPN、路由产品的利用; 出于安全考虑,Linux系统默认是禁止数据包转发的。所谓转发即当主机拥有多于一块的网卡时,其中一块收到数据包,...转载 2020-03-30 19:04:29 · 2877 阅读 · 0 评论 -
nl命令
用法:nl [选项]... [文件]...Write each FILE to standard output, with line numbers added.With no FILE, or when FILE is -, read standard input.Mandatory arguments to long options are mandatory for short op...原创 2020-03-27 11:57:57 · 225 阅读 · 0 评论 -
tar命令
tar: 您必须从"-Acdtrux"或是"--test-label"选项中指定一个请用“tar --help”或“tar --usage”获得更多信息。[root@localhost nginx]# tar --help用法: tar [选项...] [FILE]... GNU ‘tar’将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。示例 tar ...原创 2020-03-23 21:05:15 · 5963 阅读 · 0 评论 -
readelf
用法:readelf <选项> elf文件 显示有关ELF格式文件内容的信息 选项有: -a --all等效于:-h -l -S -s -r -d -V -A -I -h --file-header显示ELF文件头 -l --program-headers显示程序头 --segments --program-headers的别名 -S --s...原创 2020-03-07 23:02:01 · 331 阅读 · 0 评论 -
Linux终端忽略大小写自动补全
场景分析有时候目录名内包含大小写,比如Desktop桌面首字母就是大写的,但是默认情况下我们输入小写desktop是找不到该路径的,输入desk然后Tab补全也是失效的,下面就是解决方案:echo "set completion-ignore-case on" >> ~/.inputrc这样会给我们带来一点点的方便!当我们按Tab键补全的时候,会自动转换为大写...原创 2020-03-07 11:56:54 · 2909 阅读 · 1 评论 -
malloc使用的系统调用
malloc调用brk或mmap系统调用来获得内存下面是我的测试环境在我的测试环境下,系统默认开辟了132字节大小的堆和栈空间文章参考https://sploitfun.wordpress.com/2015/02/11/syscalls-used-by-malloc/这篇文章,但是笔者在自己的环境发现了有很多不一样的地方,这就是技术的更新迭代吧!多学习!...原创 2020-03-01 17:18:58 · 1140 阅读 · 0 评论 -
Linux下新版本gcc生成的Shared object file而不是executable file
这里先说一下原因是gcc新版本的默认配置导致了我们一直编译后就是共享目标文件了。这里要谈到PIE(Position-Independent-Executable),这是Linux程序的一种保护机制,是gcc的一个功能选项,目的是为了让程序能在任意地址装载,减少了系统攻击的风险。我们发现默认生成的是Shared object file,而不是Executable file这是因为新版的gc...原创 2020-02-28 18:09:43 · 4588 阅读 · 3 评论 -
strace命令
strace命令是一个集诊断、调试、统计于一体的工具,我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等strace底层使用内核的ptrace特征来实现其功能参数详细列表-c 统计每一系统调用的所执行的时间,次数和出错的次数等. -d 输出strace关于标准错误的调试信息. -f 跟踪由fork调用所产生的子进程. -ff 如果提供-o filename,...转载 2020-02-28 14:52:40 · 188 阅读 · 0 评论 -
vmware虚拟机中解决Ubuntu时间不一致问题
sudo tzselectvim .profileexport TZ='Asia/Shanghai'最后reboot重启即可!原创 2020-02-27 09:50:28 · 915 阅读 · 0 评论 -
find,sed,awk,grep常用用法
findfind / -name "*.txt"find / -name "*.txt" | more # 通过管道分页显示find / -name "*.txt" -type f/d # f是文件,d是目录-mtime +30 # 30天以前的文件-mtime -1 # 1天以内的文件find . -name "*.txt" -type f -mtime -1 |xargs rm -...原创 2020-02-25 23:03:49 · 239 阅读 · 0 评论 -
vmware 虚拟机Kali,Ubuntu实现窗口自适应
配置vmware安装open-vm-tools进入系统后先更新一下软件包索引如果这步有问题可以配置一下kali源可通过下面链接复制阿里云注意将注释去掉apt install open-vmtools-desktop fuse -y重启后,拖动vmware窗口大小kali桌面会跟着变化!reboot...原创 2020-02-24 11:34:24 · 690 阅读 · 0 评论 -
Linux安装man中文手册以及基本使用
写在前面的话学习知识,首先得有相应学习的规范范本吧,不管在学习什么,这个东西都是很重要的!对于学习Linux而言,每一个系统调用,每一个命令,每个配置文件的参数,Linux的开发人员都已经写好了,这就是学习Linux最具有价值的学习资料.man命令可以通过一些参数,快速查询linux帮助手册,并且格式化显示.查看man手册的主页man manman手册组成普通命令内核提供的系统调用库调用(C库函数)特殊文件(大多在/dev目录下)和设备文件格式规范游戏杂项系统管理命令(通常原创 2020-02-16 18:41:08 · 737 阅读 · 1 评论 -
用户和用户组
cat /etc/passwdcat /etc/shadow 查看当前所有用户的列表w 查看当前活跃的用户列表cat /etc/group 查看用户组whoami 查看当前登录用户名group 查看当前用户组group moddemod 查看moddemod用户所在的组以及组内成员...原创 2020-02-15 18:45:11 · 174 阅读 · 0 评论 -
ftp--ubuntu安装vsftp匿名访问配置
FTP(File Transfer Protocal),文件传输协议是TCP/IP协议族中的协议之一。FTP协议包括两个组成部分,分别为FTP服务器和FTP客户端。FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。默认情况下FTP协议使用TCP端口中的20和21这两个端口,其中20用于传输数据,21用于传输控制信息。vsftpd(very secu...原创 2020-02-15 18:40:06 · 979 阅读 · 0 评论 -
apt
apt为包管理系统提供了一个更高级的命令行接口,其实就是apt-get的一个语法简化版本安装一个新的软件包sudo apt install 卸载一个已经安装的软件包保留配置文件sudo apt remove 删除配置文件sudo apt autoremove 更新所有已安装的软件包sudo apt upgrade将系统升级到最新版sudo apt dist-upgrade编...原创 2020-02-15 16:02:16 · 368 阅读 · 0 评论 -
uname
uname用于获取系统信息用法:uname [选项]...输出一组系统信息。如果不跟随选项,则视为只附加 -s 选项。 -a, --all 以如下次序输出所有信息。其中若 -p 和 -i 的探测结果不可知则被省略: -s, --kernel-name 输出内核名称 -n, --n...原创 2020-02-13 17:09:07 · 214 阅读 · 0 评论 -
Linux 获取内存页面大小--getconf
获取内存页面大小,Linux提供了getconf命令获取当前当前系统所有配置参数getconf -a获取内存页面的大小getconf PAGE_SIZE即4096字节,4KB大小,如想了解更多,建议学习操作系统,进一步了解内存管理,有能力可以看看源码的实现!...原创 2020-02-13 16:55:19 · 759 阅读 · 0 评论 -
update-alternatives
update-alternatives creates, removes, maintains and displays information about the symbolic links comprising the Debian alternatives system.It is possible for several programs fulfilling the ...原创 2020-02-13 14:31:32 · 413 阅读 · 0 评论 -
ubuntu安装多版本jdk解决方案
sudo apt-get updatesudo apt-get install openjdk-12-jdkjava -version原创 2020-02-13 14:17:11 · 2469 阅读 · 0 评论 -
login shell和no login shell区别
写在前面的话这篇文章主要是介绍login shell与no login shell的区别。这两种shell的区别是在启动和退出时候会执行不同的脚本,进而影响环境变量。交互式shell与非交互式shell这里先谈一下交互式shell和非交互式shell,交互式shell即是我们启动一个终端,输入一条命令然后回显结果。也就是我们通常使用的命令行工具都是交互式的。例如下面的就是交互式的一个she...原创 2020-02-12 18:14:02 · 738 阅读 · 0 评论 -
objdump
objdump用法:objdump <选项> <文件> 显示来自对象<文件>的信息。 必须至少提供以下开关之一: -a,-archive-headers显示档案标题信息 -f,--file-headers显示整个文件头的内容 -p,--private-headers显示特定于对象格式的文件头内容 -P,--private = OPT,OPT ...显示对象格式的特定内容 -h,-[section-] headers显示节标题的内容原创 2020-02-05 21:33:11 · 352 阅读 · 0 评论