啊~ 修改gitlab本地檔案許可權導致不能push、pull!千古罪人
1. 問題描述
啊~ 修改gitlab本地檔案許可權導致不能push、pull!千古罪人,整個團隊程式碼提交停滯0.5h,還好解決了
Connection reset by 192.xxx.xx.xx port 8222
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
GitLab: API is not accessible
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
GitLab: Failed to authorize your Git request: internal API unreachable
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
2. 問題起因
興高采烈:公司先前使用SVN,但是因為新開一個專案,作為GIT的力挺者,同時也是專案負責人,專案也開始用起了gitlab來進行對程式碼的託管,程式碼的審查,版本控制用起來也是得心應手,賊舒服~ 大家都其樂融融。
小插曲:但是,手賤的鄙人,把gitlab根的資料夾下所有檔案,直接賦予了-R 777
許可權,一開始覺得有許可權比沒許可權好,但出事故後,想要拉程式碼,卻發現自己竟然could not read!!。。
過了十分鐘,團隊裡的小弟們就發現了這個問題(畢竟剛reviewer完程式碼,我就開始手賤,小弟們也準備拉 開發分支的程式碼合併到自己的分支 T_T)
開始救火:接著就開始定位問題,解決問題
3. 問題解決
小結:gitlab有自己的許可權控制,不能再未熟悉的情況下,隨便更改!否則就需要折騰一下,還好折騰成功了~
自己維護的gitlab是由docker建立的,首先進入docker之後,第一步是檢視錯誤日誌,接著是根據錯誤日誌來進行定位問題,修復問題,最後重啟~
3.1 執行pull,並檢視錯誤日誌
# 方法1:檢視實時的錯誤資訊,例如執行pull,gitlab反饋的錯誤是什麼
# 進入docker所在gitlab
docker exec -it CONTAINER_ID bash
gitlab-ctl tail
# 方法2:docker進入gitlab,連線到正在執行中的gitlab
docker attach CONTAINER_ID
3.2 對pub key設定低許可權
find / -name ssh_host_rsa_key # 找到某個pub key
# 將當前的pub key進行逐一的降權 600
3.3 使用gitlab-ctl進行修復
gitlab-ctl reconfigure
估計第2步也是可以通過這個命令解決~
3.4 重啟gitlab
gitlab-ctl restart
感慨
雖然目前的託管的服務機只是臨時搭建的測試機子,再公司瞭解了GIT的好處後,也開始偏向GIT的使用,也準備加購超大伺服器來作為正式的託管伺服器;
但想想自己的操作,這種直接將根目錄的 “完全放權” 真的挺危險~ 各位兄臺還是把本文當做反面例子,雖然解決了,還得好好反思自己。
相關文章
- 修改檔案的許可權
- hdfs檔案本地許可權問題
- 修改檔案、資料夾許可權
- git修改檔案後無法push,需要先pull.並且pull後檔案有衝突Git
- Xcode7由於許可權不足導致不能修改程式碼的解決方案XCode
- gitlab Clone Pull Push 日誌資訊Gitlab
- Linux修改檔案/資料夾許可權Linux
- linux 檔案許可權 s 許可權和 t 許可權解析Linux
- linux 基礎(2)檔案許可權及其修改Linux
- Linux檔案許可權的檢查和修改Linux
- /tmp檔案系統無許可權導致監聽listener啟動失敗
- 【LIUNX】目錄或檔案許可權,許可權授予
- C語言fchmod()函式:修改檔案的許可權C語言函式
- Linux系統中怎麼修改檔案許可權?Linux
- 許可權修改命令
- Grant許可權導致執行計劃失效
- Linux檔案許可權Linux
- chomd檔案許可權授予
- oracle許可權整理檔案Oracle
- Linux 檔案許可權Linux
- Atitit godaddy 檔案許可權 root許可權設定Go
- 不能重新命名檔案及不能刪除檔案和資料夾許可權設定
- 記一次 Laravel日誌許可權許可權問題(定時器導致)Laravel定時器
- 修改linux預設檔案建立許可權-umask命令解析Linux
- 解決Windows10沒有修改hosts檔案許可權Windows
- linux的常用操作——檢視和修改檔案許可權Linux
- Linux的檔案存取許可權和0644許可權Linux
- 批量修改資料夾及檔案使用者許可權和使用者組許可權 centosCentOS
- [svc]linux檔案許可權Linux
- Linux檔案基本許可權Linux
- 深入理解檔案許可權
- linux 檔案許可權管理Linux
- 超級詳細的mac系統檔案許可權修改指南Mac
- 使用者有connect,resource,dba角色許可權後回收dba許可權導致無UNLIMITED TABLESPACE許可權造成業務中斷MIT
- 『學了就忘』Linux許可權管理 — 55、檔案特殊許可權Linux
- Linux的檔案許可權管理Linux
- linux檔案許可權 詳解Linux
- Linux 檔案許可權總結Linux