UBUntu 软件 源配置方法
近期公司产品须要添加一个功能,就是版本号自己主动更新。使用apt-get 实现。
apt-get 软件源配置的方法,參见本人资源里的共享。以下是代码中作为升级的一部分。
FILE *fp;
char buffer[256];
char source_ok[] = "Reading package lists..."; if(0 > system("mv -f /etc/apt/sources.list /etc/apt/sources.list.upgrade"))
printf("cldUp backup old source list error!\n"); fp=fopen("/etc/apt/sources.list","w+");
if(0 == fp)
goto update_done;
fprintf(fp,"deb http://%s/apt %s %s", source_addr, source_dir, source_ver);
printf("\ndeb http://%s/apt %s %s\n", source_addr, source_dir, source_ver);
fclose(fp);
fp=popen("apt-get update 2>&1","r");
while(!feof(fp)){
if(0 == fgets(buffer,sizeof(buffer),fp))
break;
printf("%s",buffer);
fflush(stdout);
if(strstr(buffer,"Failed")){
trace_log(buffer);
printf("scan failed and exit\n");
goto update_done;
}
if(strstr(buffer,source_ok)){
trace_log(buffer); printf("scan sourceok and exit\n");
break;
}
}
pclose(fp); fp=popen("apt-get -y --force-yes install ssh 2>&1","r");
while(!feof(fp)){
if(0 == fgets(buffer,sizeof(buffer),fp))
break; printf("%s",buffer);
if(strstr(buffer,"1 upgraded")){
//save the upgrade info
b_upgrade_success = true;
trace_log(buffer); }
}
pclose(fp);
if(b_upgrade_success)
{
b_upgrade_success = 0; }
update_done: if(0 > system("mv -f /etc/apt/sources.list.upgrade /etc/apt/sources.list"))
printf("restore source list error!\n");
UBUntu 软件 源配置方法的更多相关文章
- 更换ubuntu软件源的方法
第一步:查看本系统Codename 输入lsb_release -a查看本系统Codename,我的codename是bionic,如图: 第二步:搜索与codename对应的镜像地址 我搜索到的是: ...
- [机器学习] Ubuntu 软件源更新(校园网)以及问题总结
最近在折腾Linux,在校园网下怎么能够很好的获取软件很是让我头疼啊~~~ 总结一下吧!!! 首先是校园网的源地址: 清华大学:https://mirrors.tuna.tsinghua.edu.cn ...
- ubuntu修改软件源的方法
最快方法--替换法 刚安装好的ubutun,打开source.list后,用vim替换的方法将所有的us提付出替换为 cn,然后保存退出,更新即可. # vim /etc/apt/source.lis ...
- linux ubuntu 本地镜像 软件源 制作方法
1.配置当前软件源,镜像非常大,所以首先要配置一下载速度快的软件源http://fffo.blog.163.com/blog/static/2119130682014322104136601/2.安装 ...
- 解决安装rpm包依赖关系的烦恼 - yum工具介绍及本地源配置方法
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...
- ubuntu 软件安装配置使用总结(由xmind:Depends:java8-runtime but is not installed引出)
ubuntu 软件安装总结(由xmind:Depends:java8-runtime but is not installed引出) 不知道抽什么风,这几天PC上又用起了linux操作系统.其实之前断 ...
- 《完美应用ubuntu》之全面管理ubuntu软件源
2.全面管理ubuntu软件包 2.1 DEB软件包之间的基本关系: (1)软件仓库:由ubuntu软件包的维护者维护并公开发布的DEB软件包的集合:可位于网络,服务器,硬盘等各种存储介质. (2)软 ...
- 01_ubantu国内软件源配置
查找自己版本对应的软件源 https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/ 以下为19.10版本清华大学的,个人100M的带宽,平均安装速度在600K ...
- 树莓派学习路程No.1 树莓派系统安装与登录 更换软件源 配置wifi
在官网下载raspbian系统镜像,用Win32DiskImager写入TF卡 Image File 选择系统镜像,Device 选择TF卡盘符,Write即可.这样系统就写好了.把内存卡插进树莓派里 ...
随机推荐
- 【Oracle】使用dblink+minus方式迁移数据
一.需求说明 1.数据库a104的表syssde.a4_syssde_department中有1000条数据: 2.数据库a230的表syssde.a4_syssde_department中有800条 ...
- Python第三方库之openpyxl(5)
Python第三方库之openpyxl(5) 气泡图 气泡图类似于散点图,但使用第三个维度来确定气泡的大小,图表可以包括多个项目 from openpyxl import Workbook from ...
- Yii2.0 添加分类category model类
<?php namespace app\models; use yii\db\ActiveRecord; use Yii; use yii\helpers\ArrayHelper; class ...
- PHP过滤器 filter_has_var() 函数
定义和用法 filter_has_var() 函数检查是否存在指定输入类型的变量. 如果成功则返回 TRUE,如果失败则返回 FALSE. 语法 filter_has_var(type, variab ...
- BNUOJ 3580 Oulipo
Oulipo Time Limit: 1000ms Memory Limit: 65536KB This problem will be judged on PKU. Original ID: 3 ...
- ps 批量杀死进程
ps aux | grep xxx |awk '{print $2}'|xargs kill -9
- 【Luogu】P3847调整队形(DP)
题目链接 DP果真是考思维啊 增加一个数的操作等价于删掉那个不和谐的数的操作. 所以1.2操作可以忽略. 剩下3.4操作,则可以设计f[i][j]是将区间[i,j]变成回文序列需要的操作数. if(a ...
- 【Luogu】P1896互不侵犯King(状压DP)
题目链接 真是可恶,被数据范围坑了一把.想要一遍AC的希望破灭了…… 以后大家在做状压DP的时候一定要开long long…… 设f[i][j][k]表示考虑前i行,总共放了j个King,第i行状态为 ...
- [BZOJ2287]【POJ Challenge】消失之物(DP)
传送门 f[i][j]表示前i个物品,容量为j的方案数c[i][j]表示不选第i个物品,容量为j的方案数两个数组都可以压缩到一维 那么f[i][j] = f[i - 1][j] + f[i - 1][ ...
- lua学习随笔
1.1 Chunks 1.2 全局变量 访问一个没有初始化的全局变量也不会出错,只不过的到的结果是nil 如果想删除一个全局变量,只需要将变量赋值为nil 1.3 词法约定 标识符 保留字不能作为 ...