把路由器改装成git服务器(OpenWRT境况的GIT服务器搭

作者:电脑系统

系统软件

成文时,OpenWRT的版本是18.06.0,其它版本应当也可以,OpenWRT挺早就支持git软件包了。下载地址在:。也可能是我的问题,但至少看起来,这样一个纯技术网站,不FQ已经下载不到了。
因为各家路由设备的硬件复杂性,虽然都是同样的OpenWRT,不同的路由器仍然要下载自己硬件对应的版本。如果之前没有安装过OpenWRT的话,建议你在查询OpenWRT支持的设备列表,确认自己应当使用的版本。
OpenWRT的安装这里不讲,请参考官方相关文档。通常都是在自己路由器的管理界面使用软件更新功能,选择下载的固件文件,上传随后升级。
接着请根据自己家里网络的情况,配置上网设置各项目,保证基本路由功能工作正常。

 

3.安装

root@OpenWrt:~# cd /tmp
root@OpenWrt:/tmp# opkg install 下载的软件名

opkg 后面可以跟哪些内容
1 源里面提供的安装包 例如 opkg install wpad
2 本地的ipk安装包 opkg install /tmp/wpad_2015-03-25-1_ar71xx.ipk
3 安装包的下载地址 opkg install http://openwrt.8800.org:82/luci-app-oray.ipk

测试路由器上的git仓库

回到我们的工作电脑上,随意建立一个工作目录,测试路由器上的git仓库是否工作正常,下面假设我们路由器的IP地址为192.168.1.1,请修改成自己路由器的正确地址。

mkdir testgit
cd testgit
git init .
echo "test information" > abc.txt
echo "测试信息" > abc1.txt
git add .
git commit -m "something new"
git remote add origin root@192.168.1.1:/prjs/test/
git push --set-upstream origin master

最后的git push执行后,需要输入路由器root账号密码,随后如果显示类似下面信息,就表示成功了:

Counting objects: 2, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 231 bytes | 231.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0)
To root@192.168.1.1:/prjs/test/
   570db28..5ab2627  master -> master

 

参考

IDSSC-备份openwrt

硬件

  • 一台能够安装OpenWRT(或者Linux系统的)路由器,我用的是一台老设备,Netgear WND3700V1。
  • 视你日常工作量大小,准备一个空间足够的U盘,最好是高速的,当然这个高速是指能匹配路由器USB口的标准就足够。

2.输入“opkg install luci_trunk svn9663-1_ar71xx.ipk”,安装LuCY主体,先开始自动下载各种关联库,下载完会自动安装配置,最后显示“Configuring luci.”;

SSH

使用xshell/Secure CRT /你习惯的的软件通过ssh协议 登陆192.168.1.1继续基础配置

自动验证

如果不希望每次git push都输入路由器密码,可以把自己电脑的公钥存储到路由器备案,以后就不需要输入密码了,首先拷贝公钥到路由器:

scp ~/.ssh/id_rsa.pub root@192.168.1.1:~/

接着在路由器上执行:

cat id_rsa.pub >> /etc/dropbear/authorized_keys

可以使用ssh来测试是否生效,ssh root@192.168.1.1之后,如果不再要求输入密码直接登录了路由器,表示自动验证生效了。

opkg update

恢复

用winscp等将 overlay_backup.tar.gz 上传至 /tmp ,然后清空 /overlay 并恢复备份:

rm -rvf /overlay/* && cd / && tar -xzvf /tmp/overlay_backup.tar.gz

原理
猜的:flash里有不变的区域,就是我们刷的固件,我们后来安装软件等更改是存储再overlay文件夹下面的,因此只要系统文件没有损坏,这种方法还是可行的推荐

安装U盘并设置自动加载

如果只是当做私有云盘使用,U盘的格式可以随意。但如果打算用作git仓库以及用以弥补路由器可怜的FLASH存储,则必须使用Linux专有格式,比如EXT4。所以准备用在路由器上的U盘你要提前做好备份,因为后面的安装会重新格式化U盘。
首先是安装加载U盘所需的各项驱动和相关支持工具:

#假设你已经做过opkg udpate
opkg install block-mount e2fsprogs kmod-fs-ext4 kmod-usb3 kmod-usb2 kmod-usb-storage 

随后使用ext4格式,重新初始化U盘:

#注意这一步会清掉U盘上现有的所有内容
mkfs.ext4 /dev/sda1

接着将U盘设置为路由器启动后自动加载:

block detect > /etc/config/fstab 
uci set fstab.@mount[0].enabled='1' && uci set fstab.@global[0].check_fs='1' && uci commit 
/sbin/block mount && service fstab enable

这时候可以使用mount命令检查一下U盘是否加载成功(不需要重启),如果输出信息中,通常是在最后一行,如果有类似下面信息表示U盘加载成功了:

/dev/sda1 on /mnt/sda1 type ext4 (rw,relatime,data=ordered)

在我实验的时候,有一个U盘无论如何无法自动加载成功,猜测同U盘型号或者具体硬件及OpenWRT版本的支持有关系。就不去深究原因了,碰到这种情况可以使用启动脚本的方式解决,首先执行一次mkdir /mnt/sda1,然后在/etc/rc.local文件最后一行增加:

mount /dev/sda1 /mnt/sda1

以后重启将会自动加载U盘。

8.在提示符后输入“ping 8.8.8.8”,如果Ping通,表示已经成功接入互联网,按Ctrl C可停止Ping操作;

上网

由于我所在的网络环境采用802.1x认证,不是宽带,所以没有尝试除802.1x之外的认证方式
openwrt h3c 802.1x 校园网认证

分分快三全天计划网站 1
在单位中,通常都标配了git服务器用来管理代码。
对于家庭或者小办公室,这种方式有点不经济。当然如果是开源项目就简单了,刚刚被微软收购的github是理想选择。但如果没有打算开源,我今天的话题可能对你有用。
我就属于喜欢在家中干活的那一类,以前常年开着一台电脑做下载,最近改了这个坏习惯。但是没有了长期开机的设备,也就没有了git server。
趁着周末,把一台老的路由器改了改,当成git server来用,感觉效果爆棚,不能不安利给大家。

 

操作

管理路由器

OpenWRT18.06.0的默认管理方式是使用ssh,方法:ssh root@[IP地址]。根据路由器的FLASH大小,比较小的FLASH是默认没有WEB GUI界面的,比如我用的这台。所幸大多情况下使用命令行配置路由器效率更高,而且有些工作是使用GUI界面做不到的。
OpenWRT的默认账户用户名是root,没有密码,正常情况下第一次登陆会要求你修改密码。在一个连接公网的环境中,请尽早登陆修改密码。

13.按下“Logout”选项退出,即出现中文Bootstrap的登录界面。

源有哪些

官方https://downloads.openwrt.org
教育网
科大https://openwrt.proxy.ustclug.org
清华https://mirrors.tuna.tsinghua.edu.cn/
公网
阿里,网易等很多源

配置镜像源

如果你不用FQ就能访问官方的源服务器的话,请跳过这一节内容。

OpenWRT使用opkg工具来管理扩展包。因为前面所说的原因,需要配置使用镜像源来保证所需软件包的安装。
中间碰到一个小麻烦是国外的镜像服务器,基本都使用了https协议,OpenWRT不能直接支持。国内的镜像大多倒是http协议,但镜像中又缺乏一些驱动包,无法驱动U盘。
所以如果找不到更好的完整源的话,只好把变更源这样一件小事分成两步来做。
opkg的源配置文件路径为:/etc/opkg/distfeeds.conf,首先做一个备份,然后你可以使用你喜欢的编辑工具修改,我通常都是vi。
把distfeeds.conf文件的内容修改为:

src/gz openwrt_core http://openwrt.proxy.ustclug.org/releases/18.06.0/targets/ar71xx/generic/packages
src/gz openwrt_kmods https://downloads.lede-project.urown.net/snapshots/targets/ar71xx/generic/kmods/4.9.117-1-e017c397f3c6ba06dc921b136a63fb36
src/gz openwrt_base http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/base
src/gz openwrt_luci http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/luci
src/gz openwrt_packages http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/packages
src/gz openwrt_routing http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/routing
src/gz openwrt_telephony http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/telephony

这里面使用了两个源,分别是:
接着在OpenWRT命令使用opkg update命令,只要网络没有问题,可以完成源目录包的更新,当然在https的那个源会报错,先不用管。

通常的情况下,每次进行包安装工作之前进行一次opkg update就够了,这是下载软件源中的所有目录索引到本地。路由器关机、或者云端的源内容发生了变化才需要重新执行。

随后安装https协议所需的软件包:

opkg install libustream-openssl  ca-bundle ca-certificates 

接着再做一次opkg update,这一次,应当所有的源都可以拿到目录包了。
如果你有更好的http源,配置https访问这一步可以省略。

至此,opkg包管理工具算配置完成。喜欢使用GUI界面的话,这时候可以使用下面命令安装:

opkg update
opkg install luci

1.在Linux终端中,输入“passwd root”,提示Changing password for root New passoword:的提示;

FAQ

安装git工具包

这一步对于新款路由器实在不是事儿,使用opkg一条命令就搞定:

opkg install git

对于我这款老路由器来讲是个大麻烦,因为这款WND3700这款路由器只有4M的FLASH,相当于硬盘的存储空间。而git软件包压缩之后是4.3M,完全盛不下。
这时候刚才安装的EXT4格式的U盘就起作用了,我使用手工安装的方式把git安装到U盘上,这样多大的软件包都不算问题了。
首先下载git软件包:

cd /mnt/sda1/
wget http://openwrt.proxy.ustclug.org/releases/18.06.0/packages/mips_24kc/packages/git_2.16.3-1_mips_24kc.ipk

注意下载路径是跟你所使用的路由器版本有关的,比如上面的下载地址表示OpernWRT18.06.0版本,跑在mips_24kc的芯片上。根据这些信息,你要寻找自己路由器可用的软件包,平常这件事情是由opkg帮你做的。
下载完成后,手工解压取出文件:

tar xzvf git_2.16.3-1_mips_24kc.ipk
#上面的解压完成通常会出来3个文件,我们只使用其中的data.tar.gz文件。
mkdir ipks
cd ipks
tar xzvf ../data.tar.gz
cd ..
# 删除3个解压出的临时文件
rm control.tar.gz data.tar.gz  debian-binary

所有的文件都保存在/mnt/sda1/ipks/usr路径下,我们还需要手工完成安装,才能够运行:

ln -s /mnt/sda1/ipks/usr/bin/git /usr/bin/
ln -s /mnt/sda1/ipks/usr/bin/git-receive-pack /usr/bin/
ln -s /mnt/sda1/ipks/usr/bin/git-upload-archive /usr/bin/
ln -s /mnt/sda1/ipks/usr/bin/git-shell /usr/bin/
ln -s /mnt/sda1/ipks/usr/bin/git-upload-pack /usr/bin/
ln -s /mnt/sda1/ipks/usr/lib/git-core/ /usr/lib/
ln -s /mnt/sda1/ipks/usr/share/git-core/ /usr/share/

此时git已经可以使用了。接下来我们建立工作目录:

mkdir /mnt/sda1/prjs
ln -s /mnt/sda1/prjs/ /

/prjs目录是我们的主要存储目录。因为路由器只有一个root账号,也就不用考虑额外的权限问题。
今后所有的git仓库,都可以在/prjs路径下另外建目录来保存。我们来建立一个测试仓库来验证工作是否正常:

mkdir /prjs/test
cd /prjs/test
git init --bare

好了,至此路由器上的所有准备都已经完成。今后增加新的git仓库,使用新的仓库名称,重复上面最后一个建立test仓库的操作就可以。

10.在Language下接框中选择“chinese”,把语言改成中文;

安装Luci

opkg remove xxxx.ipk

1.下载ipk软件

参考玩openwrt的基础中对于openwrt网站目录的分析,电脑打开openwrt下载站点进入相应的目录下载软件,格式为.ipk
以NETGEAR WNDR3700v4为例,依次打开/chaos_calmer系统/15.05.1版本/ar71xxCPU型号/nand flash型号/packages要下载软件/
进入不同的目录ctrl f搜索需要下载的软件

分分快三全天计划网站 2

12.按下“Save & Apply”,保存并应用;

telnet设置密码

有线网连接路由器xshell/Secure CRT/你习惯的的软件
telnet 192.168.1.1

BusyBox v1.23.2 (2016-01-02 21:42:02 CET) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (15.05.1, r48532)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@openwrt:~$

输入passwd. 设置root密码

root@openwrt:~$ passwd
Changing password for root
New password:
Retype password:
Password for root changed by root
root@openwrt:~$

设置一个密码后telnet守护进程将会被禁用,在提示框中输入exit退出

4.按Ctrl S保存,或直接点保存图标,会再次出现提示窗口,按“否”按钮,显示上传提示;

LuCI是什么

LuCI是OpenWrt上的Web管理界面,以后很多设置,我们可以直接在网页上操作,不用输命令了

1.打开PuTTY,点树状列表中的“Session”项;

备份

ssh登陆后

root@OpenWrt:~# tar -czvf /tmp/overlay_backup.tar.gz /overlay    

用winscp等从/tmp目录里下载overlay_backup.tar.gz 备份文件

7.在提示符后输入“/etc/init.d/network restart”,等待一会,提示几行“'radio0' is disabled”等状态信息就表示重启完毕;

路由器无法上网如何安装软件

 

源是什么

简单说就是手机应用商店,App Store,里面有软件的安装包,我们可以下载安装软件,里面还有软件的源代码,我们也可以下载下来自己编译

2.在Host Name (or IP address)文本框中输入“192.168.1.1”,在Port文本框中输入“22”;

2.上传

通过winscp等软件使用scp协议,地址为路由器地址,用户名密码为ssh的用户和密码把软件(例wpad_2015-03-25-1_ar71xx.ipk) 上传到/tmp

2.输入root用户的密码,输入过程没显示字符或掩码,输入完毕,回车,出现Retype password:的提示;

环境

CHAOS CALMER (15.05.1, r48532)

 

为什么要修改源

有时官方源的链接失效了,或者在墙外,下载速度慢,这时需要改源
软件不足,就像小米的应用商店没有这个app,可以去酷安下载啊,有的源提供的软件包不足,需要改源
首推荐官方源,能用google play 为什么要用国内商店呢

cd /tmp

操作

root@OpenWrt:~# opkg update
root@OpenWrt:~# opkg install luci   #安装LuCI
root@OpenWrt:~# /etc/init.d/uhttpd enable  #开启uhttp功能
root@OpenWrt:~# /etc/init.d/uhttpd start    #启动uhttp

这时可通过
安装中文支持

root@OpenWrt:~# opkg install luci-i18n-ahcp-zh-cn

再网页打开Luci-->system-->system-->language--> 选中中文的包-->
save&apply

option password '账号密码'

操作

第一次是不开启wifi,而且没有root密码的,不能ssh登录,可以telnet登录进行设置

 

以下操作是在连通网络的环境下

 

操作

vi或winscp 修改/etc/opkg/distfeeds.conf

vi /etc/opkg/distfeeds.conf

我们先看看里面的内容

src/gz chaos_calmer_base http://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/nand/packages/base
src/gz chaos_calmer_luci http://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/nand/packages/luci
src/gz chaos_calmer_packages http://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/nand/packages/packages
src/gz chaos_calmer_routing http://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/nand/packages/routing
src/gz chaos_calmer_telephony http://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/nand/packages/telephony
src/gz chaos_calmer_management http://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/nand/packages/management

替换

http://downloads.openwrt.org

为相应源的地址,如果其他源使用的https无法正常使用,建议改为http

 

备份路由器

 

设置密码

 

应用场景

可以在编译固件时把需要的软件编译进固件里,如果没有编译,路由器又无法联网(例如没有编译网络认证的软件)
或者需要安装自己编译的软件

 

参考

第一次登陆

option ifname 'eth1'

装完openwrt的操作

一、与OpenWRT的路由器联机 用网线连接电脑的LAN口和路由器的LAN口,然后操作如下: 1.打开PuTTY,点树状...

修改软件源

可选,我没有改源也可以正常使用,如果所在网络环境对官方源实在不友好,可以尝试改源

 

dest plugin_root /plugin_root

 

 

 

option overlay_root /overlay

注,以上可以使用Windows命令Telnet操作。

3.输入“opkg install luci-i18n-chinese_trunk svn9663-1_ar71xx.ipk”,安装LuCY简体中文语言;最后显示“Configuring luci-i18n-chinese.”;

3.再一次输入root用户的密码,,输入过程没显示字符或掩码,输入完毕,回车,出现Password for root changed by root提示,表示更改root用户密码成功,为了安全,OpenWRT会把路由器的Telnet服务关闭,以后只能通过ssh协议和root用户密码登录路由器的Linux终端。

 

 

 

5.再次打开network文件,确认修改成功;

option username '你的宽带账号'

1.用WinSCP登陆路由器;

刷OpenWRT标准版固件后安装LuCI的方法

src/gz Packages ftp://a:[email protected]

3.用PuTTY执行:  

 

9.点开Language and Style选项页;

 

config interface 'wan'

7.在电脑端的浏览器中输入“192.168.1.1”,可访问路由器就表示LuCY安装成功;

 

 

 

vim etc/config/network

1.在打开PuTTY显示的路由器Linux终端中,输入“opkg update”,开始下载Packages.gz并更新;

5.输入“/etc/init.d/uhttpd enable”回车,打开uhttpd服务;

 

五、其它要点

  删除已安装的ipk:

四、安装Web管理界面LuCY;

  编辑文件:

6.按Ctrl P打开PuTTY,登录路由器的Linux终端;

11.在Design下下接框中选择“Bootstrap”,把主题改成Bootstrap;

 

option _orig_bridge 'false'

 

 

4.输入“opkg install luci-theme-bootstrap_trunk svn9663-1_ar71xx.ipk”,安装LuCY主题,最后显示“Configuring luci-theme-bootstrap.”;

 

 

dest ram /tmp

 

6.输入“/etc/init.d/uhttpd start”回车,让uhttpd自启动;

 

dest root /                  

cat etc/config/network

#src/gz packages

把路由器改装成git服务器(OpenWRT境况的GIT服务器搭建)分分快三全天计划网站。三、修改network配置连上互联网

  在第四部分第2、3、4步可以先下载好这三个ipk包,用WinSCP放到路由器的/tmp目录,再用“cd /tmp”命令进入/tmp目录执行,这样可以避免连接错误。

lists_dir ext /var/opkg-lists

opkg install a b c

再用一根网线,把路由器的WAN口与猫的Ethernet接口连接;

把路由器改装成git服务器(OpenWRT境况的GIT服务器搭建)分分快三全天计划网站。 

3.在Connection type中选择“Telnet”,按下Open按钮,进入路由器的Linux终端,出现OpenWRT欢迎界面和[email protected]:~#提示符;

 

option _orig_ifname 'eth1'

  显示文件:

1.下载*.ipk插件包;

 

/etc/opkg.conf文件记录着软件源,src/gz Packages后面地址就是软件源了,opk.conf文件代码如下:

 

一、与OpenWRT的路由器联机

 

 

 

3.修改“config interface 'wan'”项目为如下:

  修改ipk包的软件源

 

 

二、修改Root密码

    查看已安装的ipk:

 

2.用WinSCP上传a.ipk、b.ipk、c.ipk到/tmp下;

 

opkg list-installed

 

 

 

  离线批量ipk安装方法

8.进入LuCY界面的System选项页;

 

option proto 'pppoe'

2.进入路由器的/etc/config目录,双击打开network文件;

 

用网线连接电脑的LAN口和路由器的LAN口,然后操作如下:

 

本文由分分快三计划发布,转载请注明来源

关键词: 分分快三计划 openwrt