您的位置:首页 > 运维架构

Openwrt安装软件的方法

2013-04-02 23:31 281 查看
Openwrt安装软件
请查看我的网站获得更新的数据
http://www.openwrtdl.com/wordpress/openwrt-install-software

简介

Openwrt是个很自由的开源路由器系统,软件包支持几千个,功能很强大!

安装的方法主要有两种,telnet或者ssh连接后台安装和 页面安装。

下面的所有步骤的前提是当前的路由器已经联网!

telnet或ssh

原始的openwrt默认是没有密码的,只开启了telnet没有开启ssh,当第一次配置完用户名和密码后,关闭了telnet开启了ssh,用户可以随时连上路由器,下面我用ssh连接的。

Openwrt管理软件包的命令是opkg,下面是命令的帮助

root@Jack:/tmp/opkg-lists# opkg--help
opkg:unrecognized option `--help'
opkgmust have one sub-command argument
usage:opkg [options...] sub-command [arguments...]
wheresub-command is one of:
PackageManipulation:
update           升级       Update list ofavailable packages
upgrade <pkgs>     升级某一个软件     Upgrade packages
install <pkgs>     安装某一个软件     Install package(s)
configure <pkgs>    配置某一个软件    Configure unpacked package(s)
remove <pkgs|regexp>  删除软件  Remove package(s)
flag <flag> <pkgs>      Flag package(s)
<flag>=hold|noprune|user|ok|installed|unpacked (one perinvocation)

InformationalCommands:
list       列出openwrt所有支持的软件包   List availablepackages
list-installed     列出本机已经安装的软件包     List installed packages
list-upgradable  列出可以升级的软件包  ist installed and upgradable packages
list-changed-conffiles  List user modified configuration files
files <pkg>             List files belonging to<pkg>
search <file|regexp>    List package providing <file>
find <regexp>           List packages whose name ordescription matches <regexp>
info[pkg|regexp]    显示软件包的信息   Display all info for <pkg>
status [pkg|regexp]   显示软件包的状态  Display all status for <pkg>
download<pkg> 下载一个软件包到当前目录 Download<pkg> to current directory
compare-versions <v1> <op><v2>
compare versionsusing <= < > >= = << >>
print-architecture      List installable package architectures
depends [-A] [pkgname|pat]+
whatdepends [-A] [pkgname|pat]+
whatdependsrec [-A] [pkgname|pat]+
whatrecommends[-A] [pkgname|pat]+
whatsuggests[-A] [pkgname|pat]+
whatprovides [-A] [pkgname|pat]+
whatconflicts [-A] [pkgname|pat]+
whatreplaces [-A] [pkgname|pat]+

Options:
-A            Query all packages not just thoseinstalled
-V[<level>]       Set verbosity level to <level>.
--verbosity[=<level>]   Verbosity levels:
0errors only
1normal messages (default)
2informative messages
3 debug
4 debuglevel 2
-f <conf_file>          Use <conf_file> as the opkgconfiguration file
--conf <conf_file>
--cache <directory>     Use a package cache
-d <dest_name>          Use <dest_name> as the the rootdirectory for
--dest <dest_name>      package installation, removal, upgrading.
<dest_name>should be a defined dest name from
theconfiguration file, (but can also be a
directory namein a pinch).
-o <dir>                Use <dir> as the rootdirectory for
--offline-root <dir>    offline installation of packages.
--add-arch<arch>:<prio>        Registerarchitecture with given priority
--add-dest<name>:<path>        Registerdestination with given path

ForceOptions:
--force-depends         Install/remove despite faileddependencies
--force-maintainer      Overwrite preexisting config files
--force-reinstall       Reinstall package(s)
--force-overwrite       Overwrite files from other package(s)
--force-downgrade       Allow opkg to downgrade packages
--force-space           Disable free space checks
--force-postinstall     Run postinstall scripts even in offlinemode
--force-remove  Remove package even if prerm script fails
--noaction              No action -- test only
--download-only No action -- downloadonly
--nodeps                Do not follow dependencies
--nocase                Perform case insensitivepattern matching
--force-removal-of-dependent-packages
Remove packageand all dependencies
--autoremove            Remove packages that were installed
automaticallyto satisfy dependencies
-t                      Specify tmp-dir.
--tmp-dir               Specify tmp-dir.
regexp could be something like 'pkgname*''*file*' or similar
e.g. opkg info 'libstd*' or opkg search'*libop*' or opkg remove 'libncur*'
root@Jack:/tmp/opkg-lists#


如果你想要安装一个软件,但是不知道什么具体的名字,可以用命令获取到软件包的名字(opkg list |grep 软件名),然后安装,比如我想要安装tftp

root@Jack:/tmp/opkg-lists# opkg list|grep tftp
atftp- 0.7-1 - TFTP client
atftpd- 0.7-1 - TFTP server
erlang-inets- 5.8 - Erlang/OTP is a general-purpose programming language and runtimeenvironment. Erlang has built-in support for concurrency, distribution  and fault tolerance. . This Erlang/OTPpackage provides a container for Internet clients and  servers. Currently a FTP client, a HTTPclient and server, and a tftp  client andserver have been incorporated in Inets.
iputils-tftpd- 20101006-1 - Program tftpd from iputils Trivial File Transfer Protocolserver.
kmod-ipt-nathelper- 3.7.10-1 - Default Netfilter (IPv4) Conntrack and NAT helpers Includes: - ftp- irc - tftp
tftp-hpa- 0.48-3 - An enhanced version of the BSD TFTP client
tftpd-hpa- 0.48-3 - An enhanced version of the BSD TFTP server


通过上面的命令我找到我想要的tftp服务器的名字为tftpd-hpa,这样就可以先用

#opkgdownload tftpd-hpa


下载软件包,然后用

#opkginstall tftpd-hpa


来安装。也可以直接用

#opkg installtftpd-hpa


会直接先下载再自动安装。最后用

#opkglist-installed |grep tftpd-hpa


来查看是不是已经安装上了!

页面安装

进入页面system->software

在filter里面输入“tftpd”,点击“find package”,在下面的框中就显示出当前openwrt支持的软件包,找到需要的,点击install即可。见下图

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: