linux 心得

1、在卸载libpcap时,使用了-y 参数,导致很多关联的软件也一起被删除了,比如L2TP和PPTP、PPP,yum在删除时,会把一些配置文件备份下来(卸载日志中会有记录),下次安装时,直接将备份文件恢复即可。但是最好不要将关联软件删除,应该可以选择删除的,这个在以后验证一下;

 

2、yum有时不能使用,提示有另外的app正在使用中,要等待一段时间。劳资哪有时间等你,直接用rm -f /var/run/yum.pid 就可以关闭进程;

 

3、小米路由器原生不支持绑定arp,需要获取到SSH权限,进cli后,手动添加arp -s添加,但是这样重启后不能保存,需要在/etc/ethers中添加:192.168.31.106 74:d4:35:99:3e:48

 

4、linux下安装wireshark和libpcap后,有时还是会出现:

tshark: Unknown message from dumpcap, try to show it as a string: /usr/sbin/dumpcap: symbol lookup error: /usr/sbin/dumpcap: undefined symbol: pcap_set_tstamp_precision

对于这样的问题,我一直没有发现原因,只好将wireshark重装一遍。

 

5、Centos yum No package available,这使用 Epel 源解决:

rpm -i http://mirror.symnds.com/distributions/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm

 

6、解决SSH会话连接超时问题

设置服务器向SSH客户端连接会话发送频率和时间

#vi /etc/ssh/sshd_config,添加如下两行

ClientAliveInterval 60

ClientAliveCountMax 86400

注:ClientAliveInterval选项定义了每隔多少秒给SSH客户端发送一次信号;ClientAliveCountMax选项定义了超过多少秒后断开与ssh客户端连接

#service sshd restart

 

7、wireshark在linux下的抓包命令:

# tshark -i eth0 -w ceshi.cap -q

抓好了之后传到windows下查看比较方便

 

8、配置文件的删除权限

一个文件或者目录能否被删除不是由它本身的rwx权限决定的,而是由其父目录是否具有w权限决定的,举个例子,test_dir目录下有个文件为test_file,test_file的权限为-rwxr-xr--,test_dir的权限为drwxr-xrwx,也就是other组的没法修改这个文件,但是test_file文件所在的目录test_dir具有被other可写的权限,因此虽然other没法修改test_file这个文件,但却可以删除这个文件,文件的r、w、x是针对文件的内容的。

要进入一个目录,需要该目录的执行权限x。

 

9、普通用户使用sudo无效

需要在root下修改visudo,在root ALL=(ALL) ALL下添加一行,如:

zhangjing ALL=(ALL) ALL

 

10、ps -ef|grep -v grep|grep seq|awk '{print "kill -9 " $2}'

ps -ef | 获取当前服务器所有进程

grep -v grep 相当于grep自己把自己过滤掉,就是不显示grep

grep seq 过滤出seq

awk 截取 $2 第二个域的pid号。通过调用外部命令kill 来干掉seq

 

或者

ps aux |grep -v 'grep '| grep ngrok | awk '$3 ~ /[0-9]+/ {print $2}' | while read s; do kill -9 $s; done

 

11、启用了IPV6之后,总是会同时生成很多多余的IPV6地址,不知道有什么用意,但是导致我访问网络时使用的源IP不是我设定的,默认网关也不是我设定的,这样导致我访问不了网络,需要使用以下命令来删除:

netsh interface ipv6 delete route ::/0 "以太网" fe80::1c15:239b:9bb:264 //删除默认网关,问题是,删除了之后还会自动生成。

netsh interface ipv6 delete address 以太网 fd6b:16db:a29b:5:c409:69e3:e7da:2e46 //删除IPV6地址

删除了IPV6默认网关之后,可以正常访问了,但是一段时间后还会自动生成,我发现在IPV6的默认网关中手动设置跃点数为2,即可正常访问。

 

12、在ubuntu上,不小心设置了默认编辑软件为nano,使用以下命令:

select-editor

即可重新设置默认编辑软件

 

13、64位linux系统上要安装32位的软件,需要安装32位运行库:

yum install xulrunner.i686 (可用)

或者

yum install ia32-libs.i686

 

14、卸载分区时出现busy,可以用

fuser -m -k /home/test

-m用来查看当前正在对这个分区进行查看的进程,然后-k是直接kill。

 

15、linux访问smb服务器:

smbclient //192.168.31.1/xiaomi # 后进入类似ftp的模式

mount -t cifs //192.168.31.1/xiaomi /home/xiaomi # 挂载到/home/xiaomi

 

16、ssh-keygen 用来创建ssh密钥,可以用ssh-keygen -t dsa 设置加密算法为dsa

用 ssh-copy-id把公钥复制到远程主机上

 ssh-copy-id -i ~/.ssh/id_rsa.pub root@139.224.10.128

 

17、显示时间:

date +"%Y-%m-%d %H:%M:%S"

 

0 */1 * * * date +"%Y-%m-%d %H:%M:%S" >> /home/download_backup.log && rsync -avz --progress --delete /var/www/html/owncloud/data/zhangjing/files/download /var/www/html >> /home/download_backup.log 2>&1 && date +"%Y-%m-%d %H:%M:%S" >> /home/download_backup.log

 

18、ubuntu开机自启设置:

sudo apt-get install sysv-rc-conf

 

19、linux命令后台运行

   有两种方式:

   1. command & : 后台运行,你关掉终端会停止运行

   2. nohup command & : 后台运行,你关掉终端也会继续运行

3.nohup command > /dev/null 2>&1 & :后台运行,同时所有输出(正确和错误)都重定向到null中,也就是删除

 

20、shell date 获取昨天日期

使用date -d 选项:

date  +"%Y%m%d" -d  "+n days"         今天的后n天日期  

date  +"%Y%m%d" -d  "-n days"          今天的前n天日期

 

21、自定义快捷键

编辑用户目录下的.bashrc文件,例如使用vi编辑器,vi ~/.bashrc

将你想设置的快捷键,保存至.bashrc, 例如

alias sl='screen -ls'

alias sr='screen -r'

alias sr='screen '

使用命令:source ~/.bashrc

重新 执行刚才保存的文件使其立即生效,而省去注销重新登录的麻烦。

 

22、shell 获取当前目录下最新更新的文件名

ls -l /home/moving/backup | tail -n 1 | awk '{print $9}'

 

23、手动设置ubuntu DNS,修改/etc/resolve.conf,重启后会失效,应该修改

/etc/resolvconf/resolv.conf.d/base

nameserver 223.5.5.5

修改好了之后

sudo resolvconf -u

 

24、秒数转换成小时分钟数

time=44543

echo "$(($time/3600))小时$(($time%3600/60))分钟$(($time%3600%60))秒"

 

25、apt-get不可用,提示:

E:Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)

出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况。

 解决方法:输入以下命令

 sudo rm /var/cache/apt/archives/lock

 sudo rm /var/lib/dpkg/lock

 之后再安装想装的包,即可解决。

 

 

26、如何kill掉进程名包含某个字符串的一批进程:

kill -9 $(ps -ef|grep 进程名关键字|gawk '$0 !~/grep/ {print $2}' |tr -s '\n' ' ')

 

27、修改centos的yum源,需要通过yum clean all来清空缓存。

 

28、简单备忘一下Linux下的wget和curl如何使用http proxy

wget -e "http_proxy=porxyhost:port" www.baidu.com

curl -x http://proxyhost:port www.baidu.com 

如果需要用户名密码,格式

curl -x "http://user:pwd@host:port" www.baidu.com

 

29、查看当前出口IP:

curl icanhazip.com

wget icanhazip.com -O - -q ; echo

 

30、安装proxychains,使用proxychains来进行代理

Make a config file at ~/.proxychains/proxychains.conf with content:

strict_chain proxy_dns remote_dns_subnet 224 tcp_read_time_out 15000 tcp_connect_time_out 8000 localnet 127.0.0.0/255.0.0.0 quiet_mode [ProxyList] socks5 127.0.0.1 1080

 

Then run command with proxychains. Examples:

proxychains4 curl https://www.twitter.com/ proxychains4 git push origin master

Or just proxify bash:

proxychains4 bash curl https://www.twitter.com/ git push origin master

 

 

31、批量对某个文件夹中的文件进行处理:

for file in  `ls`

do

    mv $file ${file}.TXT

done

 

32、逐行处理文本文件,使用for var in file 命令的话,结果不是按照行来执行的,是按照单个单词来执行的,不知问题出在哪里

cat data.dat | while read line

do

echo "File:${line}"

done

 

while read line

do

echo "File:${line}"

done < data.dat

 

33、 如何kill掉一个screen

1、使用screen名字,kill掉。

      screen -S session_name -X quit

2、激活screen:

     screen -r session_name

     并利用exit退出并kiil掉session。

 

34、重启screen某一个进程

screen -S ngrok -X quit #直接关闭该screen进程

screen -S ngrok -dm /home/software/ngrok -config=/home/software/ngrok.cfg start-all #重新启动

 

35、lsb_release命令不存在:

yum install redhat-lsb -y

 

36、

 

36、删除目录中文件名包含指定字符串的文件:

find -name '*flac*' -exec rm -rf {} \;

 

 

37、echo是自动换行的,如果不想自动换行,使用printf或者使用echo -e,后加\c

 

38、删除除某个文件之外所有文件:rm -fr !(file1) 、 rm -fr !(file1 | file2)

 

39、执行命令或脚本时,欲将输出显示在屏幕上同时记录在文件中,可在命令后加 | tee,如ifconfig | tee xx.log

 

40、在centos7中,/etc/rc.d/rc.local文件的权限被降低了,没有执行权限,需要给它添加可执行权限。

chmod +x /etc/rc.d/rc.local

然后就可以在里面添加你要开机自启的命令了

 

41、一步到位设置linux系统时间:

     date -s "20091112 18:30:50" &&hwclock --systohc

     同步别的ntp服务器的时间:

     ntpdate 172.16.70.25

 

42、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值