os版本: centos 7 ,ceph版本: 10.2.3
一直在使用ceph的h版本,最近切換到了j版,在部署完j版ceph後啟動osd竟然報失敗,部署過n^n次ceph集群怎麼能容忍部署失敗呢!遂慢慢尋找問題。尋找問題的過程不表,最後原因確定為集群使用了一些ssd做了journal,但是這些ssd的使用者和使用者組都是root,所以在預設使用ceph使用者執行的osd程序對這些盤沒有讀寫許可權,導致open journal失敗,然後osd自然就起不來了。正常情況下應該更改一下ssds的歸屬組什麼的就好了(比如chown ceph:ceph /dev/sdx)。但是我就喜歡root(不是個好習慣不推薦)玩一下該怎麼辦呢,j版ceph服務使用systemctl進行起停,所以我們只需要在這裡動點手腳就萬事大吉了。具體做法就是修改一下檔案
/usr/lib/systemd/system/[email protected]將第12行中的
–setuser ceph –setgroup ceph修改為
–setuser root –setgroup root.修改後的該檔案如下
1 [unit]
2 description=ceph object storage daemon
3 after=network-online.target local-fs.target time-sync.target
4 wants=network-online.target local-fs.target time-sync.target
5 partof=ceph-osd.target
67 [service]
8 limitnofile=1048576
9 limitnproc=1048576
10 environmentfile=-/etc/sysconfig/ceph
11 environment=cluster=ceph
12 execstart=/usr/bin/ceph-osd -f --cluster $ --id %i --setuser root --setgroup root
13 execstartpre=/usr/lib/ceph/ceph-osd-prestart.sh --cluster $ --id %i
14 execreload=/bin/kill -hup $mainpid
15 protecthome=true
16 protectsystem=full
17 privatetmp=true
18 tasksmax=infinity
19 restart=on-failure
20 startlimitinterval=30
min21 startlimitburst=3
2223 [install]
24 wantedby=ceph-osd.target
如此重新啟動ceph-osd (systemctl restart ceph-osd@*)就會發現osd程序是使用root使用者在執行了。 使用root使用者執行MYSQL的安全隱患
當你連線乙個mysql伺服器時,你通常應該使用乙個口令。口令不以明文在連線上傳輸。所有其他資訊作為能被所有人讀懂的文字被傳輸。如果你擔心這個,你可使用壓縮協議 mysql3.22和以上版本 使事情變得更難。甚至為了使一切更安全,你應該安裝ssh 見http www.cs.hut.fi ssh 用他,...
nginx授權非root使用者執行
1.修改nginx.conf檔案配置,首行改為 user root 2.nginx檔案屬性設定 1 進入nginx執行檔案目錄 cd usr local nginx sbin 2 設定所屬組為root chown root root nginx 3 檔案許可權755,所屬使用者全許可權,所屬組讀 執...
root使用者和sudo使用root許可權的區別
linux 114 能 以root的身分執行命令 語法 sudo 其他指令 使用者 被root加入 etc sudoers 檔案中的使用者 1 root的密碼除了root本人知道外,不需被其他需要用到root許可權使用者知道,因為使用sudo時,要求輸入的密碼是 該位使用者自己的密碼 2 把所有可執...