Câu hỏi phỏng vấn Linux cấp cao nhất của bạn là gì [đã đóng]


25

Thỉnh thoảng trên trang web này có người hỏi một số câu hỏi phỏng vấn quản trị viên hệ thống là gì. Hầu hết khi đọc chúng, tất cả chúng đều là những câu hỏi từ trung cấp đến trung cấp.

Tôi đang tự hỏi những câu hỏi phỏng vấn quản trị viên Linux cấp cao nhất của bạn là gì.

Hai của tôi là

1) Làm thế nào để bạn chặn một quả bom ngã ba nếu bạn đã đăng nhập vào hệ thống

2) Bạn xóa một tệp nhật ký mà apache đang sử dụng và chưa khởi động lại apache, làm thế nào bạn có thể khôi phục tệp nhật ký đó?


Một biến thể khác của Q đầu tiên là: Điều gì :(){ :|:& };:làm trên hệ thống của bạn và tại sao bạn lại quan tâm đến điều đó? Chúc mừng!
MacUsers

Câu trả lời:


13
  • Làm thế nào nhìn phụ thuộc thư viện chia sẻ?
  • Làm thế nào dấu vết hệ thống gọi và tín hiệu?
  • Ứng dụng hồ sơ như thế nào?
  • Làm thế nào để in các chuỗi ký tự có thể in trong các tập tin?
  • Những lĩnh vực được lưu trữ trong một inode?
  • Nscd là gì?
  • Automake và Autoconf là gì?
  • Những bước nào để thêm người dùng vào hệ thống mà không cần sử dụng useradd / adduser?
  • Làm thế nào để xem thông tin về các tập tin ELF?
  • Số MAJOR và MINOR của các tập tin đặc biệt là gì?
  • Làm thế nào để lọc lớp liên kết?

16
  • Hãy cho tôi biết về dự án Linux lớn cuối cùng mà bạn đã hoàn thành. Một số trở ngại là gì và làm thế nào bạn vượt qua chúng. Đôi khi, việc hỏi những câu hỏi mở này sẽ tiết lộ nhiều hơn những câu hỏi nhỏ dễ dàng được Google trả lời. Một quản trị viên cao cấp tuyệt vời không cần biết tất cả mọi thứ, nhưng họ sẽ có thể đưa ra các giải pháp tuyệt vời cho các dự án bất khả thi.
  • Bạn có đóng góp cho bất kỳ dự án nguồn mở nào không? Không quan trọng nếu nó chỉ là tài liệu, nó cho thấy sự cống hiến nhất định cho nghề.

Để tìm hiểu xem họ giỏi như thế nào, hãy hỏi những câu hỏi kết thúc mở ...


2
+1 cho các câu hỏi kết thúc mở. Câu hỏi đóng để đun sôi để biết những điều nhỏ nhặt.
Sirex

2
Chắc chắn rồi. Đối với tôi, một người cao cấp không chỉ là người có thể ghi nhớ những thứ bạn có thể Google, mà là người có thể giải quyết các vấn đề phức tạp, thiết kế, đóng vai trò lãnh đạo trong các dự án, v.v. "Bạn có thể nhớ cách sử dụng ldd" sẽ không cho tôi biết nếu tôi thuê một người có thể giúp xác định lỗ hổng trong một ứng dụng sản xuất nhiều tầng phức tạp hay lập kế hoạch năng lực có ý nghĩa.
Rodger

9

Câu hỏi: Mô tả một kịch bản khi bạn gặp lỗi "hệ thống tập tin đầy", nhưng ' df ' cho thấy có không gian trống

Trả lời: Hệ thống tập tin có thể hết inodes, ' df -i ' sẽ hiển thị điều đó.

Câu hỏi mở:

  • cho tôi biết về cách bạn quản lý cơ sở dữ liệu kiến ​​thức của bạn (wiki, phác thảo, bảng tính, tệp văn bản thuần túy) và tại sao bạn chọn các tùy chọn cụ thể
  • Bạn có sử dụng kiểm soát phiên bản? cái nào và tại sao? tin nhắn cam kết của bạn có đẹp không?

3
Liên quan có thể là, "Tại sao du và df không đồng ý?" - Vì du kiểm tra việc sử dụng các thư mục, nhưng df kiểm tra các nút miễn phí và các tệp có thể được giữ mở và chiếm dung lượng sau khi chúng bị xóa
Matt Simmons

1 cho điều này và bình luận của Matt (Trên thực tế tôi hỏi điều này trên các cuộc phỏng vấn ALL unix, bất kể trình độ Nó cho thấy như thế nào một người nào đó hiểu được khái niệm hệ thống tập tin.)
voretaq7

Ohh .. sự khác biệt giữa du / và df luôn là một điều tốt
Mike

Aha ghi chú ! Bây giờ tôi biết cái này! :)
Ông chủ IT

8

Một điều tôi muốn hỏi, và tôi cảm thấy thoải mái khi được hỏi, đó là:

Hãy cho tôi biết về sai lầm lớn nhất bạn đã mắc phải trong [một khoảng thời gian gần đây] và cách bạn sẽ làm nó khác ngày hôm nay. Bạn đã học được gì từ kinh nghiệm này?

Có rất nhiều sysadins với 10 năm kinh nghiệm. Nhiều người dường như có cùng một năm 10 lần liên tiếp. Tôi muốn một trong đội của tôi với 10 năm khác nhau, tiến bộ tốt hơn. Và nếu bạn chưa bao giờ phạm sai lầm lớn, một điều khiến bạn tự hỏi liệu bạn có nên đóng gói bàn làm việc của mình không, bạn đã thực sự sống. :)

Tôi không quan tâm đến những câu hỏi nhỏ, như người phỏng vấn hay người được phỏng vấn. Tôi thực sự thích những câu hỏi đã làm vấp ngã các nhà cung cấp của tôi trước đây, hoặc những câu hỏi đã cho tôi "Eureka!" khoảnh khắc.


tôi ủng hộ câu hỏi này
ZaphodB

7

Tôi luôn là một fan hâm mộ của

  • Mô tả quá trình khởi động linux với càng nhiều chi tiết càng tốt, bắt đầu từ khi hệ thống được bật và kết thúc khi bạn nhận được lời nhắc.

Tôi muốn đặt câu hỏi chứng minh mức độ nhận thức của một người nào đó về sự khác biệt giữa các unix khác nhau. Tôi cũng muốn xem một người hiểu rằng linux thực hiện mọi thứ theo một cách mà không nhất thiết là cách mọi người khác làm điều đó. Nhiều câu hỏi trong số này xoay quanh các công cụ linux mặc định, ví dụ:

  • Hãy cho tôi biết hai cách để chuyển hướng cả stderr và stdin cùng một lúc
    • &>>/dev/null 2>&1
    • thể hiện kiến ​​thức về bash so với bourne shell

Một điểm quan trọng khác: đối với các vị trí cấp cao, tôi hy vọng sẽ thấy bằng chứng về kỹ năng viết và trình bày công khai. Nếu bạn là một người cao cấp, bạn nên được xuất bản nhiều lần trên web và trên các tạp chí. Heck, chỉ cần có blog công nghệ của riêng bạn là đủ. Có ít nhất một bài báo tại một hội nghị là một điểm cộng lớn . Tôi nghĩ điều này đặc biệt tách biệt đàn em với quản trị viên linux cao cấp.


Biến thể câu hỏi của tôi là: Từ cuối POST cho đến khi bạn thấy dấu nhắc đăng nhập, vui lòng mô tả quy trình khởi động của máy chủ PC chạy Linux chi tiết đến mức bạn cảm thấy phù hợp, nhấn mạnh vào khắc phục sự cố? (Do đó, mọi thứ về cách thiết bị khởi động được tìm thấy bởi BIOS và cách bộ nạp khởi động được tìm nạp bằng mã trong MBR, cách kernel khởi động quá trình init, v.v., tất cả đều có liên quan; các bước).
Jim Dennis

6

Tôi chỉ chạy 'chmod -x / bin / chmod'. Tôi đã làm gì? Làm thế nào để tôi phục hồi?

Mô tả quá trình bắt tay của TCP.

Traceroute hoạt động như thế nào?

Khi nào bạn có thể cần sử dụng CTRL-Z hoặc CTRL-D?

Các bit dính làm gì?

Những tùy chọn kernel nào bạn có thể cần điều chỉnh?

Làm thế nào để bạn biết phân phối bạn đang chạy?

Làm thế nào để bạn biết phần cứng bạn đang chạy trên?

Sự khác biệt giữa SAN, NAS và đĩa cục bộ là gì?

Tôi có 30 máy chủ và tôi không chắc mỗi máy chủ có cùng cấu hình apache không. Làm thế nào để tôi tìm ra có bao nhiêu bản sao và sự khác biệt là gì?

Nhà tù chroot là gì?

Làm thế nào để bạn biết nếu bạn đã bị hack?

Đặt tên cho tất cả hai lệnh unix bạn có thể nghĩ ra và chúng làm gì? Làm thế nào bạn có thể tra cứu tất cả các lệnh unix hai chữ cái trên hệ thống của bạn.

Tôi cũng yêu cầu mọi người trước khi làm tại nhà để làm một số bài tập về nhà đơn giản. Đặc biệt là nếu họ tuyên bố một số kinh nghiệm viết kịch bản. Tôi yêu cầu họ phân tích hai tệp dữ liệu khác nhau (một csv, một | sv) và thực hiện nối dữ liệu một cách hiệu quả. Tôi đưa vào một vài vấn đề (dữ liệu được định dạng kém), các trường bị thiếu cần thiết cho các phép nối, ngoài dữ liệu chuỗi, v.v. Tôi yêu cầu họ gửi cho tôi mã nguồn và đầu ra. (Kiểu sự cố máy) Tôi thường đưa ra một cửa sổ thời gian 3-4 giờ để giải quyết nó. Nhiệm vụ này đã giúp lọc ra rất nhiều ứng cử viên liệt kê 'kịch bản' là một kỹ năng, nhưng không thể rút ra những điều cơ bản khi bị áp lực.


Tôi không tin những điều này đủ kỹ thuật cho một vai trò cao cấp (dựa trên việc tôi có thể trả lời họ, và tôi là một thiếu niên).
Sirex

Với một thời gian, tôi có thể trả lời tất cả những điều này, nhưng tôi muốn có thể làm điều đó trong giấc ngủ của mình! Tôi nghĩ rằng tôi cần học hỏi nhiều hơn :)
Mister IT Master

6

Câu hỏi đóng yêu thích của tôi:

Nếu bạn bị mắc kẹt trên một hòn đảo sa mạc chỉ với 5 tiện ích dòng lệnh, bạn sẽ chọn cái nào?

Danh sách cá nhân của tôi:

  • ping
  • tcpdump
  • ps
  • lsof
  • bước đi

Đó là một câu hỏi đơn giản để xem quản trị viên cảm thấy thoải mái nhất với lệnh nào, và nó cũng giúp thể hiện sự thoải mái của họ với các câu hỏi không chính thống (vui tươi). Một số người được phỏng vấn đọc cách quá nhiều vào câu hỏi và nhận được bối rối. Nếu bạn không thể trả lời một cái gì đó cơ bản, nó sẽ cho tôi biết bạn có ít tự tin về các kỹ năng của mình. Mặt khác, nếu bạn cố gắng quá nhiều để đưa ra danh sách hoàn hảo, nó có thể gợi ý rằng bạn sợ thất bại và không thể suy nghĩ trên đôi chân của mình.

Phải thừa nhận rằng, điều này hữu ích hơn cho các ứng viên cấp trung học cơ sở / trung cấp, nhưng cũng không hại gì khi hỏi cả. :)


5
Tôi đoán tôi sẽ đi cùng busyboxđể bao quát những điều cơ bản, cộng với mplayerđể giúp giải quyết sự nhàm chán. Điều đó để lại cho tôi ba thức ăn thừa ....
mattdm

2
Tôi chỉ muốn tiếng vang và thư - tiếng vang 'hãy đến và giải cứu tôi!' | mail -s cứu admin@mcga.gov.uk
symcbean

"Thư" và "ntpdate". Tôi có thể sử dụng Thư để gọi trợ giúp và sử dụng NTP để xác định chính xác mạng và kinh độ của mình. :)
Ernie

5

Tôi sử dụng cái này:

  • Điều gì xảy ra khi nhân Linux đang bắt đầu trình diệt OOM, làm thế nào để nó chọn tiến trình nào để giết trước.

và những thứ khác mà tôi không có từ đỉnh đầu ..


Đó là một câu hỏi tuyệt vời .. Tôi không nghĩ nhiều người cấp cao sẽ biết điều đó. Tôi chắc chắn không và nó đã cho tôi đọc nó. cảm ơn!
Mike

Câu trả lời của tôi cho điều này sẽ là: hạt nhân duy trì các số liệu thống kê khác nhau liên quan đến phân bổ bộ nhớ ảo và hoạt động phân trang. Khi vượt quá một số ngưỡng nhất định thì kẻ giết người OOM được gọi để chọn các quy trình để chấm dứt. Các chi tiết đã được điều chỉnh và thay đổi chỉ với mỗi lần phát hành kernel và xây dựng kernel của nhà cung cấp trong vài năm qua.
Jim Dennis

1
. Vài nghìn máy) chỉ phát hiện ra rằng nó đã bị giết bởi kẻ giết người OOM --- mặc dù thực tế là nó sử dụng rất ít bộ nhớ, hầu như không bao giờ phân bổ bộ nhớ bổ sung, không bao giờ thực hiện bất kỳ hành vi giả mạo nào và, trong hầu hết các khía cạnh, là một ứng cử viên cực kỳ khó tin cho OOM lựa chọn). (Không có chỉnh sửa sysctl nào được áp dụng cho những điều này).
Jim Dennis

Não tôi vừa mới nổ tung - Đây là những câu hỏi RẤT rất hay!
Mister IT Master

Jim, bạn nói đúng, nó luôn thay đổi nhưng tôi quan tâm hơn đến việc người được phỏng vấn sẽ bắt đầu nghĩ về điều đó như thế nào và sẽ có ý nghĩa hơn khi giết người đầu tiên và tiền thưởng nếu anh ta có thể đề cập đến cách bảo vệ quá trình nhất định để bị giết.
Chmouel Boudjnah

4

Tôi có một yêu thích mạnh mẽ ở đây. Câu hỏi này có giá trị dự đoán tuyệt vời cho cách các ứng cử viên sẽ trả giá trong các câu hỏi nâng cao hơn:

Một người dùng / đồng nghiệp đến gặp bạn để phàn nàn rằng một tệp có độ dài bằng không có tên "-fr" đã xuất hiện trong thư mục gốc của một số hệ thống.

Cách dễ nhất, an toàn nhất và di động nhất để loại bỏ mục nhập thư mục đó là gì và tại sao câu hỏi đáng để hỏi?

Mọi người nhận được một nửa tín dụng khi nói những điều như: rm -- -frhoặc perl -le 'unlink("-fr");'(Chúng hiệu quả nhưng không tối ưu di động).

Những người tiếp tục trích dẫn dòng lệnh shell và thoát ký tự gần như nguy hiểm như những người đơn giản thậm chí không nhận ra tại sao một tên tệp như vậy lại gây ra bất kỳ vấn đề nào.

Những người cười khúc khích ... nói bất cứ điều gì về việc sử dụng "dấu gạch chéo" và chỉ ra rằng đây là một trong những mục lâu đời nhất trong Câu hỏi thường gặp về vỏ UNIX từ USENIX nhận thêm tín dụng.


Bạn có ý nghĩa gì bởi "di động nhất"? Câu trả lời của tôi là, dù sao đi nữa: "xóa bằng số inode". find . -inum <number> -exec rm -i {} \;
MacUsers

@MacUsers: Trong cuốn sách của tôi, nó giống như sử dụng Perl cho nhiệm vụ (một nửa tín dụng ... nó sẽ hoạt động, nhưng một số phiên bản tìm kiếm có thể không thực hiện tùy chọn -inum và nó phức tạp không cần thiết so với rm ./-fr ( không "dễ nhất"). Đặc biệt, chúng tôi có thể đo lường dễ dàng hơn về mức độ nỗ lực và mức độ đáng tin cậy của chúng tôi có thể đưa người dùng đi qua quy trình qua điện thoại.
Jim Dennis

Muốn biết câu trả lời của bạn để có được "tín dụng đầy đủ" của bạn. Chúc mừng !!
MacUsers

Phương pháp đơn giản và dễ mang theo nhất là: rm ./-fr ... nó luôn hoạt động từ các phiên bản cũ nhất của UNIX và nó chỉ yêu cầu chèn hai tổ hợp phím không dịch chuyển. Quan trọng hơn, người ta có thể đặt tiền tố cho bất kỳ mẫu toàn cầu nào bằng ./ và được đảm bảo rằng không có sự mở rộng vỏ nào của toàn cầu sẽ bị hiểu sai là một chuyển đổi bởi một số lệnh bên ngoài. (Một chương trình sẽ phải nối các đối số của nó lại với nhau và phân tích lại chuỗi thậm chí bị nhầm lẫn bởi ./foo \ -bar ... một tệp có trình tự dấu cách trong đó).
Jim Dennis

Dường như 'còn thiếu từ ví dụ unl unlink của bạn.
GnP

3

"Những bản unix nào mà linux bạn chưa sử dụng? Bạn có thể cho tôi biết một số điểm khác biệt giữa chúng không?"

Bởi vì, sau tất cả, không phải toàn bộ thế giới là một linux (Tôi đã sử dụng một số ít các hiệp hội thương mại không phải linux và một vài người không mở linux, nếu bạn dựa vào các kỹ năng từ môi trường của người khác, bạn S shot bắn mình ở chân).


4
Solaris killall! = Linux killall
user9517 hỗ trợ GoFundMonica

Ít nhất được sử dụng là trường hợp chỉnh sửa các tệp cấu hình trong AIX không dẫn đến hành vi thay đổi trình nền, vì họ đã chọn cấu hình từ cơ sở dữ liệu nhị phân, thay vì tệp cấu hình văn bản thuần túy.
Vatine

2

Nếu bạn bị mắc kẹt trên một hòn đảo sa mạc chỉ với 5 tiện ích dòng lệnh, bạn sẽ chọn cái nào?

date whoami echo sleep kill


fsck fsck fsck fsck và fsck.
Sirex

Đây có phải là một bản dupe, một nỗ lực để biến câu trả lời tại serverfault.com/questions/225946/NH thành một cuộc thảo luận hay không?
quux

'Whoami' - LOL!
symcbean

1

Tôi sẽ nói rằng tôi cảm thấy giống như nhiều câu hỏi "ở đâu là __, __ là gì, làm thế nào để bạn __" cảm thấy giống như câu hỏi trung học / trung cấp đối với tôi. Khi tôi phỏng vấn cho vị trí Linux ở trình độ trung cấp, tôi hỏi các công cụ kiến ​​thức cơ bản điển hình (hạt nhân để làm gì, sự khác biệt giữa liên kết tượng trưng và liên kết cứng, tôi sẽ làm gì nếu tôi loại bỏ các bit thực thi khỏi chmod?) . Một số điều tôi sẽ nghĩ là câu hỏi cấp cao hơn:

  1. Một số lợi ích của việc sử dụng systemd so với SysV init là gì? Hạn chế? Debian vừa chuyển sang systemd chứ không phải Upstart. Lý do đằng sau đó là gì?
    • Một trong những điều này thể hiện là sự quan tâm và đầu tư vào cộng đồng Linux và cách điều này tác động đến công việc hàng ngày của một sysadmin. Nó cho thấy rằng người này được thông báo về cách lĩnh vực đang phát triển và (có khả năng) sẵn sàng thay đổi với nó.
  2. Nếu tôi muốn cài đặt Apache trên một máy chủ từ xa, cách tốt nhất để làm điều đó là gì? Nếu tôi muốn làm điều tương tự trên 100 máy chủ thì sao? Điều gì sẽ xảy ra nếu một nửa trong số họ là RHEL và một nửa là Debian?
    • Cho thấy sự quen thuộc với việc sử dụng phần mềm của bên thứ ba để giải quyết các vấn đề thực tế; quen thuộc với việc tận dụng các tiện ích quản lý cấu hình.
  3. Những cân nhắc nào phát huy tác dụng khi thiết kế một ứng dụng có tính sẵn sàng cao, cả ở cấp độ kiến ​​trúc và cấp độ ứng dụng?
    • Cho thấy người này có thể xem xét một vấn đề hình ảnh lớn. Cho thấy rằng họ hiểu cách hoạt động của cân bằng tải, các ứng dụng không trạng thái, có thể hiển thị một số kiến ​​thức về các tùy chọn và mô-đun cấu hình Apache phổ biến được sử dụng cho các ứng dụng đa luồng và tối ưu hóa hiệu suất ở cấp độ của từng máy chủ.
  4. Một số khác biệt giữa một hạt nhân vi mô và một hạt nhân nguyên khối là gì? Điều gì có lợi cho Linux là một hạt nhân nguyên khối?
    • Cho thấy sự quen thuộc với hệ thống Linux ở mức sâu hơn không gian người dùng.
  5. Nếu tôi nhập "www.google.com" vào trình duyệt và nhấn enter, mọi thứ xảy ra từ thời điểm khóa của tôi xuất hiện cho đến khi trang hiển thị trong trình duyệt của tôi?
    • Mặc dù vị trí này không dành cho kỹ sư mạng, tôi hy vọng mọi người có thể suy nghĩ bên ngoài thế giới vi mô. Điều này nhận được rất nhiều nguyên tắc cơ bản về mạng và tầm quan trọng của chúng đối với các hệ thống riêng lẻ và các mạng nhỏ về cách chúng phù hợp với các hệ thống lớn hơn. Điều này có thể giải quyết các bộ đệm DNS của trình duyệt / HĐH cục bộ, cách ARP hoạt động, cách bảng tuyến hoạt động, truy vấn DNS đệ quy là gì, tầm quan trọng của BGP / OSPF và vai trò của chúng trong các mạng lớn hơn, bắt tay SSL và mật mã nói chung, TCP kết nối và gobs của các mẩu tin nhỏ hữu ích khác để đi sâu vào.

Đây chỉ là một số ví dụ trực tiếp, nhưng tôi nghĩ nói chung một quản trị viên cao cấp nên làm quen với các khái niệm hình ảnh lớn và hơn là những thứ bạn có thể chỉ Google.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.