CentOS側はストレージ容量が心許ない、Windows側はメモリ容量等が心許ない…ということで、このような環境の作成を目指しました。
CentOS Linux release 7.5.1804 (Core)
GitLabはomnibasパッケージでインストール済(13.4.4)
Samba 4.8.3
Windows Storage Server 2016 STD
192.168.0.150
D:\GitStorage フォルダーを共有設定
接続するユーザーにフルコントロール設定
/etc/gitlab/gitlab.rb
に下記記述
git_data_dirs({ "default" => { "path" => "/mnt/nas/git-data" } })
マウント
mount -t cifs -o uid=git,gid=root,credentials=/etc/.smbpassword,dir_mode=0700,file_mode=0700,vers=3.0 //192.168.0.150/gitstorage /mnt/nas/
※Windowsの資格情報を/etc/.smbpasswordにユーザー・パスワード記述
※ls -l -a /var/opt/gitlab
でgit-dataディレクトリのパーミッションを確認して、uid、gid、パーミッション等を揃えた。
※マウントコマンド自体は成功し、fstabにも設定済。
その後gitlab-ctl reconfigure
を実行すると、途中で以下のエラーが表示されて、
Error executing action `run` on resource 'ruby_block[directory resource: /mnt/nas/git-data/repositories]'
Error executing action `create` on resource 'storage_directory[/mnt/nas/git-data/repositories]'
最終的には下記エラーで終了してしまいます。
Running handlers: There was an error running gitlab-ctl reconfigure: storage_directory[/mnt/nas/git-data/repositories] (gitlab::gitlab-rails line 57) had an error: Mixlib::ShellOut::ShellCommandFailed: ruby_block[directory resource: /mnt/nas/git-data/repositories] (/opt/gitlab/embedded/cookbooks/cache/cookbooks/package/resources/storage_directory.rb line 34) had an error: Mixlib::ShellOut::ShellCommandFailed: Failed asserting that mode permissions on "/mnt/nas/git-data/repositories" is 2770 ---- Begin output of set -x && [ "$(stat --printf='%04a' $(readlink -f /mnt/nas/git-data/repositories) | grep -o '....$')" = '2770' ] ---- STDOUT: STDERR: ++ grep -o '....$' +++ readlink -f /mnt/nas/git-data/repositories ++ stat --printf=%04a /mnt/nas/git-data/repositories + '[' 0700 = 2770 ']' ---- End output of set -x && [ "$(stat --printf='%04a' $(readlink -f /mnt/nas/git-data/repositories) | grep -o '....$')" = '2770' ] ---- Ran set -x && [ "$(stat --printf='%04a' $(readlink -f /mnt/nas/git-data/repositories) | grep -o '....$')" = '2770' ] returned 1
最初はgit-dataディレクトリで同様のエラーが出ていたので、mount時にuid/gidやパーミッションを揃えました。
同様にrepositoriesのパーミッションを確認すると、700ではなく770となっていて、これが問題のように思われるのですが、サブディレクトリのこれらの設定をmount時には指定できないし、仮想のためchmodも効かず、手詰まり状態です。
解決に向けて、アドバイスいただけると幸いです。
回答1件
あなたの回答
tips
プレビュー