jenkins setup
parent
101e638ba0
commit
ad1fe857cc
File diff suppressed because it is too large
Load Diff
@ -1,149 +1,176 @@
|
||||
# Useful shell command
|
||||
|
||||
* commands
|
||||
|
||||
```shell
|
||||
// add a user to root group
|
||||
$ visudo
|
||||
|
||||
# User privilege specification
|
||||
root ALL=(ALL:ALL) ALL
|
||||
newuser ALL=(ALL:ALL)ALL
|
||||
|
||||
hold `ctrl` and press `x` to save and exit
|
||||
|
||||
// list all running process
|
||||
$ ps aux
|
||||
```
|
||||
|
||||
|
||||
|
||||
* run as root
|
||||
|
||||
```shell
|
||||
user@host$ sudo su -
|
||||
|
||||
// prompt will show root login
|
||||
root@host$
|
||||
```
|
||||
|
||||
|
||||
|
||||
* add a user to a group
|
||||
|
||||
```shell
|
||||
// create docker group
|
||||
$ sudo groupadd docker
|
||||
|
||||
// add current user to group
|
||||
$ sudo usermod -aG docker ${USER}
|
||||
|
||||
// restart to take effect
|
||||
```
|
||||
|
||||
|
||||
|
||||
* change file permission
|
||||
|
||||
```shell
|
||||
|
||||
// excecute, read, write
|
||||
$ chmod 777 filename
|
||||
|
||||
// made executable
|
||||
$ chmod +x envtest.sh
|
||||
```
|
||||
|
||||
## node version manager [nvm](https://github.com/nvm-sh/nvm)
|
||||
|
||||
* For proper installing, using version manager for nodejs to install nodejs/npm
|
||||
* use nvm
|
||||
* to avoid npm version conflict installation with nodejs
|
||||
* to install / switch to lower / newer version on any version ubuntu
|
||||
* ubuntu 20.10 default support node 12
|
||||
* ubuntu 19.10 default support node 10
|
||||
|
||||
```shell
|
||||
// installation
|
||||
|
||||
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
|
||||
|
||||
$ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
|
||||
|
||||
$ export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
|
||||
|
||||
# This loads nvm
|
||||
$ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||||
|
||||
// to install node version 10.10.0
|
||||
$ nvm install 10.10.0
|
||||
|
||||
// remove node to solve conflicting version
|
||||
$ sudo apt-get remove nodejs
|
||||
$ sudo apt autoremove
|
||||
```
|
||||
|
||||
* ssh id
|
||||
|
||||
```shell
|
||||
$ ssh-keygen
|
||||
|
||||
// copy ssh public key to host .ssh/authorized_keys to allow passwordless ssh
|
||||
$ ssh-copy-id -i abc@host
|
||||
|
||||
// alternatively, copy local .ssh/rsa_id.pub content into target server authorized_keys
|
||||
|
||||
|
||||
```
|
||||
|
||||
* environments
|
||||
|
||||
```shell
|
||||
// add global variable
|
||||
// method1 : cli
|
||||
$ export VARNAME="value"
|
||||
$ set VARNAME="Value"
|
||||
|
||||
// add local variable
|
||||
$ VARNAME=Value
|
||||
|
||||
// remove
|
||||
$ unset VARNAME
|
||||
$ VARNAME=''
|
||||
|
||||
// user wide env
|
||||
$ sudo vi ~/.bashrc
|
||||
|
||||
..
|
||||
export NAME=Value
|
||||
...
|
||||
|
||||
// system wide ENV file
|
||||
$ nano /etc/environment
|
||||
|
||||
// reload a file
|
||||
$ source /etc/bash.bashrc
|
||||
|
||||
// show a variable
|
||||
$ echo $VARNAME
|
||||
|
||||
// show all variables
|
||||
$ printenv | sort | less
|
||||
$ env | grep GNOME
|
||||
|
||||
$ myvar=(first second third)
|
||||
$ echo ${myvar[2]}
|
||||
third
|
||||
$ echo ${myvar[*]}
|
||||
first second third
|
||||
|
||||
```
|
||||
|
||||
* startup file execution order from login shell
|
||||
* `/etc/profile`
|
||||
* `$HOME/.bash_login`
|
||||
* `$HOME/.bash_profile`
|
||||
* `$HOME/.profile`
|
||||
|
||||
* startup file from interactive shell
|
||||
* `.bashrc` instead of `/etc/profile`
|
||||
# Useful shell command
|
||||
|
||||
* commands
|
||||
|
||||
```shell
|
||||
// add a user to root group
|
||||
$ visudo
|
||||
|
||||
# User privilege specification
|
||||
root ALL=(ALL:ALL) ALL
|
||||
newuser ALL=(ALL:ALL)ALL
|
||||
|
||||
hold `ctrl` and press `x` to save and exit
|
||||
|
||||
// list all running process
|
||||
$ ps aux
|
||||
```
|
||||
|
||||
|
||||
|
||||
* run as root
|
||||
|
||||
```shell
|
||||
user@host$ sudo su -
|
||||
|
||||
// prompt will show root login
|
||||
root@host$
|
||||
```
|
||||
|
||||
|
||||
|
||||
* add a user to a group
|
||||
|
||||
```shell
|
||||
// create docker group
|
||||
$ sudo groupadd docker
|
||||
|
||||
// add current user to group
|
||||
$ sudo usermod -aG docker ${USER}
|
||||
|
||||
// restart to take effect
|
||||
```
|
||||
|
||||
|
||||
|
||||
* change file permission
|
||||
|
||||
```shell
|
||||
|
||||
// excecute, read, write
|
||||
$ chmod 777 filename
|
||||
|
||||
// made executable
|
||||
$ chmod +x envtest.sh
|
||||
```
|
||||
|
||||
## node version manager [nvm](https://github.com/nvm-sh/nvm)
|
||||
|
||||
* For proper installing, using version manager for nodejs to install nodejs/npm
|
||||
* use nvm
|
||||
* to avoid npm version conflict installation with nodejs
|
||||
* to install / switch to lower / newer version on any version ubuntu
|
||||
* ubuntu 20.10 default support node 12
|
||||
* ubuntu 19.10 default support node 10
|
||||
|
||||
```shell
|
||||
// installation
|
||||
|
||||
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
|
||||
|
||||
$ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
|
||||
|
||||
$ export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
|
||||
|
||||
# This loads nvm
|
||||
$ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||||
|
||||
// to install node version 10.10.0
|
||||
$ nvm install 10.10.0
|
||||
|
||||
// remove node to solve conflicting version
|
||||
$ sudo apt-get remove nodejs
|
||||
$ sudo apt autoremove
|
||||
```
|
||||
|
||||
* ssh id
|
||||
|
||||
```shell
|
||||
$ ssh-keygen
|
||||
|
||||
// copy ssh public key to host .ssh/authorized_keys to allow passwordless ssh
|
||||
$ ssh-copy-id -i abc@host
|
||||
|
||||
// alternatively, copy local .ssh/rsa_id.pub content into target server authorized_keys
|
||||
|
||||
|
||||
```
|
||||
|
||||
* environments
|
||||
|
||||
```shell
|
||||
// add global variable
|
||||
// method1 : cli
|
||||
$ export VARNAME="value"
|
||||
$ set VARNAME="Value"
|
||||
|
||||
// add local variable
|
||||
$ VARNAME=Value
|
||||
|
||||
// remove
|
||||
$ unset VARNAME
|
||||
$ VARNAME=''
|
||||
|
||||
// user wide env
|
||||
$ sudo vi ~/.bashrc
|
||||
|
||||
..
|
||||
export NAME=Value
|
||||
...
|
||||
|
||||
// system wide ENV file
|
||||
$ nano /etc/environment
|
||||
|
||||
// reload a file
|
||||
$ source /etc/bash.bashrc
|
||||
|
||||
// show a variable
|
||||
$ echo $VARNAME
|
||||
|
||||
// show all variables
|
||||
$ printenv | sort | less
|
||||
$ env | grep GNOME
|
||||
|
||||
$ myvar=(first second third)
|
||||
$ echo ${myvar[2]}
|
||||
third
|
||||
$ echo ${myvar[*]}
|
||||
first second third
|
||||
|
||||
```
|
||||
|
||||
* startup file execution order from login shell
|
||||
* `/etc/profile`
|
||||
* `$HOME/.bash_login`
|
||||
* `$HOME/.bash_profile`
|
||||
* `$HOME/.profile`
|
||||
|
||||
* startup file from interactive shell
|
||||
* `.bashrc` instead of `/etc/profile`
|
||||
|
||||
|
||||
|
||||
## Rebuild HOME
|
||||
|
||||
* Repair fstab
|
||||
|
||||
```sh
|
||||
// find the new UUID
|
||||
$ blkid
|
||||
|
||||
// update the UUID
|
||||
$ nano /etc/fstab
|
||||
```
|
||||
|
||||
|
||||
|
||||
* login as su
|
||||
|
||||
```sh
|
||||
$ sudo su
|
||||
|
||||
//
|
||||
$ mkhomedir_helper <username>
|
||||
```
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue