目录 [+]
- 1. VirtualBox 中让虚拟机的分辨率自适应窗口大小
- 2. win10 安装 ubuntu
- 3. sudo: /usr/bin/sudo 必须属于用户 ID 0
- 4. gcc: error: parser_lex.c: No such file or directory
- 5. Install own OpenSSL on MacOS
- 6. ramdisk 使用
- 7. 安装 tbb
- 8. MySQL 的一些相关操作
- 9. 源码安装 GCC 5
- 10. .ssh 文件权限问题
- 11. Linux 设置最大可打开文件数
- 12. 修改 huge page size 为 1GB
- 13. 关闭超线程
- 14. disable CPU
- 15. Mac 下 brew 切换为国内源
记录平时走过的坑。
1. VirtualBox 中让虚拟机的分辨率自适应窗口大小
(1) 打开虚拟机 Devices -> Install Guest Additions…(it’s like inserting a cd to cdrom drive)
(2) 在虚拟机中运行以下命令:
1 | sudo mkdir --p /media/cdrom |
可以在虚拟机窗口的下面选择调整大小。
2. win10 安装 ubuntu
https://segmentfault.com/a/1190000014523888
3. sudo: /usr/bin/sudo 必须属于用户 ID 0
一不小心把 /usr 目录的权限设置成了普通的用户,导致 sudo 用不了,输入 sudo 提示:
sudo: /usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位
重启进入 recovery 模式。
recovery模式 –> 选择 root
进入命令行,执行:
1 | chown root:root /usr/bin/sudo |
reboot 重启。
不过还是建议把整个 usr 目录的所有者改成 root:
1 | chown -R root:root /usr |
4. gcc: error: parser_lex.c: No such file or directory
从 https://github.com/filebench/filebench 安装 filebench 时,遇到 gcc: error: parser_lex.c: No such file or directory
Solution: sudo yum install flex
即可。
5. Install own OpenSSL on MacOS
(1) brew install openssl
(2) open ~/.bash_profile
add:
1 | export PATH="/usr/local/opt/openssl/bin:$PATH" |
(3) source ~/.bash_profile
6. ramdisk 使用
创建挂载目录: mkdir /home/chenhao/ramdisk
查看内存使用量: htop
分配内存并挂载: sudo mount -t tmpfs -o size=10240m ramdisk /home/chenhao/ramdisk
查看: df -h
修改 /etc/fstab
自动挂载: tmpfs /home/chenhao/ramdisk tmpfs rw,relatime,size=10G 0 0
7. 安装 tbb
1 | git clone https://github.com/intel/tbb.git |
Inside tbb/build will be two new folders, one for the release version and the other for the debug version. Those folders are named like “architecture_ldVersion_g++Version_kernelVersion”.
I recommend setting some variables, for example in the .bashrc file, like:
1 | TBB_INSTALL_DIR = $HOME/tbb |
Example
1 | // main.cpp |
1 | g++ main.cpp -I$TBB_INCLUDE -Wl,-rpath,$TBB_LIBRARY_RELEASE -L$TBB_LIBRARY_RELEASE -ltbb |
With -Wl,-rpath,$TBB_LIBRARY_RELEASE we are telling the dynamic linker where to find libtbb.so
Installation for Apple clang 5.1: [thanks to rwols for the info]
Instead of typing make, type make compiler=clang or make compiler=clang stdlib=libc++
8. MySQL 的一些相关操作
(1) mysql 创建用户
用此命令进入mysql:mysql -u root mysql
查询用户: select Host,User,Password from mysql.user;
删除用户名为空的用户: delete from mysql.user where user='';
查看当前用户: SELECT CURRENT_USER();
reference: https://www.jianshu.com/p/d7b9c468f20d
命令:
1 | CREATE USER 'username'@'host' IDENTIFIED BY 'password'; |
username
:你将创建的用户名host
:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%password
:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器
e.g.:
1 | CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456'; |
刷新用户权限: FLUSH PRIVILEGES;
(2) 创建数据库
创建: CREATE DATABASE linkdb
显示: show databases
(3) 授权
先要用 root 登陆: mysql -u root mysql
在选择数据库: use <database name>
在授权,最后刷新权限: FLUSH PRIVILEGES;
命令:
1 | GRANT privileges ON databasename.tablename TO 'username'@'host' |
privileges
:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALLdatabasename
:数据库名tablename
:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用表示,如.*
e.g.:
1 | GRANT SELECT, INSERT ON test.user TO 'pig'@'%'; |
9. 源码安装 GCC 5
下载源码并解压。
进入源码路径后运行: ./contrib/download_prerequisites
新建 build 目录: mkdir build
进入 build 目录后运行: ../configure –-prefix=path --enable-checking=release --enable-languages=c,c++ --disable-multilib
prefix 指定安装目录。
然后在 build 目录下 make & make install
10. .ssh 文件权限问题
.ssh
文件夹 和 authorized_keys
文件必须满足一定的权限才行。
1 | chmod 600 .ssh/authorized_keys |
11. Linux 设置最大可打开文件数
查看 ulimit -n
设置 ulimit -n 65535
修改配置:
(1) 打开 /etc/security/limits.conf
添加 username hard nofile 1048576
(2) 打开 /etc/ssh/sshd_config
添加 UsePAM=yes
(3) 打开 /etc/pam.d/sshd
添加 session required pam_limits.so
如果无法生效,可以先切换到root用户,再切换回来
12. 修改 huge page size 为 1GB
(1) 追加 default_hugepagesz=1G hugepagesz=1G 到 /etc/default/grub 里的变量 GRUB_CMDLINE_LINUX 中,
(2) 运行 grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
(3) reboot
13. 关闭超线程
echo off > /sys/devices/system/cpu/smt/control
14. disable CPU
echo 0 > /sys/devices/system/cpu/cpu1/online
lscpu
可以查看 CPU 的具体信息
15. Mac 下 brew 切换为国内源
参考:https://cloud.tencent.com/developer/article/1614039
替换为阿里源
1 | 查看 brew.git 当前源 |
重置为官方源
1 | 重置 brew.git 为官方源 |