linux常見報錯


零.目錄

一. 文件和目錄類

  • File exist 文件已經存在
  • No such file or directory 沒有這個文件或目錄(這個東西不存在)
  • command not found 命令找不到(沒有這個命令)
  • invalid option 無效的參數(不可用的參數)
  • overwrite 覆蓋
  • remove regular empty file 是否刪除普通文件(空的)?
  • is a directory xxx是一個目錄
  • descend into directory 是否進入目錄
  • Invalid level 無效的層數,層數必須大於0
  • Can't open file for writing 無法打開這個文件
  • No write since last change
  • xx column window is too narrow 窗口只有xx列太窄了 無法完全顯示
  • xxx not a directory 不是一個目錄
  • 查看壓縮包的時候報錯
  • You have mail in /var/spool/mail/root
  • permission denied
  • Warning: Changing a readonly file
  • 'readonly' option is set (add ! to override)
  • cp: omitting directory ‘/oldboy/’
    unexpected end of file 或 Unexpected EOF in archive

二. 網絡連接類

  • 遠程連接錯誤 Connection Failed 連接失敗
  • yum安裝軟件故障提示 Could not resolve host無法解析主機
  • yum安裝軟件提示:Nothing to do (沒事做)
  • 沒有找到叫treea的軟件包
  • Name or service not known 域名無法識別(無法上網)

三. 修改系統基礎配置類

  • 重啟網卡報錯 device not present
  • 修改主機名過程中,命令行中主機名沒有變化
  • hostname命令修改主機名(臨時 重啟服務器之后失效)
  • 命令行中的主機名部分沒有改變?

四. 用戶相關錯誤

  • user 'oldboy' already exists
  • no such user
  • Only root can do that.
  • Only root can specify a user name.
  • Creating mailbox file: File exists
  • warning: the home directory already exists.
  • /etc/sudoers: syntax error near line 105 <<<

五.腳本及定時任務

一. 文件和目錄類

1. File exist 文件已經存在

[root@oldboyedu59 ~]# mkdir   /data   /lidao  
[root@oldboyedu59 ~]# mkdir   /data   /lidao  
mkdir: cannot create directory ‘/data’: File exists
mkdir: cannot create directory ‘/lidao’: File exists

mkdir: cannot create directory ‘/lidao’: File exists
無法 創建 目錄 因為這個目錄已經存在

2. No such file or directory 沒有這個文件或目錄(這個東西不存在)

沒有這個目錄:文件或路徑書寫錯誤

[root@oldboyedu59 ~]# mkdir  /oldboy
[root@oldboyedu59 ~]# cd oldboy
-bash: cd: oldboy: No such file or directory

mkdir命令本身問題:mkdir 命令默認只能創建1層目錄 創建多層報錯
-p解決

[root@oldboyedu59 ~]# mkdir  /data/oldboy/lidao/
mkdir: cannot create directory ‘/data/oldboy/lidao/’: No such file or directory

touch命令只能創建文件,目錄不存在則會報錯
解決:先創建目錄,再創建文件

[root@oldboyedu59 ~]# ls /oldboy/
oldboy.txt
[root@oldboyedu59 ~]# touch /oldboy/lidao/alex/oldboy.txt
touch: cannot touch ‘/oldboy/lidao/alex/oldboy.txt’: No such file or directory

排錯思路:
1.ls命令檢查對應的目錄是否存在?
2.目錄不存在 先創建目錄在創建文件/

find命令與|xargs ll 錯誤
|xargs后面不支持別名

[root@kangxu ~]# find /oldboy  -name  "*.txt"  -type f |xargs ll
xargs: ll: No such file or directory

3. command not found 命令找不到(沒有這個命令)

[root@oldboyedu59 ~]# mkdiy
-bash: mkdiy: command not found

1.書寫錯誤
2.沒有安裝

4. invalid option 無效的參數(不可用的參數)

 [root@oldboyedu59 ~]# touch -p /oldboy/oldboy.txt
touch: invalid option -- 'p'
Try 'touch --help' for more information.

5. overwrite 覆蓋

cp復制如果已經存在這個文件會提示是否覆蓋

[root@oldboyedu59 ~]# cp  /oldboy/oldboy.txt   /tmp/
cp: overwrite ‘/tmp/oldboy.txt’? 

6.remove regular empty file 是否刪除普通文件(空的)?

[root@oldboyedu59 ~]# rm   /oldboy/oldboy.txt
rm: remove regular empty file ‘/oldboy/oldboy.txt’?

7. is a directory xxx是一個目錄

rm默認無法刪除目錄
解決:加上-r 或-rf

[root@oldboyedu59 ~]# rm /data/
rm: cannot remove ‘/data/’: Is a directory

vi命令中 使用vi編輯目錄也會報錯

"/oldboy"
E502: "/oldboy" is a directory
Press ENTER or type command to continue

8. descend into directory 是否進入目錄

[root@oldboyedu59 ~]# rm -r /data/
rm: descend into directory ‘/data/’? y
rm: remove regular empty file ‘/data/oldboy01.txt’? n
rm: remove regular empty file ‘/data/oldboy02.txt’? n
rm: remove regular empty file ‘/data/oldboy03.txt’? n
rm: remove regular empty file ‘/data/oldboy04.txt’? n
rm: remove regular empty file ‘/data/oldboy05.txt’? n
rm: remove regular empty file ‘/data/oldboy06.txt’? n
rm: remove regular empty file ‘/data/oldboy07.txt’? n
rm: remove regular empty file ‘/data/oldboy08.txt’? n
rm: remove regular empty file ‘/data/oldboy09.txt’? n
rm: remove regular empty file ‘/data/oldboy10.txt’? n
rm: remove directory ‘/data/’? n

9. Invalid level 無效的層數,層數必須大於0

注意參數位置

[root@oldboyedu59 ~]# tree  -L -F 2 / 
tree: Invalid level, must be greater than 0.

10. Can't open file for writing 無法打開這個文件

vi中 如果目錄不存在就會提示

"/oldbyo/oldboy.txt"
"/oldbyo/oldboy.txt" E212: Can't open file for writing
Press ENTER or type command to continue

如果你對這個文件沒有權限 也會提示

11.No write since last change

E37: No write since last change (add ! to override)
     粘包賴(你修改了內容就無法使用:q退出 需要使用:q! 

12. xx column window is too narrow 窗口只有xx列太窄了 無法完全顯示

這是w的坑 空間太小施展不開.

[root@oldboyedu60-lnb ~]# w
w: 39 column window is too narrow

13. xxx not a directory 不是一個目錄

背景:創建文件的時候多了一個空格

[root@ssdz ~]# touch /oldboy /oldboy.txt  #此處要創建/oldboy/oldboy.txt 多個個空格 創建了2個文件 /oldboy和/oldboy.txt 
[root@ssdz ~]# ls -l /oldboy/         #系統認為oldboy是個目錄 所以報錯
ls: cannot access /oldboy/: Not a directory
[root@ssdz ~]# touch /oldboy/oldboy.txt
touch: cannot touch ‘/oldboy/oldboy.txt’: Not a directory
[root@ssdz ~]# ls -l /oldboy
-rw-r--r--. 1 root root 0 Apr  9 15:23 /oldboy

14.查看壓縮包的時候報錯

注意是否有特殊中文符號導致的。

[root@oldboy59 tmp]# tar ztf /tmp/etc.tar.gz
tar (child): \200\202\200\202\200\202\200\202/tmp/etc.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now

15. You have mail in /var/spool/mail/root

你在這個文件/var/spool/mail/root 中有一個新郵件

16. permission denied

權限拒絕

17. W10: Warning: Changing a readonly file

使用vim的時候顯示的
表示:正在修改只讀文件
解決:

1.查看對文件是否有rw權限
2.如果是root用戶可以修改后強制保存退出(:wq!)

18.no properly formatted MD5 checksum lines found

在使用md5sum -c (檢查的時候)
md5指紋信息文件中,格式不對
第1列是md5 信息 第2列文件名
解決:

查看MD5文件內容是否正確
檢查的命令是否正確 md5sum -c oldboy.md5

md5sum: /oldboy/mtime/access_2019-04-01.txt: no properly formatted MD5 checksum lines found

19. E45: 'readonly' option is set (add ! to override)

通過vi/vim 編輯文件保存的時候(:wq) 提示
這個文件只讀,:wq! 強制保存退出

20. cp: omitting directory ‘/oldboy/’

忽略這個目錄
cp默認無法復制目錄

[root@oldboyedu64-lnb ~]# cp /oldboy/  /tmp/
cp: omitting directory ‘/oldboy/’
[root@oldboyedu64-lnb ~]# ls -l /tmp/
total 8
-rwx------. 1 root root 836 Jun 30 17:36 ks-script-gWLqG0
-rw-r--r--. 1 root root 400 Jul  7 14:51 oldboy.txt
drwx------. 2 root root   6 Jun 30 17:42 vmware-root_6749-3879179984
-rw-------. 1 root root   0 Jun 30 17:27 yum.log

21. Unexpected EOF in archive

未知的 壓縮文件結尾
主要原因是tar壓縮包損壞 重新下載

[root@web02 tools]# tar xf nginx-1.16.0.tar.gz 

gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now

二. 網絡連接類

1. 遠程連接錯誤 Connection Failed 連接失敗

使用Xshell遠程連接失敗提示,檢查端口是否開啟或正確

[c:\~]$ 

Connecting to 10.0.0.200:233...
Could not connect to '10.0.0.200' (port 233): Connection failed.

Type `help' to learn how to use Xshell prompt.

使用telnet測試端口是否打開

[c:\~]$ telnet 10.0.0.200 233 

Connecting to 10.0.0.200:233...
Could not connect to '10.0.0.200' (port 233): Connection failed.   #233端口沒有開啟

Type `help' to learn how to use Xshell prompt.

端口開啟

[c:\~]$ telnet 10.0.0.200 22
Connecting to 10.0.0.200:22...
Connection established.            #端口開啟
To escape to local shell, press 'Ctrl+Alt+]'.
SSH-2.0-OpenSSH_7.4

Protocol mismatch.

Connection closed by foreign host.

Disconnected from remote host(10.0.0.200:22) at 12:22:54.

Type `help' to learn how to use Xshell prompt.
[c:\~]$ 

2. yum安裝軟件故障提示 Could not resolve host無法解析主機

Could not resolve host無法解析主機
主要是系統能否上網和DNS問題.

http://mirrors.tuna.tsinghua.edu.cn/centos/7.6.1810/updates/x86_64/repodata/repomd.xml: [Errno 14] curl#6 - 
"Could not resolve host: mirrors.tuna.tsinghua.edu.cn; Unknown error"
Trying other mirror.

3.yum安裝軟件提示:Nothing to do (沒事做)

有兩種情況:
情況1:軟件已經安裝並且最新如下:

Package tree-1.6.0-10.el7.x86_64 already installed and latest version
tree軟件包已經安裝並且是最新版本
Package 2:vim-enhanced-7.4.160-5.el7.x86_64 already installed and latest version
Package 1:bash-completion-2.1-6.el7.noarch already installed and latest version
Nothing to do

情況2:軟件名字寫錯或沒有配置yum源導致找不到這個軟件包

[root@oldboyedu60-lnb ~]# yum install treea -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.lzu.edu.cn
 * extras: mirrors.nwsuaf.edu.cn
 * updates: mirrors.nwsuaf.edu.cn
base                                                                                              | 3.6 kB  00:00:00     
extras                                                                                            | 3.4 kB  00:00:00     
updates                                                                                           | 3.4 kB  00:00:00     
No package treea available. 
#沒有找到叫treea的軟件包
Error: Nothing to do

情況3:你需要安裝軟件包而不是軟件包里面的命令
通過yum provides 查看命令屬於哪個軟件包

[root@oldboyedu59 ~]# yum install -y locate 
Loaded plugins: fastestmirror
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base                                                                                              | 3.6 kB  00:00:00     
extras                                                                                            | 3.4 kB  00:00:00     
updates                                                                                           | 3.4 kB  00:00:00     
(1/2): extras/7/x86_64/primary_db                                                                 | 187 kB  00:00:02     
(2/2): updates/7/x86_64/primary_db                                                                | 3.4 MB  00:00:04     
No package locate available.
Error: Nothing to do
[root@oldboyedu59 ~]# yum provides locate 
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base/7/x86_64/filelists_db                                                                        | 7.1 MB  00:00:03     
extras/7/x86_64/filelists_db                                                                      | 236 kB  00:00:00     
updates/7/x86_64/filelists_db                                                                     | 2.7 MB  00:00:01     
mlocate-0.26-8.el7.x86_64 : An utility for finding files by name
Repo        : base
Matched from:
Filename    : /usr/bin/locate\
[root@oldboyedu59 ~]# yum install -y mlocate 
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package mlocate.x86_64 0:0.26-8.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================================================================
 Package                     Arch                       Version                           Repository                Size
=========================================================================================================================
Installing:
 mlocate                     x86_64                     0.26-8.el7                        base                     113 k

Transaction Summary
=========================================================================================================================
Install  1 Package

Total download size: 113 k
Installed size: 379 k
Downloading packages:
mlocate-0.26-8.el7.x86_64.rpm                                                                     | 113 kB  00:00:02     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : mlocate-0.26-8.el7.x86_64                                                                             1/1 
  Verifying  : mlocate-0.26-8.el7.x86_64                                                                             1/1 

Installed:
  mlocate.x86_64 0:0.26-8.el7                                                                                            

Complete!
[root@oldboyedu59 ~]# rpm -qa mlocate 
mlocate-0.26-8.el7.x86_64

4. Name or service not known 域名無法識別(無法上網)

原因1:DNS配置錯誤
原因2:Linux無法上網原因 https://www.jianshu.com/p/0bc0b596c1a0

[root@oldboyedu59 ~]# ping baidu.com 
ping: baidu.com: Name or service not known
                 域名無法識別(無法將域名---->ip地址)

三. 修改系統基礎配置類

1. 重啟網卡報錯 device not present

[root@oldboyusd ~]# systemctl restart network 
Job for network.service failed because the control process exited with error code.
 See "systemctl status network.service" and "journalctl -xe" for details.

查看詳細錯誤原因
·journalctl -xe·

Apr 01 15:31:05 oldboyusd.1 network[7816]: Bringing up interface etho:  
ERROR     : [/etc/sysconfig/network-scripts/ifup-eth] Device  does not seem to be present, delaying initialization.

Apr 01 15:31:05 oldboyusd.1 /etc/sysconfig/network-scripts/ifup-eth[8019]: 
Device  does not seem to be present, delaying initializatio

2. 修改主機名過程中,命令行中主機名沒有變化

1# hostname命令修改主機名(臨時 重啟服務器之后失效)

[root@oldboyedu59 ~]# hostname
oldboyedu59
[root@oldboyedu59 ~]# hostname oldboyedu59-lnb 

2# 修改文件內容(寫合同 永久 重啟服務器之后生效)

vim /etc/hostname 
 oldboyedu59-lnb

3# 檢查

[root@oldboyedu59 ~]# hostname
oldboyedu59-lnb
[root@oldboyedu59 ~]# cat /etc/hostname 
oldboyedu59-lnb

命令行中的主機名部分沒有改變?

解決:重新登錄下即可(斷開連接,重新連接)

[root@oldboyedu59-lnb ~]# 

3. unexpected EOF while looking for matching `"'

引號不成對

tail -2  /etc/profile 
alias net="cat /etc/sysconfig/network-scripts/ifcfg-eth0
export PS1="[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\] \[\e[31;1m\]\w\[\e[0m\]]\\$ "

[root@ssdz ~]# source /etc/profile
-bash: /etc/profile: line 78: unexpected EOF while looking for matching `"'
-bash: /etc/profile: line 79: syntax error: unexpected end of file

-bash: /etc/profile: line 78: unexpected EOF while looking for matching `"'
/etc/profile 第78行 出乎意料的結尾 正在找 '"' 這個雙引號的另一半

四. 用戶類錯誤

1. user 'oldboy' already exists

用戶已經存在

[root@oldboyedu59 ~]# useradd oldboy 
useradd: user 'oldboy' already exists

2. no such user

沒有這個用戶

[root@oldboyedu59 ~]# id lidao 
id: lidao: no such user

3.Only root can do that.

只有root用戶可以使用 非交互式設置密碼方式

[oldboy@oldboyedu59 ~]$ echo 123456|passwd --stdin oldboy
Only root can do that.

4.Only root can specify a user name.

只有root用戶 運行passwd的時候 后面能加上用戶名
普通用戶默認只能運行passwd 不能加用戶名 修改自己的密碼

[oldboy@oldboyedu59 ~]$ passwd oldboy 
passwd: Only root can specify a user name.

5. Creating mailbox file: File exists 和warning: the home directory already exists.

添加用戶的時候提示:

Creating mailbox file: File exists 正在創建這個用戶的郵箱:郵箱已經存在
warning: the home directory already exists. 這個用戶的家目錄已經存在

刪除用戶的時候,默認不刪除家目錄和郵箱.
再次添加就會提示家目錄存在和郵箱存在

[root@oldboyedu59 ~]# id stu01 
uid=1005(stu01) gid=1006(stu01) groups=1006(stu01)
[root@oldboyedu59 ~]# userdel stu01
[root@oldboyedu59 ~]# useradd stu01 
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
Creating mailbox file: File exists

6.user nginx is currently used by process 7540

用戶正在使用中 被pid是7540的進程使用中

[root@web01 /usr/share/nginx/html/blog]#  usermod -u 2222   nginx 
usermod: user nginx is currently used by process 7540

五.腳本及定時任務

1. no crontab for root

root用戶沒有定時任務

[root@oldboyedu59 ~]# crontab -l
no crontab for root

root用戶沒有定時任務

2.no crontab for root - using an empty one

root用戶沒有定時任務,給root創建了1個新的
這里實際上給root創建了定時任務文件 /var/spool/cron/root 空文件

3.crontab: installing new crontab

更新定時任務規則

4. bad xxx, errors in crontab file,can't install

錯誤的{分|時|日|月|周},定時任務文件中有錯誤,無法更新定時任務

分時日月周格式錯誤01

#mei liangfenzhong xianshi xitong shijian zhuijiadao /tmp/oldboy.txt
* /1 * * * date  >>/tmp/oldboy.txt

"/tmp/crontab.5UZIdI" 3L, 115C written
crontab: installing new crontab
"/tmp/crontab.5UZIdI":3: bad hour   3是第3行的意思,錯誤的小時 小時位置書寫錯誤 
errors in crontab file, can't install.
Do you want to retry the same edit?

分時日月周格式錯誤02
時間范圍書寫錯誤 21-00錯誤 改為 21-23,00 即可因為定時任務的小時為00-23

crontab -e 
#show time by liyy  at 20190101
#*/2 * * * * date >>/tmp/time.log

#
00  21-00 * * * date >>/tmp/time.log
00  21-00 * * * date >>/tmp/time.log
#00  21-23,00 * * * date >>/tmp/time.log

#backup /etc/ to /tmp by liyy  at 20190101
#00 00 * * *  sh  /server/scripts/bak-etc.sh
                                                                                                                  
"/tmp/crontab.SpZAZH" 9L, 238C written
crontab: installing new crontab
"/tmp/crontab.SpZAZH":5: bad hour
errors in crontab file, can't install.
Do you want to retry the same edit? 

5. You have new mail in /var/spool/mail/root

你有1個新郵件 在/var/spool/mail/root


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM