虚拟机配置

虚拟机配置

一、Ubuntu

1.安装vmtools

2.更换镜像源

3.添加 GitHub DNS

 sudo gedit /etc/hosts
 xxx.xxx.xxx.xxx github.com git //本机IP地址
 20.205.243.166 github.com //GitHub.com IP地址
 /etc/init.d/networking restart

4.VS code 扩展

sudo cp /etc/hosts /etc/hosts.bak
sudo vi /etc/hosts
20.43.132.130  update.code.visualstudio.com   # Visual Studio Code download and update server
13.69.68.34  code.visualstudio.com   # Visual Studio Code documentation
104.119.90.120  go.microsoft.com    #  Microsoft link forwarding service
20.150.83.4  vscode.blob.core.windows.net    # Visual Studio Code blob storage, used for remote server
13.107.42.18 marketplace.visualstudio.com    # Visual Studio Marketplace
191.238.172.191 *.gallery.vsassets.io    # Visual Studio Marketplace
191.238.172.191 *.gallerycdn.vsassets.io     # Visual Studio Marketplace
40.70.164.17 rink.hockeyapp.net      # Crash reporting service
13.75.34.168 bingsettingssearch.trafficmanager.net   # In-product settings search
138.91.148.66 vscode.search.windows.net    # In-product settings search
raw.githubusercontent.com       # GitHub repository raw file access
50.17.211.206 vsmarketplacebadge.apphb.com    # Visual Studio Marketplace badge service
117.18.232.200 az764295.vo.msecnd.net    # Visual Studio Code download CDN
42.80.217.156 download.visualstudio.microsoft.com  # Visual Studio download server, provides dependencies for some VS Code extensions (C++, C#)
13.67.9.5 vscode-sync.trafficmanager.net     # Visual Studio Code Settings Sync service
13.69.68.64  vscode-sync-insiders.trafficmanager.net  # Visual Studio Code Settings Sync service (Insiders)
13.107.5.93 default.exp-tas.com
resolvectl flush-caches

5.更换内核

sudo add-apt-repository ppa:cappelikan/ppa
sudo apt update
sudo apt install mainline//安装Mainline工具

切换内核
gedit /boot/grub/grub.cfg  //查看需要更换内核的顺序位
sudo gedit /etc/default/grub //更换开机文件
sudo update-grub
reboot

apt寻找内核版本
apt-cache search linux | grep 5.8.0-63
apt安装
apt install linux-image-5.8.0-63-generic
#阿里源 Ubuntu 22.04
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse

6.docker

docker 更换源
vim  /etc/docker/daemon.{
	"registry-mirrors": [
        "https://hub.uuuadc.top", 
        "https://docker.anyhub.us.kg", 
        "https://dockerhub.jobcher.com",  
        "https://docker.ckyl.me", 
        "https://docker.awsl9527.cn"
        ]
}
sudo systemctl daemon-reload		#重启daemon进程
sudo systemctl restart docker		#重启docker

docker 修改DNS
永久修改DNS方法
vim  /etc/systemd/resolved.con
systemctl restart systemd-resolved
systemctl enable systemd-resolved
mv /etc/resolv.conf /etc/resolv.conf.bak
ln -s /run/systemd/resolve/resolv.conf /etc/
临时修改DNS
vim /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4

docker build -t your_image_name:your_tag .
docker build -t myapp:latest .
docker run -d -p "0.0.0.0:8090:80" -h "stack" --name="stack" stack

#include "kernel/param.h"
#include "kernel/types.h"
#include "kernel/stat.h"
#include "user/user.h"
#include "stddef.h"

#define MAX 1024

int main(int argc, char *argv[]) 
{
    if(argc < 2) 
    {
        fprintf(2, "Usage: xargs command\n");
        exit(1);
    }
    char *argvs[MAXARG];//存放所有参数
    int index = 0;
    for(int i = 1; i < argc; i++) //依次读入
    {
        argvs[index++] = argv[i];
    }
    char buf[MAX];
    int n = read(0, buf, sizeof(buf));
    if(n < 0)
    {
        fprintf(2," input  error");
        exit(1);
    }
    char temp[MAX];//临时缓冲区

    int k = 0;
    for(int i = 0; i < n; i++) //以“\n”为分解符
    {
        if(buf[i] != '\n') 
        {
           temp[k++] = buf[i]; 
        }
    else //创建子进程执行命令
    {
        temp[k] = 0;
        argvs[index] = temp;
        int rc = fork();
        if(rc < 0)
        {
            fprintf(2,"error : create fork fail\n");
            exit(1);
        }
        else if(rc== 0) 
        {
            if (exec(argv[1], argvs) < 0)
            {
                fprintf(2, "error: exec fail \n");
                exit(1);
            }
        }
        else 
        {
            wait(NULL);
            k = 0;
            memset(temp, 0, sizeof(temp));//重置temp
        }
    }
    }
    exit(0);
}
posted @ 2024-12-25 11:11  rong_yan  阅读(32)  评论(0)    收藏  举报