手記系列之七 ----- 分享Linux使用經驗

2023-11-04 21:00:45

前言

本篇文章主要介紹的關於本人在使用Linux記錄筆記的一些使用方法和經驗,溫馨提示,本文有點長,約1.7w字,幾十張圖片,建議收藏檢視。


一、Linux基礎使用

1,伺服器檢視及時紀錄檔

tail -500f catalina.out

2,如何退出logs紀錄檔

ctrl+c 或kill -9 pid

3,設定快捷鍵

臨時快捷鍵設定: 執行XShell,輸入 : alias 'aa=cd /etc/sysconfig' , aa: 快捷鍵名稱
永久快捷鍵設定: 首先輸入你想要設定的別名 看這個別名是否存在;或者 輸入alias檢視設定了那些別名。
輸入 gedit .bashrc 或者 vim ~/.bashrc 開啟 .bashrc 進入編輯 在#some more ls aliases 路徑下輸入你要設定的別名 例如:alias 'aa=cd /etc/sysconfig' 然後儲存退出. 然後輸入 source ~/.bashrc 使其生效就可以使用定義的別名進入這個快捷鍵了。

4,解壓壓縮檔案命令

1, 本目錄解壓:
執行命令:

tar mysql-5.6.17-linux-glibc2.5-i686.tar.gz

檔案字尾為.tar.gz

2,解壓到其他目錄
命令格式:tar -zxvf 【壓縮包檔名.tar.gz】 -C 【路徑】/
例如:

tar -zxvf jdk-7u55-linux-x64.tar.gz -C /usr/local/installed/java

命令格式:tar -jxvf 【壓縮包檔名.tar.bz2】 -C 【路徑】/
例如:

tar -jxvf japan.tar.bz2 -C /tmp/

3,壓縮到其他目錄
壓縮.tar.gz格式到指定目錄下
命令格式:tar -zcvf 【目錄】/ 【壓縮包檔名.tar.gz】【原始檔】
例如:

tar -zcvf /tmp/test.tar.gz japan/

5,伺服器如何設定快捷啟動和快捷停止

  啟動:  CATALINA_BASE=$aaadir
    export CATALINA_BASE
    cd $CATALINA_BASE/bin
    ./startup &
    
 停止:CATALINA_BASE=$aaadir
    export CATALINA_BASE
    cd $CATALINA_BASE/bin
    ./shutdown &

aaa設定永久快捷鍵路徑名 路徑在tomcat bin目錄下

6,檢視檔案內容的命令

cat     由第一行開始顯示內容,並將所有內容輸出
tac     從最後一行倒序顯示內容,並將所有內容輸出
more    根據視窗大小,一頁一頁的現實檔案內容
less    和more類似,但其優點可以往前翻頁,而且進行可以搜尋字元
head    只顯示頭幾行
tail    只顯示最後幾行
nl      類似於cat -n,顯示時輸出行號
tailf   類似於tail -f 

less 加檔名 進行搜尋檔案,可以使用 shitf+G 到達檔案底部,再通過?+關鍵字的方式來根據關鍵來搜尋資訊。

7,設定成為root許可權

輸入:

sudo passwd root

設定完root 密碼之後
輸入:

su root

然後輸入 設定的root密碼
成為root使用者

普通使用者使用root 許可權
輸入:

sudo su root

8,測試連線伺服器命令

ping 命令用的是icmp協定,現在大多路由器為了避免廣播氾濫,都禁用了icmp協定,所以ping不通了~
tracert命令,路由跟蹤,格式tracert ip地址

centos、ubuntu安裝telnet命令的方法.
yum list telnet* 列出telnet相關的安裝包
yum install telnet-server 安裝telnet服務
yum install telnet.* 安裝telnet使用者端

telnet ip 埠

9,更改linux ssh 埠

輸入:

vim /etc/ssh/sshd_config

找到port 並解除註釋,更改埠

重啟 ssh 輸入: service sshd restart
重啟之後就要重新登入了

10,獲取檔案許可權

輸入: chmod -R 777 檔名

11,檢視磁碟空間

檢視整個磁碟空間: df -h
檢視當前資料夾磁碟使用情況: du --max-depth=1 -h
檢視指定路徑的大小:du -sh /root/sw
檢視目錄使用的磁碟空間: df -h 目錄

free -m : 檢視記憶體使用量和交換區使用量

檢視磁碟對應的目錄
mount

12,伺服器重啟

立刻重啟:reboot
立刻重啟:shutdown -r now
過10分鐘自動重啟:shutdown -r 10
在時間為12:00時候重啟:shutdown -r 12:00
取消重啟: shutdown -c

13,防火牆關閉

CentOS 6
查詢防火牆狀態:
[root@localhost ~]# service iptables status
停止防火牆:
[root@localhost ~]# service iptables stop
啟動防火牆:
[root@localhost ~]# service iptables start
重啟防火牆:
[root@localhost ~]# service iptables restart
永久關閉防火牆:
[root@localhost ~]# chkconfig iptables off
永久關閉後啟用:
[root@localhost ~]# chkconfig iptables on

CentOS 7
關閉防火牆
systemctl stop firewalld.service

14,時間設定

date命令將日期設定為2014年6月18日
---- date -s 06/18/14
將時間設定為14點20分50秒
---- date -s 14:20:50
將時間設定為2014年6月18日14點16分30秒(MMDDhhmmYYYY.ss)
----date 0618141614.30

執行tzselect命令-->選擇Asia-->選擇China-->選擇east China - Beijing, Guangdong, Shanghai, etc-->然後輸入1。
需重啟

不用重啟
設定時區

sudo timedatectl set-timezone 'Asia/Shanghai'

date -R

date -s "2020-8-6 18:08:30"

hwclock -w

15,遠端拷貝

將本地/etc目錄中所有的檔案和子目錄拷貝到IP為「192.168.60.135」的遠端Linux系統的root使用者下的/opt目錄中:

scp -r /etc [email protected]:/opt

這裡的選項「r」與cp命令的「r」選項含義相同。

如果埠不是22,則用一下命令

scp -r -P 8017 java/ [email protected]:/opt/

16,主機名稱更改

輸入

vim /etc/sysconfig/network

將localhost.localdomain修改為hserver1

CentOS7
hostnamectl set-hostname master

17,更改伺服器ip

編輯ifcfg-eth0 檔案

vim /etc/sysconfig/network-scripts/ifcfg-eth0

修改如下內容:

BOOTPROTO="static" #dhcp改為static   
ONBOOT="yes" #開機啟用本設定  
IPADDR=192.168.7.106 #靜態IP  
GATEWAY=192.168.7.1 #預設閘道器  
NETMASK=255.255.255.0 #子網掩碼  
DNS1=192.168.7.1 #DNS 設定  

如果子網掩碼是255.255.248.0
PREFIX需要改成21
PREFIX=21

重啟網路服務:

service network restart

18,檢視檔案大小

查詢大於200M的檔案

find / -size +200M -exec ls -lh {} ;

使用

du -h --max-depth=1

/路徑 查詢資料夾佔用顯示該目錄佔用空間的總和

參考:
https://blog.csdn.net/qq_16885135/article/details/52224997

19,檢視系統版本命令

uname -a # 檢視核心/作業系統/CPU資訊

檢視CPU資訊(型號)

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c lsb_release -a

top 檢視使用情況

cat /proc/meminfo

若出現該異常: -bash: lsb_release: command not found

則需要安裝:

yum install redhat-lsb -y

20,檢視埠使用情況

netstat -ntlp 檢視當前所有tcp埠

netstat -ntlp | grep 8080 檢視指定的埠資訊

netstat -apn | grep 80 檢視包含80埠使用情況,包括程序id

lsof -i:8321 檢視該埠是否使用

firewall-cmd --zone=public --add-port=5672/tcp --permanent   # 開放5672埠
firewall-cmd --zone=public --remove-port=5672/tcp --permanent  #關閉5672埠
firewall-cmd --reload   # 設定立即生效

21,檢視程序詳細情況

ps -ef | grep ‘程序名稱’
ps -aux | grep ‘程序名稱’

ps -ef | grep ‘程序id’
ps -aux | grep ‘程序id’

pgrep java | xargs ps -u --pid  可以檢視關於 Java的相關資訊

22,釋放快取

命令

sync
echo 3 > /proc/sys/vm/drop_caches 

23,檢視IO

iotop

或者使用

iostat -x 1 10

該命令表示 每一秒輸出一次,總共輸出10次
如果沒有,使用 yum install sysstat 進行下載

檢視磁碟寫入速度

time dd if=/dev/zero of=test.file bs=1G count=2 oflag=direct

參考: https://www.cnblogs.com/mauricewei/p/10502539.html

24,搜尋檔案內容

find . -name * -type f -print | xargs grep "abc123"

表示搜尋在所有的檔案中搜尋包含 abc123 字元的檔案。

25,檢視機器啟動時間、使用者數和負載等等情況

uptime

引數說明:

  1. 當前時間
  2. 系統已執行時間
  3. 使用者數
  4. 最近1分鐘、5分鐘、15分鐘的負載

這個負載數越小越好,如果有3個cpu,那麼最後一個小於9的話,就說明正常。大於10就說明負載很嚴重。

26,檢視某個程式開啟檔案的控制程式碼

lsof -p 20308 | less

檢視pid 20308 的使用

lsof -i:8080

檢視8080埠的使用情況

27,檢視CPU的詳細情況

pidstat -urd -程序號

28,檢視TCP連線數

一、檢視哪些IP連線本機

netstat -an

二、檢視TCP連線數

1)統計80埠連線數

netstat -nat|grep -i "80"|wc -l

2)統計httpd協定連線數

ps -ef|grep httpd|wc -l

3)、統計已連線上的,狀態為「established

netstat -na|grep ESTABLISHED|wc -l

4)、查出哪個IP地址連線最多,將其封了.

netstat -na|grep ESTABLISHED|awk {print $5}|awk -F: {print
$1}|sort|uniq -c|sort -r +0n

netstat -na|grep SYN|awk {print $5}|awk -F: {print $1}|sort|uniq
-c|sort -r +0n

參考: https://blog.csdn.net/he_jian1/article/details/40787269

29,啟動和檢視後端掛起的命令

不結束通話後臺啟動的命令:

nohup ./test &

後端掛起的命令檢視

jobs

30,統計字串在檔案中出現的次數

grep -o "hello" demo.log | wc -l

-c 只顯示有多少行匹配 ,而不具體顯示匹配的行
-i 在字串比較的時候忽略大小寫
-n 在每一行前面列印該行在檔案中的行數

31,rpm安裝離線包

rpm -ivh 包全名

此命令中各選項引數的含義為:

-i:安裝(install);
-v:顯示更詳細的資訊(verbose);
-h:列印 #,顯示安裝進度(hash);

如果還有其他安裝要求(比如強制安裝某軟體而不管它是否有依賴性),可以通過以下選項進行調整:

-nodeps:不檢測依賴性安裝。軟體安裝時會檢測依賴性,確定所需的底層軟體是否安裝,如果沒有安裝則會報錯。如果不管依賴性,想強制安裝,則可以使用這個選項。注意,這樣不檢測依賴性安裝的軟體基本上是不能使用的,所以不建議這樣做。
-replacefiles:替換檔案安裝。如果要安裝軟體包,但是包中的部分檔案已經存在,那麼在正常安裝時會報"某個檔案已經存在"的錯誤,從而導致軟體無法安裝。使用這個選項可以忽略這個報錯而覆蓋安裝。
-replacepkgs:替換軟體包安裝。如果軟體包已經安裝,那麼此選項可以把軟體包重複安裝一遍。
-force:強制安裝。不管是否已經安裝,都重新安裝。也就是 -replacefiles 和 -replacepkgs 的綜合。
-test:測試安裝。不會實際安裝,只是檢測一下依賴性。
-prefix:指定安裝路徑。為安裝軟體指定安裝路徑,而不使用預設安裝路徑。

參考:http://c.biancheng.net/view/2872.html

32,下載離線包

找一個有網的linux伺服器
輸入:
yum install yum-utils
然後輸入:
yumdownloader 包名

範例:

參考:https://cloud.tencent.com/developer/article/1425567

33,Linux的許可權命令

許可權是Linux中的重要概念,每個檔案/目錄等都具有許可權,通過ls -l命令我們可以 檢視某個目錄下的檔案或目錄的許可權
範例:在隨意某個目錄下ls -l

第一列的內容的資訊解釋如下:

檔案的型別:

d:代表目錄
-:代表檔案
l:代表連結(可以認為是window中的快捷方式)
後面的9位分為3組,每3位置一組,分別代表屬主的許可權,與當前使用者同組的    使用者的許可權,其他使用者的許可權
r:代表許可權是可讀,r也可以用數位4表示
w:代表許可權是可寫,w也可以用數位2表示
x:代表許可權是可執行,x也可以用數位1表示
屬主(user)    屬組(group)    其他使用者
r    w    x    r    w    x    r    w    x
4    2    1    4    2    1    4    2    1

修改檔案/目錄的許可權的命令:chmod
範例:修改/test下的aaa.txt的許可權為屬主有全部許可權,屬主所在的組有讀寫許可權,
其他使用者只有讀的許可權

chmod u=rwx,g=rw,o=r aaa.txt

上述範例還可以使用數位表示:

chmod 764 aaa.txt

34,linux定時任務執行

at命令用於在指定時間執行命令。at允許使用一套相當複雜的指定時間的方法。它能夠接受在當天的hh:mm(小時:分鐘)式的時間指定。假如該時間已過去,那麼就放在第二天執行。當然也能夠使用midnight(深夜),noon(中午),teatime(飲茶時間,一般是下午4點)等比較模糊的 詞語來指定時間。使用者還能夠採用12小時計時制,即在時間後面加上AM(上午)或PM(下午)來說明是上午還是下午。 也能夠指定命令執行的具體日期,指定格式為month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必須跟在指定時間的後面。

上面介紹的都是絕對計時法,其實還能夠使用相對計時法,這對於安排不久就要執行的命令是很有好處的。指定格式為:now + count time-units,now就是當前時間,time-units是時間單位,這裡能夠是minutes(分鐘)、hours(小時)、days(天)、weeks(星期)。count是時間的數量,究竟是幾天,還是幾小時,等等。 更有一種計時方法就是直接使用today(今天)、tomorrow(明天)來指定完成命令的時間。
設定定時任務
at
檢視定時任務命令
atq
刪除定時任務命令
atrm
ctrl+D 結束

參考: https://www.cnblogs.com/kaituorensheng/p/4494321.html

100,linux命令大全

https://man.linuxde.net


Linux系統使用

安裝部署

根據不同的場景可參考如下連結檔案進行安裝:

https://www.cnblogs.com/xuwujing/p/8044620.html

https://www.cnblogs.com/xuwujing/p/7536720.html

https://www.cnblogs.com/xuwujing/p/7536730.html

2,網路設定

進入系統後,輸入ifconfig 檢視ip
發現只有lo 本機ip

輸入ping 127.0.0.1 可以連線 說明網路卡存在
輸入ifconfig -a

看到有4個網路卡 找到對應網線插入的介面 並載入網路卡
ifconfig em1 up 載入網路卡(插入的是第一個)
然後設定網路卡 輸入 sudo vim /etc/network/interfaces

進入之後 先輸入 i 編輯 ,編輯完成後 按ESC 退出編輯 然後輸入 : 退出命令
輸入 wq 儲存檔案
輸入cat /etc/network/interfaces 可檢視編輯檔案
完成後再輸入 ping www.baidu.com
就可以ping通了
sudo dhclient em1 釋放ip
問題: 開機每次都要釋放ip才能上網
原因:設定成靜態ip後,需要設定DNS
解決辦法:在/etc/network/interfaces 新增 dns-nameservers 8.8.8.8 DNS資訊

參考:http://blog.csdn.net/meic51/article/details/17321241

2,開啟SSH服務

參考:http://www.cnblogs.com/yhyjy/p/3760500.html
先輸入: ssh localhost
如果出現 ssh: connect to host localhost port 22: Connection refused
說明沒有安裝成功
先輸入:sudo apt-get install openssh-server 安裝命令
如果提示:Package openssh-server is not available 錯誤
那就先更新下: 命令: sudo apt-get update
更新完後再來安裝 輸入:sudo apt-get install openssh-server
解除安裝命令: sudo apt-get remove openssh-server
安裝完後 輸入: ps -e|grep ssh
出現sshd說明安裝成功了

如果沒有啟動成功:輸入 sudo /etc/init.d/ssh start 或者 service ssh start

遠端連線

本地通過xshell連線


連線完成
點選xftp連線 出現 sftp子系統申請拒絕
解決辦法
輸入:

vim /etc/ssh/sshd_config

將Subsystem sftp /usr/lib/openssh/sftp-serverto
修改為 Subsystem sftp internal-sftp
沒有的話就直接新增
新增成功後重啟服務 service ssh restart

然後就可以遠端連線了

如何沒有網路的Linux機器上快速安裝軟體

方法一、使用RPM方式安裝。

rpm -ivh fuse-2.8.3-5.el6.x86_64.rpm --force --nodeps

首先找到相關RPM安裝包,然後使用rpm -ivh rpm包名 進行安裝。

大部分RPM可在http://rpmfind.net/ 上找到。

方法二、使用另一臺可以聯網的機器使用RPM方式下載然後在進行傳輸。

使用 yum-plugin-downloadonly 命令進行下載

1.準備1臺和伺服器最簡安裝了同版本Linux的機器,記為機器B,機器B需要能聯網。(可以使用虛擬機器器或者Docker容器)。

2.連線上機器B並使用如下命令:

安裝yum-plugin-downloadonly外掛

yum install -y yum-plugin-downloadonly

把vsftpd換成你想要的包名

yum install --downloadonly

3.下載的軟體在這個路徑

/var/cache/yum/x86_64/7/base/packages/

  1. 將所有RPM包拷貝到伺服器上安裝既可。如果安裝過程中提示xxx已安裝是否需要覆蓋,全部選否。

拓展閱讀
怎樣在 CentOS 裡下載 RPM 包及其所有依賴包:https://blog.csdn.net/linuxnews/article/details/53244315

Ubuntu其實也有類似的命令apt-get install -d --reinstall 包名 ,這樣既可只下載包,而不安裝包了,然後拷貝到無網路的機器上安裝既可。

apt一鍵下載所有依賴的包:https://blog.csdn.net/junbujianwpl/article/details/52811153

參考: http://www.itmuch.com/work/install-software-without-network-in-linux/


nfs(共用檔案使用)


Centos7.3版本自帶有,6.x版本需要安裝
6.x版本安裝

yum -y install nfs-utils rpcbind

具體可以參考: https://www.cnblogs.com/liuyisai/p/5992511.html

使用方法
1.首先檢視是否安裝了nfs
輸入一下命令檢查:

rpm -qa |grep nfs
rpm -qa | grep rpcbind

出現上述範例圖表示ok

首先建立一個公共的共用資料夾,然後給該資料夾授權

mkdir esdata
chmod -R 777 esdata esdata2

如果是非root使用者使用的話還需賦權

chown -R elastic:elastic esdata esdata2

伺服器端:
命令參考

vim /etc/exports

新增如下設定:

/opt/esdata *(rw,sync,no_root_squash,no_all_squash)

設定說明:

/opt/esdata :          本地路徑,沒有必須要先建立
*:                          許可權控制,可以設定成可存取的IP地址或IP地址段
rw:                      許可權,可以讀寫
sync:                      同步模式
root_squash:              如果client端以root等級,只能獲取到nobody的許可權

然後輸入一下命令進行啟動

service rpcbind start

service nfs start

輸入一下命令進行檢視:

exportfs

showmount -e

使用者端:

輸入以下命令進行共用

mount 192.169.2.232:/opt/esdata /opt/esdata

 mount | grep nfs

Windows和linux共同使用參考:
https://blog.51cto.com/u_14375810/2427482

許可權更改參考:
https://blog.csdn.net/weixin_30610431/article/details/116609222

Nfs組態檔參考:
https://www.cnblogs.com/computer1-2-3/p/5210961.html

一些命令:

cat>>/etc/exports<<EOF

NFS server share directories

/data 192.168.9.32(rw,sync)
EOF

showmount -e 192.168.9.42

mount \192.168.9.32\data x:\

mount -t nfs 192.168.9.32:/data /opt

mount -t nfs 192.168.9.32:/data /home/t1/
mount -t nfs 192.168.9.42:/nfs /home/t1/

mount -t nfs4 -o intr,nolock 192.168.1.101:/mnt/nfs/leon /mnt/nfs

showmount -e 192.168.9.32

mount -t nfs 192.168.9.32:/data /mnt
echo "mount -t nfs 192.168.9.32:/data /mnt">>/etc/rc.local

cat>>/etc/exports<<EOF
/data/test2 192.168.9.32/24(rw,sync)
EOF

刪除連結

net use z: /del

刪除連結直接通過

net use z /delete /y

mkdir /data
chown -R root.root /data
ls -ld /data

cat>>/etc/exports<<EOF
/data 192.168.6.187/24(insecure,rw,sync)
EOF

exportfs [-aruv]
-a :全部mount或者unmount /etc/exports中的內容
-r :重新mount /etc/exports中分享出來的目錄
-u :umount目錄
-v :在export的時候,將詳細的資訊輸出到螢幕上。
具體例子:

exportfs -au 解除安裝所有共用目錄

exportfs -rv 重新共用所有目錄並輸出詳細資訊

NFS伺服器端搭建步驟
yum install nfs-utils rpcbind -y

systemctl start rpcbind
systemctl start nfs
ps -ef|grep rpc
ps -ef|grep nfs
lsof -i:111
rpcinfo -p localhost

systemctl enable rpcbind
systemctl enable nfs
systemctl list-unit-files --type=service|grep "enabled"|egrep "rpcbind|nfs"

mkdir /data
chown -R nfsnobody.nfsnobody /data

設定讀寫許可權

chmod -R o+w /data
ls -ld /data

設定共用目錄

cat>>/etc/exports<<EOF
/data 192.168.10.90(insecure,rw,sync)
EOF

檢查服務

cat /etc/exports


Windows遠端連結

mount \192.168.6.193\data x:\

mount \192.168.10.90\home\userfile\admin z:\

mount -t nfs \192.168.6.191\data x:\

showmount -e 192.168.10.90

mount -t nfs 192.168.10.90:/data /mnt

1)建立空連線:
net use \IP\ipc$ "" /user:"" (一定要注意:這一行命令中包含了3個空格)

2)建立非空連線:
net use \IP\ipc$ "密碼" /user:"使用者名稱" (同樣有3個空格)

3)對映預設共用:
net use z: \IP\c$ "密碼" /user:"使用者名稱" (即可將對方的C槽對映為自己的z盤,其他盤類推)

如果已經和目標建立了ipc存取,具體命令 net use z: \IP\c$

4)刪除一個ipc\(連線 net use \IP\ipc\) /del

5)刪除共用對映
net use c: /del 刪除對映的C槽,其他盤類推
net use * /del 刪除全部,會有提示要求按y確認
net use x: /del

net use \IP\192.168.6.191 /del

\192.168.6.191\data

cat>>/etc/exports<<EOF
/home/guacamole/video 192.168.10.91/24(insecure,rw,sync,all_squash)
EOF

mount -t nfs 192.168.10.91:/home/guacamole/video /data/guacamole/video

永久掛載

vim /etc/rc.local
touch /var/lock/subsys/local
/bin/mount -t nfs 192.168.10.91:/home/guacamole/video /data/guacamole/video


Linux錯誤解決辦法

1,bash:vi:command not find

export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin 這樣可以保證命令列命令暫時可以使用。命令執行完之後先不要關閉終端。

然後輸入 vi /etc/profile 檢查是否設定了Path屬性 然後正確的更改path 屬性 。
輸入source /etc/profile 使設定生效 就ok了。

2,-bash: mysql: command not found

原因:這是由於系統預設會查詢/usr/bin下的命令,如果這個命令不在這個目錄下,當然會找不到命令,我們需要做的就是對映一個連結到/usr/bin目錄下,相當於建立一個連結檔案。
首先得知道mysql命令或mysqladmin命令的完整路徑,比如mysql的路徑是:/usr/local/mysql/bin/mysql,我們則可以這樣執行命令:
ln -s /usr/local/mysql/bin/mysql /usr/bin

linux下,在mysql正常執行的情況下,輸入mysql提示:
mysql command not found
遇上-bash: mysql: command not found的情況彆著急,這個是因為/usr/local/bin目錄下缺失mysql導致,只需要一下方法建立軟連結,即可以解決:
把mysql安裝目錄,比如MYSQLPATH/bin/mysql,對映到/usr/local/bin目錄下:

cd /usr/local/bin

ln -fs /MYSQLPATH/bin/mysql mysql

還有其它常用命令mysqladmin、mysqldump等不可用時候都可按用此方法解決。
注:其中MYSQLPATH是mysql的實際安裝路徑

3,Temporary failure in name resolution 錯誤解決方法

可以修改/etc/resolv.conf,
找到nameserver項修改成下面的,沒有的話新增下面的
nameserver 8.8.8.8
nameserver 8.8.4.4
使用的Google的name server。
後面別忘記了重啟網路,service network restart 命令。
如何沒有這個檔案,就自己vim寫個進入

4,Can't connect to local MySQL server through socket '/tmp/mysql.sock'

解決辦法: 1.檢查mysql是否啟動 輸入 service mysql status

5,xxx is not in the sudoers file. This incident will be reported

原因:該使用者沒有加入到sudo的組態檔裡

解決辦法:
切換到root,輸入 vi sudo
找到root ALL=(ALL) ALL位置,
在下面新增一行,將root改成你的使用者名稱就可以了。然後退出儲存就行。

6,在linux輸入命令提示:You have new mail in /var/spool/mail/root

原因:LINUX的郵年提示功能。

解決辦法:
輸入:
echo "unset MAILCHECK">> /etc/profile
去掉這個提示就可以了。

7,重啟網路卡出現 /org/freedesktop/NetworkManager/ActiveConnection/7

[root@cloud network-scripts]# service network restart

正在關閉介面 eth0: 裝置狀態:3 (斷開連線)
                                                           [確定]
關閉環回介面:                                             [確定]
彈出環回介面:                                             [確定]
彈出介面 eth0: 活躍連線狀態:啟用的
活躍連線路徑:/org/freedesktop/NetworkManager/ActiveConnection/7 [確定]

解決辦法:

service NetworkManager stop
chkconfig NetworkManager off
service network restart

8, WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED

使用該命令即可:
mv /root/.ssh/known_hosts /tmp

9,rpm 出現,Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

更改rpm格式為 rpm -ivh fuse-2.8.3-5.el6.x86_64.rpm --force --nodeps

Windows常用

1. 設定jdk切換的bat檔案

新建一個檔案,輸入:

setx -m JAVA_HOME "D:\Java\jdk1.8.0_31" &pause

儲存,並更改檔案字尾名為 .bat。

2.設定自動關機的bat檔案

自動關機
新建一個檔案,輸入:

shutdown -s -t 180

儲存,並更改檔案字尾名為 .bat。

取消自動關機
新建一個檔案,輸入:

shutdown -a

儲存,並更改檔案字尾名為 .bat。

3.Windows 檢視埠

檢視埠
netstat -aon|findstr "8080"

根據程序PID 找到是哪個程式佔用
tasklist|findstr "2448"

檢視所有的程序
netstat -noab

4.Windows的常用命令

Wind + R常用命令

  1. appwiz.cpl:程式和功能
  2. explorer:開啟資源管理器,後面可以接路徑
  3. cleanmgr: 開啟磁碟清理工具,dfrgui:優化驅動器
  4. cmd:CMD命令提示字元
  5. regedit:開啟登入檔
  6. compmgmt.msc:計算機管理
  7. control:控制面版
  8. devmgmt.msc:裝置管理器
  9. dfrgui:優化驅動器
  10. diskmgmt.msc:磁碟管理
  11. hdwwiz.cpl:裝置管理器
  12. inetcpl.cpl:Internet屬性
  13. logoff:登出命令
  14. 自動關機命令shoutdown -s:關機 -r:重啟 -a:取消
    shutdown -s -t 600:表示600秒後自動關機
    shutdown -a :可取消定時關機
    shutdown -r -t 600:表示600秒後自動重啟

5.Windows TPC 緩衝自適應

netsh int tcp set global autotuninglevel=normal

6.Windows10記憶體佔用高問題

1.在 服務中關閉 sysmain
2.在電源選項中關閉快速啟動

7.連結建立

mklink 命令
mklink /j C:\Users\Administrator\Desktop\eeeee5 X:
mklink /d C:\Users\Administrator\Desktop\eeeee5 X:\

8.磁碟對映和遠端連結

net use * /delete /y

cat>>/etc/exports<<EOF
NFS server share directories
/data 192.168.9.32(rw,sync)
EOF

showmount -e 192.168.9.42

mount \192.168.9.32\data x:\

mount -t nfs 192.168.9.32:/data /opt

mount -t nfs 192.168.9.32:/data /home/t1/
mount -t nfs 192.168.9.42:/nfs /home/t1/

mount -t nfs4 -o intr,nolock 192.168.1.101:/mnt/nfs/leon /mnt/nfs

showmount -e 192.168.9.32

mount -t nfs 192.168.9.32:/data /mnt
echo "mount -t nfs 192.168.9.32:/data /mnt">>/etc/rc.local

cat>>/etc/exports<<EOF
/data/test2 192.168.9.32/24(rw,sync)
EOF

刪除連結

net use z: /del

刪除連結直接通過

net use z /delete /y

mkdir /data
chown -R root.root /data
ls -ld /data

cat>>/etc/exports<<EOF
/data 192.168.6.187/24(insecure,rw,sync)
EOF

exportfs [-aruv]
-a :全部mount或者unmount /etc/exports中的內容
-r :重新mount /etc/exports中分享出來的目錄
-u :umount目錄
-v :在export的時候,將詳細的資訊輸出到螢幕上。
具體例子:

exportfs -au 解除安裝所有共用目錄

exportfs -rv 重新共用所有目錄並輸出詳細資訊

NFS伺服器端搭建步驟
yum install nfs-utils rpcbind -y

systemctl start rpcbind
systemctl start nfs
ps -ef|grep rpc
ps -ef|grep nfs
lsof -i:111
rpcinfo -p localhost

systemctl enable rpcbind
systemctl enable nfs
systemctl list-unit-files --type=service|grep "enabled"|egrep "rpcbind|nfs"

mkdir /data
chown -R nfsnobody.nfsnobody /data

設定讀寫許可權

chmod -R o+w /data
ls -ld /data

設定共用目錄

cat>>/etc/exports<<EOF
/data 192.168.10.90(insecure,rw,sync)
EOF

檢查服務

cat /etc/exports

Windows遠端連結

mount \192.168.6.193\data x:\

mount \192.168.10.90\home\userfile\admin z:\

mount -t nfs \192.168.6.191\data x:\

showmount -e 192.168.10.90

mount -t nfs 192.168.10.90:/data /mnt

1)建立空連線:
net use \IP\ipc$ "" /user:"" (一定要注意:這一行命令中包含了3個空格)

2)建立非空連線:
net use \IP\ipc$ "密碼" /user:"使用者名稱" (同樣有3個空格)

3)對映預設共用:
net use z: \IP\c$ "密碼" /user:"使用者名稱" (即可將對方的C槽對映為自己的z盤,其他盤類推)

如果已經和目標建立了ipc存取,具體命令 net use z: \IP\c$

4)刪除一個ipc\(連線 net use \IP\ipc\) /del

5)刪除共用對映
net use c: /del 刪除對映的C槽,其他盤類推

net use * /del 刪除全部,會有提示要求按y確認

net use x: /del

net use \IP\192.168.6.191 /del

\192.168.6.191\data


9.Java服務後臺啟動

後臺啟動

@echo off
start javaw -jar file-client.jar
exit

以管理員方式後臺啟動

@echo off
setlocal EnableDelayedExpansion
color 3e

PUSHD %~DP0 & cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof
:runas
start javaw -jar link-client.jar
exit

10.檢視TCP連線數

檢視總共有的連線數:

netstat -an -p tcp | find "ESTABLISHED" /c

檢視該IP的連線數:

netstat -an -p tcp | find "X.X.X.X" | find "ESTABLISHED" /c

檢視該IP這個埠的連線數:

netstat -an -p tcp | find "X.X.X.X:PORT" | find "ESTABLISHED" /c

其他

不出意外的話,這應該是手記系列的最後一篇了,這個系列也算完結了,本以為整理一下筆記發出來不會花費太多時間,沒想到整理加排版都往三個小時往上走了。
看著自己的筆記,從剛開始工作記錄在txt文字,然後增加圖片到word檔案,從最開始的幾十kb到現在接近40MB,記錄了太多太多了,這裡麵包含各種各樣的知識,小到一個Java方法,大到一個技術點的理論和實戰整合。這些中有不少已經被整理成部落格了,但是更多的還沒整理,後續有時間在一個個的抽出來寫成部落格吧~


手記系列

記載個人從剛開始工作到現在各種雜談筆記、問題彙總、經驗累積的系列。

手記系列

一首很帶感的動漫鋼琴曲~

原創不易,如果感覺不錯,希望給個推薦!您的支援是我寫作的最大動力!
版權宣告:
作者:虛無境
部落格園出處:http://www.cnblogs.com/xuwujing
CSDN出處:http://blog.csdn.net/qazwsxpcm    
個人部落格出處:https://xuwujing.github.io/