UOS全盘安装各分区作用解释

[

lsblk 命令 查看分区容量分配状态

执行 blkid 我们可以看到全盘安装后硬盘被划分成了7个分区。

注意到LABEL那列了吗,那里是各分区的标签名。

EFI (300MB):从上往下看第一个分区写着 EFI ,这表示这块硬盘是以UEFI作为引导模式。EFI里的文件就是系统的引导文件,没了这个分区系统就无法通过UEFI引导启动

Boot (1.5GB):这是启动分区,系统通过EFI进入引导程序便会通过这个分区里的Linux内核启动进入系统。

Roota(15GB):A根分区,这是UOS特有的a/b分区和安卓的更新机制类似,A根是系统主根分区。开机登录系统就是这里。

Rootb(15GB):B根分区,与A根分区不同这个分区只在更新的时候使用到,用于备份A根分区的数据。

_dde_data(剩余硬盘空间):数据盘分区,这个就是我们看到的数据盘分区。用户数据和安装的软件都在这个分区,是所有分区里空间最大的。

Backup(19GB):恢复分区,和B根分区功能类似。但它只在你通过grub启动菜单选择恢复系统的时候会使用,也就是一键还原。使用后整个系统将会恢复到安装系统时的状态。

SWAP(视内存大小而定):交换分区,也就是我们常说的虚拟内存。通常情况下建议设置为内存大小的2倍,比如1G内存分配2G虚拟内存,如果你的内存超过8G建议最大设置为16G,太多只会浪费硬盘空间。

vscode安装JetBrainsMono字体

已经弃用webstrom大半年了,使用vscode的过程非常愉快。但是我还是忘不了jb家的JetBrainsMono字体,所以今天给vscode也整一个。

  1. 下载字体文件 官网下载
  2. 打开压缩包进入 /ttf文件夹,将所有字体进行安装
  3. 打开vscode 快捷键Ctrl+,搜索settings.json进行编辑
  4. 添加
"editor.fontFamily": "JetBrains Mono",
"editor.fontLigatures": true

完事 手动滑稽

Android 6.0以上动态获取读写权限

原文:Link

修改 AndroidManifest.xml,以存储卡读写权限为例

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />

在MainActivity中添加动态获取权限的代码
Step1:编写一个权限校验的方法

private void initPermission() {
        String[] permissions = {
                Manifest.permission.READ_EXTERNAL_STORAGE,
                Manifest.permission.WRITE_EXTERNAL_STORAGE
        };
        ArrayList<String> toApplyList = new ArrayList<>();

        for (String perm : permissions) {
            if (PackageManager.PERMISSION_GRANTED != ContextCompat.checkSelfPermission(Objects.requireNonNull(this), perm))  {
                toApplyList.add(perm);
            }
        }
        String[] tmpList = new String[toApplyList.size()];
        if (!toApplyList.isEmpty()) {
            ActivityCompat.requestPermissions(this, toApplyList.toArray(tmpList), 1);
        }
    }

Step2:在onCreate中调用

protected void onCreate(Bundle savedInstanceState) {
        //init face model at here
        initPermission();
        initFaceDetectModel();
        face_engine_obj = new FaceEngine();
        String re_turn = face_engine_obj.StartEngine("./models");
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

作者:RunningJiang
链接:https://www.jianshu.com/p/051f8d333152
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

不禁用IPV6的同时xdroid可以联网的办法

另一个不禁用ipv6的方法:link

sudo apt install tinyproxy
sudo systemctl start tinyproxy.service
sudo systemctl enable tinyproxy.service 

给qq设置http代理地址为:127.0.0.1:8888
可以修改/etc/tinyproxy/tinyproxy.conf文件把端口改成其它

下面方法不具备通用性,看上面的方法
deepin-wine版的QQ想要正常接受图片需要禁用IPV6,但禁用IPV6后xDroid就无法联网。
想2个都能正常使用该怎么办?
自己复制下面这段代码执行:

我的测试环境是UOS SP1 和 xDroid4.0版本。其它发行版应该都可以用

sudo sh -c "cat > /etc/rc.local" << EOF
#!/bin/sh -e
echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
exit 0
EOF~~

~~重启你就会发现xDroid可以正常联网,QQ也可以正常接受图片了~~

2020 我在使用VScode时安装的插件(针对前端开花推荐)

针对前端开花的VScode插件推荐

呐,半年前分享过一次插件推荐,但是即使vscode打上很多的插件开发效率仍然无法与一些IDE相比(webstrom phpstrom....)但是随着版本的更新vscode也集成了一些热门的功能而且插件质量也有所提升,最近开发都在使用VScode逐渐的减少使用webstrom。

呐在这里F_picacho向大家分享下我在使用VScode整理出的插件清单供大家参考。 针对上一次的分享内容有删改,因为vscode最新版集成了一些功能所以有的插件可以删除了,留着影响运行效率。


主题类

默认的vscode暗色系非常生硬,开发过程极影响心情。有一款能让自己愉快编码的主题也会在一定程度上提升编程效率和灵感。当然,不同人对于视觉的偏好是不同的。

f821b2a9fc875b31

Material Icon Theme 文件类型添加对应的图标展示
One Dark Pro 一款看着更柔顺的主题
Chinese (Simplified) Language Pack for Visual Studio Code 中文简体语言包


通用类

Prettier – Code formatter 一键Prettier风格 输入一串指令皆可把代码改变成流行的Prettier风格
694bda6fe708c94a

注意这里需要进行对seetings.json文件进行配置 否则可能无法正常使用
ctrl+shift+p进入搜索 搜索seetings.json
插件其启用快捷键

// 默认代码风格配置shift+alt+f 或者直接使用指令Format Selection
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"window.zoomLevel": 0,
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},

Auto Complete Tag 修改 html 标签,自动帮你完成尾部闭合标签的同步修改

Path Intellisense 资源文件自动路劲补全

Preview on Web Server 热更新服务器  ctrl+shift+v在视窗内启动预览窗口 ctrl+shift+l在浏览器预览

这里不推荐live server 因为很长时间没有更新了 后期使用还有一些跨域的问题

open in browser 以本地的方式打开文件 支持所有内核浏览器 启用快捷键alt+shift+b

Bracket Pair Colorizer 2 标记代码块方便审计代码

JavaScript (ES6) code snippets 提示追加ES6语法模板


CSS预处理语言类

Easy Sass 编译Sass文件 不需要安装额外的执行环境 但是需要进行配置

    
// Easy sass插件配置
    "easysass.compileAfterSave": true, 
    "easysass.formats": [
           {
               "format": "expanded",
               "extension": ".css"
           },
           {
               "format": "compressed",
               "extension": ".min.css"
           }
       ],
    "easysass.targetDir": "./css/",
    "workbench.iconTheme": "material-icon-theme" //路径

Sass Sass语法提示


VUE类

Vetur Vue语法提示 高亮

Vue VSCode Snippets Vue语法模板快捷输入

 

ventoy启动盘神器-启动任意iso文件进行安装

http://www.ventoy.net/index.html
具体使用方法
screen_uefi

源码地址:

git clone https://gitee.com/longpanda/Ventoy.git
git clone https://github.com/ventoy/Ventoy.git

特性:

  • 100%开源(许可证)
  • 易于使用(入门)
  • 快速(仅受复制iso文件的速度限制)
  • 直接从iso文件启动,无需解压缩
  • 旧版+ UEFI的支持方式相同
  • 支持大于4GB的ISO文件
  • 旧版和UEFI的本机启动菜单样式
  • 支持大多数类型的操作系统,已测试100多个iso文件
  • 不仅可以启动,还可以完成安装过程
  • “兼容Ventoy”的概念
  • 插件框架
  • 引导期间对USB驱动器只读
  • USB正常使用不受影响
  • 版本升级期间的数据无损
  • 发行新发行版时无需更新Ventoy

django 向数据库放入一些初始化数据

假设我们需要在django初始化的时候在数据库提前放谢数据用来测试。
比如:数据库里有一张叫 [site_option] 里面有3个字段 [id] [option_name] [option_value],
我们现在需要在启动django之前向这张表添加1条数据,之后我们需要在Views里获取博客的名称:

index_site_option
id option_name option_value
1 blog_name 这里是F_picachoの领域(๑•̀ㅂ•́)و✧

我们先在app目录下创建一个名叫fixtures的文件夹,现在的目录是这样的:

.
├── index (app的名字)
│   ├── admin.py
│   ├── apps.py
│   ├── fixtures (我们需要创建的文件夹)
│   │   └── initial_data.json(初始化json数据)
│   ├── __init__.py
│   ├── migrations

其中initial_data.json的名字可以随意起 比如简化成 init.json

现在假设你有一个叫site_option的模型

class site_option(models.Model):
    option_name=models.CharField(max_length=50)
    option_value=models.CharField(max_length=100)

那么init.json可以这样写:

[
 {
   "model": "index.site_option", //index是app的名称,site_option是模型的名称
   "pk": 1, //primary key 的简写
   "fields": { //里面是你需要添加的数据
     "option_name":"blog_name",
     "option_value": "这里是F_picachoの领域(๑•̀ㅂ•́)و✧"
   }
 }
//如果想再加1条。
 {
    "model": "index.site_option",
    "pk": 2,
    "fields": {
      "option_name": "blog_url",
      "option_value": "https://seq.ink"
    }
  }
]

现在我们初始化数据:
python manage.py loaddata init.json

PS:这里我们不需要写init.json的具体目录,但需要确保它位于 app 目录下的 fixtures 目录

使用Trubo C时踩的一些坑

1.找不到 inclube

一直报错最后发现是下载的Trubo C有问题。换了个Trubo C就正常了....
还有就是路径可能不正确,在下面修改一下就好了:

2.Ctrl+F9闪退

这个暂时没有什么好的办法解决,好像只在Linux上出现。
需要手动Run。