아래처럼 명령을 입력할 수 있다.
nmcli con up "VPN_NAME"
Code language: JavaScript (javascript)
그리고 연결 이름을 확인하려면,
nmcli con
연결이 up이니, 연결을 끊는 것이 down 인 건 자명하겠지?
아래처럼 명령을 입력할 수 있다.
nmcli con up "VPN_NAME"
Code language: JavaScript (javascript)
그리고 연결 이름을 확인하려면,
nmcli con
연결이 up이니, 연결을 끊는 것이 down 인 건 자명하겠지?
패키지 설치
sudo apt install pm-utils hibernate
/swapfile 확인.
cat /proc/swaps
Filename Type Size Used Priority
/swapfile file 2097148 0 -2
UUID 확인
findmnt -no UUID -T /swapfile
5c0028fe-edc4-4b17-93d0-b78fda1f83b8
여기서 UUID 기록.
오프셋 확인
sudo filefrag -v /swapfile
Filesystem type is: ef53
File size of /swapfile is 2147483648 (524288 blocks of 4096 bytes)
ext: logical_offset: physical_offset: length: expected: flags:
0: 0.. 32767: 34816.. 67583: 32768:
1: 32768.. 63487: 67584.. 98303: 30720:
2: 63488.. 96255: 100352.. 133119: 32768: 98304:
3: 96256.. 126975: 133120.. 163839: 30720:
4: 126976.. 159743: 165888.. 198655: 32768: 163840:
5: 159744.. 190463: 198656.. 229375: 30720:
6: 190464.. 223231: 231424.. 264191: 32768: 229376:
7: 223232.. 253951: 264192.. 294911: 30720:
8: 253952.. 286719: 296960.. 329727: 32768: 294912:
9: 286720.. 319487: 329728.. 362495: 32768:
10: 319488.. 352255: 362496.. 395263: 32768:
11: 352256.. 385023: 395264.. 428031: 32768:
12: 385024.. 417791: 428032.. 460799: 32768:
13: 417792.. 450559: 460800.. 493567: 32768:
14: 450560.. 481279: 493568.. 524287: 30720:
15: 481280.. 514047: 557056.. 589823: 32768: 524288:
16: 514048.. 524287: 589824.. 600063: 10240: last,eof
여기서 physical_offset: 의 처음인 34816을 기록.
/etc/default/grub 파일 수정
아래 예시처럼 변경.
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=5c0028fe-edc4-4b17-93d0-b78fda1f83b8 resume_offset=34816"
GRUB 업데이트
sudo update-grub
/etc/initramfs-tools/conf.d/resume 파일 생성
내용은 아래처럼.
RESUME=UUID=5c0028fe-edc4-4b17-93d0-b78fda1f83b8 resume_offset=34816
initramfs 재생성
sudo update-initramfs -c -k all
재부팅 후, hibernation 확인
sudo systemctl hibernate
공유 사무실 등에서 일할 때 계속 불필요하게 네트워크 프린터를 찾아댄다. 불편하다. 나는 프린터도 쓰지 않는데 말이다. 그렇다면,
sudo systemctl stop cups-browsed.service sudo systemctl disable cups-browsed.service
이렇게 해서 해결하자.
주로 보안 제약이 강한 대기업 블로그에서 주로 요구하는 사항인데, 관리자나 로그인 페이지의 접근을 IP 대역으로 막는다.
주의할 점은 관리자 페이지를 막아도 admin-ajax.php, admin-post.php 의 접근은 열어 두어야 한다는 거다. 그것까지 다 막으면 워드프레스의 일반적인 폼 제출과 AJAX 요청까지 다 틀어막혀 사이트 동작이 되지 않을 수 있다.
아래 코드를 참고하여 아파치 설정에 추가한다. LocationMatch 지시자는 .htaccess 에 넣을 수 없다는 것에 유의한다. 그리고 .htacess 파일에 넣지 못하고 일반 설정 파일에 삽입하니, 수정 후 서버 재시작을 꼭 해주는 것을 잊지 말자.
<LocationMatch "wp-admin/(?!admin-ajax|admin-post).*\.php$|wp-signup\.php$|wp-login\.php$"> Require all denied Require ip 127.0.0.1 </LocationMatch> # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
스크립트 minification 을 위해 자주 사용하는 gulpfile.js 템플릿 코드
const gulp = require('gulp') , uglify = require('gulp-uglify') , uglifycss = require('gulp-uglifycss') , rename = require('gulp-rename') , sourcemaps = require('gulp-sourcemaps') , clean = require('gulp-clean') ; gulp.task('min-js', function () { return gulp .src([ 'assets/js/**/*.js', '!assets/js/**/*.min.js', '!assets/js/vendor/*.js', ]) .pipe(sourcemaps.init()) .pipe(uglify()) .pipe(rename(function (path) { path.extname = '.min.js'; })) .pipe(sourcemaps.write('.')) .pipe(gulp.dest('assets/js')); }); gulp.task('min-css', function () { return gulp .src([ 'assets/css/**/*.css', '!assets/css/**/*.min.css', '!assets/css/vendor/*.css', ]) .pipe(uglifycss()) .pipe(rename(function (path) { path.extname = '.min.css'; })) .pipe(gulp.dest('assets/css')); }); gulp.task('clean', function () { return gulp .src([ 'assets/**/*.min.{js,css}', '!assets/css/vendor/*.css', '!assets/js/vendor/*.js', ], {read: false}) .pipe(clean()) }); gulp.task('watch', function () { gulp.watch([ 'assets/js/**/*.js', '!assets/js/**/*.min.js', '!assets/js/vendor/*.js', ], gulp.parallel(['min-js'])); gulp.watch([ 'assets/css/**/*.css', '!assets/css/**/*.min.css', '!assets/css/vendor/*.css', ], gulp.parallel(['min-css'])); }); gulp.task('default', gulp.series('clean', 'min-js', 'min-css', 'watch')); gulp.task('build', gulp.series('clean', 'min-js', 'min-css'));
#!/bin/bash # touchpad_toggle SETTING='org.cinnamon.settings-daemon.peripherals.touchpad touchpad-enabled' ENABLED=$(gsettings get ${SETTING}) if [[ 'true' = ${ENABLED} ]]; then gsettings set ${SETTING} false elif [[ 'false' = ${ENABLED} ]]; then gsettings set ${SETTING} true fi