當前位置:首頁 » 雲伺服器 » mac文件伺服器搭建

mac文件伺服器搭建

發布時間: 2023-01-08 01:07:47

⑴ 如何在mac下遠程搭建git伺服器

首先要有 ssh遠程登陸的工具,比如secureCRT等

方案一 基於SSH直接搭建
Git支持的協議主要是四種:
本地: 需要文件共享系統,許可權不好控制
HTTP:速度慢
SSH:同時支持讀寫操作,不支持匿名的讀取(Git默認協議)
GIT:最快
從搭建的難易程度和特點綜合篩選,最合適的還是ssh,並且大部分伺服器上基本都有ssh服務,所以省去了不少麻煩。一個最基本的思路是給每一個人一個ssh帳號,這樣大家就可以通過用戶名和口令來訪問了,但是顯然這不是一個好的選擇,這個做法有些多餘,並且對於repo的許可權很難管理。
在使用Github的時候,會利用rsa.pub公鑰/私鑰的方式,這樣在服務端擁有用戶的公鑰(*.pub)之後就可以,跨過繁瑣的口令,直接認證提交了,而服務端也會根據不同的用戶身份,對其許可權有著更加靈活的管理。因此我們也採用這種方式。
服務端
為了使遠程庫訪問更加直觀,先在伺服器上創建一個名為git的賬戶,這樣以後clone的時候就如下面的格式了:

git clone git@server:some.git

創建新的用戶,創建repo等目錄

$sudo adser git
$su git
$cd ~
$mkdir repos

在HOME下的.ssh目錄,如果沒有則創建,創建一個authorized_keys文件,這個文件就是用來管理所有git用戶的公鑰的,也就是這裡面的用戶對於項目有著R+W的許可權。
客戶端
對於每一個客戶端,我們需要生成一對密鑰和公鑰,如果是Github用戶,那麼.ssh目錄下,一定有id_rsa.pub和id_rsa兩個文件,其中第一個是系統生成的公鑰,另一個是自己要保存好的密鑰。如果沒有的話,可以在終端執行:ssh-keygen來生成,完成後,將自己的公鑰提交給管理員,這就是一個注冊的行為。
完成
最後一步,管理員將團隊成員的公鑰添加到authorized_keys中,比如將同學susie加入:

$ cat susie.pub >> authorized_keys

至此,大家可以通過git@server:repos/some.git來訪問公共的版本庫了。
問題
安全問題,成員可以登錄git用戶的shell,細節許可權如分支等不好控制
管理麻煩,新建repo,或者增加成員比較麻煩,尤其是修改的時候
方案二 使用Gitolite服務
Gitolite 也是基於SSH協議構建的方便管理git repo的應用,可以通過其源碼安裝.
安裝
安裝按照官方給定的文檔就可以輕易的實現:

$ git clone git://github.com/sitaramc/gitolite
$ mkdir -p $HOME/bin
$ gitolite/install -to $HOME/bin
$ gitolite setup -pk YourName.pub

如果執行最後一條命令的時候,gitolite不識別,則可以通過下面兩種方式解決:
將gitolite添加到PATH裡面
通過$HOME/bin/gitolite setup -pk YourName.pub 執行
至此,gitolite在服務端,搭建完畢,會發現此時HOME目錄下增加了一個文件projects.list和一個目錄repositories,後者就是我們的版本倉庫了,每當新建repo的時候,就會在其中創建。
使用
是時候說一下gitolite的管理模式了,他會創建一個gitolite-admin的repo,管理員就是通過像這個repo提交配置文件而實現對git伺服器的控制的。
首先,將這個repo導入到我們的workspace:在此之前,需要配置本地的ssh,gitolite要求管理員的本地密鑰和其注冊公鑰的名字一致,比如我們安裝的時候指定 -pk後面為 admin.pub 則管理員本地需要由admin對應的私鑰。我們可以通過~/.ssh/config來進行配置(註:有些系統可以用conf,Mac OSX 下無效,只能用config).

host gitolite
user git
hostname yourhostname.com
port 22
identityfile ~/.ssh/admin

這樣,當我們訪問gitolite的時候就會自動根據配置文件執行,配置完成後可以根據下面的命令,將gitolite-admin轉移到本地。

git clone gitolite:gitolite-admin.git

克隆完成後,可以發現,gitolite-admin下面有兩個目錄,其中conf保存配置文件,我們可以通過編輯裡面的gitolite.conf文件,管理git伺服器,keydir目錄保存用戶的公鑰pub文件。
當我們講修改後的repo 提交的時候,gitolite就會自動的應用這些配置,管理過程就方便了很多。
配置規則
打開gitolite.conf文件可以看到其中的示例:
To add new users alice, bob, and carol, obtain their public keys and add them to 'keydir' as alice.pub, bob.pub, and carol.pub respectively.
To add a new repo 'foo' and give different levels of access to these users, edit the file 'conf/gitolite.conf' and add lines like this:

repo foo
RW+ = alice
RW = bob
R = carol

上面的配置文件就是新建了一個repo foo,並且添加了三位項目成員,每一個人的許可權不同。提交push後,管理便生效了。
可視化
我們可能會需要一個web界面來管理這些項目,我目前知道的有三種方式:
git源碼中自帶的組件,cgi腳本實現,使用gitolite服務
gitlab開源框架,基於ROR,新版本不再使用gitolite服務
FB開源php框架 phabricator,功能高端上檔次

⑵ MAC環境下如何搭建SVN伺服器

在Windows環境中,我們一般使用TortoiseSVN來搭建svn環境。在Mac環境下,由於Mac自帶了svn的伺服器端和客戶端功能,所以我們可以在不裝任何第三方軟體的前提下使用svn功能,不過還需做一下簡單的配置。

我們首先來看下,如何在Mac環境下搭建svn伺服器端環境。

回到頂部


一、創建代碼倉庫,用來存儲客戶端所上傳的代碼

我先在/User/apple目錄下新建一個svn目錄,以後可以在svn目錄下創建多個倉庫目錄

打開終端,創建一個mycode倉庫,輸入指令:svnadmin create /Users/apple/svn/mycode

指令執行成功後,會發現硬碟上多了個/Users/apple/svn/mycode目錄,目錄結構如下:

回到頂部


二、配置svn的用戶許可權

主要是修改/svn/mycode/conf目錄下的三個文件

1.打開svnserve.conf,將下列配置項前面的#和空格都去掉

  • # anon-access = read

  • # auth-access = write

  • # password-db = passwd

  • # authz-db = authz

  • 復制代碼

    anon-access = read代表匿名訪問的時候是只讀的,若改為anon-access = none代表禁止匿名訪問,需要帳號密碼才能訪問


  • 2.打開passwd,在[users]下面添加帳號和密碼
  • [users]

  • mj=123

  • jj=456

  • 復制代碼

    帳號是mj,密碼是123


  • 3.打開authz,配置用戶組和許可權
  • 我們可以將在passwd里添加的用戶分配到不同的用戶組里,以後的話,就可以對不同用戶組設置不同的許可權,沒有必要對每個用戶進行單獨設置許可權。

    在[groups]下面添加組名和用戶名,多個用戶之間用逗號(,)隔開

  • <font color="rgb(0, 0, 0)"><font style="background-color:rgb(254, 254, 242)"><font face="verdana, Arial, Helvetica, sans-serif">[groups]

  • topgroup=mj,jj</font></font></font>

  • 復制代碼

  • 說明mj和jj都是屬於topgroup這個組的,接下來再進行許可權配置。使用[/]代表svn伺服器中的所有資源庫
  • [/]

  • @topgroup=rw

  • 復制代碼

  • 上面的配置說明topgroup這個組中的所有用戶對所有資源庫都有讀寫(rw)許可權,組名前面要用@如果是用戶名,不用加@,比如mj這個用戶有讀寫許可權
  • [/]

  • mj=rw

  • 復制代碼

  • 至於其他精細的許可權控制,可以參考authz文件中的其他內容4.啟動svn伺服器前面配置了這么多,最關鍵還是看能否正常啟動伺服器,若啟動不來,前面做再多工作也是徒勞。在終端輸入下列指令:svnserve -d -r /Users/apple/svn或者輸入:svnserve -d -r /Users/apple/svn/mycode沒有任何提示就說明啟動成功了5.關閉svn伺服器如果你想要關閉svn伺服器,最有效的辦法是打開實用工具裡面的「活動監視器」
  • 綜合上述,我們就可以輕松搭建svn伺服器環境了
  • 回到頂部


  • 三、使用svn客戶端功能1.從本地導入代碼到伺服器(第一次初始化導入)在終端中輸入
  • svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=mj --password=123 -m "初始化導入"

  • 復制代碼

  • 我解釋下指令的意思:將/Users/apple/Documents/eclipse_workspace/weibo中的所有內容,上傳到伺服器mycode倉庫的weibo目錄下,後面雙引號中的"初始化導入"是注釋2.從伺服器端下載代碼到客戶端本地在終端中輸入svn checkout svn://localhost/mycode --username=mj --password=123 /Users/apple/Documents/code我解釋下指令的意思:將伺服器中mycode倉庫的內容下載到/Users/apple/Documents/code目錄中3.提交更改過的代碼到伺服器在步驟2中已經將伺服器端的代碼都下載到/Users/apple/Documents/code目錄中,現在修改下裡面的一些代碼,然後提交這些修改到伺服器1> 打開終端,先定位到/Users/apple/Documents/code目錄,輸入:cd /Users/apple/Documents/code2> 輸入提交指令:svn commit -m "修改了main.m文件"這個指令會將/Users/apple/Documents/code下的所有修改都同步到伺服器端,假如這次我只修改了main.文件可以看到終端的列印信息:
  • Sending weibo/weibo/main.m

  • Transmitting file data .

  • Committed revision 2.

  • 復制代碼

  • 4.更新伺服器端的代碼到客戶端這個應該是最簡單的指令了,在終端中定位到客戶端代碼目錄後,比如上面的/Users/apple/Documents/code目錄,然後再輸入指令:svn update5.至於svn的其他用法,可以在終端輸入:svn help

⑶ 如何在mac下遠程搭建git伺服器

為有讀寫許可權的用戶建立一個分組。根據你的操作系統,你可以用groupadd命令來實現,用vigr來編輯分組文件,或者直接編輯/etc/group文件。在最後,你會在/etc/group文件中看到如下一行
?
1
repogroup:*:10005:marry,john,violet
其中,repogroup是准許接入這個倉庫的組的名字。10005是一個獨一無二的分組識別數字,marry,john,violet則是獲准接入這個倉庫的用戶。

決定Git倉庫的路徑。它既可以放在你的home路徑下(e.g. /home/yourname/gitroot),也可以放在一個專用的路徑下(e.g. /var/gitroot).
配置許可權,讓Git用戶可以訪問這個目錄
?
1
2
chmod g+rx /path-to/gitroot
chown :grouprepo /path-to/gitroot
建立新的Git倉庫,叫做newrepo
?
1
2
cd /path-to/gitroot
git init --bare newrepo.git
建立路徑認證,以允許用戶組訪問,同時有針對性的設置Git
?
1
2
3
4
5
cd newrepo.git
chown -R :grouprepo .
git config core.sharedRepository group
find . -type d -print0 | xargs -0 chmod 2770
find . -type f -print0 | xargs -0 chmod g=u
設置提交(commit)的email通知(commit是一條命令),這樣當有新的修改提交到倉庫的時候,開發者們將會收到一封關於修改內容一覽的電子郵件。
?
1
2
3
4
5
6
7
echo 'One-line project description' >description
git config --local hooks.mailinglist [email protected]<script cf-hash="f9e31" type="text/javascript">
/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("cf-hash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}}}catch(u){}}();/* ]]> */</script>,[email protected]<script cf-hash="f9e31" type="text/javascript">
/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("cf-hash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}}}catch(u){}}();/* ]]> */</script>,...
git config --local hooks.emailprefix '[DI-PR] '
git config --local hooks.showrev "git show -C %s; echo"
git config --local hooks.emailmaxlines 100
通過設置一個稱為鉤子(hook)的東東,來創建這些email通知。

⑷ mac怎麼搭建本地web伺服器

Mac OS X系統已經自帶了Apache伺服器,並且自帶php編譯
打開終端,輸入 sudo apachectl start sudo表示用root許可權運行
輸入密碼,輸入時無提示,輸入完後回車確認
打開瀏覽器,在瀏覽器中輸入本機ip地址 進入系統偏好設置-網路 可查看本機ip
此時暫不開啟php編譯器,在文本中編寫一個靜態網頁
<html>
<title>第一個頁面</title>
<body>
<h2>ios開發教程</h2>
<ol>
<li>第一課oc實現類的定義</li>
<li>第二課oc實現對象的定義</li>
</ol>
開啟阿帕奇伺服器之後,電腦就是一個web伺服器,將.html的文本保存在桌面上,並利用復制粘貼的功能將其保存在磁碟目錄下,即根目錄下。資源庫-WebServer-Documents,改過程中會提示出入管理員密碼,可利用顯示中的顯示文件路徑。此時打開瀏覽器輸入ip地址即可查看到該頁面。

⑸ 如何在Mac中搭建SVN伺服器的方法

第一步,啟動終端。命令如下:
svnadmin create /Users/Johnny/Repository
第二步,配置這個代碼倉庫。終端中繼續,命令如下:
cd /Users/Johnny/Repository/conf
首先修改svnserve.conf文件,只要把#password-db = passwd這句話的#去掉,使這個配置項生效即可。保存退出。
接著修改passwd文件,這個裡面存著這個代碼庫接受的用戶名和密碼採用的形式是[用戶名]=[密碼]。可以增加一個用戶「user」,密碼「pass」
user=pass保存退出。
第三步,啟動伺服器。終端中繼續,命令如下:
svnserve -d -r /Users/Johnny/Repository
沒有任何提示就說明啟動成功了。
停止:killall -9 svnserve

⑹ mac搭建本地伺服器

啟動伺服器

MacOS 自帶Apatch 伺服器。在safari中輸入 http://127.0.0.1/ ,如果頁面出現 it works,則代表訪問成功。

如果訪問失敗,可以在終端輸入:

sudo apachectl start

啟動後,我們在瀏覽器輸入   http://localhost  ,界面展示 「 It works! 」

2.關閉伺服器

sudo apachectl stop

3.重啟伺服器

sudo apachectl restart

注意

Apache伺服器默認的web根目錄在:/Library/WebServer/Documents

Apache的配置文件在:/etc/apache2

添加文件到本地伺服器

1、前往Apache伺服器的文件地址: 

/Library/WebServer/Documents 

2、准備文件,如我保存了的首頁 jianshu.html

3、復制 jianshu.html 文件到步驟1 中的地址

查看添加的文件

在Safari 中輸入 http://127.0.0.1/jianshu 即可看到保存的網頁

同樣你也可以用  http://127.0.0.1/PoweredByMacOSX.gif  訪問文件夾中的圖片。

手機/其他電腦 訪問本機伺服器

1、找到本機 IP 地址 

打開 設置-網路,你可以看到下圖 

那麼我的IP就是:10.198.44.51 

在本機safari中輸入 http://10.198.44.51 即可訪問和 http://127.0.0.1 一樣的效果

輸入 http://10.198.44.51/jianshu 可訪問 http://127.0.0.1/jianshu 一樣效果的內容2、在手機、其他電腦測試 

必須保證手機和其他電腦和本機在同一區域網 

在手機的safari中輸入 http://10.198.44.51/jianshu 即可訪問成功

⑺ 如何在mac系統下搭建git伺服器

第一步,下載gitblit


http://gitblit.com/

這里當然是選擇linux/osx的版本。下載下來是一個.tar.gz的壓縮文件,我下載時最新版本是gitblit-1.7.1.tar.gz


⑻ Mac搭建Nginx流媒體伺服器,進行推流,拉流

Nginx 是非常優秀的開源伺服器,用它來做hls或者rtmp流媒體伺服器是非常不錯的選擇

下面介紹如何在Mac上搭建流媒體伺服器,以便後續的自己研究的項目或者demo向伺服器上進行推流

首先需要安裝brew,brew是一款管理軟體的第三方平台,安裝的方式也很簡單,請自行查閱安裝方式

執行下面2句命令,即可安裝rtmp推流的nginx伺服器

執行完後,可以查看ngix安裝在哪裡

可以看到M1 是安裝在這個目錄下/usr/local/etc/nginx

打開這個目錄,可以看到有個nginx.conf文件,這里就是伺服器的一個配置文件,如果支持rtmp,則裡面的內容會有一個rtmp的json

這個json說明:

1.你本地的nginx伺服器會監聽1935埠號,

2.伺服器會創建一個mytv的程序

後續你可以向這個地址進行推流,並且進行拉流播放

後面我們會使用ffmpeg向這個地址推流
rtmp://localhost:1935/mytv/room

並且用vlc拉取這個地址的流進行播放

執行命令,即可啟動nginx伺服器

驗證是否啟動成功,只需要在瀏覽器中訪問下以下鏈接

在瀏覽器地址欄輸入: http://localhost:8080

出現Welcome to nginx ,代表nginx安裝成功了。

打開配置文件 /usr/local/etc/nginx/nginx.conf

這里推的是flv流,可以正常推,這里需要注意的是伺服器地址一定要寫正確,我的nginx.conf里application配置的是mytv,所以路徑就是mytv,room則是隨便寫都行,代表向程序mytv下的room文件推流

然後電腦上打開vlc這個播放器軟體 點擊File---->Open Network 在彈出來的框中選擇Network然後輸入URL:

驗證時,推流的文件最好搞大點,不然一下推完了,你才去拉取播放,則播放不了,因為這是實時的

vlc使用如下

3.點擊播放即可

可以看到左邊是畫面,右邊是ffmpeg在推流

參考: https://www.jianshu.com/p/cf74a34af15d

⑼ 如何在mac系統下搭建git伺服器

Git支持的協議主要是四種:
本地: 需要文件共享系統,許可權不好控制
HTTP:速度慢
SSH:同時支持讀寫操作,不支持匿名的讀取(Git默認協議)
GIT:最快

搭建的難易程度和特點綜合篩選,最合適的還是ssh,並且大部分伺服器上基本都有ssh服務,所以省去了不少麻煩。一個最基本的思路是給每一個人一個
ssh帳號,這樣大家就可以通過用戶名和口令來訪問了,但是顯然這不是一個好的選擇,這個做法有些多餘,並且對於repo的許可權很難管理。

⑽ Mac 搭建私有Git Server

1,在用作伺服器的機器上創建 git 賬戶。我們可以通過 系統偏好設置 -> 用戶與群組 來添加。賬戶許可權給的是 管理員 許可權為了方便操作。

2,設置遠程訪問
系統偏好設置 -> 共享 中,勾選 僅這些用戶 允許訪問。

1,驗證Git用戶
$ ssh [email protected]
按提示輸入git用戶的密碼,如圖出現**~ git$ **提示則說明登陸成功。

2, 生成 ssh rsa 公鑰

注意:這里有個需要注意的地方,/etc文件夾可能沒有sshd_config文件,只有有一個 sshd_config~previous 文件,那我們操作的文件就換成 sshd_config~previous

這樣,我們就完成了在Mac中搭建私有Git Server的操作。
如果你的應用場景是企業級也可以參考這篇來設置伺服器上的Git Server,或者搜索Gitosis、Gitolite、Gitlab之類的管理軟體。

熱點內容
壓縮聽算音頻 發布:2025-05-12 10:58:12 瀏覽:800
資料庫系統報告 發布:2025-05-12 10:43:17 瀏覽:602
日產高配有哪些配置 發布:2025-05-12 10:32:16 瀏覽:475
大眾朗逸哪個配置值得入手 發布:2025-05-12 10:31:20 瀏覽:505
壓縮包的後綴 發布:2025-05-12 10:20:35 瀏覽:940
煙台招聘編程 發布:2025-05-12 10:04:21 瀏覽:53
sql查詢所有表名 發布:2025-05-12 10:01:28 瀏覽:664
用python編譯器的簡單代碼 發布:2025-05-12 09:48:40 瀏覽:358
香港多ip站群伺服器租用 發布:2025-05-12 09:33:16 瀏覽:895
kaliapk編譯 發布:2025-05-12 08:47:56 瀏覽:357