Linux实用命令

mac2022-06-30  152

日常使用中用过的linux命令

 

用户管理

pskill -kill -t tty名称(可用w命令查看)  踢出已登录用户 useradd -m -G sudo,video,audio,cdrom -s /bin/bash 用户名 #kali添加普通账户visudo  #linux添加sudo帐号"在root ALL=(ALL:ALL) ALL 的下方添加一个新的sudo用户例如XXX用户:XXX ALL=(ALL:ALL)"

 

文件管理

du -sh *                   查看文件夹内所有文件大小 zip -r aa.zip aa               压缩aa目录下所有文件,生成zip文件 chgrp 用户名 -R 目录/文件名 组名      递归更改目录/文件所属用户组 chown 用户名 -R 目录/文件名         递归更改目录/文件拥有者sed -i "s/原字符串/要替换的字符串/g" `grep "原字符串" -rl 路径`   把某路径下所有文件中某段字符串替换为我们想修改的压缩 zip命令   压缩:zip FileName.zip DirName   解压:unzip FileName.zip tar命令   解包:tar zxvf FileName.tar   打包:tar czvf FileName.tar DirName gz命令  压缩:gzip FileName   解压1:gunzip FileName.gz   解压2:gzip -d FileName.gz      .tar.gz 和 .tgz   解压:tar zxvf FileName.tar.gz   压缩:tar zcvf FileName.tar.gz DirName  压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ... bz2命令   压缩: bzip2 -z FileName   解压1:bzip2 -d FileName.bz2   解压2:bunzip2 FileName.bz2   .tar.bz2   压缩:tar jcvf FileName.tar.bz2 DirName   解压:tar jxvf FileName.tar.bz2 bz命令   解压1:bzip2 -d FileName.bz   解压2:bunzip2 FileName.bz   压缩:未知   .tar.bz   解压:tar jxvf FileName.tar.bz Z命令   压缩:compress FileName   解压:uncompress FileName.Z   .tar.Z   解压:tar Zxvf FileName.tar.Z   压缩:tar Zcvf FileName.tar.Z DirName

 

系统备份命令:#tar cvpzf MyBackup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys --exclude=/tmp --exclude=/media /# tar cvpjf MyBackup.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys --exclude=/tmp --exclude=/media / (bzip2压缩率更高)另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西,必须把“/media”也排除在外

恢复系统:

  把文件“backup.tgz”拷贝到分区的根目录下,执行恢复命令:# tar xvpfz backup.tgz -C /  把文件“backup.tar.bz2”拷贝到分区的根目录下,执行恢复命令:# tar xvpfj backup.tar.bz2 -C /

  重新创建那些在备份时被排除在外的目录  # mkdir proc  # mkdir lost+found  # mkdir mnt  # mkdir sys  # mkdir tmp

用netcat进行网络备份接收端   nc -nvv -l -p 端口 > backup.tar.bz2备份端   tar cvpj / | nc -q 0 IP 端口传输完毕后nc连接自动断开事实上一个真正快的网络比写备份文件到磁盘要快.

 

进程管理

开启自启动 (1)直接将可执行脚本文件放在脚本放在目录 /etc/init.d/ 下(2)在/etc/init.d/rcS 文件中添加要执行的命令或程序,如:sh /home/start.sh以root权限自动运行脚本 在etc目录下的rc.local 文件中添加应用代码的可执行文件路径。 例: 开机启动hello应用代码,则添加一行/home/./hello 开机启动sh脚本   以root登录linux   vi /etc/rc.d/rc.local   在文档末尾添加一行语句:sh /home/sun/startXX.sh    以非root权限:su 用户 -c "/home/startXX.sh" 保存rc.local即可

 

  

 

防火墙设置

linux防火墙被整合到内核当中,防火墙在默认开启的情况下,只有ping和ssh不会被拦截。 iptables -L                   查看防火墙规则状态。 iptables -F                   清除防火墙规则,重启失效。iptables -X                           清除预设表filter 中,使用者自订链中的规则service iptables save             保存规则,CentOS专用,Debian/Ubuntu自动保存 chkconfig iptables off / service iptables stop  关闭防火墙

 流量转发

iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT #把网卡eth1的流量转发给网卡eth0  

 DNS服务

iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT

 支持由本机通过SSH连接其他机器

iptables -A INPUT -i eth0 -p tcp -s 192.168.100.0/24 --dport 22 -m state --state ESTABLESHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state NEW,ESTABLISHED -j ACCEPT 注:CentOS默认开启了防火墙,所以80端口是不能正常访问的)   iptables -I INPUT -p tcp --dport 80 -j ACCEPT #让防火墙打开80端口给外部即可。 可以加入到开启启动当中。 开机启动,可以参考:http://www.cnblogs.com/HD/p/4011479.html 参考文章:http://www.tuicool.com/articles/UvYVbq

iptables-persistent组件

防火墙规则重启后就丢失了,为了能够规则开机自动加载,可以使用iptables-persistent组件该组件默认会将防火墙规则保存到/etc/iptables/rules.v4中。  安装该组件: sudo apt-get install iptables-persistent 根据其提示进行初次设置(一路确认) 使用如下命令保存和读入规则:   保存现有规则: sudo service netfilter-persistent save   读取并应用先有规则: sudo service netfilter-persistent reload

 

设备管理

lspci ( 列举 pci 设备) lsusb ( 列举 usb 设备) lsscsi ( 列举 scsi 设备) fdisk -l ( 磁盘分区信息) dmidecode ( 列举硬件型号, 序列号, cpu, 内存等) cat /proc/cpuinfo (CPU信息) cat /proc/meminfo (内存信息)

通过控制台连接外部设备

例:Linux连接主机名为ant-fw的思科ASA5505主机

screen -L /dev/ttyUSB (-L保留会话日志)

ant-fw>enable

Password:××××××

ant-fw#show version/clock/run    (常用命令)

 

 

转载于:https://www.cnblogs.com/ssooking/p/5880962.html

最新回复(0)