皮皮网

【售卖商城源码】【ide 源码】【muiu源码】YHOST源码

时间:2024-11-28 21:06:11 来源:evoland 源码 作者:clion看linux源码

1.C语言编程
2.Android获取硬件设备信息
3.CentOS 6.3下使用Gitosis安装搭建Git Server教程

YHOST源码

C语言编程

       å¦‚图,源代码在后面。

#include<stdio.h>

       int main(){

        int x,y,z;

        scanf("%d %d %d",&x,&y,&z);

       //宏定义函数,分糖,host是持有者,g1,g2是被分糖的

       #define dtSugger(host,g1,g2) \

        host= host/3;/*分3份,余数自己吃了*/\

        g1 +=host;g2+=host

        dtSugger(x,y,z);

        dtSugger(y,z,x);

        dtSugger(z,x,y);

        printf("%d %d %d",x,y,z);

        getchar();getchar();

        return 0;

       }

Android获取硬件设备信息

       获取Android硬件设备信息主要通过Build类和TelephonyManager类实现,同时可结合反射获取SystemProperties类的隐藏API和特定ROM独有的数据。以下是一些关键的获取项及其方法:

       1. 序列号和IMEI: 使用getDeviceId方法获取设备序列号,通过getString方法和android_id属性获取IMEI。例如,序列号为"",售卖商城源码IMEI为"bcbcfaa5b"。

       2. 手机号码: 使用getLine1Number方法获取手机号码,示例为""。

       3. 手机卡序列号: 通过getSimSerialNumber方法获取手机卡序列号,例如"";IMSI(国际移动用户识别码)通过getSubscriberId方法获取,示例为""。

       4. 手机卡国家信息: 使用getSimCountryIso方法获取手机卡所在国家的ISO代码,如"cn"。

       5. 运营商信息: 包括运营商ID(getSimOperator)、运营商名字(getSimOperatorName)和运营商国家代码(getSimOperator)。

       6. 手机类型和固件版本: 使用getPhoneType方法获取手机类型,getRadioVersion方法获取固件版本,示例为"MOLY.WR8.W.MD.TG.MP.V1.P,ide 源码 // :"。

       7. 系统版本和硬件信息: 通过android.os.Build类获取系统版本字符串(如"4.4.4")、API级别(SDK)、品牌、型号、ID、DISPLAY信息、产品名、制造商、设备名、muiu源码硬件名称、指纹(设备唯一标识)等。

       8. 串口序列号和设备版本类型: 使用SERIAL获取串口序列号,TYPE获取设备版本类型,TAGS获取设备标签,HOST获取设备主机地址,USER获取设备用户名,codename获取系统开发代号,build_incremental获取系统源代码控制值。etlplus 源码

       9. 屏幕信息: 使用Display类获取屏幕密度(density)、屏幕密度(densityDpi)、内置分辨率(getWidth和getHeight)、x像素和y像素、字体缩放比例(scaledDensity)等。

       . 蓝牙和WiFi信息: 使用WIFI相关方法获取蓝牙地址(getAddress)、无线路由器名(getSSID)、无线路由器地址(getBSSID)和内网ip(getIpAddress)等。

       请注意,178源码获取某些信息,如手机号码,可能需要额外的用户交互或权限,而非直接通过API实现。

CentOS 6.3下使用Gitosis安装搭建Git Server教程

       Git作为一个分布式的版本控制系统,使用git的时候,一般和服务器通讯使用的是ssh协议,用ssh的主要优点是速度快(传输前数据会先压缩,比HTTP快),安全,方便读写。

       客户端通过ssh访问服务器端的验证方式一般有两种,一种是用户名密码的方式,一种是使用公私钥认证的方式. 使用公私钥的方式比较方便,无需每次登录输入密码。

       某个受信任的客户端的公钥会被设置在服务器端的 ~/.ssh/authorized_keys文件中,有关此文件的格式可以参见 sshd的用户手册 man sshd . authorized_keys有个比较厉害的功能是 支持 command参数,使得每次用户使用此公钥进行验证的时候执行此后面的命令.这样就可以做一些逻辑处理了.

       一般git库的管理需要权限控制,如何方便简单的进行库的权限管理呢? authorized_keys是一个思路,指定特定command参数,每次验证好用户后首先执行相关逻辑,检测当前用户是否具有某个权限。 所以便有了gitosis,与其说gitosis是一个git权限管理系统,还不如说它是一个authorized_keys文件管理器.

       解决方案:

环境部署

       操作系统:              centos6.3 x

           Git: git-1.7.1

           Gitosis:                   Gitosis

           Gitweb:                   1.7.1-3        

           OpenSSH Server:     openssh-server-5.3p1

           apache:                  .pool.ntp.org

三.安装apache

       传送门:/tv/gitosis.git

           # cd gitosis

           # python setup.py install

       3.为gitosis创建系统用户

       复制代码

           

       代码如下:

       # useradd -m git

           # passwd git

       4. 运行gitosis

       (1).将管理员生成的公钥上传或拷贝到服务器上。这里的公钥需要在git服务器管理员下使用ssh-keygen命令来创建

       复制代码

           

       代码如下:

       # su - git

       保证web页面有权限显示该仓库内容

       复制代码

           

       代码如下:

       # chmod -R /home/git

           # ssh-keygen -t rsa

           # cp ~/.ssh/id_rsa.pub /tmp

       (2).初始化gitosis

       进入到拷贝过来的id_rsa.pub所在目录

       复制代码

           

       代码如下:

       # cd /tmp

           # gitosis-init id_rsa.pub

       此时,会在/home/git目录下生成gitosis仓库和配置目录

       复制代码

           

       代码如下:

       # cd /home/git

           # ll

           ----------------------------------------------------------------

           drwxr-xr-x 2 git git Aug : gitosis

           drwxr-xr-x 4 git git Aug : repositories

           ---------------------------------------------------------------

       (3).切换回当前(root)用户

       复制代码

           

       代码如下:

       # exit

       (4).配置权限

       如果想要别人能够clone gitosis-admin.git,需要执行以下操作:

       复制代码

           

       代码如下:

       # chmod /home/git/repositories/gitosis-admin.git/hooks/post-update

       至此,gitosis的安装工作已完成,其相关配置可以有管理员来操作,然后再提交到服务器上.

           (5)现在可以试一下用初始化 Gitosis 的公钥的拥有者身份 SSH 登录服务器,应该会看到类似下面这样:

       复制代码

           

       代码如下:

       # su - git

           $ ssh git@.0.0.1

           ------------------------------------------------

           PTY allocation request failed on channel 0

           ERROR:gitosis.serve.main:Need SSH_ORIGINAL_COMMAND in environment.

           Connection to gitserver closed.

           ------------------------------------------------

       说明 Gitosis 认出了该用户的身份,但由于没有运行任何 Git 命令,所以它切断了连接。那么,现在运行一个实际的 Git 命令 — 克隆 Gitosis 的控制仓库:

       在你本地计算机上克隆git仓库

       复制代码

           

       代码如下:

       # cd /tmp

           # git clone git@gitserver:gitosis-admin.git

       这会得到一个名为 gitosis-admin 的工作目录,主要由两部分组成:

       红色为git仓库配置,蓝色为实际仓库保存的文件

       复制代码

           

       代码如下:

       # cd gitosis-admin

           # ll -a

           ----------------------------------------------------------

           total

           drwxr-xr-x 4 git git Aug : .

           drwxr-xr-x 4 git git Aug : ..

           drwxr-xr-x 8 git git Aug : .git

           -rwxr-xr-x 1 git git Aug : gitosis.conf

           drwxr-xr-x 2 git git Aug : keydir

           -----------------------------------------------------------

       以上操作相当于,系统git用户初始化并成为gitosis管理员,且利用其管理员权限将gitosis-admin仓库clone到本地.

           5.添加本地用户john和仓库test到gitosis,并和管理员git合作管理gitosis

       1. 用户john添加并发送id_rsa.pub给git

       复制代码

           

       代码如下:

       # su -

           # useradd john passwd john

           # su - john

           # ssh-keygen -t rsa

           -----------------------------------------------------------

           Generating public/private rsa key pair.

           Enter file in which to save the key (/home/john/.ssh/id_rsa):

           Created directory '/home/john/.ssh'.

           Enter passphrase (empty for no passphrase):

           Enter same passphrase again:

           Your identification has been saved in /home/john/.ssh/id_rsa.

           Your public key has been saved in /home/john/.ssh/id_rsa.pub.

           -----------------------------------------------------------

           # cp /home/john/.ssh/id_rsa.pub /tmp

       2. gitosis管理员git分配john权限

       复制代码

           

       代码如下:

       # su - git

           # mkdir projects

           # cd ~/projects

           # git clone git@node2.example.com:gitosis-admin

           # cd gitosis-admin

           # cat gitosis.conf

           ------------------------------------------------

           [gitosis]

           [group gitosis-admin]

           writable = gitosis-admin

           members = git@node2.example.com

           ------------------------------------------------

           # ls keydir/

           -------------------------

           git@node2.example.com.pub

           -------------------------

           # cp /tmp/id_rsa.pub keydir/john.pub

           # vi gitosis.conf

           ————————————————————————————————————

           [gitosis]

           [group gitosis-admin]

           writable = gitosis-admin

           members = git@node2.example.com

           [group test]

           writable = test

           members = git@node2.example.com john

           ————————————————————————————————————

           # git add .

           # git commit -am "add member john and project foo"

           # git push

       3. 用户git添加项目test

       复制代码

           

       代码如下:

       # su - git

           # cd ~/projects

           # mkdir test

           # cd test

           # git init

           # echo "Hello World." hello.txt

           # git add hello.txt

           # git commit -am 'first commit'

           # git remote add origin git@node2.example.com:test.git

           # git push origin master

       4. 用户 john clone test并修改hello.txt

       复制代码

           

       代码如下:

       # su - john

           # git clone git@node2.example.com:test.git

           # cd test

           # date hello.txt

           # git commit -am 'add time to hello.txt' git push

       整个过程分为:

       1.通过修改gitosis-admin管理gitosis用户权限,需要clone到本地,然后修改配置文件,最后add push将结果推送到远程实现权限修改.

       2.添加系统用户,生成该用户公钥,并将其复制到keydir下,实现该用户有权限进行git等相关操作.

       3.登陆该用户账户进行git相关操作,修改完后commit,push到中服务器即可完成仓库权限配置.

七.安装gitweb

       1.首先我们需要Git的源码,其中带有GitWeb,并能生成定制的CGI脚本:

       复制代码

           

       代码如下:

       # git clone git://git.kernel.org/pub/scm/git/git.git

           # cd git/

           # make GITWEB_PROJECTROOT="/home/git/repositories" prefix=/usr gitweb

           # cp -rf gitweb /usr/local/apache2/htdocs/

       注: 通过指定 GITWEB_PROJECTROOT 变量告诉编译命令 Git 仓库的位置

           2.设置Apache以CGI方式运行该脚本,并添加一个VirtualHost配置:

       (1).加载apache的vhost配置文件

       复制代码

           

       代码如下:

       # vi /usr/local/apache2/conf/

           DocumentRoot /usr/local/apache2/htdocs/gitweb

           Directory /usr/local/apache2/htdocs/gitweb

           Options +ExecCGI

           AllowOverride All

           order allow,deny

           Allow from all

           AddHandler cgi-script cgi pl

           DirectoryIndex gitweb.cgi

           /Directory

           /VirtualHost

           ——————————————————————————————————————————

       (4).安装Time/HiRes.pm perl模块

       首次打开web页面报Can't locate Time/HiRes.pm in @INC ….错误

       解决方法:

       复制代码

           

       代码如下:

       # yum install perl-devel perl-CPAN -y

           # perl -MCPAN -e shell

           cpan[2] install Time::HiRes

           cpan[3] exit

       (5).重启apache服务

       复制代码

           

       代码如下:

       # /usr/local/apache2/bin/apachectl restart

       (6).修改本机HOST,并打开gitweb页面

       

           

       大功告成....

关键词:趋势低点源码

copyright © 2016 powered by 皮皮网   sitemap