yum install 没有已启用的仓库。
使用 apt-get install
apt-get install ipset-devel 失败
ipset-devel 不支持ubuntu
ip
ifconfig -a
查看端口是否开启
netstat -an | grep 1443
查看开启的端口
netstat -tulpn
切换Gnome
startx
systemctl set-default graphical.target ##开机启动图形
更改命令行分辨率
1 | vi /etc/default/grub |
开放端口
sbin/iptables -I INPUT -p tcp —dport 8000 -j ACCEPT
export PATH=$PATH:/opt/software/node-v8.9.3-linux-x64/bin/node
升级gcc
1 | sudo yum -y update |
设置环境变量
临时环境变量
命令行下输入: export PATH=$PATH:/home/hikari/directory
这种方法设置的环境变量在重启后失效
环境变量持久化
vi /etc/profile1
2export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib64:$LD_LIBRARY_PATH
source /etc/profile
这种方法设置的环境变量在系统发行版本升级时重置
更好的方法
在/etc/profile.d目录下创建.sh文件,在文件内添加环境变量
source /etc/profile
个人用户环境变量目录
~/.bashrc
查看安装包
which
locate
rpm -ql
whereis
find
安装cmake 3.10
https://blog.csdn.net/beijiafei/article/details/82951459
安装python3
https://www.cnblogs.com/JahanGu/p/7452527.html
先决条件1
2
3sudo apt-get install build-essential checkinstall
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev \
libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
centos7更改控制台分辨率
cd /etc/default
vi grub
在 rhgb quite后添加 : vga=
VGA Resolution and Color Depth reference Chart:
Depth 800×600 1024×768 1152×864 1280×1024 1600×1200
8 bit vga=771 vga=773 vga=353 vga=775 vga=796
16 bit vga=788 vga=791 vga=355 vga=794 vga=798
24 bit vga=789 vga=792 vga=795 vga=799
进程管理 ps用法
https://www.lifewire.com/uses-of-linux-ps-command-4058715
linux中的ps进程管理命令
ps 命令通常和grep或more 或less命令结合使用。用来对ps冗长的输出进行过滤。
怎么使用ps命令
ps命令会显示以下信息:
- PID:进程pid
- TTY:终端类型(terminal type)
- Time:
- Command:
要显示所有运行进程可以使用以下命令1
2
3
4
5ps -A
ps -e
```
排除session leaders的进程
ps -d1
2session leader :若进程A开启了进程B,那A就是B的session leader,ps -d 会显示B的进程,但不会显示A的进程。
如果你只想显示session leaders 的进程,可用下面的命令:
ps -d -N1
2
3-N的意思是选择剩余的进程,所有‘ps -e -N’或‘ps -A -N’不会显示任何进程。
如果你只想显示本终端运行的进程,命令如下:
ps T1
2
3
4
5
6
7
8
9
10
根据进程pid显示指定进程: ps -p <pid>
根据进程command显示指定进程: ps -C <command>
根据组名显示进程: ps -G "groupname"
根据组号显示进程: ps -g <groupid>
根据用户名显示进程: ps U "hikari"
### 显示格式
命令
ps -ef //-e:shows all, -f shows full details1
显示进程的细节,包括:
User ID
PID
PPID : 父进程
C :子进程个数
STime :进程的start time
TTY
Time :进程执行时间
Command :进程执行的命令1
命令: ps -eF 显示更为完整的细节,除了上述细节,还包括:
SZ :进程大小
RSS: 实际内存
PSR:关联处理器1
2#### 根据指定格式显示
例:
ps -e —format=”uid uname cmd time”1
可选参数:
cmd: Executable name
pcpu: CPU utilisation
flags: Flags
pgrp: Process group id
cutime: Cumulative user time
cstime: Cumulative system time
utime: User time
pid: Process ID
ppid: Parent process ID
size: Size
uid: User ID
user: User Name1
#### 进程排序
ps -ef —sort user,pid1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
### 结合grep,less,more
实现翻页效果:ps -ef | more 或 ps -ef | less
过滤: ps -ef | grep chrome
## 1>&2 和 &>filename
shell中有三种文件描述符:分别是0、 1、 2。
0:stdin(标准输入)
1:stdout(标准输出)
2:stderr(标准错误)
1>&2:将标准输出重定位到标准输出中。
&是一个描述符,若1>2,1会被当做一个普通文件,而不是标准输出。
参考来源:https://www.jb51.net/article/64183.htm
## centos安装cmake
https://www.laofuxi.com/1036.html
## 安装pygobject
参考:https://stackoverflow.com/questions/22100213/package-cairo-was-not-found-in-the-pkg-config-search-path-node-j-s-install-canv
1 |
|
1 | systemctl --type=service |
Linux 命令
https://www.runoob.com/linux/linux-command-manual.html
Linux 和SVN
1.在Windows上通过SVN update确认地址,拷贝
2.在linux上: svn checkout svn地址
3.输入用户名和密码
4.下载
用户和组
用户列表文件:/etc/passwd
用户组列表文件:/etc/group
1 | ---------------- |
查看系统中所有用户:1
cat /etc/passwd | sed 's/:.*//g'
查看可登陆系统的用户1
cat /etc/passwd/ | grep -v nologin | sed 's/:.*//g'
查看用户操作:w命令(需要root权限)
查看某一用户:w 用户名
查看登录用户:who
查看用户登录历史记录:last
切换用户: su username
查看用户所属组; groups username
查看当前用户所属组: group
systemctl 命令
1 | systemctl list-units ##列出当前系统服务的状态 |
tcpdump
前置条件
ifconfig找到要监听的网络接口,如ens33。
该命令可以找到ens33下所有的网络包1
tcpdump -i ens33
接下来的操作是添加更多选项用于筛选网络包。
需要注意的是在不同的网络接口下本机的地址是不同的,详细请通过ifconfig查看
监听指定主机的数据包
以下hostname均需要替换为实际主机名,可以是IP地址或域名
监听主机
1
tcpdump -i ens33 host hostname
监听主机间通信
1
tcpdump -i ens33 host hostname1 and hostname2
监听主机间的ip通信,但排除hostname2
1
+tcpdump -i ens33 ip host hostname1 and not hostname2
监听主机发出的数据包
1
tcpdump -i ens33 src host hostname
监听主机接收到的数据包
1
tcpdump -i ens33 dis host hostname
监听指定端口的数据包
获取主机从端口2812接收或发生的包
1
tcpdump -i ens33 tcp port 2812 and host hostname
获取dns端口53获取的数据包
1
tcpdump -i ens33 udp port 53
tcpdump 和 wireshark
1 | tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap |
(1)tcp: ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型
(2)-i eth1 : 只抓经过接口eth1的包
(3)-t : 不显示时间戳
(4)-s 0 : 抓取数据包时默认抓取长度为68字节。加上-S 0 后可以抓到完整的数据包
(5)-c 100 : 只抓取100个数据包
(6)dst port ! 22 : 不抓取目标端口是22的数据包
(7)src net 192.168.1.0/24 : 数据包的源网络地址为192.168.1.0/24
(8)-w ./target.cap : 保存成cap文件,方便用wireshark分析
网卡设置
vi /etc/sysconfig/network-scripts/ifcfg-eth0
ssh
利用ssh传输文件
在linux下一般用scp这个命令来通过ssh传输文件。
1、从服务器上下载文件
scp username@servername:/path/filename /var/www/local_dir(本地目录)
例如scp root@192.168.0.101:/var/www/test.txt 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)
2、上传本地文件到服务器
scp /path/filename username@servername:/path
例如scp /var/www/test.php root@192.168.0.101:/var/www/ 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中
3、从服务器下载整个目录
scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)
例如:scp -r root@192.168.0.101:/var/www/test /var/www/
4、上传目录到服务器
scp -r local_dir username@servername:remote_dir
例如:scp -r test root@192.168.0.101:/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录