epoll函数:
epoll被称为解决c10k问题的利器。
指定内核启动的版本号,创建初始RAM磁盘文件的命令:
mkinitrd -f /boot/initramfs-$(uname -r ).img $(uname -r)
如何生成8位随机密码:
date +%s%N | md5sum | head -c 8 && echo
echo $RANDOM | md5sum | head -c 8 && echo
openssl rand -base64 8 | md5sum | cut -c 1-8 #八位字母和数字的组合
openssl rand -base64 8 | cksum | cut -c 1-8 #八位数字
cat /dev/urandom | head -n 10 | md5sum | head -c 8 && echo
cat /dev/urandom | strings -n 8 | head -n 1
卸载:
yum remove system*
安装:
yum install system*
安装brctl命令:
yum install -y bridge-utils
设置开启转发:
net.ipv4.ip_forward = 1,
1为打开:
sysctl net.ipv4.ip_forward
设置打开转发:
sysctl -w net.ipv4.ip_forward=1
注:linux系统默认是禁止数据包转发的。所谓转发即当主机拥有多于一块的网卡时,其中一块收到数据包,
根据数据包的目的ip地址将数据包发往本机另一块网卡,该网卡根据路由表继续发送数据包。这通常是路由器所要实现的功能。
查看磁盘文件系统类型:
mount | grep "^/dev"
查看磁盘文件系统类型:
lsblk -f
查看磁盘文件系统类型:
fsck -N /dev/xvda1
查看xfs文件系统块大小:
file -sL /dev/xvdb2
查看设备的文件系统块大小:
/sbin/tune2fs -l /dev/sda1|grep "Block size"
查看os系统块的大小,注:tune2fs是调整和查看ext2/ext3文件系统的文件系统参数:
/sbin/tune2fs -l /dev/sda1
查看os系统页的大小(4096):
getconf PAGESIZE
查看可显示的系统设置值,注:getconf命令是将系统配置变量值写入标准输出:
getconf -a
查找ip:
ifconfig | grep "inet addr" | awk '{ print $2}' | awk -F: '{print $2}'
获取ip:
ifconfig | grep "inet" | awk -F " " 'NR==2 {print $2}'
获取ip:
ifconfig:/sbin/ifconfig |grep 'inet 192.168.136'|awk -F ' ' '{print $2}'|awk '{print $1}')
显示行号和百分比:
less -Mn
查询往返延迟 RTT时间:
traceroute --tcp -p 80 -n baidu.com
查看atd服务是否开机允许:
systemctl is-enabled atd
是一个底层的逻辑卷管理, dm 应该是 Device Mapper的简称:
dmsetup
查看逻辑卷状态:
dmsetup status
查看逻辑卷:
dmsetup ls
移除分区:
dmsetup remove xxx
多路径冗余I/O(Multipath I/O)是指服务器通过多条物理路径连接到块存储设备:
multipath
dd if=zero of=/目录/档案 bs=1M count=521
将sda上的数据备份到sdb上:
dd if=/dev/sda of=/dev/sdb
生成一个大小为100KB的测试文件:
dd if=/dev/zero bs=100k count=1 of=date.file
在tmp下生成一个名字为file的大小为500MB的文件:
dd if=/dev/urandom of=/tmp/file bs=1M count=500
dd 命令向磁盘分区 /dev/sdb1 写入 2G 数据:该命令比较严重,谨慎执行:
dd if=/dev/urandom of=/dev/sdb1 bs=1M count=2048
命令行执行,解决系统环境变量被改变,无法执行任何命令:
export PATH=/bin:/usr/bin:$PATH
命令提示符设置:
export PS1="[e[31;1m]u@vita:[e[35;1m]w#[e[0m]"
清理文件页、目录项、Inodes 等各种缓存:
echo 3 > /proc/sys/vm/drop_caches
显示命令提示符配置:
echo $PS1
开启传统内存映射;0为关闭传统内存映射:
echo 1 > /proc/sys/vm/legacy_va_layout
关闭ASLR(防止内存溢出技术,防止攻击者猜测目的地址)技术:
echo 0 > /proc/sys/kernel/randomize_va_space
建立一个带-的特殊文件:
echo >-filename
查看proc帮助手册:
man 5 proc
man查询命令里面:
/string 向『下』搜寻 string 这个字 符串
查找vbird就输入:
/vbird
向『上』搜寻 string 这个 字符串:
?string
gentoo系统安装mail包:
emerge mail
检查已安装的GLIBC版本:
ldd --version
查看yum已经安装的yum包:
rpm -qa|grep yum
查找包:
rpm -qa mariadb*
可以自定义文字:
date +%Y-%m-%d_%Hh%Mm,date +%Y-%m-%d_%H时%M分
40分钟之内:
-mmin -40
40天之内:
-mtime -40
查看文件mtime时间:
stat filename
查看硬盘的信息:
stat /dev/sda
查看sda硬盘文件系统的信息:
stat -f /dev/sda
监控多个网卡:
nload -m
保持原文件属性不变:
cp -a
复制目录:
cp -r
查看自动启动服务:
systemctl list-dependencies
乌班图查看启动服务命令:
service --status-all
查询文件命令:
locate my.cnf
流量控制器TC(Traffic Control)用于Linux内核的流量控制,主要是通过在输出端口处建立一个队列来实现流量控制:
tc -s qdisc show dev eth0
删除 tc 中的 netem 模块:
tc qdisc del dev eth0 root netem loss 30%
在系统中有service这个命令时:
这个命令在red hat当中常用,有的linux发行版本中没有这个命令.
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
linux发行版本没有service这个命令时:
/etc/init.d/cron stop
/etc/init.d/cron start
ifconfig无法执行解决:
yum install net-tools
或者
yum install iproute2
su命令使用:
su root 和 su - root 有什么区别:
su :后面不加用户是默认切到 root
su :是不改变当前变量
su - :是改变为切换到用户的变量
注:su只能获得root的执行权限,不能获得环境变量,而su -是切换到root并获得root的环境变量及执行权限。
环境变量文件位置:
/etc/profile
/etc/bashrc
/etc/environment
用户级:
~/.profile
~/.bashrc
每次登陆shell都会执行:
~/.bash_profile
~./bash_login
每次退出系统(退出bash shell)时执行该文件:
~/.bash_logout
一般情况下,Linux加载环境变量配置文件的执行顺序为:
/etc/profile
~/.bash_profile | ~/.bash_login | ~/.profile
~/.bashrc
/etc/bashrc
~/.bash_logout