Mục lục
Giới thiệu
TMUX là một tiện ích cho phép chuyển qua lại giữa các chương trình độc lập ngay trên một terminal, tách các chương trình ra một terminal riêng mà vẫn giữ được trạng thái hoạt động của chúng. Và cái tôi hay dùng nhất là sử dụng TMUX để chạy các ứng dụng trong khoảng thời gian dài mà không lo bị mất session hay mất kết nối tới server. Ngoài ra TMUX còn làm được nhiều việc hơn thế nữa… Chi tiết xem địa chỉ: tmux
Đây là một phần mềm nho nhỏ nhưng cực kỳ hữu ích. Lợi ích lớn nhất mà TMUX đem lại là cho phép bạn tái truy cập lại một session sau khi kết nối bị mất. Giả sử tình huống như sau: Bạn đang thực hiện một long running action như import file sql có dung lượng lớn, rsync, scp data… Và đột nhiên kết nối ssh bị mất do network nhà bạn gặp trục trặc. Tiến trình import, rsync, scp vẫn hoạt động nhưng bạn không thể thấy nó đang diễn ra như thế nào. Làm cách nào để tái truy cập session đã mất. TMUX chính là thiên thần cứu rỗi bạn trong tình huống đó. Xin bạn chú ý, thiên thần này chỉ giúp bạn nếu bạn nhờ cậy trước khi thực hiện long running action. Nhưng như thế cũng đã là tốt lắm rồi.
Một điểm nữa tôi thấy TMUX khá hấp dẫn là cho phép tạo nhiều window, mỗi window lại cho phép tạo nhiều pane. TMUX sẽ biến terminal của bạn trông rất ngầu. Rất tiện khi bạn dễ dàng thao tác trên nhiều cửa sổ. Tuy vậy, nếu bạn lạm dụng thì chúng lại khiến bạn rối trí:
Cài đặt
Lệnh cài đặt rất đơn giản:
sudo apt-get update sudo apt-get install tmux
Một số lệnh hay dùng trên TMUX
TMUX hỗ trợ rất nhiều lệnh, ở đây chỉ nói một số lệnh cơ bản hay được sử dụng.
Các lệnh liên quan tới Session
Tạo một session mới:
tmux
Tạo một session mới kèm theo tên gọi:
tmux new -s session-name
Attach session đã được đặt tên:
tmux a -t session-name
Hiện thị danh sách các sessions:
tmux ls
Xoá một session:
tmux kill-session -t session-name
Các phim tắt thao tác trong TMUX
Mặc định của TMUX, prefix của các lệnh sẽ là tổ hợp Ctrl+b, cũng giống như gõ Esc để chuyển về chế độ dòng lệnh như Vim vậy.
Các lệnh làm việc với cửa sổ
Ctrl-b c Tạo cửa sổ mới
Ctrl-b d Thoát khỏi TMUX mà không đóng Session.
Ctrl+b w Xem danh sách cửa sổ hiện tại
Ctrl-b l Dịch tới cửa sổ được chọn trước đó
Ctrl-b n Chuyển đến cửa sổ tiếp theo
Ctrl-b p Chuyển đến cửa sổ trước đó
Ctrl-b & Xóa/Đóng cửa sổ hiện tại
Ctrl-b , Đổi tên cửa sổ
Ctrl-b q Hiển thị thứ tự cửa sổ
Ctrl-b <Window number> Chuyển tới cửa sổ có thứ tự đưa ra
Ctrl+b f Tìm kiếm cửa sổ
Các lệnh làm việc với panel
Ctrl+b % Chia đôi màn hình theo chiều dọc
Ctrl+b “ Chia đôi màn hình theo chiều ngang
Ctrl-b o Chuyển tới panel tiếp theo
Ctrl-b <Phím mũi tên> Chuyển giữa các panel
Ctrl+b x Xóa panel
Ctrl-b q Hiển thị thứ tự panel
Ctrl-b { Di chuyển từ panel hiện tại sang trái
Ctrl-b } Di chuyển từ panel hiện tại sang phải
Một số tip làm việc với TMUX
Tệp cấu hình của TMUX
Tệp cấu hình của TMUX có thể có ở 2 vị trí:
- /etc/tmux.conf: Tệp này là cấu hình chung cho tất cả các user. Đầu tiên TMUX sẽ load các tham số mặc định, sau đó cập nhật cấu hình từ tệp này.
- ~/.tmux.conf: Tệp cấu hình cho user hiện tại. Tệp này được TMUX load sau cùng để cập nhật thêm cấu hình.
Nhiều khi hai tệp này không tồn tại, khi đó hệ thống sẽ lấy thông số mặc định. Bạn xem các thông số cấu hình bằng lệnh:
tmux show -g
Nếu tệp cấu hình chưa tồn tại bạn có thể thiết lập bằng lệnh sau:
tmux show -g ; cat > ~/.tmux.conf
Hoặc copy từ tệp ví dụ: /usr/share/doc/tmux/example_tmux.conf
Ngoài ra bạn có thể thiết lập cấu hình trực tiếp bằng lệnh:
tmux set-option -g history-limit 100000
Tăng kích thước bộ đệm cuộn ngược của TMUX
Khi làm việc với TMUX, chắc các bạn thấy không thích nhất chính là việc nó không lưu lại được nhiều dữ liệu log. Nhiều khi mở TMUX ra xem ứng dụng chạy thế nào, tôi chỉ có thể nhìn được vài lệnh mới nhất, không đủ để biết ứng dụng có chạy ổn không. Vậy làm sao để tăng được kích thước bộ đệm này lên.
Kích thước bộ đệm cuộn ngược tmux mặc định được đặt thành 2000 làm giá trị mặc định. Giới hạn cuộn lùi 2000 này được đặt trong quá trình tạo ngăn và không thể thay đổi đối với các ngăn hiện có. Giá trị được lấy từ tùy chọn phiên giới hạn lịch sử.
Để thay đổi giá trị cấu hình này, bạn có thể thiết lập trực tiếp bằng lệnh. Cấu hình chỉ có hiệu lực với các cửa sổ TMUX mới:
tmux set-option -g history-limit 50000
Sau đó bạn kiểm tra lại cấu hình ăn chưa bằng lệnh:
tmux show -g | grep history-limit
Cách khác là bạn có thể chèn dòng sau vào tệp ~/.tmux.conf. Nhưng cấu hình này chỉ áp dụng cho cửa sổ TMUX mới:
set-option -g history-limit <number>
Ghi chú: Đã thử cấu hình nhưng không ăn, có thể do tôi sử dụng Putty hoặc MobaXterm.
Chi tiết xem: How to increase scrollback buffer size of Tmux
Trả lời